Original question and givens
Use the complete finite nondeterministic PDA: states=[push21, pop21, accept21], input_alphabet=[a21, b21], stack_alphabet=[Z21, A21], start_state=push21, bottom_symbol=Z21, final_states=[accept21], transitions=[[push21, a21, Z21, push21, [Z21, A21]], [push21, a21, A21, push21, [A21, A21]], [push21, b21, A21, pop21, []], [pop21, b21, A21, pop21, []], [push21, null, Z21, accept21, [Z21]], [pop21, null, Z21, accept21, [Z21]]]. Alphabets are unique and pairwise disjoint. Each transition is [from,input symbol or null,required top,to,replacement bottom-to-top]. null is epsilon and consumes no input. Configurations are [state,input position,stack] with bottom first and top last. Preserve the bottom marker and accept only after consuming the entire input in a final state, not by empty stack. Input=[a21, b21], supplied trace=[[push21, 0, [Z21]], [push21, 1, [Z21, A21]], [pop21, 2, [Z21]], [accept21, 2, [Z21]]]. Give (input, trace, transition_indices, valid_run, accepted, certificate).
G001 — Use the complete finite nondeterministic PDA: states=[push21, pop21, accept21], input_alphabet=[a21, b21], stack_alphabet=[Z21, A21], start_state=push21, bottom_symbol=Z21, final_states=[accept21], transitions=[[push21, a21, Z21, push21, [Z21, A21]], [push21, a21, A21, push21, [A21, A21]], [push21, b21, A21, pop21, []], [pop21, b21, A21, pop21, []], [push21, null, Z21, accept21, [Z21]], [pop21, null, Z21, accept21, [Z21]]]. Alphabets are unique and pairwise disjoint. Each transition is [from,input symbol or null,required top,to,replacement bottom-to-top]. null is epsilon and consumes no input. Configurations are [state,input position,stack] with bottom first and top last. Preserve the bottom marker and accept only after consuming the entire input in a final state, not by empty stack. Input=[a21, b21], supplied trace=[[push21, 0, [Z21]], [push21, 1, [Z21, A21]], [pop21, 2, [Z21]], [accept21, 2, [Z21]]]. Give (input, trace, transition_indices, valid_run, accepted, certificate).
Step-by-step derivation
S001 · implies
Before
source operation=pda-trace-audit;original snapshot and mathematics retained
After
explicit ordered source output fields=[input, trace, transition_indices, valid_run, accepted, certificate]
Conditions: none
Retain the historical interface marker and list ordered source fields without JavaScript.MVT fields come from the original mode,without padding or answer-shape inference.Tags and fixed No markers retain their claim scope.
Step identifiers and dependencies
Rule: source_ordered_interface_explicit_without_javascript · Uses: G001
S002 · implies
Before
ORIGINAL transition index=0;[from,input_or_null,required_top,to,replacement_bottom_to_top]=[push21, a21, Z21, push21, [Z21, A21]];bottom=Z21
After
states/input/stack symbols legal;null input consumes0;top=bottom requires replacement first bottom,otherwise replacement contains NO bottom;ORIGINAL transition position retained
Conditions: none
Check each original transition's state,input and stack roles without mixing alphabets.Null is epsilon,not an input symbol.The stack is bottom-first/top-last:pop one top then append the replacement in its original order.Apply the declared bottom guard,not an invented stronger convention.
Step identifiers and dependencies
Rule: pda_EVERY_original_transition_roles_epsilon_bottom_guard · Uses: G001, S001
S003 · implies
Before
ORIGINAL transition index=1;[from,input_or_null,required_top,to,replacement_bottom_to_top]=[push21, a21, A21, push21, [A21, A21]];bottom=Z21
After
states/input/stack symbols legal;null input consumes0;top=bottom requires replacement first bottom,otherwise replacement contains NO bottom;ORIGINAL transition position retained
Conditions: none
Check each original transition's state,input and stack roles without mixing alphabets.Null is epsilon,not an input symbol.The stack is bottom-first/top-last:pop one top then append the replacement in its original order.Apply the declared bottom guard,not an invented stronger convention.
Step identifiers and dependencies
Rule: pda_EVERY_original_transition_roles_epsilon_bottom_guard · Uses: G001, S002
S004 · implies
Before
ORIGINAL transition index=2;[from,input_or_null,required_top,to,replacement_bottom_to_top]=[push21, b21, A21, pop21, []];bottom=Z21
After
states/input/stack symbols legal;null input consumes0;top=bottom requires replacement first bottom,otherwise replacement contains NO bottom;ORIGINAL transition position retained
Conditions: none
Check each original transition's state,input and stack roles without mixing alphabets.Null is epsilon,not an input symbol.The stack is bottom-first/top-last:pop one top then append the replacement in its original order.Apply the declared bottom guard,not an invented stronger convention.
Step identifiers and dependencies
Rule: pda_EVERY_original_transition_roles_epsilon_bottom_guard · Uses: G001, S003
S005 · implies
Before
ORIGINAL transition index=3;[from,input_or_null,required_top,to,replacement_bottom_to_top]=[pop21, b21, A21, pop21, []];bottom=Z21
After
states/input/stack symbols legal;null input consumes0;top=bottom requires replacement first bottom,otherwise replacement contains NO bottom;ORIGINAL transition position retained
Conditions: none
Check each original transition's state,input and stack roles without mixing alphabets.Null is epsilon,not an input symbol.The stack is bottom-first/top-last:pop one top then append the replacement in its original order.Apply the declared bottom guard,not an invented stronger convention.
Step identifiers and dependencies
Rule: pda_EVERY_original_transition_roles_epsilon_bottom_guard · Uses: G001, S004
S006 · implies
Before
ORIGINAL transition index=4;[from,input_or_null,required_top,to,replacement_bottom_to_top]=[push21, null, Z21, accept21, [Z21]];bottom=Z21
After
states/input/stack symbols legal;null input consumes0;top=bottom requires replacement first bottom,otherwise replacement contains NO bottom;ORIGINAL transition position retained
Conditions: none
Check each original transition's state,input and stack roles without mixing alphabets.Null is epsilon,not an input symbol.The stack is bottom-first/top-last:pop one top then append the replacement in its original order.Apply the declared bottom guard,not an invented stronger convention.
Step identifiers and dependencies
Rule: pda_EVERY_original_transition_roles_epsilon_bottom_guard · Uses: G001, S005
S007 · implies
Before
ORIGINAL transition index=5;[from,input_or_null,required_top,to,replacement_bottom_to_top]=[pop21, null, Z21, accept21, [Z21]];bottom=Z21
After
states/input/stack symbols legal;null input consumes0;top=bottom requires replacement first bottom,otherwise replacement contains NO bottom;ORIGINAL transition position retained
Conditions: none
Check each original transition's state,input and stack roles without mixing alphabets.Null is epsilon,not an input symbol.The stack is bottom-first/top-last:pop one top then append the replacement in its original order.Apply the declared bottom guard,not an invented stronger convention.
Step identifiers and dependencies
Rule: pda_EVERY_original_transition_roles_epsilon_bottom_guard · Uses: G001, S006
S008 · calculation
Before
PDA complete ORIGINAL transition count := sum(1, 1, 1, 1, 1, 1)
After
PDA complete ORIGINAL transition count = 6
Conditions: none
Substitute original roles,order and established intermediates exactly,without changing source bindings or using floating-point approximations.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S007
S009 · implies
Before
ORIGINAL states=[push21, pop21, accept21],input alphabet=[a21, b21],stack alphabet=[Z21, A21];start=push21,bottom=Z21,final states=[accept21]
After
finite unique pairwise-disjoint alphabets qualified;transition count=6;acceptance convention FULL input in final state,NOT empty stack;qualification alone proves NO run,determinism or CFG equivalence
Conditions: none
A qualified complete definition gives no accepting run,determinism or CFG-equivalence proof.Acceptance may retain a nonempty stack,including its bottom,but requires full input consumption in a final state.
Step identifiers and dependencies
Rule: pda_complete_definition_not_determinism_or_accepting_run · Uses: G001, S008
S010 · implies
Before
ORIGINAL input=[a21, b21];ALL source configurations=[[push21, 0, [Z21]], [push21, 1, [Z21, A21]], [pop21, 2, [Z21]], [accept21, 2, [Z21]]];declared start=push21,bottom=Z21
After
first configuration EXACTLY=[push21, 0, [Z21]];all state/position/stack values legal;this is NOT yet a valid-run or acceptance certificate
Conditions: none
Require the exact initial state,position0 and one bottom.All configurations must be structurally legal before checking their transitions.A legal configuration list alone need not be a valid run.
Step identifiers and dependencies
Rule: pda_trace_ALL_configurations_qualified_actual_initial_required · Uses: G001, S009
S011 · implies
Before
ORIGINAL trace step=0;from=[push21, 0, [Z21]];to=[push21, 1, [Z21, A21]];actual input=[a21, b21]
After
ALL [ORIGINAL transition index,applied_result_or_null]=[[0, [push21, 1, [Z21, A21]]], [1, null], [2, null], [3, null], [4, [accept21, 0, [Z21]]], [5, null]];FIRST matching index=0
Conditions: none
Select the first original transition that actually yields the next configuration.Input-or-null determines consumption;replace only the top and preserve replacement order.On failure retain prior partial indices;a later final state cannot repair a bad step.
Step identifiers and dependencies
Rule: pda_each_actual_stack_update_FIRST_original_transition · Uses: G001, S010
S012 · implies
Before
ORIGINAL trace step=1;from=[push21, 1, [Z21, A21]];to=[pop21, 2, [Z21]];actual input=[a21, b21]
After
ALL [ORIGINAL transition index,applied_result_or_null]=[[0, null], [1, null], [2, [pop21, 2, [Z21]]], [3, null], [4, null], [5, null]];FIRST matching index=2
Conditions: none
Select the first original transition that actually yields the next configuration.Input-or-null determines consumption;replace only the top and preserve replacement order.On failure retain prior partial indices;a later final state cannot repair a bad step.
Step identifiers and dependencies
Rule: pda_each_actual_stack_update_FIRST_original_transition · Uses: G001, S011
S013 · implies
Before
ORIGINAL trace step=2;from=[pop21, 2, [Z21]];to=[accept21, 2, [Z21]];actual input=[a21, b21]
After
ALL [ORIGINAL transition index,applied_result_or_null]=[[0, null], [1, null], [2, null], [3, null], [4, null], [5, [accept21, 2, [Z21]]]];FIRST matching index=5
Conditions: none
Select the first original transition that actually yields the next configuration.Input-or-null determines consumption;replace only the top and preserve replacement order.On failure retain prior partial indices;a later final state cannot repair a bad step.
Step identifiers and dependencies
Rule: pda_each_actual_stack_update_FIRST_original_transition · Uses: G001, S012
S014 · implies
Before
ORIGINAL last config=[accept21, 2, [Z21]];input length=2;matched prior indices=[0, 2, 5]
After
valid_run=Yes;FULL input consumed=Yes;last state final=Yes;accepted=Yes;residual stack may be NONEMPTY
Conditions: none
Acceptance conjoins a valid run,full input consumption and a final state.A residual bottom or other stack symbols may remain.Validity and acceptance differ;the tag cannot turn a false flag into a certificate.
Step identifiers and dependencies
Rule: pda_run_validity_full_consumption_final_state_SEPARATE · Uses: G001, S013