LU001M · theorem body

lucas_prime_digit_chain_terminal_zero

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

Every prime-base digit trace longer than its original natural has an actual terminal quotient equal to zero.

historical independently replay-verified empty-context experiment; the experiment itself persisted no certificate and granted no release authority; current checked use follows separately sealed proof bundles; no Stable promotion.

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.

Statement with defined notation

∀ p. ∀ n. ∀ qb. ∀ qc. ∀ db. ∀ dc. ∀ l. ∀ q. Prime(p)Lt(n,l)BetaAt(qb,qc,0,n) ∧ (∀ x. Lt(x,l) → ∃ y. ∃ z. ∃ m. BetaAt(qb,qc,x,y) ∧ (BetaAt(qb,qc,S x,z) ∧ (BetaAt(db,dc,x,m)DivRem(y,p,z,m)))) → BetaAt(qb,qc,l,q) → q = 0

Every purple notation token opens its conservative definition. This reading surface never changes the unchanged intuitionistic kernel or confers checked-use authority.

Definitions used by this theorem

In the theorem statement

In local proof propositions

Exact expanded first-order statement
forall p n qb qc db dc l q. ((~(p = 1) /\ forall frm_prime_left_lmd_terminal_bound_prime frm_prime_right_lmd_terminal_bound_prime. p = frm_prime_left_lmd_terminal_bound_prime * frm_prime_right_lmd_terminal_bound_prime -> frm_prime_left_lmd_terminal_bound_prime = 1 \/ frm_prime_right_lmd_terminal_bound_prime = 1)) -> (exists lmd_gap_terminal_length. lmd_gap_terminal_length + S (n) = (l)) -> (((((exists ff_h_lmd_zero_terminal_chain_initial. ff_h_lmd_zero_terminal_chain_initial + S (n) = S ((S (0)) * qc)) /\ exists ff_q_lmd_zero_terminal_chain_initial. qb = ff_q_lmd_zero_terminal_chain_initial * S ((S (0)) * qc) + (n))) /\ forall lmd_index_zero_terminal_chain. (exists lmd_gap_zero_terminal_chain_index. lmd_gap_zero_terminal_chain_index + S (lmd_index_zero_terminal_chain) = (l)) -> exists lmd_current_zero_terminal_chain lmd_successor_zero_terminal_chain lmd_digit_zero_terminal_chain. ((((exists ff_h_lmd_zero_terminal_chain_current. ff_h_lmd_zero_terminal_chain_current + S (lmd_current_zero_terminal_chain) = S ((S (lmd_index_zero_terminal_chain)) * qc)) /\ exists ff_q_lmd_zero_terminal_chain_current. qb = ff_q_lmd_zero_terminal_chain_current * S ((S (lmd_index_zero_terminal_chain)) * qc) + (lmd_current_zero_terminal_chain))) /\ ((((exists ff_h_lmd_zero_terminal_chain_successor. ff_h_lmd_zero_terminal_chain_successor + S (lmd_successor_zero_terminal_chain) = S ((S (S lmd_index_zero_terminal_chain)) * qc)) /\ exists ff_q_lmd_zero_terminal_chain_successor. qb = ff_q_lmd_zero_terminal_chain_successor * S ((S (S lmd_index_zero_terminal_chain)) * qc) + (lmd_successor_zero_terminal_chain))) /\ ((((exists ff_h_lmd_zero_terminal_chain_digit. ff_h_lmd_zero_terminal_chain_digit + S (lmd_digit_zero_terminal_chain) = S ((S (lmd_index_zero_terminal_chain)) * dc)) /\ exists ff_q_lmd_zero_terminal_chain_digit. db = ff_q_lmd_zero_terminal_chain_digit * S ((S (lmd_index_zero_terminal_chain)) * dc) + (lmd_digit_zero_terminal_chain))) /\ ((lmd_current_zero_terminal_chain = (p) * (lmd_successor_zero_terminal_chain) + (lmd_digit_zero_terminal_chain)) /\ (exists lmd_gap_zero_terminal_chain_digit_bound. lmd_gap_zero_terminal_chain_digit_bound + S (lmd_digit_zero_terminal_chain) = (p)))))))) -> (((exists ff_h_lmd_zero_terminal_entry. ff_h_lmd_zero_terminal_entry + S (q) = S ((S (l)) * qc)) /\ exists ff_q_lmd_zero_terminal_entry. qb = ff_q_lmd_zero_terminal_entry * S ((S (l)) * qc) + (q))) -> q = 0

Proof neighborhood

Direct theorem prerequisites

eq_decidable · Stable closed le_refl · Stable closed LU001L lucas_prime_digit_chain_nonzero_index_bound le_add_left · Stable closed le_trans · Stable closed lt_not_le · Stable closed

Direct theorem dependents

Definition-aware tactic body

Only propositions whose conservative expansion has been checked for exact first-order equivalence are compacted. Every changed line retains its immutable exact replay command.

Read the argument

Proof checkpoints

48 script commands · 10 reading checkpoints · 2 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.

Named ingredients (1)
01Fix variables and assumptionsL1–10

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

  1. L1
    intro p
  2. L2
    intro n
  3. L3
    intro qb
  4. L4
    intro qc
  5. L5
    intro db
  6. L6
    intro dc
  7. L7
    intro l
  8. L8
    intro q
  9. L9
    intro hprime
  10. L10
    intro hlength
02Fix variables and assumptionsL11–12

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

  1. L11
    intro hchain
  2. L12
    intro hentry
03Use earlier factsL13–14

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

  1. L13
    specialize eq_decidable q
  2. L14
    specialize eq_decidable 0
04Separate the logical casesL15–15

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

  1. L15
    cases eq_decidable
05Use earlier factsL16–16

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

  1. L16
    exact eq_decidable_left
06Separate the logical casesL17–17

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

  1. L17
    exfalso
07Establish hboundL18–27

Establish this local claim before using it. It is not an additional assumption.

  1. L18
    have hbound : Le(q + l,n)Definitions: Le(q + l,n)Original native command in the exact edition
  2. L19
    specialize lucas_prime_digit_chain_nonzero_index_bound l
  3. L20
    specialize lucas_prime_digit_chain_nonzero_index_bound p
  4. L21
    specialize lucas_prime_digit_chain_nonzero_index_bound n
  5. L22
    specialize lucas_prime_digit_chain_nonzero_index_bound qb
  6. L23
    specialize lucas_prime_digit_chain_nonzero_index_bound qc
  7. L24
    specialize lucas_prime_digit_chain_nonzero_index_bound db
  8. L25
    specialize lucas_prime_digit_chain_nonzero_index_bound dc
  9. L26
    specialize lucas_prime_digit_chain_nonzero_index_bound l
  10. L27
    specialize lucas_prime_digit_chain_nonzero_index_bound q
08Use earlier factsL28–34

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

  1. L28
    apply lucas_prime_digit_chain_nonzero_index_bound
  2. L29
    specialize le_refl l
  3. L30
    exact le_refl
  4. L31
    exact hprime
  5. L32
    exact hchain
  6. L33
    exact hentry
  7. L34
    exact eq_decidable_right
09Establish hreverseL35–44

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le trans.

  1. L35
    have hreverse : Le(l,n)Definitions: Le(l,n)Original native command in the exact edition
  2. L36
    specialize le_trans l
  3. L37
    specialize le_trans (q + l)
  4. L38
    specialize le_trans n
  5. L39
    apply le_trans
  6. L40
    specialize le_add_left l
  7. L41
    specialize le_add_left q
  8. L42
    exact le_add_left
  9. L43
    exact hbound
  10. L44
    specialize lt_not_le n
10Use earlier factsL45–48

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

  1. L45
    specialize lt_not_le l
  2. L46
    apply lt_not_le
  3. L47
    exact hlength
  4. L48
    exact hreverse

Library-wide reading audit

Original defined command ledger · 48 lines
  1. 0001intro p
  2. 0002intro n
  3. 0003intro qb
  4. 0004intro qc
  5. 0005intro db
  6. 0006intro dc
  7. 0007intro l
  8. 0008intro q
  9. 0009intro hprime
  10. 0010intro hlength
  11. 0011intro hchain
  12. 0012intro hentry
  13. 0013specialize eq_decidable q
  14. 0014specialize eq_decidable 0
  15. 0015cases eq_decidable
  16. 0016exact eq_decidable_left
  17. 0017exfalso
  18. 0018have hbound : Le(q + l,n)
    Exact native replay linehave hbound : exists gap. gap + (q + l) = n
  19. 0019specialize lucas_prime_digit_chain_nonzero_index_bound l
  20. 0020specialize lucas_prime_digit_chain_nonzero_index_bound p
  21. 0021specialize lucas_prime_digit_chain_nonzero_index_bound n
  22. 0022specialize lucas_prime_digit_chain_nonzero_index_bound qb
  23. 0023specialize lucas_prime_digit_chain_nonzero_index_bound qc
  24. 0024specialize lucas_prime_digit_chain_nonzero_index_bound db
  25. 0025specialize lucas_prime_digit_chain_nonzero_index_bound dc
  26. 0026specialize lucas_prime_digit_chain_nonzero_index_bound l
  27. 0027specialize lucas_prime_digit_chain_nonzero_index_bound q
  28. 0028apply lucas_prime_digit_chain_nonzero_index_bound
  29. 0029specialize le_refl l
  30. 0030exact le_refl
  31. 0031exact hprime
  32. 0032exact hchain
  33. 0033exact hentry
  34. 0034exact eq_decidable_right
  35. 0035have hreverse : Le(l,n)
    Exact native replay linehave hreverse : exists gap. gap + l = n
  36. 0036specialize le_trans l
  37. 0037specialize le_trans (q + l)
  38. 0038specialize le_trans n
  39. 0039apply le_trans
  40. 0040specialize le_add_left l
  41. 0041specialize le_add_left q
  42. 0042exact le_add_left
  43. 0043exact hbound
  44. 0044specialize lt_not_le n
  45. 0045specialize lt_not_le l
  46. 0046apply lt_not_le
  47. 0047exact hlength
  48. 0048exact hreverse