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 at this family's Alpha-v22 first admission: its complete anchored trace and actual terminal gcd were proved but its logarithmic bound was not. G101 is now CLOSED in Alpha v23, including the exact first-order bound steps≤2*BitLen(b)+1.
Exact theorem in conservative defined notation
∀ a. ∀ b. ∃ g. ∃ l. EuclideanAnchoredExecution(a,b,g,l)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete unchanged native tactic proof
All 31 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.
Named ingredients (1)
01Fix variables and assumptionsL1–2
02Use earlier factsL3–4
03Separate the logical casesL5–6
04Establish hidentifiedL7–13
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply euclidean execution terminal identified.
- L7
have hidentified : ∃ s. ∃ h. ∃ e. ContinuedFractionTrace(a,b,s,h,e,x1) ∧ EuclideanStateAt(h,e,0,x,0,0)Definitions: ContinuedFractionTraceEuclideanStateAtOriginal native command in the exact edition - L8
specialize euclidean_execution_terminal_identified a - L9
specialize euclidean_execution_terminal_identified b - L10
specialize euclidean_execution_terminal_identified x - L11
specialize euclidean_execution_terminal_identified x1 - L12
apply euclidean_execution_terminal_identified - L13
exact euclidean_execution_exists_witness_witness
05Separate the logical casesL14–21
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L14
cases hidentified - L15
cases hidentified_witness - L16
cases hidentified_witness_witness - L17
cases hidentified_witness_witness_witness - L18
cases euclidean_execution_exists_witness_witness - L19
cases euclidean_execution_exists_witness_witness_witness - L20
cases euclidean_execution_exists_witness_witness_witness_witness - L21
cases euclidean_execution_exists_witness_witness_witness_witness_witness
06Construct an explicit witnessL22–26
07Separate the logical casesL27–27
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L27
split
08Use earlier factsL28–28
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L28
exact hidentified_witness_witness_witness_left
09Separate the logical casesL29–29
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L29
split
Original defined command ledger · 31 lines
- 0001
intro a - 0002
intro b - 0003
specialize euclidean_execution_exists a - 0004
specialize euclidean_execution_exists b - 0005
cases euclidean_execution_exists - 0006
cases euclidean_execution_exists_witness - 0007
have hidentified : exists s h e. ((exists cf_gcd_egt_exists_trace. ((((exists ff_h_cf_egt_exists_trace_initial_state. ff_h_cf_egt_exists_trace_initial_state + S (((cf_gcd_egt_exists_trace) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((cf_gcd_egt_exists_trace) + (((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_egt_exists_trace_initial_state. h = ff_q_cf_egt_exists_trace_initial_state * S ((S (0)) * e) + (((cf_gcd_egt_exists_trace) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((cf_gcd_egt_exists_trace) + (((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_egt_exists_trace_terminal_state. ff_h_cf_egt_exists_trace_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 (x1)) * e)) /\ exists ff_q_cf_egt_exists_trace_terminal_state. h = ff_q_cf_egt_exists_trace_terminal_state * S ((S (x1)) * 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_egt_exists_trace. (exists ff_lt_cf_egt_exists_trace_index. ff_lt_cf_egt_exists_trace_index + S cf_index_egt_exists_trace = x1) -> exists cf_old_a_egt_exists_trace cf_old_b_egt_exists_trace cf_tail_egt_exists_trace cf_new_a_egt_exists_trace cf_new_b_egt_exists_trace cf_head_egt_exists_trace cf_quotient_egt_exists_trace. ((((exists ff_h_cf_egt_exists_trace_previous_state. ff_h_cf_egt_exists_trace_previous_state + S (((cf_old_a_egt_exists_trace) + (((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) * S ((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) + ((cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace)))) * S ((cf_old_a_egt_exists_trace) + (((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) * S ((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) + ((cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace)))) + ((((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) * S ((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) + ((cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace))) + (((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) * S ((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) + ((cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace))))) = S ((S (cf_index_egt_exists_trace)) * e)) /\ exists ff_q_cf_egt_exists_trace_previous_state. h = ff_q_cf_egt_exists_trace_previous_state * S ((S (cf_index_egt_exists_trace)) * e) + (((cf_old_a_egt_exists_trace) + (((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) * S ((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) + ((cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace)))) * S ((cf_old_a_egt_exists_trace) + (((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) * S ((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) + ((cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace)))) + ((((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) * S ((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) + ((cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace))) + (((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) * S ((cf_old_b_egt_exists_trace) + (cf_tail_egt_exists_trace)) + ((cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace))))))) /\ ((((exists ff_h_cf_egt_exists_trace_following_state. ff_h_cf_egt_exists_trace_following_state + S (((cf_new_a_egt_exists_trace) + (((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) * S ((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) + ((cf_head_egt_exists_trace) + (cf_head_egt_exists_trace)))) * S ((cf_new_a_egt_exists_trace) + (((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) * S ((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) + ((cf_head_egt_exists_trace) + (cf_head_egt_exists_trace)))) + ((((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) * S ((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) + ((cf_head_egt_exists_trace) + (cf_head_egt_exists_trace))) + (((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) * S ((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) + ((cf_head_egt_exists_trace) + (cf_head_egt_exists_trace))))) = S ((S (S cf_index_egt_exists_trace)) * e)) /\ exists ff_q_cf_egt_exists_trace_following_state. h = ff_q_cf_egt_exists_trace_following_state * S ((S (S cf_index_egt_exists_trace)) * e) + (((cf_new_a_egt_exists_trace) + (((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) * S ((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) + ((cf_head_egt_exists_trace) + (cf_head_egt_exists_trace)))) * S ((cf_new_a_egt_exists_trace) + (((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) * S ((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) + ((cf_head_egt_exists_trace) + (cf_head_egt_exists_trace)))) + ((((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) * S ((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) + ((cf_head_egt_exists_trace) + (cf_head_egt_exists_trace))) + (((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) * S ((cf_new_b_egt_exists_trace) + (cf_head_egt_exists_trace)) + ((cf_head_egt_exists_trace) + (cf_head_egt_exists_trace))))))) /\ (cf_new_b_egt_exists_trace = cf_old_a_egt_exists_trace /\ (cf_new_a_egt_exists_trace = cf_new_b_egt_exists_trace * cf_quotient_egt_exists_trace + cf_old_b_egt_exists_trace /\ ((exists ff_lt_cf_egt_exists_trace_remainder. ff_lt_cf_egt_exists_trace_remainder + S cf_old_b_egt_exists_trace = cf_new_b_egt_exists_trace) /\ (cf_head_egt_exists_trace = S ((cf_quotient_egt_exists_trace + cf_tail_egt_exists_trace) * S (cf_quotient_egt_exists_trace + cf_tail_egt_exists_trace) + (cf_tail_egt_exists_trace + cf_tail_egt_exists_trace))))))))))) /\ (((exists ff_h_cf_egt_exists_state_state. ff_h_cf_egt_exists_state_state + S (((x) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((x) + (((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_egt_exists_state_state. h = ff_q_cf_egt_exists_state_state * S ((S (0)) * e) + (((x) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((x) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))))))) - 0008
specialize euclidean_execution_terminal_identified a - 0009
specialize euclidean_execution_terminal_identified b - 0010
specialize euclidean_execution_terminal_identified x - 0011
specialize euclidean_execution_terminal_identified x1 - 0012
apply euclidean_execution_terminal_identified - 0013
exact euclidean_execution_exists_witness_witness - 0014
cases hidentified - 0015
cases hidentified_witness - 0016
cases hidentified_witness_witness - 0017
cases hidentified_witness_witness_witness - 0018
cases euclidean_execution_exists_witness_witness - 0019
cases euclidean_execution_exists_witness_witness_witness - 0020
cases euclidean_execution_exists_witness_witness_witness_witness - 0021
cases euclidean_execution_exists_witness_witness_witness_witness_witness - 0022
exists x - 0023
exists x1 - 0024
exists x2 - 0025
exists x3 - 0026
exists x4 - 0027
split - 0028
exact hidentified_witness_witness_witness_left - 0029
split - 0030
exact hidentified_witness_witness_witness_right - 0031
exact euclidean_execution_exists_witness_witness_witness_witness_witness_right