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. ∀ h. ∀ b. ∀ c. ∀ i. ∀ x. p = 2 · h + 1 → Range(b,c,1,h) → Lt(i,h) → BetaAt(b,c,i,x) → UnitResidue(p,x)Every purple notation token opens its conservative definition. This is a reading surface; the compiler expands the statement before the unchanged kernel checks it.
Definitions used by this theorem
In the theorem statement
4 occurrences
In local proof propositions
2 occurrences
Exact expanded native-PA statement
forall p h b c i x. p = 2 * h + 1 -> (forall gh_i_half. (exists gh_lt_half_bound. gh_lt_half_bound + S gh_i_half = h) -> (((exists gh_h_half. gh_h_half + S (1 + gh_i_half) = S ((S gh_i_half) * c)) /\ exists gh_q_half. b = gh_q_half * S ((S gh_i_half) * c) + (1 + gh_i_half)))) -> (exists gh_lt_half_i. gh_lt_half_i + S i = h) -> (((exists ff_h_half_i. ff_h_half_i + S (x) = S ((S (i)) * c)) /\ exists ff_q_half_i. b = ff_q_half_i * S ((S (i)) * c) + (x))) -> (~(x = 0) /\ (exists gh_lt_half_value. gh_lt_half_value + S x = p))Proof neighborhood
Direct theorem prerequisites
PA0032 beta_range_entry_eq PA0001 zero_add PA000E add_succ_left PA000G mul_succ_left PA000D mul_zero_left PA0009 add_assoc PA0033 lt_of_le_of_ltDirect theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. The untrusted compiler re-expands each one before the original tactic script is replayed; defined notation is never accepted by the kernel. Open the exact replay line beneath every changed 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.
Named ingredients (4)
01Fix variables and assumptionsL1–10
02Establish hxL11–20
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta range entry eq.
03Use earlier factsL21–21
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L21
exact hxi
04Establish honeL22–29
05Establish hxsiL30–33
06Separate the logical casesL34–34
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L34
split
07Fix variables and assumptionsL35–35
Work with arbitrary variables or the premises of the current implication.
- L35
intro hx0
08Use earlier factsL36–36
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L36
apply PA1
09Calculate and transport equalitiesL37–38
10Use earlier factsL39–40
11Establish hxhL41–43
Establish this local claim before using it. It is not an additional assumption.
12Establish hhpL44–44
Establish this local claim before using it. It is not an additional assumption.
13Construct an explicit witnessL45–45
Supply the displayed value, then prove that it has the required property.
- L45
exists h
14Calculate and transport equalitiesL46–47
Original defined command ledger · 53 lines
- 0001
intro p - 0002
intro h - 0003
intro b - 0004
intro c - 0005
intro i - 0006
intro x - 0007
intro hp - 0008
intro hrange - 0009
intro hi - 0010
intro hxi - 0011
have hx : x = 1 + i - 0012
specialize beta_range_entry_eq b - 0013
specialize beta_range_entry_eq c - 0014
specialize beta_range_entry_eq 1 - 0015
specialize beta_range_entry_eq h - 0016
specialize beta_range_entry_eq i - 0017
specialize beta_range_entry_eq x - 0018
apply beta_range_entry_eq - 0019
exact hrange - 0020
exact hi - 0021
exact hxi - 0022
have hone : 1 + i = S i - 0023
trans S (0 + i) - 0024
specialize add_succ_left 0 - 0025
specialize add_succ_left i - 0026
exact add_succ_left - 0027
congr - 0028
specialize zero_add i - 0029
exact zero_add - 0030
have hxsi : x = S i - 0031
trans 1 + i - 0032
exact hx - 0033
exact hone - 0034
split - 0035
intro hx0 - 0036
apply PA1 - 0037
trans x - 0038
symm - 0039
exact hxsi - 0040
exact hx0 - 0041
have hxh : Le(x,h)Exact native replay line
have hxh : exists k. k + x = h - 0042
rewrite hxsi - 0043
exact hi - 0044
have hhp : Lt(h,p)Exact native replay line
have hhp : exists k. k + S h = p - 0045
exists h - 0046
rewrite hp - 0047
simp [mul_succ_left, mul_zero_left, add_succ_left, zero_add, add_assoc] - 0048
specialize lt_of_le_of_lt x - 0049
specialize lt_of_le_of_lt h - 0050
specialize lt_of_le_of_lt p - 0051
apply lt_of_le_of_lt - 0052
exact hxh - 0053
exact hhp