R0046-23958 · q-20261014-advance-20261112-r07-subset-construction-nfa-to-dfa-0083
Step-by-step derivation
S001 · implies
Before
source operation=subsetdfa-full-word-trace-invariant;original snapshot and mathematics retained
After
explicit ordered source output fields=[input, DFA_prefix_subsets, direct_NFA_prefix_subsets, prefix_invariant, accepted, certificate, finite_tests_language_equivalence_claim, boundary]
Conditions: none
Keep the source snapshot while listing ordered fields without JavaScript.Radius uses its original mode to select6 or11 fields without padding;distinguish nonclaims from actual negations.
Step identifiers and dependencies
Rule: source_ordered_interface_explicit_without_javascript · Uses: G001
S002 · implies
Before
ORIGINAL states=[s7, m7, f7, e17, e27, d7],alphabet=[a7, b7],start=s7;ORIGINAL transition order=[[s7, null, m7], [s7, null, d7], [m7, a7, m7], [m7, b7, f7], [f7, null, e17], [e17, null, e27]]
After
final set normalized UTF16=[f7];states nonempty,alphabet/finals/relation MAYEMPTY;DUPLICATE triples rejected in THIS model
Conditions: none
This model differs from the earlier NFA node:transition triples are unique and finals are sorted.Subsets must be actual carrier subsets;do not import old duplicate/final-order conventions.
Step identifiers and dependencies
Rule: subsetdfa_qualified_NFA_signature_DUPLICATE_edges_REJECTED_here · Uses: G001, S001
S003 · implies
Before
Subset DFA ORIGINAL whole-word start:stage=0;seed set=[s7];previous set=[s7]
After
ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s7, m7, Yes], [1, s7, d7, Yes], [4, f7, e17, No], [5, e17, e27, No]];next set=[d7, m7, s7];stable=No
Conditions: none
Each addition has a finite EPS predecessor path;every EPS-closed seed superset contains each stage.Finiteness gives the complete least closure,without consuming input.
Step identifiers and dependencies
Rule: subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · Uses: G001, S002
S004 · implies
Before
Subset DFA ORIGINAL whole-word start:stage=1;seed set=[s7];previous set=[d7, m7, s7]
After
ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s7, m7, Yes], [1, s7, d7, Yes], [4, f7, e17, No], [5, e17, e27, No]];next set=[d7, m7, s7];stable=Yes
Conditions: none
Each addition has a finite EPS predecessor path;every EPS-closed seed superset contains each stage.Finiteness gives the complete least closure,without consuming input.
Step identifiers and dependencies
Rule: subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · Uses: G001, S003
S005 · implies
Before
Subset DFA ORIGINAL prefix step0:EXACT ORIGINAL supplied S=[d7, m7, s7];symbol=a7;ALL matching ORIGINAL edge rows=[[2, m7, m7]]
After
direct symbol targets=[m7];NO EPS preclosure inserted into S;now close ONLY these targets
Conditions: none
An arbitrary supplied S need not be EPS-closed;preclosing it would change this operation.Apply move(S,a) and then close its targets.Empty targets yield the legal empty dead state.
Step identifiers and dependencies
Rule: subsetdfa_GIVEN_S_symbol_move_BEFORE_closure_NO_preclose · Uses: G001, S004
S006 · implies
Before
Subset DFA ORIGINAL prefix step0 post-symbol EPS closure:stage=0;seed set=[m7];previous set=[m7]
After
ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s7, m7, No], [1, s7, d7, No], [4, f7, e17, No], [5, e17, e27, No]];next set=[m7];stable=Yes
Conditions: none
Each addition has a finite EPS predecessor path;every EPS-closed seed superset contains each stage.Finiteness gives the complete least closure,without consuming input.
Step identifiers and dependencies
Rule: subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · Uses: G001, S005
S007 · implies
Before
Subset DFA ORIGINAL prefix step1:EXACT ORIGINAL supplied S=[m7];symbol=a7;ALL matching ORIGINAL edge rows=[[2, m7, m7]]
After
direct symbol targets=[m7];NO EPS preclosure inserted into S;now close ONLY these targets
Conditions: none
An arbitrary supplied S need not be EPS-closed;preclosing it would change this operation.Apply move(S,a) and then close its targets.Empty targets yield the legal empty dead state.
Step identifiers and dependencies
Rule: subsetdfa_GIVEN_S_symbol_move_BEFORE_closure_NO_preclose · Uses: G001, S006
S008 · implies
Before
Subset DFA ORIGINAL prefix step1 post-symbol EPS closure:stage=0;seed set=[m7];previous set=[m7]
After
ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s7, m7, No], [1, s7, d7, No], [4, f7, e17, No], [5, e17, e27, No]];next set=[m7];stable=Yes
Conditions: none
Each addition has a finite EPS predecessor path;every EPS-closed seed superset contains each stage.Finiteness gives the complete least closure,without consuming input.
Step identifiers and dependencies
Rule: subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · Uses: G001, S007
S009 · implies
Before
Subset DFA ORIGINAL prefix step2:EXACT ORIGINAL supplied S=[m7];symbol=a7;ALL matching ORIGINAL edge rows=[[2, m7, m7]]
After
direct symbol targets=[m7];NO EPS preclosure inserted into S;now close ONLY these targets
Conditions: none
An arbitrary supplied S need not be EPS-closed;preclosing it would change this operation.Apply move(S,a) and then close its targets.Empty targets yield the legal empty dead state.
Step identifiers and dependencies
Rule: subsetdfa_GIVEN_S_symbol_move_BEFORE_closure_NO_preclose · Uses: G001, S008
S010 · implies
Before
Subset DFA ORIGINAL prefix step2 post-symbol EPS closure:stage=0;seed set=[m7];previous set=[m7]
After
ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s7, m7, No], [1, s7, d7, No], [4, f7, e17, No], [5, e17, e27, No]];next set=[m7];stable=Yes
Conditions: none
Each addition has a finite EPS predecessor path;every EPS-closed seed superset contains each stage.Finiteness gives the complete least closure,without consuming input.
Step identifiers and dependencies
Rule: subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · Uses: G001, S009
S011 · implies
Before
Subset DFA ORIGINAL prefix step3:EXACT ORIGINAL supplied S=[m7];symbol=b7;ALL matching ORIGINAL edge rows=[[3, m7, f7]]
After
direct symbol targets=[f7];NO EPS preclosure inserted into S;now close ONLY these targets
Conditions: none
An arbitrary supplied S need not be EPS-closed;preclosing it would change this operation.Apply move(S,a) and then close its targets.Empty targets yield the legal empty dead state.
Step identifiers and dependencies
Rule: subsetdfa_GIVEN_S_symbol_move_BEFORE_closure_NO_preclose · Uses: G001, S010
S012 · implies
Before
Subset DFA ORIGINAL prefix step3 post-symbol EPS closure:stage=0;seed set=[f7];previous set=[f7]
After
ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s7, m7, No], [1, s7, d7, No], [4, f7, e17, Yes], [5, e17, e27, No]];next set=[e17, f7];stable=No
Conditions: none
Each addition has a finite EPS predecessor path;every EPS-closed seed superset contains each stage.Finiteness gives the complete least closure,without consuming input.
Step identifiers and dependencies
Rule: subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · Uses: G001, S011
S013 · implies
Before
Subset DFA ORIGINAL prefix step3 post-symbol EPS closure:stage=1;seed set=[f7];previous set=[e17, f7]
After
ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s7, m7, No], [1, s7, d7, No], [4, f7, e17, Yes], [5, e17, e27, Yes]];next set=[e17, e27, f7];stable=No
Conditions: none
Each addition has a finite EPS predecessor path;every EPS-closed seed superset contains each stage.Finiteness gives the complete least closure,without consuming input.
Step identifiers and dependencies
Rule: subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · Uses: G001, S012
S014 · implies
Before
Subset DFA ORIGINAL prefix step3 post-symbol EPS closure:stage=2;seed set=[f7];previous set=[e17, e27, f7]
After
ALL [ORIGINAL edge index,from,to,enabled] EPS rows=[[0, s7, m7, No], [1, s7, d7, No], [4, f7, e17, Yes], [5, e17, e27, Yes]];next set=[e17, e27, f7];stable=Yes
Conditions: none
Each addition has a finite EPS predecessor path;every EPS-closed seed superset contains each stage.Finiteness gives the complete least closure,without consuming input.
Step identifiers and dependencies
Rule: subsetdfa_ALL_EPS_fixedpoint_reachability_not_input_consumption · Uses: G001, S013
S015 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];direct NFA configuration stage=0;previous configs=[[s7, 0]]
After
ALL enabled [from,ORIGINAL edge index,next] rows=[[[s7, 0], 0, [m7, 0]], [[s7, 0], 1, [d7, 0]]];next configs=[[s7, 0], [m7, 0], [d7, 0]];stable=No
Conditions: none
Compute all reachable configurations in the finite state×input-position graph.Do not replace all states by one chosen run or simply repeat the same DFA routine as a different observation.
Step identifiers and dependencies
Rule: subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · Uses: G001, S014
S016 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];direct NFA configuration stage=1;previous configs=[[s7, 0], [m7, 0], [d7, 0]]
After
ALL enabled [from,ORIGINAL edge index,next] rows=[[[s7, 0], 0, [m7, 0]], [[s7, 0], 1, [d7, 0]], [[m7, 0], 2, [m7, 1]]];next configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1]];stable=No
Conditions: none
Compute all reachable configurations in the finite state×input-position graph.Do not replace all states by one chosen run or simply repeat the same DFA routine as a different observation.
Step identifiers and dependencies
Rule: subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · Uses: G001, S015
S017 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];direct NFA configuration stage=2;previous configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1]]
After
ALL enabled [from,ORIGINAL edge index,next] rows=[[[s7, 0], 0, [m7, 0]], [[s7, 0], 1, [d7, 0]], [[m7, 0], 2, [m7, 1]], [[m7, 1], 2, [m7, 2]]];next configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2]];stable=No
Conditions: none
Compute all reachable configurations in the finite state×input-position graph.Do not replace all states by one chosen run or simply repeat the same DFA routine as a different observation.
Step identifiers and dependencies
Rule: subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · Uses: G001, S016
S018 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];direct NFA configuration stage=3;previous configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2]]
After
ALL enabled [from,ORIGINAL edge index,next] rows=[[[s7, 0], 0, [m7, 0]], [[s7, 0], 1, [d7, 0]], [[m7, 0], 2, [m7, 1]], [[m7, 1], 2, [m7, 2]], [[m7, 2], 2, [m7, 3]]];next configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3]];stable=No
Conditions: none
Compute all reachable configurations in the finite state×input-position graph.Do not replace all states by one chosen run or simply repeat the same DFA routine as a different observation.
Step identifiers and dependencies
Rule: subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · Uses: G001, S017
S019 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];direct NFA configuration stage=4;previous configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3]]
After
ALL enabled [from,ORIGINAL edge index,next] rows=[[[s7, 0], 0, [m7, 0]], [[s7, 0], 1, [d7, 0]], [[m7, 0], 2, [m7, 1]], [[m7, 1], 2, [m7, 2]], [[m7, 2], 2, [m7, 3]], [[m7, 3], 3, [f7, 4]]];next configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3], [f7, 4]];stable=No
Conditions: none
Compute all reachable configurations in the finite state×input-position graph.Do not replace all states by one chosen run or simply repeat the same DFA routine as a different observation.
Step identifiers and dependencies
Rule: subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · Uses: G001, S018
S020 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];direct NFA configuration stage=5;previous configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3], [f7, 4]]
After
ALL enabled [from,ORIGINAL edge index,next] rows=[[[s7, 0], 0, [m7, 0]], [[s7, 0], 1, [d7, 0]], [[m7, 0], 2, [m7, 1]], [[m7, 1], 2, [m7, 2]], [[m7, 2], 2, [m7, 3]], [[m7, 3], 3, [f7, 4]], [[f7, 4], 4, [e17, 4]]];next configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3], [f7, 4], [e17, 4]];stable=No
Conditions: none
Compute all reachable configurations in the finite state×input-position graph.Do not replace all states by one chosen run or simply repeat the same DFA routine as a different observation.
Step identifiers and dependencies
Rule: subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · Uses: G001, S019
S021 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];direct NFA configuration stage=6;previous configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3], [f7, 4], [e17, 4]]
After
ALL enabled [from,ORIGINAL edge index,next] rows=[[[s7, 0], 0, [m7, 0]], [[s7, 0], 1, [d7, 0]], [[m7, 0], 2, [m7, 1]], [[m7, 1], 2, [m7, 2]], [[m7, 2], 2, [m7, 3]], [[m7, 3], 3, [f7, 4]], [[f7, 4], 4, [e17, 4]], [[e17, 4], 5, [e27, 4]]];next configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3], [f7, 4], [e17, 4], [e27, 4]];stable=No
Conditions: none
Compute all reachable configurations in the finite state×input-position graph.Do not replace all states by one chosen run or simply repeat the same DFA routine as a different observation.
Step identifiers and dependencies
Rule: subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · Uses: G001, S020
S022 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];direct NFA configuration stage=7;previous configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3], [f7, 4], [e17, 4], [e27, 4]]
After
ALL enabled [from,ORIGINAL edge index,next] rows=[[[s7, 0], 0, [m7, 0]], [[s7, 0], 1, [d7, 0]], [[m7, 0], 2, [m7, 1]], [[m7, 1], 2, [m7, 2]], [[m7, 2], 2, [m7, 3]], [[m7, 3], 3, [f7, 4]], [[f7, 4], 4, [e17, 4]], [[e17, 4], 5, [e27, 4]]];next configs=[[s7, 0], [m7, 0], [d7, 0], [m7, 1], [m7, 2], [m7, 3], [f7, 4], [e17, 4], [e27, 4]];stable=Yes
Conditions: none
Compute all reachable configurations in the finite state×input-position graph.Do not replace all states by one chosen run or simply repeat the same DFA routine as a different observation.
Step identifiers and dependencies
Rule: subsetdfa_DIRECT_all_NFA_word_configurations_independent_fixedpoint · Uses: G001, S021
S023 · implies
Before
ORIGINAL word=[a7, a7, a7, b7];ALL DFA prefix subsets=[[d7, m7, s7], [m7], [m7], [m7], [e17, e27, f7]];independent direct NFA prefix subsets=[[d7, m7, s7], [m7], [m7], [m7], [e17, e27, f7]]
After
prefix_invariant=Yes;accepted=Yes;base is EPS closure of start;for ANY prefix,append one symbol move then finite EPS suffix to obtain EXACTLY all next reachable states
Conditions: none
General equivalence uses arbitrary-prefix induction with both inclusions:every DFA move has an NFA path witness,and any NFA path for the next prefix decomposes into prior prefix,symbol edge and EPS suffix.Intersection with finals then corresponds to a full accepting run.The fixed No only withholds general equivalence from finite word tests alone;it negates neither this invariant/acceptance nor the theorem.
Step identifiers and dependencies
Rule: subsetdfa_GENERAL_arbitrary_prefix_two_inclusions_acceptance_rule · Uses: G001, S022