CF0002

continued_fraction_empty_trace

The zero-divisor Euclidean base case has exactly the empty quotient list and no transitions.

Alpha v34 checked-use · first admitted v20 · independently kernel and Lean verified; not Stable

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 theorem in conservative defined notation

∀ a. ∀ z. ∀ c. Beta(z,c,0,(a + ((0 + 0) · S (0 + 0) + (0 + 0))) · S (a + ((0 + 0) · S (0 + 0) + (0 + 0))) + ((0 + 0) · S (0 + 0) + (0 + 0) + ((0 + 0) · S (0 + 0) + (0 + 0))))ContinuedFractionTrace(a,0,0,z,c,0)

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

none
Original expanded first-order statement
forall a z c. (((exists ff_h_cf_initial_exists_state. ff_h_cf_initial_exists_state + S (((a) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((a) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))) = S ((S (0)) * c)) /\ exists ff_q_cf_initial_exists_state. z = ff_q_cf_initial_exists_state * S ((S (0)) * c) + (((a) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((a) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))))) -> (exists cf_gcd_empty. ((((exists ff_h_cf_empty_initial_state. ff_h_cf_empty_initial_state + S (((cf_gcd_empty) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((cf_gcd_empty) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))) = S ((S (0)) * c)) /\ exists ff_q_cf_empty_initial_state. z = ff_q_cf_empty_initial_state * S ((S (0)) * c) + (((cf_gcd_empty) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((cf_gcd_empty) + (((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_empty_terminal_state. ff_h_cf_empty_terminal_state + S (((a) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((a) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))) = S ((S (0)) * c)) /\ exists ff_q_cf_empty_terminal_state. z = ff_q_cf_empty_terminal_state * S ((S (0)) * c) + (((a) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) * S ((a) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0)))) + ((((0) + (0)) * S ((0) + (0)) + ((0) + (0))) + (((0) + (0)) * S ((0) + (0)) + ((0) + (0))))))) /\ forall cf_index_empty. (exists ff_lt_cf_empty_index. ff_lt_cf_empty_index + S cf_index_empty = 0) -> exists cf_old_a_empty cf_old_b_empty cf_tail_empty cf_new_a_empty cf_new_b_empty cf_head_empty cf_quotient_empty. ((((exists ff_h_cf_empty_previous_state. ff_h_cf_empty_previous_state + S (((cf_old_a_empty) + (((cf_old_b_empty) + (cf_tail_empty)) * S ((cf_old_b_empty) + (cf_tail_empty)) + ((cf_tail_empty) + (cf_tail_empty)))) * S ((cf_old_a_empty) + (((cf_old_b_empty) + (cf_tail_empty)) * S ((cf_old_b_empty) + (cf_tail_empty)) + ((cf_tail_empty) + (cf_tail_empty)))) + ((((cf_old_b_empty) + (cf_tail_empty)) * S ((cf_old_b_empty) + (cf_tail_empty)) + ((cf_tail_empty) + (cf_tail_empty))) + (((cf_old_b_empty) + (cf_tail_empty)) * S ((cf_old_b_empty) + (cf_tail_empty)) + ((cf_tail_empty) + (cf_tail_empty))))) = S ((S (cf_index_empty)) * c)) /\ exists ff_q_cf_empty_previous_state. z = ff_q_cf_empty_previous_state * S ((S (cf_index_empty)) * c) + (((cf_old_a_empty) + (((cf_old_b_empty) + (cf_tail_empty)) * S ((cf_old_b_empty) + (cf_tail_empty)) + ((cf_tail_empty) + (cf_tail_empty)))) * S ((cf_old_a_empty) + (((cf_old_b_empty) + (cf_tail_empty)) * S ((cf_old_b_empty) + (cf_tail_empty)) + ((cf_tail_empty) + (cf_tail_empty)))) + ((((cf_old_b_empty) + (cf_tail_empty)) * S ((cf_old_b_empty) + (cf_tail_empty)) + ((cf_tail_empty) + (cf_tail_empty))) + (((cf_old_b_empty) + (cf_tail_empty)) * S ((cf_old_b_empty) + (cf_tail_empty)) + ((cf_tail_empty) + (cf_tail_empty))))))) /\ ((((exists ff_h_cf_empty_following_state. ff_h_cf_empty_following_state + S (((cf_new_a_empty) + (((cf_new_b_empty) + (cf_head_empty)) * S ((cf_new_b_empty) + (cf_head_empty)) + ((cf_head_empty) + (cf_head_empty)))) * S ((cf_new_a_empty) + (((cf_new_b_empty) + (cf_head_empty)) * S ((cf_new_b_empty) + (cf_head_empty)) + ((cf_head_empty) + (cf_head_empty)))) + ((((cf_new_b_empty) + (cf_head_empty)) * S ((cf_new_b_empty) + (cf_head_empty)) + ((cf_head_empty) + (cf_head_empty))) + (((cf_new_b_empty) + (cf_head_empty)) * S ((cf_new_b_empty) + (cf_head_empty)) + ((cf_head_empty) + (cf_head_empty))))) = S ((S (S cf_index_empty)) * c)) /\ exists ff_q_cf_empty_following_state. z = ff_q_cf_empty_following_state * S ((S (S cf_index_empty)) * c) + (((cf_new_a_empty) + (((cf_new_b_empty) + (cf_head_empty)) * S ((cf_new_b_empty) + (cf_head_empty)) + ((cf_head_empty) + (cf_head_empty)))) * S ((cf_new_a_empty) + (((cf_new_b_empty) + (cf_head_empty)) * S ((cf_new_b_empty) + (cf_head_empty)) + ((cf_head_empty) + (cf_head_empty)))) + ((((cf_new_b_empty) + (cf_head_empty)) * S ((cf_new_b_empty) + (cf_head_empty)) + ((cf_head_empty) + (cf_head_empty))) + (((cf_new_b_empty) + (cf_head_empty)) * S ((cf_new_b_empty) + (cf_head_empty)) + ((cf_head_empty) + (cf_head_empty))))))) /\ (cf_new_b_empty = cf_old_a_empty /\ (cf_new_a_empty = cf_new_b_empty * cf_quotient_empty + cf_old_b_empty /\ ((exists ff_lt_cf_empty_remainder. ff_lt_cf_empty_remainder + S cf_old_b_empty = cf_new_b_empty) /\ (cf_head_empty = S ((cf_quotient_empty + cf_tail_empty) * S (cf_quotient_empty + cf_tail_empty) + (cf_tail_empty + cf_tail_empty)))))))))))

Complete unchanged native tactic proof

All 16 lines are the exact independently kernel-checked original script.

Read the argument

Proof checkpoints

16 script commands · 10 reading checkpoints · 0 local claims

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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

01Fix variables and assumptionsL1–4

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro a
  2. L2
    intro z
  3. L3
    intro c
  4. L4
    intro hinitial
02Construct an explicit witnessL5–5

Supply the displayed value, then prove that it has the required property.

  1. L5
    exists a
03Separate the logical casesL6–6

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L6
    split
04Use earlier factsL7–7

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L7
    exact hinitial
05Separate the logical casesL8–8

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L8
    split
06Use earlier factsL9–9

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L9
    exact hinitial
07Fix variables and assumptionsL10–11

Work with arbitrary variables or the premises of the current implication.

  1. L10
    intro i
  2. L11
    intro hi
08Separate the logical casesL12–13

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L12
    exfalso
  2. L13
    cases hi
09Calculate and transport equalitiesL14–14

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L14
    rewrite PA4 at hi_witness
10Use earlier factsL15–16

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L15
    apply PA1
  2. L16
    exact hi_witness

Library-wide reading audit

Original defined command ledger · 16 lines
  1. 0001intro a
  2. 0002intro z
  3. 0003intro c
  4. 0004intro hinitial
  5. 0005exists a
  6. 0006split
  7. 0007exact hinitial
  8. 0008split
  9. 0009exact hinitial
  10. 0010intro i
  11. 0011intro hi
  12. 0012exfalso
  13. 0013cases hi
  14. 0014rewrite PA4 at hi_witness
  15. 0015apply PA1
  16. 0016exact hi_witness