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.
Exact expanded first-order arithmetic statement
forall a b B. b = 0 -> (exists elb_list_base elb_history_base elb_scale_base elb_steps_base. ((exists cf_gcd_elb_base_budget. ((((exists ff_h_cf_elb_base_budget_initial_state. ff_h_cf_elb_base_budget_initial_state + S (((cf_gcd_elb_base_budget) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((cf_gcd_elb_base_budget) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))) = S ((S (0)) * elb_scale_base)) /\ exists ff_q_cf_elb_base_budget_initial_state. elb_history_base = ff_q_cf_elb_base_budget_initial_state * S ((S (0)) * elb_scale_base) + (((cf_gcd_elb_base_budget) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((cf_gcd_elb_base_budget) + (((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_elb_base_budget_terminal_state. ff_h_cf_elb_base_budget_terminal_state + S (((a) + (((b) + (elb_list_base)) * S ((b) + (elb_list_base)) + ((elb_list_base) + (elb_list_base)))) * S ((a) + (((b) + (elb_list_base)) * S ((b) + (elb_list_base)) + ((elb_list_base) + (elb_list_base)))) + ((((b) + (elb_list_base)) * S ((b) + (elb_list_base)) + ((elb_list_base) + (elb_list_base))) + (((b) + (elb_list_base)) * S ((b) + (elb_list_base)) + ((elb_list_base) + (elb_list_base))))) = S ((S (elb_steps_base)) * elb_scale_base)) /\ exists ff_q_cf_elb_base_budget_terminal_state. elb_history_base = ff_q_cf_elb_base_budget_terminal_state * S ((S (elb_steps_base)) * elb_scale_base) + (((a) + (((b) + (elb_list_base)) * S ((b) + (elb_list_base)) + ((elb_list_base) + (elb_list_base)))) * S ((a) + (((b) + (elb_list_base)) * S ((b) + (elb_list_base)) + ((elb_list_base) + (elb_list_base)))) + ((((b) + (elb_list_base)) * S ((b) + (elb_list_base)) + ((elb_list_base) + (elb_list_base))) + (((b) + (elb_list_base)) * S ((b) + (elb_list_base)) + ((elb_list_base) + (elb_list_base))))))) /\ forall cf_index_elb_base_budget. (exists ff_lt_cf_elb_base_budget_index. ff_lt_cf_elb_base_budget_index + S cf_index_elb_base_budget = elb_steps_base) -> exists cf_old_a_elb_base_budget cf_old_b_elb_base_budget cf_tail_elb_base_budget cf_new_a_elb_base_budget cf_new_b_elb_base_budget cf_head_elb_base_budget cf_quotient_elb_base_budget. ((((exists ff_h_cf_elb_base_budget_previous_state. ff_h_cf_elb_base_budget_previous_state + S (((cf_old_a_elb_base_budget) + (((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) * S ((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) + ((cf_tail_elb_base_budget) + (cf_tail_elb_base_budget)))) * S ((cf_old_a_elb_base_budget) + (((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) * S ((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) + ((cf_tail_elb_base_budget) + (cf_tail_elb_base_budget)))) + ((((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) * S ((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) + ((cf_tail_elb_base_budget) + (cf_tail_elb_base_budget))) + (((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) * S ((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) + ((cf_tail_elb_base_budget) + (cf_tail_elb_base_budget))))) = S ((S (cf_index_elb_base_budget)) * elb_scale_base)) /\ exists ff_q_cf_elb_base_budget_previous_state. elb_history_base = ff_q_cf_elb_base_budget_previous_state * S ((S (cf_index_elb_base_budget)) * elb_scale_base) + (((cf_old_a_elb_base_budget) + (((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) * S ((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) + ((cf_tail_elb_base_budget) + (cf_tail_elb_base_budget)))) * S ((cf_old_a_elb_base_budget) + (((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) * S ((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) + ((cf_tail_elb_base_budget) + (cf_tail_elb_base_budget)))) + ((((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) * S ((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) + ((cf_tail_elb_base_budget) + (cf_tail_elb_base_budget))) + (((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) * S ((cf_old_b_elb_base_budget) + (cf_tail_elb_base_budget)) + ((cf_tail_elb_base_budget) + (cf_tail_elb_base_budget))))))) /\ ((((exists ff_h_cf_elb_base_budget_following_state. ff_h_cf_elb_base_budget_following_state + S (((cf_new_a_elb_base_budget) + (((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) * S ((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) + ((cf_head_elb_base_budget) + (cf_head_elb_base_budget)))) * S ((cf_new_a_elb_base_budget) + (((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) * S ((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) + ((cf_head_elb_base_budget) + (cf_head_elb_base_budget)))) + ((((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) * S ((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) + ((cf_head_elb_base_budget) + (cf_head_elb_base_budget))) + (((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) * S ((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) + ((cf_head_elb_base_budget) + (cf_head_elb_base_budget))))) = S ((S (S cf_index_elb_base_budget)) * elb_scale_base)) /\ exists ff_q_cf_elb_base_budget_following_state. elb_history_base = ff_q_cf_elb_base_budget_following_state * S ((S (S cf_index_elb_base_budget)) * elb_scale_base) + (((cf_new_a_elb_base_budget) + (((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) * S ((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) + ((cf_head_elb_base_budget) + (cf_head_elb_base_budget)))) * S ((cf_new_a_elb_base_budget) + (((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) * S ((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) + ((cf_head_elb_base_budget) + (cf_head_elb_base_budget)))) + ((((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) * S ((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) + ((cf_head_elb_base_budget) + (cf_head_elb_base_budget))) + (((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) * S ((cf_new_b_elb_base_budget) + (cf_head_elb_base_budget)) + ((cf_head_elb_base_budget) + (cf_head_elb_base_budget))))))) /\ (cf_new_b_elb_base_budget = cf_old_a_elb_base_budget /\ (cf_new_a_elb_base_budget = cf_new_b_elb_base_budget * cf_quotient_elb_base_budget + cf_old_b_elb_base_budget /\ ((exists ff_lt_cf_elb_base_budget_remainder. ff_lt_cf_elb_base_budget_remainder + S cf_old_b_elb_base_budget = cf_new_b_elb_base_budget) /\ (cf_head_elb_base_budget = S ((cf_quotient_elb_base_budget + cf_tail_elb_base_budget) * S (cf_quotient_elb_base_budget + cf_tail_elb_base_budget) + (cf_tail_elb_base_budget + cf_tail_elb_base_budget))))))))))) /\ exists elb_gap_base. elb_gap_base + elb_steps_base = (B)))Constructive proof overview
Generated structural guide
A zero-divisor input has a genuine zero-step Euclidean history within every supplied budget.
The unchanged tactic script uses 2 declared prerequisites and contains 25 exact native proof lines.
Alpha v34 checked-use · first admitted v23 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
euclidean_trace_exists_linear Alpha theorem; checked-use authorized le_zero Stable theorem; checked-use authorizedDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
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–4
02Use earlier factsL5–6
03Separate the logical casesL7–11
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
04Establish hstepsL12–16
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le zero.
05Construct an explicit witnessL17–20
06Separate the logical casesL21–21
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L21
split
07Use earlier factsL22–22
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L22
exact euclidean_trace_exists_linear_witness_witness_witness_witness_left
08Construct an explicit witnessL23–23
Supply the displayed value, then prove that it has the required property.
- L23
exists B
Original exact command ledger · 25 lines
- 0001
intro a - 0002
intro b - 0003
intro B - 0004
intro hzero - 0005
specialize euclidean_trace_exists_linear a - 0006
specialize euclidean_trace_exists_linear b - 0007
cases euclidean_trace_exists_linear - 0008
cases euclidean_trace_exists_linear_witness - 0009
cases euclidean_trace_exists_linear_witness_witness - 0010
cases euclidean_trace_exists_linear_witness_witness_witness - 0011
cases euclidean_trace_exists_linear_witness_witness_witness_witness - 0012
have hsteps : x3 = 0 - 0013
specialize le_zero x3 - 0014
apply le_zero - 0015
rewrite hzero at euclidean_trace_exists_linear_witness_witness_witness_witness_right - 0016
exact euclidean_trace_exists_linear_witness_witness_witness_witness_right - 0017
exists x - 0018
exists x1 - 0019
exists x2 - 0020
exists x3 - 0021
split - 0022
exact euclidean_trace_exists_linear_witness_witness_witness_witness_left - 0023
exists B - 0024
rewrite hsteps - 0025
simp
Separate complete second-wave branches: Full T13 proof · Alpha v27.