查找相關知識與題目 →

第 23973 題:NFA到DFA的子集合構造

本頁導覽
  1. 原題與已知條件
  2. 定義與適用範圍
  3. 逐步推導
  4. 逐步反向核對
  5. 結論
  6. 本題覆核與來源綁定

返回所在分頁 120

← 逐題詳解目錄 · 原題批次

R0046-23973 · q-20261014-advance-20261112-r07-subset-construction-nfa-to-dfa-0098

原題與已知條件

epsilon-closed start、move後closure與accepting-subset交集規則。操作=subsetdfa-full-word-trace-invariant;資料={"states":["s22","m22","f22","e122","e222","d22"],"alphabet":["a22","b22"],"start_state":"s22","final_states":["f22"],"transitions":[["s22",null,"m22"],["s22",null,"d22"],["m22","a22","m22"],["m22","b22","f22"],["f22",null,"e122"],["e122",null,"e222"]],"input":["a22","a22","b22"]}。請依 exact_ordered_tuple_declared_by_interface 欄序回答。

  • G001 — epsilon-closed start、move後closure與accepting-subset交集規則。操作=subsetdfa-full-word-trace-invariant;資料={"states":["s22","m22","f22","e122","e222","d22"],"alphabet":["a22","b22"],"start_state":"s22","final_states":["f22"],"transitions":[["s22",null,"m22"],["s22",null,"d22"],["m22","a22","m22"],["m22","b22","f22"],["f22",null,"e122"],["e122",null,"e222"]],"input":["a22","a22","b22"]}。請依 exact_ordered_tuple_declared_by_interface 欄序回答。

定義與適用範圍

沿用原題明示的論域、假設與來源 MKO 定義。本題已完成第二對話數理與中英語義覆核,並由原始參數逐題獨立重算模型、答案與每個算術步驟;原題仍為 candidate。

逐步推導

S001 · implies

操作前

source operation=subsetdfa-full-word-trace-invariant;original snapshot and mathematics retained

操作後

explicit ordered source output fields=[input, DFA_prefix_subsets, direct_NFA_prefix_subsets, prefix_invariant, accepted, certificate, finite_tests_language_equivalence_claim, boundary]

條件:無

保留原題介面快照,本頁直接列來源欄序,不需JavaScript。radius由原mode選6/11欄,不補欄;No與實際否定依來源責任分清。

步驟識別與依賴

規則:source_ordered_interface_explicit_without_javascript · 依賴:G001

S002 · implies

操作前

ORIGINAL states=[s22, m22, f22, e122, e222, d22],alphabet=[a22, b22],start=s22;ORIGINAL transition order=[[s22, null, m22], [s22, null, d22], [m22, a22, m22], [m22, b22, f22], [f22, null, e122], [e122, null, e222]]

操作後

final set normalized UTF16=[f22];states nonempty,alphabet/finals/relation MAYEMPTY;DUPLICATE triples rejected in THIS model

條件:無

此題與前一NFA節點不同:transition triple須唯一,finals須排序。所有subset都是真carrier子集合;不偷用舊wrapper的duplicate/final-order慣例。

步驟識別與依賴

規則:subsetdfa_qualified_NFA_signature_DUPLICATE_edges_REJECTED_here · 依賴:G001, S001

S003 · implies

操作前

Subset DFA ORIGINAL whole-word start:stage=0;seed set=[s22];previous set=[s22]

操作後

ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s22, m22, 是], [1, s22, d22, 是], [4, f22, e122, 否], [5, e122, e222, 否]];next set=[d22, m22, s22];stable=否

條件:無

新增state都有前一層有限EPS路徑,任何含seed的EPS封閉集合都必含每層;有限states使飽和終止,得到完整且最小closure,不消耗input。

步驟識別與依賴

規則:subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · 依賴:G001, S002

S004 · implies

操作前

Subset DFA ORIGINAL whole-word start:stage=1;seed set=[s22];previous set=[d22, m22, s22]

操作後

ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s22, m22, 是], [1, s22, d22, 是], [4, f22, e122, 否], [5, e122, e222, 否]];next set=[d22, m22, s22];stable=是

條件:無

新增state都有前一層有限EPS路徑,任何含seed的EPS封閉集合都必含每層;有限states使飽和終止,得到完整且最小closure,不消耗input。

步驟識別與依賴

規則:subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · 依賴:G001, S003

S005 · implies

操作前

Subset DFA ORIGINAL prefix step0:EXACT ORIGINAL supplied S=[d22, m22, s22];symbol=a22;ALL matching ORIGINAL edge rows=[[2, m22, m22]]

操作後

direct symbol targets=[m22];NO EPS preclosure inserted into S;now close ONLY these targets

條件:無

任意給定S未必已EPS-closed,先preclose會改本題運算;定義明示先move(S,a)再closure。empty move得到合法empty dead state。

步驟識別與依賴

規則:subsetdfa_GIVEN_S_symbol_move_BEFORE_closure_NO_preclose · 依賴:G001, S004

S006 · implies

操作前

Subset DFA ORIGINAL prefix step0 post-symbol EPS closure:stage=0;seed set=[m22];previous set=[m22]

操作後

ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s22, m22, 否], [1, s22, d22, 否], [4, f22, e122, 否], [5, e122, e222, 否]];next set=[m22];stable=是

條件:無

新增state都有前一層有限EPS路徑,任何含seed的EPS封閉集合都必含每層;有限states使飽和終止,得到完整且最小closure,不消耗input。

步驟識別與依賴

規則:subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · 依賴:G001, S005

S007 · implies

操作前

Subset DFA ORIGINAL prefix step1:EXACT ORIGINAL supplied S=[m22];symbol=a22;ALL matching ORIGINAL edge rows=[[2, m22, m22]]

操作後

direct symbol targets=[m22];NO EPS preclosure inserted into S;now close ONLY these targets

條件:無

任意給定S未必已EPS-closed,先preclose會改本題運算;定義明示先move(S,a)再closure。empty move得到合法empty dead state。

步驟識別與依賴

規則:subsetdfa_GIVEN_S_symbol_move_BEFORE_closure_NO_preclose · 依賴:G001, S006

S008 · implies

操作前

Subset DFA ORIGINAL prefix step1 post-symbol EPS closure:stage=0;seed set=[m22];previous set=[m22]

操作後

ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s22, m22, 否], [1, s22, d22, 否], [4, f22, e122, 否], [5, e122, e222, 否]];next set=[m22];stable=是

條件:無

新增state都有前一層有限EPS路徑,任何含seed的EPS封閉集合都必含每層;有限states使飽和終止,得到完整且最小closure,不消耗input。

步驟識別與依賴

規則:subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · 依賴:G001, S007

S009 · implies

操作前

Subset DFA ORIGINAL prefix step2:EXACT ORIGINAL supplied S=[m22];symbol=b22;ALL matching ORIGINAL edge rows=[[3, m22, f22]]

操作後

direct symbol targets=[f22];NO EPS preclosure inserted into S;now close ONLY these targets

條件:無

任意給定S未必已EPS-closed,先preclose會改本題運算;定義明示先move(S,a)再closure。empty move得到合法empty dead state。

步驟識別與依賴

規則:subsetdfa_GIVEN_S_symbol_move_BEFORE_closure_NO_preclose · 依賴:G001, S008

S010 · implies

操作前

Subset DFA ORIGINAL prefix step2 post-symbol EPS closure:stage=0;seed set=[f22];previous set=[f22]

操作後

ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s22, m22, 否], [1, s22, d22, 否], [4, f22, e122, 是], [5, e122, e222, 否]];next set=[e122, f22];stable=否

條件:無

新增state都有前一層有限EPS路徑,任何含seed的EPS封閉集合都必含每層;有限states使飽和終止,得到完整且最小closure,不消耗input。

步驟識別與依賴

規則:subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · 依賴:G001, S009

S011 · implies

操作前

Subset DFA ORIGINAL prefix step2 post-symbol EPS closure:stage=1;seed set=[f22];previous set=[e122, f22]

操作後

ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s22, m22, 否], [1, s22, d22, 否], [4, f22, e122, 是], [5, e122, e222, 是]];next set=[e122, e222, f22];stable=否

條件:無

新增state都有前一層有限EPS路徑,任何含seed的EPS封閉集合都必含每層;有限states使飽和終止,得到完整且最小closure,不消耗input。

步驟識別與依賴

規則:subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · 依賴:G001, S010

S012 · implies

操作前

Subset DFA ORIGINAL prefix step2 post-symbol EPS closure:stage=2;seed set=[f22];previous set=[e122, e222, f22]

操作後

ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s22, m22, 否], [1, s22, d22, 否], [4, f22, e122, 是], [5, e122, e222, 是]];next set=[e122, e222, f22];stable=是

條件:無

新增state都有前一層有限EPS路徑,任何含seed的EPS封閉集合都必含每層;有限states使飽和終止,得到完整且最小closure,不消耗input。

步驟識別與依賴

規則:subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · 依賴:G001, S011

S013 · implies

操作前

ORIGINAL word=[a22, a22, b22];direct NFA configuration stage=0;previous configs=[[s22, 0]]

操作後

ALL enabled [from,ORIGINAL edge index,next] rows=[[[s22, 0], 0, [m22, 0]], [[s22, 0], 1, [d22, 0]]];next configs=[[s22, 0], [m22, 0], [d22, 0]];stable=否

條件:無

這條直接路徑在完整finite state×input-position圖上求所有reachable,不把一條chosen run當成全狀態,也不把DFA同一函式重跑冒充不同觀察。

步驟識別與依賴

規則:subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · 依賴:G001, S012

S014 · implies

操作前

ORIGINAL word=[a22, a22, b22];direct NFA configuration stage=1;previous configs=[[s22, 0], [m22, 0], [d22, 0]]

操作後

ALL enabled [from,ORIGINAL edge index,next] rows=[[[s22, 0], 0, [m22, 0]], [[s22, 0], 1, [d22, 0]], [[m22, 0], 2, [m22, 1]]];next configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1]];stable=否

條件:無

這條直接路徑在完整finite state×input-position圖上求所有reachable,不把一條chosen run當成全狀態,也不把DFA同一函式重跑冒充不同觀察。

步驟識別與依賴

規則:subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · 依賴:G001, S013

S015 · implies

操作前

ORIGINAL word=[a22, a22, b22];direct NFA configuration stage=2;previous configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1]]

操作後

ALL enabled [from,ORIGINAL edge index,next] rows=[[[s22, 0], 0, [m22, 0]], [[s22, 0], 1, [d22, 0]], [[m22, 0], 2, [m22, 1]], [[m22, 1], 2, [m22, 2]]];next configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2]];stable=否

條件:無

這條直接路徑在完整finite state×input-position圖上求所有reachable,不把一條chosen run當成全狀態,也不把DFA同一函式重跑冒充不同觀察。

步驟識別與依賴

規則:subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · 依賴:G001, S014

S016 · implies

操作前

ORIGINAL word=[a22, a22, b22];direct NFA configuration stage=3;previous configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2]]

操作後

ALL enabled [from,ORIGINAL edge index,next] rows=[[[s22, 0], 0, [m22, 0]], [[s22, 0], 1, [d22, 0]], [[m22, 0], 2, [m22, 1]], [[m22, 1], 2, [m22, 2]], [[m22, 2], 3, [f22, 3]]];next configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2], [f22, 3]];stable=否

條件:無

這條直接路徑在完整finite state×input-position圖上求所有reachable,不把一條chosen run當成全狀態,也不把DFA同一函式重跑冒充不同觀察。

步驟識別與依賴

規則:subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · 依賴:G001, S015

S017 · implies

操作前

ORIGINAL word=[a22, a22, b22];direct NFA configuration stage=4;previous configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2], [f22, 3]]

操作後

ALL enabled [from,ORIGINAL edge index,next] rows=[[[s22, 0], 0, [m22, 0]], [[s22, 0], 1, [d22, 0]], [[m22, 0], 2, [m22, 1]], [[m22, 1], 2, [m22, 2]], [[m22, 2], 3, [f22, 3]], [[f22, 3], 4, [e122, 3]]];next configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2], [f22, 3], [e122, 3]];stable=否

條件:無

這條直接路徑在完整finite state×input-position圖上求所有reachable,不把一條chosen run當成全狀態,也不把DFA同一函式重跑冒充不同觀察。

步驟識別與依賴

規則:subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · 依賴:G001, S016

S018 · implies

操作前

ORIGINAL word=[a22, a22, b22];direct NFA configuration stage=5;previous configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2], [f22, 3], [e122, 3]]

操作後

ALL enabled [from,ORIGINAL edge index,next] rows=[[[s22, 0], 0, [m22, 0]], [[s22, 0], 1, [d22, 0]], [[m22, 0], 2, [m22, 1]], [[m22, 1], 2, [m22, 2]], [[m22, 2], 3, [f22, 3]], [[f22, 3], 4, [e122, 3]], [[e122, 3], 5, [e222, 3]]];next configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2], [f22, 3], [e122, 3], [e222, 3]];stable=否

條件:無

這條直接路徑在完整finite state×input-position圖上求所有reachable,不把一條chosen run當成全狀態,也不把DFA同一函式重跑冒充不同觀察。

步驟識別與依賴

規則:subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · 依賴:G001, S017

S019 · implies

操作前

ORIGINAL word=[a22, a22, b22];direct NFA configuration stage=6;previous configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2], [f22, 3], [e122, 3], [e222, 3]]

操作後

ALL enabled [from,ORIGINAL edge index,next] rows=[[[s22, 0], 0, [m22, 0]], [[s22, 0], 1, [d22, 0]], [[m22, 0], 2, [m22, 1]], [[m22, 1], 2, [m22, 2]], [[m22, 2], 3, [f22, 3]], [[f22, 3], 4, [e122, 3]], [[e122, 3], 5, [e222, 3]]];next configs=[[s22, 0], [m22, 0], [d22, 0], [m22, 1], [m22, 2], [f22, 3], [e122, 3], [e222, 3]];stable=是

條件:無

這條直接路徑在完整finite state×input-position圖上求所有reachable,不把一條chosen run當成全狀態,也不把DFA同一函式重跑冒充不同觀察。

步驟識別與依賴

規則:subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · 依賴:G001, S018

S020 · implies

操作前

ORIGINAL word=[a22, a22, b22];ALL DFA prefix subsets=[[d22, m22, s22], [m22], [m22], [e122, e222, f22]];independent direct NFA prefix subsets=[[d22, m22, s22], [m22], [m22], [e122, e222, f22]]

操作後

prefix_invariant=是;accepted=是;base is EPS closure of start;for ANY prefix,append one symbol move then finite EPS suffix to obtain EXACTLY all next reachable states

條件:無

一般等價要對任意prefix歸納並證兩個包含:DFA步驟有NFA路徑見證;任一多讀一字的NFA路徑可切成前prefix、symbol邊、EPS後綴。再以與final交非空對應存在完整接受run。最後固定No只拒絕由有限word tests單獨宣稱一般等價,不否定本invariant、accepted或一般定理。

步驟識別與依賴

規則:subsetdfa_GENERAL_arbitrary_prefix_two_inclusions_acceptance_rule · 依賴:G001, S019

逐步反向核對

  • S020 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S019 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S018 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S017 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S016 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S015 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S014 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S013 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S012 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S011 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S010 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S009 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S008 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S007 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S006 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S005 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S004 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S003 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S002 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。
  • S001 · premise_and_result_audit — 回到原始資料與本步條件核對,不把單向推論誤稱等價。

結論

([a22, a22, b22], [[d22, m22, s22], [m22], [m22], [e122, e222, f22]], [[d22, m22, s22], [m22], [m22], [e122, e222, f22]], 是, 是, each_DFA_prefix_subset_equals_all_epsilon_closed_NFA_states_reachable_after_that_prefix, 否, finite_word_tests_do_not_prove_language_equivalence_without_the_prefix_induction_invariant)

依上列完整代值及條件核對得到原題答案;原題編號、格式與狀態保持不變。

本題覆核與來源綁定

覆核日期:2026-10-26

原題、答案、步驟表達式、數值 AST 與既有歷史保持原樣;原來的候選狀態屬於來源歷史,不覆寫為形式化證明。

來源雜湊與覆核憑證
  • input commit: 0f7be61e2c22317a4075561dc822c87d881a50db
  • original question SHA-256: f0b973021534b4bfd240df8d63da5c5f72eea03b5b37ad147dc3e8b352831426
  • candidate record SHA-256: e6b456cb1a84db1ca98c7bb4ad32e060f09d1f4c42cafa59085600038cc67538
  • semantic review receipt SHA-256: a7c0d888ade6d307703c4222c4137c78c0d2448babdcba2fa3446fe6fdd343c1
  • question-first witness SHA-256: c9571f97a37d503ad6a61034cc00108543a05c37ef246d1c4962f55136a3de02
  • Lean: NOT_RUN · human review: NOT_PERFORMED
同源完整 JSON