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. ∀ w. ∀ r. ∀ b. ∀ c. ∀ l. (∀ x. Lt(x,l) → ∃ y. ∃ z. ∃ n. ∃ m. x = w · y + z ∧ (Lt(z,w) ∧ (r · y + z = p · n + m ∧ (Lt(m,p) ∧ BetaAt(b,c,x,m))))) → (∃ x. ∃ y. ∃ z. ∃ n. l = w · x + y ∧ (Lt(y,w) ∧ DivRem(r · x + y,p,z,n))) → ∃ x. ∃ y. ∀ z. Lt(z,S l) → ∃ n. ∃ m. ∃ k. ∃ i. z = w · n + m ∧ (Lt(m,w) ∧ (r · n + m = p · k + i ∧ (Lt(i,p) ∧ BetaAt(x,y,z,i))))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 w r b c l. (forall ftrg_index_extend_previous. (exists ftrg_gap_extend_previous_index. ftrg_gap_extend_previous_index + S (ftrg_index_extend_previous) = (l)) -> exists ftrg_row_extend_previous ftrg_column_extend_previous ftrg_quotient_extend_previous ftrg_remainder_extend_previous. ((ftrg_index_extend_previous) = (w) * ftrg_row_extend_previous + ftrg_column_extend_previous /\ ((exists ftrg_gap_extend_previous_column. ftrg_gap_extend_previous_column + S (ftrg_column_extend_previous) = (w)) /\ ((r * ftrg_row_extend_previous + ftrg_column_extend_previous = (p) * ftrg_quotient_extend_previous + ftrg_remainder_extend_previous) /\ ((exists ftrg_gap_extend_previous_residue. ftrg_gap_extend_previous_residue + S (ftrg_remainder_extend_previous) = (p)) /\ (((exists ff_h_ftrg_extend_previous_entry. ff_h_ftrg_extend_previous_entry + S (ftrg_remainder_extend_previous) = S ((S (ftrg_index_extend_previous)) * c)) /\ exists ff_q_ftrg_extend_previous_entry. b = ff_q_ftrg_extend_previous_entry * S ((S (ftrg_index_extend_previous)) * c) + (ftrg_remainder_extend_previous)))))))) -> (exists ftrg_row_extend_last ftrg_column_extend_last ftrg_quotient_extend_last ftrg_remainder_extend_last. ((l) = (w) * ftrg_row_extend_last + ftrg_column_extend_last /\ ((exists ftrg_gap_extend_last_column. ftrg_gap_extend_last_column + S (ftrg_column_extend_last) = (w)) /\ ((r * ftrg_row_extend_last + ftrg_column_extend_last = (p) * ftrg_quotient_extend_last + ftrg_remainder_extend_last) /\ (exists ftrg_gap_extend_last_residue. ftrg_gap_extend_last_residue + S (ftrg_remainder_extend_last) = (p)))))) -> exists z d. (forall ftrg_index_extend_next. (exists ftrg_gap_extend_next_index. ftrg_gap_extend_next_index + S (ftrg_index_extend_next) = (S l)) -> exists ftrg_row_extend_next ftrg_column_extend_next ftrg_quotient_extend_next ftrg_remainder_extend_next. ((ftrg_index_extend_next) = (w) * ftrg_row_extend_next + ftrg_column_extend_next /\ ((exists ftrg_gap_extend_next_column. ftrg_gap_extend_next_column + S (ftrg_column_extend_next) = (w)) /\ ((r * ftrg_row_extend_next + ftrg_column_extend_next = (p) * ftrg_quotient_extend_next + ftrg_remainder_extend_next) /\ ((exists ftrg_gap_extend_next_residue. ftrg_gap_extend_next_residue + S (ftrg_remainder_extend_next) = (p)) /\ (((exists ff_h_ftrg_extend_next_entry. ff_h_ftrg_extend_next_entry + S (ftrg_remainder_extend_next) = S ((S (ftrg_index_extend_next)) * d)) /\ exists ff_q_ftrg_extend_next_entry. z = ff_q_ftrg_extend_next_entry * S ((S (ftrg_index_extend_next)) * d) + (ftrg_remainder_extend_next))))))))Proof neighborhood
Direct theorem prerequisites
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
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–8
02Separate the logical casesL9–15
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
03Establish hextensionL16–21
Establish this local claim before using it. It is not an additional assumption.
- L16
have hextension : ∃ z. ∃ d. BetaAt(z,d,l,x3) ∧ (∀ x. ∀ y. Lt(x,l) → BetaAt(b,c,x,y) → BetaAt(z,d,x,y))Definitions: BetaAt(z,d,l,x3)Lt(x,l)BetaAt(b,c,x,y)BetaAt(z,d,x,y)Original native command in the exact edition - L17
specialize beta_prefix_extend l - L18
specialize beta_prefix_extend b - L19
specialize beta_prefix_extend c - L20
specialize beta_prefix_extend x3 - L21
exact beta_prefix_extend
04Separate the logical casesL22–24
05Construct an explicit witnessL25–26
06Fix variables and assumptionsL27–28
07Establish hsplitL29–33
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
08Separate the logical casesL34–34
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L34
cases hsplit
09Construct an explicit witnessL35–38
10Separate the logical casesL39–39
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L39
split
11Calculate and transport equalitiesL40–40
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L40
rewrite hsplit_left
12Use earlier factsL41–41
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L41
exact hpoint_witness_witness_witness_witness_left
13Separate the logical casesL42–42
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L42
split
14Use earlier factsL43–43
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L43
exact hpoint_witness_witness_witness_witness_right_left
15Separate the logical casesL44–44
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L44
split
16Use earlier factsL45–45
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L45
exact hpoint_witness_witness_witness_witness_right_right_left
17Separate the logical casesL46–46
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L46
split
18Use earlier factsL47–47
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L47
exact hpoint_witness_witness_witness_witness_right_right_right
19Calculate and transport equalitiesL48–49
20Use earlier factsL50–51
21Establish holdL52–54
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hprevious.
- L52
have hold : ∃ i. ∃ j. ∃ q. ∃ t. k = w · i + j ∧ (Lt(j,w) ∧ (r · i + j = p · q + t ∧ (Lt(t,p) ∧ BetaAt(b,c,k,t))))Definitions: Lt(j,w)Lt(t,p)BetaAt(b,c,k,t)Original native command in the exact edition - L53
apply hprevious - L54
exact hsplit_right
22Separate the logical casesL55–62
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L55
cases hold - L56
cases hold_witness - L57
cases hold_witness_witness - L58
cases hold_witness_witness_witness - L59
cases hold_witness_witness_witness_witness - L60
cases hold_witness_witness_witness_witness_right - L61
cases hold_witness_witness_witness_witness_right_right - L62
cases hold_witness_witness_witness_witness_right_right_right
23Construct an explicit witnessL63–66
24Separate the logical casesL67–67
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L67
split
25Use earlier factsL68–68
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L68
exact hold_witness_witness_witness_witness_left
26Separate the logical casesL69–69
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L69
split
27Use earlier factsL70–70
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L70
exact hold_witness_witness_witness_witness_right_left
28Separate the logical casesL71–71
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L71
split
29Use earlier factsL72–72
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L72
exact hold_witness_witness_witness_witness_right_right_left
30Separate the logical casesL73–73
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L73
split
31Use earlier factsL74–79
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 79 lines
- 0001
intro p - 0002
intro w - 0003
intro r - 0004
intro b - 0005
intro c - 0006
intro l - 0007
intro hprevious - 0008
intro hpoint - 0009
cases hpoint - 0010
cases hpoint_witness - 0011
cases hpoint_witness_witness - 0012
cases hpoint_witness_witness_witness - 0013
cases hpoint_witness_witness_witness_witness - 0014
cases hpoint_witness_witness_witness_witness_right - 0015
cases hpoint_witness_witness_witness_witness_right_right - 0016
have hextension : ∃ z. ∃ d. BetaAt(z,d,l,x3) ∧ (∀ x. ∀ y. Lt(x,l) → BetaAt(b,c,x,y) → BetaAt(z,d,x,y))Exact native replay line
have hextension : exists z d. ((((exists ff_h_ftrg_extension_last. ff_h_ftrg_extension_last + S (x3) = S ((S (l)) * d)) /\ exists ff_q_ftrg_extension_last. z = ff_q_ftrg_extension_last * S ((S (l)) * d) + (x3))) /\ forall k value. (exists ftrg_gap_extension_old_bound. ftrg_gap_extension_old_bound + S (k) = (l)) -> (((exists ff_h_ftrg_extension_old. ff_h_ftrg_extension_old + S (value) = S ((S (k)) * c)) /\ exists ff_q_ftrg_extension_old. b = ff_q_ftrg_extension_old * S ((S (k)) * c) + (value))) -> (((exists ff_h_ftrg_extension_new. ff_h_ftrg_extension_new + S (value) = S ((S (k)) * d)) /\ exists ff_q_ftrg_extension_new. z = ff_q_ftrg_extension_new * S ((S (k)) * d) + (value)))) - 0017
specialize beta_prefix_extend l - 0018
specialize beta_prefix_extend b - 0019
specialize beta_prefix_extend c - 0020
specialize beta_prefix_extend x3 - 0021
exact beta_prefix_extend - 0022
cases hextension - 0023
cases hextension_witness - 0024
cases hextension_witness_witness - 0025
exists x4 - 0026
exists x5 - 0027
intro k - 0028
intro hk - 0029
have hsplit : k = l ∨ Lt(k,l)Exact native replay line
have hsplit : k = l \/ exists gap. gap + S k = l - 0030
specialize finite_lt_succ_eq_or_lt l - 0031
specialize finite_lt_succ_eq_or_lt k - 0032
apply finite_lt_succ_eq_or_lt - 0033
exact hk - 0034
cases hsplit - 0035
exists x - 0036
exists x1 - 0037
exists x2 - 0038
exists x3 - 0039
split - 0040
rewrite hsplit_left - 0041
exact hpoint_witness_witness_witness_witness_left - 0042
split - 0043
exact hpoint_witness_witness_witness_witness_right_left - 0044
split - 0045
exact hpoint_witness_witness_witness_witness_right_right_left - 0046
split - 0047
exact hpoint_witness_witness_witness_witness_right_right_right - 0048
rewrite hsplit_left - 0049
rewrite hsplit_left - 0050
exact hextension_witness_witness_left - 0051
specialize hprevious k - 0052
have hold : ∃ i. ∃ j. ∃ q. ∃ t. k = w · i + j ∧ (Lt(j,w) ∧ (r · i + j = p · q + t ∧ (Lt(t,p) ∧ BetaAt(b,c,k,t))))Exact native replay line
have hold : exists i j q t. (k = w * i + j /\ ((exists gap. gap + S j = w) /\ ((r * i + j = p * q + t) /\ ((exists gap. gap + S t = p) /\ (((exists ff_h_ftrg_extend_old_entry. ff_h_ftrg_extend_old_entry + S (t) = S ((S (k)) * c)) /\ exists ff_q_ftrg_extend_old_entry. b = ff_q_ftrg_extend_old_entry * S ((S (k)) * c) + (t))))))) - 0053
apply hprevious - 0054
exact hsplit_right - 0055
cases hold - 0056
cases hold_witness - 0057
cases hold_witness_witness - 0058
cases hold_witness_witness_witness - 0059
cases hold_witness_witness_witness_witness - 0060
cases hold_witness_witness_witness_witness_right - 0061
cases hold_witness_witness_witness_witness_right_right - 0062
cases hold_witness_witness_witness_witness_right_right_right - 0063
exists x6 - 0064
exists x7 - 0065
exists x8 - 0066
exists x9 - 0067
split - 0068
exact hold_witness_witness_witness_witness_left - 0069
split - 0070
exact hold_witness_witness_witness_witness_right_left - 0071
split - 0072
exact hold_witness_witness_witness_witness_right_right_left - 0073
split - 0074
exact hold_witness_witness_witness_witness_right_right_right_left - 0075
specialize hextension_witness_witness_right k - 0076
specialize hextension_witness_witness_right x9 - 0077
apply hextension_witness_witness_right - 0078
exact hsplit_right - 0079
exact hold_witness_witness_witness_witness_right_right_right_right