Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
G101 was OPEN when this family was first admitted in Alpha v21. It is now CLOSED in Alpha v23: the actual anchored Euclidean history, terminal gcd, and exact bound steps≤2*BitLen(b)+1 are proved.
Exact theorem in conservative defined notation
∀ a. ∀ b. ¬b = 0 → ∃ x. ∃ y. EuclideanExecution(a,b,x,S y)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete unchanged native tactic proof
All 24 lines are the exact independently kernel-checked original script.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
01Fix variables and assumptionsL1–3
02Use earlier factsL4–5
03Separate the logical casesL6–6
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L6
cases gcd_exists_relational
04Use earlier factsL7–8
05Establish htraceL9–11
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply continued fraction nonzero divisor exists.
- L9
have htrace : ∃ s. ∃ h. ∃ e. ∃ k. ¬s = 0 ∧ ContinuedFractionTrace(a,b,s,h,e,S k)Definitions: ContinuedFractionTraceOriginal native command in the exact edition - L10
apply continued_fraction_nonzero_divisor_exists - L11
exact hb
06Separate the logical casesL12–16
07Construct an explicit witnessL17–21
08Separate the logical casesL22–22
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L22
split
Original defined command ledger · 24 lines
- 0001
intro a - 0002
intro b - 0003
intro hb - 0004
specialize gcd_exists_relational a - 0005
specialize gcd_exists_relational b - 0006
cases gcd_exists_relational - 0007
specialize continued_fraction_nonzero_divisor_exists a - 0008
specialize continued_fraction_nonzero_divisor_exists b - 0009
have htrace : exists s h e k. (~(s = 0) /\ (exists cf_gcd_ec_nonzero_have. ((((exists ff_h_cf_ec_nonzero_have_initial_state. ff_h_cf_ec_nonzero_have_initial_state + S (((cf_gcd_ec_nonzero_have) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((cf_gcd_ec_nonzero_have) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))) = S ((S (0)) * e)) /\ exists ff_q_cf_ec_nonzero_have_initial_state. h = ff_q_cf_ec_nonzero_have_initial_state * S ((S (0)) * e) + (((cf_gcd_ec_nonzero_have) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((cf_gcd_ec_nonzero_have) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))))) /\ ((((exists ff_h_cf_ec_nonzero_have_terminal_state. ff_h_cf_ec_nonzero_have_terminal_state + S (((a) + (((b) + (s)) * S ((b) + (s)) + ((s) + (s)))) * S ((a) + (((b) + (s)) * S ((b) + (s)) + ((s) + (s)))) + ((((b) + (s)) * S ((b) + (s)) + ((s) + (s))) + (((b) + (s)) * S ((b) + (s)) + ((s) + (s))))) = S ((S (S k)) * e)) /\ exists ff_q_cf_ec_nonzero_have_terminal_state. h = ff_q_cf_ec_nonzero_have_terminal_state * S ((S (S k)) * e) + (((a) + (((b) + (s)) * S ((b) + (s)) + ((s) + (s)))) * S ((a) + (((b) + (s)) * S ((b) + (s)) + ((s) + (s)))) + ((((b) + (s)) * S ((b) + (s)) + ((s) + (s))) + (((b) + (s)) * S ((b) + (s)) + ((s) + (s))))))) /\ forall cf_index_ec_nonzero_have. (exists ff_lt_cf_ec_nonzero_have_index. ff_lt_cf_ec_nonzero_have_index + S cf_index_ec_nonzero_have = S k) -> exists cf_old_a_ec_nonzero_have cf_old_b_ec_nonzero_have cf_tail_ec_nonzero_have cf_new_a_ec_nonzero_have cf_new_b_ec_nonzero_have cf_head_ec_nonzero_have cf_quotient_ec_nonzero_have. ((((exists ff_h_cf_ec_nonzero_have_previous_state. ff_h_cf_ec_nonzero_have_previous_state + S (((cf_old_a_ec_nonzero_have) + (((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) * S ((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) + ((cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have)))) * S ((cf_old_a_ec_nonzero_have) + (((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) * S ((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) + ((cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have)))) + ((((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) * S ((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) + ((cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have))) + (((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) * S ((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) + ((cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have))))) = S ((S (cf_index_ec_nonzero_have)) * e)) /\ exists ff_q_cf_ec_nonzero_have_previous_state. h = ff_q_cf_ec_nonzero_have_previous_state * S ((S (cf_index_ec_nonzero_have)) * e) + (((cf_old_a_ec_nonzero_have) + (((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) * S ((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) + ((cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have)))) * S ((cf_old_a_ec_nonzero_have) + (((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) * S ((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) + ((cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have)))) + ((((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) * S ((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) + ((cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have))) + (((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) * S ((cf_old_b_ec_nonzero_have) + (cf_tail_ec_nonzero_have)) + ((cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have))))))) /\ ((((exists ff_h_cf_ec_nonzero_have_following_state. ff_h_cf_ec_nonzero_have_following_state + S (((cf_new_a_ec_nonzero_have) + (((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) * S ((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) + ((cf_head_ec_nonzero_have) + (cf_head_ec_nonzero_have)))) * S ((cf_new_a_ec_nonzero_have) + (((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) * S ((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) + ((cf_head_ec_nonzero_have) + (cf_head_ec_nonzero_have)))) + ((((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) * S ((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) + ((cf_head_ec_nonzero_have) + (cf_head_ec_nonzero_have))) + (((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) * S ((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) + ((cf_head_ec_nonzero_have) + (cf_head_ec_nonzero_have))))) = S ((S (S cf_index_ec_nonzero_have)) * e)) /\ exists ff_q_cf_ec_nonzero_have_following_state. h = ff_q_cf_ec_nonzero_have_following_state * S ((S (S cf_index_ec_nonzero_have)) * e) + (((cf_new_a_ec_nonzero_have) + (((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) * S ((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) + ((cf_head_ec_nonzero_have) + (cf_head_ec_nonzero_have)))) * S ((cf_new_a_ec_nonzero_have) + (((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) * S ((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) + ((cf_head_ec_nonzero_have) + (cf_head_ec_nonzero_have)))) + ((((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) * S ((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) + ((cf_head_ec_nonzero_have) + (cf_head_ec_nonzero_have))) + (((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) * S ((cf_new_b_ec_nonzero_have) + (cf_head_ec_nonzero_have)) + ((cf_head_ec_nonzero_have) + (cf_head_ec_nonzero_have))))))) /\ (cf_new_b_ec_nonzero_have = cf_old_a_ec_nonzero_have /\ (cf_new_a_ec_nonzero_have = cf_new_b_ec_nonzero_have * cf_quotient_ec_nonzero_have + cf_old_b_ec_nonzero_have /\ ((exists ff_lt_cf_ec_nonzero_have_remainder. ff_lt_cf_ec_nonzero_have_remainder + S cf_old_b_ec_nonzero_have = cf_new_b_ec_nonzero_have) /\ (cf_head_ec_nonzero_have = S ((cf_quotient_ec_nonzero_have + cf_tail_ec_nonzero_have) * S (cf_quotient_ec_nonzero_have + cf_tail_ec_nonzero_have) + (cf_tail_ec_nonzero_have + cf_tail_ec_nonzero_have)))))))))))) - 0010
apply continued_fraction_nonzero_divisor_exists - 0011
exact hb - 0012
cases htrace - 0013
cases htrace_witness - 0014
cases htrace_witness_witness - 0015
cases htrace_witness_witness_witness - 0016
cases htrace_witness_witness_witness_witness - 0017
exists x - 0018
exists x4 - 0019
exists x1 - 0020
exists x2 - 0021
exists x3 - 0022
split - 0023
exact htrace_witness_witness_witness_witness_right - 0024
exact gcd_exists_relational_witness