Original question and givens
Use the complete finite grammar: nonterminals=[S20, A20], terminals=[a20, b20], start=S20, productions=[[S20, [a20, A20]], [A20, [b20, A20]], [A20, []]] and allow_epsilon=true. Alphabets must be unique and disjoint, the start belongs to nonterminals, and each production [lhs,rhs] has exactly one nonterminal lhs and a finite legal-symbol rhs. Empty rhs is permitted only under the explicit epsilon convention. Keep original symbol and production order. Search word=[a20, b20] with max_steps=1. Give (word, max_steps, found_in_bounded_search, nonmembership_claim, boundary).
G001 — Use the complete finite grammar: nonterminals=[S20, A20], terminals=[a20, b20], start=S20, productions=[[S20, [a20, A20]], [A20, [b20, A20]], [A20, []]] and allow_epsilon=true. Alphabets must be unique and disjoint, the start belongs to nonterminals, and each production [lhs,rhs] has exactly one nonterminal lhs and a finite legal-symbol rhs. Empty rhs is permitted only under the explicit epsilon convention. Keep original symbol and production order. Search word=[a20, b20] with max_steps=1. Give (word, max_steps, found_in_bounded_search, nonmembership_claim, boundary).
Step-by-step derivation
S001 · implies
Before
source operation=cfg-bounded-search-boundary;original snapshot and mathematics retained
After
explicit ordered source output fields=[word, max_steps, found_in_bounded_search, nonmembership_claim, boundary]
Conditions: none
Keep the original historical interface marker while listing ordered source fields without JavaScript.Tags are not additional evidence;fixed No markers retain their source claim scope.
Step identifiers and dependencies
Rule: source_ordered_interface_explicit_without_javascript · Uses: G001
S002 · implies
Before
ORIGINAL production index=0;lhs=S20,rhs=[a20, A20];N=[S20, A20],T=[a20, b20],allow_epsilon=Yes
After
lhs is ONE declared nonterminal;every rhs symbol legal;empty rhs accepted ONLY under the explicit epsilon convention;original production position retained
Conditions: none
Each production has one nonterminal on the left.Check every right-hand symbol and the explicit epsilon convention.Duplicate production positions may exist;sorting them would change first-witness indices.
Step identifiers and dependencies
Rule: cfg_each_original_production_single_nonterminal_legal_rhs · Uses: G001, S001
S003 · implies
Before
ORIGINAL production index=1;lhs=A20,rhs=[b20, A20];N=[S20, A20],T=[a20, b20],allow_epsilon=Yes
After
lhs is ONE declared nonterminal;every rhs symbol legal;empty rhs accepted ONLY under the explicit epsilon convention;original production position retained
Conditions: none
Each production has one nonterminal on the left.Check every right-hand symbol and the explicit epsilon convention.Duplicate production positions may exist;sorting them would change first-witness indices.
Step identifiers and dependencies
Rule: cfg_each_original_production_single_nonterminal_legal_rhs · Uses: G001, S002
S004 · implies
Before
ORIGINAL production index=2;lhs=A20,rhs=[];N=[S20, A20],T=[a20, b20],allow_epsilon=Yes
After
lhs is ONE declared nonterminal;every rhs symbol legal;empty rhs accepted ONLY under the explicit epsilon convention;original production position retained
Conditions: none
Each production has one nonterminal on the left.Check every right-hand symbol and the explicit epsilon convention.Duplicate production positions may exist;sorting them would change first-witness indices.
Step identifiers and dependencies
Rule: cfg_each_original_production_single_nonterminal_legal_rhs · Uses: G001, S003
S005 · implies
Before
ORIGINAL unique disjoint N=[S20, A20],T=[a20, b20];start=S20;complete productions=[[S20, [a20, A20]], [A20, [b20, A20]], [A20, []]];allow_epsilon=Yes
After
start belongs to nonterminals;finite grammar qualified;NO derivation,membership,regularity,unambiguity or PDA equivalence inferred
Conditions: none
Grammar qualification alone supplies no derivation for a word and no regularity or unambiguity claim.Retain both alphabet orders.
Step identifiers and dependencies
Rule: cfg_qualified_alphabets_start_not_language_property · Uses: G001, S004
S006 · implies
Before
ORIGINAL target form=[a20, b20];start=S20;max_steps=1;length cap=4
After
initial depth0 frontier=[[S20]];target already found=No;form equality itself does NOT require terminal-only target
Conditions: none
This is the declared depth-and-length-bounded search,not a general recognizer.Check exact form equality at depth0.A found form with nonterminals is not a terminal-word membership certificate.
Step identifiers and dependencies
Rule: cfg_bounded_search_initial_exact_form_not_terminal_membership · Uses: G001, S005
S007 · implies
Before
ORIGINAL depth=0;ALL frontier forms=[[S20]];length cap=4
After
ALL [from,position,production_index,next,target_equal,within_cap] transitions=[[[S20], 0, 0, [a20, A20], No, Yes]];next distinct frontier=[[a20, A20]];any hit=No
Conditions: none
Expand every legal position/production at this layer,deduplicating equal forms within the layer.Check target equality before the source length filter.Display sorting makes a set readable without altering production indices or existential found status.
Step identifiers and dependencies
Rule: cfg_every_bounded_frontier_expansion_and_length_filter · Uses: G001, S006
S008 · implies
Before
ORIGINAL target=[a20, b20],depth bound=1;bounded found=No
After
nonmembership_claim fixed No whether found or not;longer or excluded derivations have NOT been ruled out
Conditions: none
A no-hit rules out only paths within these depth/length limits.Without a completeness bound it is not a nonmembership proof.A found terminal string can separately witness membership,but not unambiguity.
Step identifiers and dependencies
Rule: cfg_bounded_nohit_never_nonmembership_claim · Uses: G001, S007