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. ∀ m. (∀ x. Lt(x,m) → ∃ y. BetaAt(b,c,x,y) ∧ (Prime(S x) ∧ y = S x ∨ ¬Prime(S x) ∧ y = 1)) → ∃ x. ∃ y. ∀ z. Lt(z,S m) → ∃ n. BetaAt(x,y,z,n) ∧ (Prime(S z) ∧ n = S z ∨ ¬Prime(S z) ∧ n = 1)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
8 occurrences
In local proof propositions
10 occurrences
Exact expanded native-PA statement
forall b c m. (forall bpr_index_bpfpe_before. (exists bpr_gap_bpfpe_before_bound. bpr_gap_bpfpe_before_bound + S (bpr_index_bpfpe_before) = m) -> exists bpr_value_bpfpe_before. ((((exists bpr_height_bpfpe_before_decoded. bpr_height_bpfpe_before_decoded + S (bpr_value_bpfpe_before) = S ((S (bpr_index_bpfpe_before)) * c)) /\ exists bpr_quotient_bpfpe_before_decoded. b = bpr_quotient_bpfpe_before_decoded * S ((S (bpr_index_bpfpe_before)) * c) + (bpr_value_bpfpe_before))) /\ (((((~(S (bpr_index_bpfpe_before) = 1) /\ forall bpr_left_bpfpe_before_choice_prime bpr_right_bpfpe_before_choice_prime. S (bpr_index_bpfpe_before) = bpr_left_bpfpe_before_choice_prime * bpr_right_bpfpe_before_choice_prime -> bpr_left_bpfpe_before_choice_prime = 1 \/ bpr_right_bpfpe_before_choice_prime = 1)) /\ bpr_value_bpfpe_before = S (bpr_index_bpfpe_before)) \/ (~((~(S (bpr_index_bpfpe_before) = 1) /\ forall bpr_left_bpfpe_before_choice_prime bpr_right_bpfpe_before_choice_prime. S (bpr_index_bpfpe_before) = bpr_left_bpfpe_before_choice_prime * bpr_right_bpfpe_before_choice_prime -> bpr_left_bpfpe_before_choice_prime = 1 \/ bpr_right_bpfpe_before_choice_prime = 1)) /\ bpr_value_bpfpe_before = 1))))) -> exists d e. (forall bpr_index_bpfpe_after. (exists bpr_gap_bpfpe_after_bound. bpr_gap_bpfpe_after_bound + S (bpr_index_bpfpe_after) = S m) -> exists bpr_value_bpfpe_after. ((((exists bpr_height_bpfpe_after_decoded. bpr_height_bpfpe_after_decoded + S (bpr_value_bpfpe_after) = S ((S (bpr_index_bpfpe_after)) * e)) /\ exists bpr_quotient_bpfpe_after_decoded. d = bpr_quotient_bpfpe_after_decoded * S ((S (bpr_index_bpfpe_after)) * e) + (bpr_value_bpfpe_after))) /\ (((((~(S (bpr_index_bpfpe_after) = 1) /\ forall bpr_left_bpfpe_after_choice_prime bpr_right_bpfpe_after_choice_prime. S (bpr_index_bpfpe_after) = bpr_left_bpfpe_after_choice_prime * bpr_right_bpfpe_after_choice_prime -> bpr_left_bpfpe_after_choice_prime = 1 \/ bpr_right_bpfpe_after_choice_prime = 1)) /\ bpr_value_bpfpe_after = S (bpr_index_bpfpe_after)) \/ (~((~(S (bpr_index_bpfpe_after) = 1) /\ forall bpr_left_bpfpe_after_choice_prime bpr_right_bpfpe_after_choice_prime. S (bpr_index_bpfpe_after) = bpr_left_bpfpe_after_choice_prime * bpr_right_bpfpe_after_choice_prime -> bpr_left_bpfpe_after_choice_prime = 1 \/ bpr_right_bpfpe_after_choice_prime = 1)) /\ bpr_value_bpfpe_after = 1)))))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–4
02Establish hchoiceL5–6
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply primorial factor choice exists.
- L5
have hchoice : ∃ x. Prime(S m) ∧ x = S m ∨ ¬Prime(S m) ∧ x = 1Definitions: Prime(S m)Original native command in the exact edition - L6
apply primorial_factor_choice_exists
03Separate the logical casesL7–7
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L7
cases hchoice
04Establish hextL8–9
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta prefix extend.
- L8
have hext : ∃ d. ∃ e. BetaAt(d,e,m,x) ∧ (∀ y. ∀ z. Lt(y,m) → BetaAt(b,c,y,z) → BetaAt(d,e,y,z))Definitions: BetaAt(d,e,m,x)Lt(y,m)BetaAt(b,c,y,z)BetaAt(d,e,y,z)Original native command in the exact edition - L9
apply beta_prefix_extend
05Separate the logical casesL10–12
06Construct an explicit witnessL13–14
07Fix variables and assumptionsL15–16
08Establish hsplitL17–19
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
09Separate the logical casesL20–20
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L20
cases hsplit
10Calculate and transport equalitiesL21–27
11Construct an explicit witnessL28–28
Supply the displayed value, then prove that it has the required property.
- L28
exists x
12Separate the logical casesL29–29
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L29
split
13Use earlier factsL30–31
14Establish holdL32–34
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hprefix.
- L32
have hold : ∃ a. BetaAt(b,c,i,a) ∧ (Prime(S i) ∧ a = S i ∨ ¬Prime(S i) ∧ a = 1)Definitions: BetaAt(b,c,i,a)Prime(S i)Original native command in the exact edition - L33
apply hprefix - L34
exact hsplit_right
15Separate the logical casesL35–36
16Construct an explicit witnessL37–37
Supply the displayed value, then prove that it has the required property.
- L37
exists x3
17Separate the logical casesL38–38
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L38
split
Original defined command ledger · 42 lines
- 0001
intro b - 0002
intro c - 0003
intro m - 0004
intro hprefix - 0005
have hchoice : ∃ x. Prime(S m) ∧ x = S m ∨ ¬Prime(S m) ∧ x = 1Exact native replay line
have hchoice : exists x. (((((~(S (m) = 1) /\ forall bpr_left_bpfpe_last_choice_prime bpr_right_bpfpe_last_choice_prime. S (m) = bpr_left_bpfpe_last_choice_prime * bpr_right_bpfpe_last_choice_prime -> bpr_left_bpfpe_last_choice_prime = 1 \/ bpr_right_bpfpe_last_choice_prime = 1)) /\ x = S (m)) \/ (~((~(S (m) = 1) /\ forall bpr_left_bpfpe_last_choice_prime bpr_right_bpfpe_last_choice_prime. S (m) = bpr_left_bpfpe_last_choice_prime * bpr_right_bpfpe_last_choice_prime -> bpr_left_bpfpe_last_choice_prime = 1 \/ bpr_right_bpfpe_last_choice_prime = 1)) /\ x = 1))) - 0006
apply primorial_factor_choice_exists - 0007
cases hchoice - 0008
have hext : ∃ d. ∃ e. BetaAt(d,e,m,x) ∧ (∀ y. ∀ z. Lt(y,m) → BetaAt(b,c,y,z) → BetaAt(d,e,y,z))Exact native replay line
have hext : exists d e. ((((exists bpr_height_bpfpe_append. bpr_height_bpfpe_append + S (x) = S ((S (m)) * e)) /\ exists bpr_quotient_bpfpe_append. d = bpr_quotient_bpfpe_append * S ((S (m)) * e) + (x))) /\ forall i a. (exists bpr_gap_bpfpe_old_bound. bpr_gap_bpfpe_old_bound + S (i) = m) -> (((exists bpr_height_bpfpe_old. bpr_height_bpfpe_old + S (a) = S ((S (i)) * c)) /\ exists bpr_quotient_bpfpe_old. b = bpr_quotient_bpfpe_old * S ((S (i)) * c) + (a))) -> (((exists bpr_height_bpfpe_new. bpr_height_bpfpe_new + S (a) = S ((S (i)) * e)) /\ exists bpr_quotient_bpfpe_new. d = bpr_quotient_bpfpe_new * S ((S (i)) * e) + (a)))) - 0009
apply beta_prefix_extend - 0010
cases hext - 0011
cases hext_witness - 0012
cases hext_witness_witness - 0013
exists x1 - 0014
exists x2 - 0015
intro i - 0016
intro hi - 0017
have hsplit : i = m ∨ Lt(i,m)Exact native replay line
have hsplit : i = m \/ exists gap. gap + S i = m - 0018
apply finite_lt_succ_eq_or_lt - 0019
exact hi - 0020
cases hsplit - 0021
rewrite hsplit_left - 0022
rewrite hsplit_left - 0023
rewrite hsplit_left - 0024
rewrite hsplit_left - 0025
rewrite hsplit_left - 0026
rewrite hsplit_left - 0027
rewrite hsplit_left - 0028
exists x - 0029
split - 0030
exact hext_witness_witness_left - 0031
exact hchoice_witness - 0032
have hold : ∃ a. BetaAt(b,c,i,a) ∧ (Prime(S i) ∧ a = S i ∨ ¬Prime(S i) ∧ a = 1)Exact native replay line
have hold : exists a. ((((exists bpr_height_bpfpe_hold_decoded. bpr_height_bpfpe_hold_decoded + S (a) = S ((S (i)) * c)) /\ exists bpr_quotient_bpfpe_hold_decoded. b = bpr_quotient_bpfpe_hold_decoded * S ((S (i)) * c) + (a))) /\ (((((~(S (i) = 1) /\ forall bpr_left_bpfpe_hold_choice_prime bpr_right_bpfpe_hold_choice_prime. S (i) = bpr_left_bpfpe_hold_choice_prime * bpr_right_bpfpe_hold_choice_prime -> bpr_left_bpfpe_hold_choice_prime = 1 \/ bpr_right_bpfpe_hold_choice_prime = 1)) /\ a = S (i)) \/ (~((~(S (i) = 1) /\ forall bpr_left_bpfpe_hold_choice_prime bpr_right_bpfpe_hold_choice_prime. S (i) = bpr_left_bpfpe_hold_choice_prime * bpr_right_bpfpe_hold_choice_prime -> bpr_left_bpfpe_hold_choice_prime = 1 \/ bpr_right_bpfpe_hold_choice_prime = 1)) /\ a = 1)))) - 0033
apply hprefix - 0034
exact hsplit_right - 0035
cases hold - 0036
cases hold_witness - 0037
exists x3 - 0038
split - 0039
apply hext_witness_witness_right - 0040
exact hsplit_right - 0041
exact hold_witness_left - 0042
exact hold_witness_right