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
∀ b. ∀ c. ∀ a. ∀ l. ∀ sl. sl = S l → Range(b,c,a,l) → ∃ x. ∃ y. Range(x,y,a,sl)Every purple notation token opens its conservative definition. Expanding the displayed statement recovers the exact first-order Peano-arithmetic formula checked by the unchanged kernel.
Definitions used by this theorem
In the theorem statement
2 occurrences
In local proof propositions
2 occurrences
Exact expanded native-PA statement
forall b c a l sl. sl = S l -> (forall ff_i_before. (exists ff_lt_before_bound. ff_lt_before_bound + S ff_i_before = l) -> (((exists ff_h_before_decoded. ff_h_before_decoded + S (a + ff_i_before) = S ((S (ff_i_before)) * c)) /\ exists ff_q_before_decoded. b = ff_q_before_decoded * S ((S (ff_i_before)) * c) + (a + ff_i_before)))) -> exists z d. (forall ff_i_after. (exists ff_lt_after_bound. ff_lt_after_bound + S ff_i_after = sl) -> (((exists ff_h_after_decoded. ff_h_after_decoded + S (a + ff_i_after) = S ((S (ff_i_after)) * d)) /\ exists ff_q_after_decoded. z = ff_q_after_decoded * S ((S (ff_i_after)) * d) + (a + ff_i_after))))Proof neighborhood
Direct theorem prerequisites
Direct theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. Every changed line has an exact-AST conservative-expansion receipt; the kernel still receives the immutable original tactic 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 (3)
01Fix variables and assumptionsL1–7
02Use earlier factsL8–11
03Separate the logical casesL12–14
04Construct an explicit witnessL15–16
05Fix variables and assumptionsL17–18
06Calculate and transport equalitiesL19–19
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L19
rewrite hsl at hi
07Establish hilL20–24
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le of succ le succ.
08Establish hsplitL25–29
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le eq or lt.
09Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
cases hsplit
10Calculate and transport equalitiesL31–34
11Use earlier factsL35–42
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 42 lines
- 0001
intro b - 0002
intro c - 0003
intro a - 0004
intro l - 0005
intro sl - 0006
intro hsl - 0007
intro hrange - 0008
specialize beta_prefix_extend l - 0009
specialize beta_prefix_extend b - 0010
specialize beta_prefix_extend c - 0011
specialize beta_prefix_extend (a + l) - 0012
cases beta_prefix_extend - 0013
cases beta_prefix_extend_witness - 0014
cases beta_prefix_extend_witness_witness - 0015
exists x - 0016
exists x1 - 0017
intro i - 0018
intro hi - 0019
rewrite hsl at hi - 0020
have hil : Le(i,l)Exact native replay line
have hil : exists h. h + i = l - 0021
specialize le_of_succ_le_succ i - 0022
specialize le_of_succ_le_succ l - 0023
apply le_of_succ_le_succ - 0024
exact hi - 0025
have hsplit : i = l ∨ Lt(i,l)Exact native replay line
have hsplit : i = l \/ exists h. h + S i = l - 0026
specialize le_eq_or_lt i - 0027
specialize le_eq_or_lt l - 0028
apply le_eq_or_lt - 0029
exact hil - 0030
cases hsplit - 0031
rewrite hsplit_left - 0032
rewrite hsplit_left - 0033
rewrite hsplit_left - 0034
rewrite hsplit_left - 0035
exact beta_prefix_extend_witness_witness_left - 0036
specialize beta_prefix_extend_witness_witness_right i - 0037
specialize beta_prefix_extend_witness_witness_right (a + i) - 0038
apply beta_prefix_extend_witness_witness_right - 0039
exact hsplit_right - 0040
specialize hrange i - 0041
apply hrange - 0042
exact hsplit_right