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.
Exact expanded first-order arithmetic statement
forall n k b c a p. (((((exists bcf_height_bpc_old_start. bcf_height_bpc_old_start + S (n) = S ((S (0)) * c)) /\ exists bcf_quotient_bpc_old_start. b = bcf_quotient_bpc_old_start * S ((S (0)) * c) + (n))) /\ forall bcf_index_bpc_old_chain. (exists bcf_lt_gap_bpc_old_index. bcf_lt_gap_bpc_old_index + S (bcf_index_bpc_old_chain) = k) -> exists bcf_previous_bpc_old_chain bcf_following_bpc_old_chain. ((((exists bcf_height_bpc_old_previous. bcf_height_bpc_old_previous + S (bcf_previous_bpc_old_chain) = S ((S (bcf_index_bpc_old_chain)) * c)) /\ exists bcf_quotient_bpc_old_previous. b = bcf_quotient_bpc_old_previous * S ((S (bcf_index_bpc_old_chain)) * c) + (bcf_previous_bpc_old_chain))) /\ ((((exists bcf_height_bpc_old_following. bcf_height_bpc_old_following + S (bcf_following_bpc_old_chain) = S ((S (S bcf_index_bpc_old_chain)) * c)) /\ exists bcf_quotient_bpc_old_following. b = bcf_quotient_bpc_old_following * S ((S (S bcf_index_bpc_old_chain)) * c) + (bcf_following_bpc_old_chain))) /\ ((((~(bcf_following_bpc_old_chain = 1) /\ forall frm_prime_left_bpc_old_successor_prime frm_prime_right_bpc_old_successor_prime. bcf_following_bpc_old_chain = frm_prime_left_bpc_old_successor_prime * frm_prime_right_bpc_old_successor_prime -> frm_prime_left_bpc_old_successor_prime = 1 \/ frm_prime_right_bpc_old_successor_prime = 1)) /\ ((exists bcf_lt_gap_bpc_old_successor_lower. bcf_lt_gap_bpc_old_successor_lower + S (bcf_previous_bpc_old_chain) = bcf_following_bpc_old_chain) /\ (exists bcf_lt_gap_bpc_old_successor_upper. bcf_lt_gap_bpc_old_successor_upper + S (bcf_following_bpc_old_chain) = bcf_previous_bpc_old_chain + bcf_previous_bpc_old_chain)))))))) -> (((exists bcf_height_bpc_old_terminal. bcf_height_bpc_old_terminal + S (a) = S ((S (k)) * c)) /\ exists bcf_quotient_bpc_old_terminal. b = bcf_quotient_bpc_old_terminal * S ((S (k)) * c) + (a))) -> ((((~(p = 1) /\ forall frm_prime_left_bpc_next_prime frm_prime_right_bpc_next_prime. p = frm_prime_left_bpc_next_prime * frm_prime_right_bpc_next_prime -> frm_prime_left_bpc_next_prime = 1 \/ frm_prime_right_bpc_next_prime = 1)) /\ ((exists bcf_lt_gap_bpc_next_lower. bcf_lt_gap_bpc_next_lower + S (a) = p) /\ (exists bcf_lt_gap_bpc_next_upper. bcf_lt_gap_bpc_next_upper + S (p) = a + a)))) -> exists z d. ((((((exists bcf_height_bpc_successor_start. bcf_height_bpc_successor_start + S (n) = S ((S (0)) * d)) /\ exists bcf_quotient_bpc_successor_start. z = bcf_quotient_bpc_successor_start * S ((S (0)) * d) + (n))) /\ forall bcf_index_bpc_successor_chain. (exists bcf_lt_gap_bpc_successor_index. bcf_lt_gap_bpc_successor_index + S (bcf_index_bpc_successor_chain) = S k) -> exists bcf_previous_bpc_successor_chain bcf_following_bpc_successor_chain. ((((exists bcf_height_bpc_successor_previous. bcf_height_bpc_successor_previous + S (bcf_previous_bpc_successor_chain) = S ((S (bcf_index_bpc_successor_chain)) * d)) /\ exists bcf_quotient_bpc_successor_previous. z = bcf_quotient_bpc_successor_previous * S ((S (bcf_index_bpc_successor_chain)) * d) + (bcf_previous_bpc_successor_chain))) /\ ((((exists bcf_height_bpc_successor_following. bcf_height_bpc_successor_following + S (bcf_following_bpc_successor_chain) = S ((S (S bcf_index_bpc_successor_chain)) * d)) /\ exists bcf_quotient_bpc_successor_following. z = bcf_quotient_bpc_successor_following * S ((S (S bcf_index_bpc_successor_chain)) * d) + (bcf_following_bpc_successor_chain))) /\ ((((~(bcf_following_bpc_successor_chain = 1) /\ forall frm_prime_left_bpc_successor_successor_prime frm_prime_right_bpc_successor_successor_prime. bcf_following_bpc_successor_chain = frm_prime_left_bpc_successor_successor_prime * frm_prime_right_bpc_successor_successor_prime -> frm_prime_left_bpc_successor_successor_prime = 1 \/ frm_prime_right_bpc_successor_successor_prime = 1)) /\ ((exists bcf_lt_gap_bpc_successor_successor_lower. bcf_lt_gap_bpc_successor_successor_lower + S (bcf_previous_bpc_successor_chain) = bcf_following_bpc_successor_chain) /\ (exists bcf_lt_gap_bpc_successor_successor_upper. bcf_lt_gap_bpc_successor_successor_upper + S (bcf_following_bpc_successor_chain) = bcf_previous_bpc_successor_chain + bcf_previous_bpc_successor_chain)))))))) /\ (((exists bcf_height_bpc_successor_terminal. bcf_height_bpc_successor_terminal + S (p) = S ((S (S k)) * d)) /\ exists bcf_quotient_bpc_successor_terminal. z = bcf_quotient_bpc_successor_terminal * S ((S (S k)) * d) + (p))))Constructive proof overview
Generated structural guide
Appending a strict Bertrand successor recodes and preserves every prior chain edge.
The unchanged tactic script uses 5 declared prerequisites and contains 83 exact native proof lines.
Alpha v34 checked-use · first admitted v20 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
beta_prefix_extend Stable theorem; checked-use authorized zero_le Stable theorem; checked-use authorized succ_le_succ Stable theorem; checked-use authorized le_refl Stable theorem; checked-use authorized finite_lt_succ_eq_or_lt Stable theorem; checked-use authorizedDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Local theorem links identify exact declared prerequisites. This exact body belongs to a complete independently kernel-checked constructive proof bundle and has Alpha checked-use authority; it does not imply Stable membership.
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–9
02Separate the logical casesL10–10
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L10
cases hchain
03Establish hextensionL11–16
Establish this local claim before using it. It is not an additional assumption.
04Separate the logical casesL17–19
05Construct an explicit witnessL20–21
06Separate the logical casesL22–23
07Use earlier factsL24–32
Instantiate or apply named facts and discharge the corresponding proof obligations.
08Fix variables and assumptionsL33–34
09Establish hsplitL35–39
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
10Separate the logical casesL40–40
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L40
cases hsplit
11Construct an explicit witnessL41–42
12Separate the logical casesL43–43
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L43
split
13Calculate and transport equalitiesL44–45
14Use earlier factsL46–51
15Separate the logical casesL52–52
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L52
split
16Calculate and transport equalitiesL53–54
17Use earlier factsL55–56
18Establish holdL57–60
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hchain right.
19Separate the logical casesL61–64
20Construct an explicit witnessL65–66
21Separate the logical casesL67–67
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L67
split
22Use earlier factsL68–72
23Separate the logical casesL73–73
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L73
split
24Use earlier factsL74–83
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L74
specialize hextension_witness_witness_right (S i) - L75
specialize hextension_witness_witness_right x3 - L76
apply hextension_witness_witness_right - L77
specialize succ_le_succ (S i) - L78
specialize succ_le_succ k - L79
apply succ_le_succ - L80
exact hsplit_right - L81
exact hold_witness_witness_right_left - L82
exact hold_witness_witness_right_right - L83
exact hextension_witness_witness_left
Original exact command ledger · 83 lines
- 0001
intro n - 0002
intro k - 0003
intro b - 0004
intro c - 0005
intro a - 0006
intro p - 0007
intro hchain - 0008
intro hterminal - 0009
intro hwindow - 0010
cases hchain - 0011
have hextension : exists z d. ((((exists bcf_height_bpc_successor_terminal. bcf_height_bpc_successor_terminal + S (p) = S ((S (S k)) * d)) /\ exists bcf_quotient_bpc_successor_terminal. z = bcf_quotient_bpc_successor_terminal * S ((S (S k)) * d) + (p))) /\ forall i v. (exists bcf_lt_gap_bpc_transport_bound. bcf_lt_gap_bpc_transport_bound + S (i) = S k) -> (((exists bcf_height_bpc_transport_old. bcf_height_bpc_transport_old + S (v) = S ((S (i)) * c)) /\ exists bcf_quotient_bpc_transport_old. b = bcf_quotient_bpc_transport_old * S ((S (i)) * c) + (v))) -> (((exists bcf_height_bpc_transport_new. bcf_height_bpc_transport_new + S (v) = S ((S (i)) * d)) /\ exists bcf_quotient_bpc_transport_new. z = bcf_quotient_bpc_transport_new * S ((S (i)) * d) + (v)))) - 0012
specialize beta_prefix_extend (S k) - 0013
specialize beta_prefix_extend b - 0014
specialize beta_prefix_extend c - 0015
specialize beta_prefix_extend p - 0016
exact beta_prefix_extend - 0017
cases hextension - 0018
cases hextension_witness - 0019
cases hextension_witness_witness - 0020
exists x - 0021
exists x1 - 0022
split - 0023
split - 0024
specialize hextension_witness_witness_right 0 - 0025
specialize hextension_witness_witness_right n - 0026
apply hextension_witness_witness_right - 0027
specialize succ_le_succ 0 - 0028
specialize succ_le_succ k - 0029
apply succ_le_succ - 0030
specialize zero_le k - 0031
exact zero_le - 0032
exact hchain_left - 0033
intro i - 0034
intro hbound - 0035
have hsplit : i = k \/ exists gap. gap + S i = k - 0036
specialize finite_lt_succ_eq_or_lt k - 0037
specialize finite_lt_succ_eq_or_lt i - 0038
apply finite_lt_succ_eq_or_lt - 0039
exact hbound - 0040
cases hsplit - 0041
exists a - 0042
exists p - 0043
split - 0044
rewrite hsplit_left - 0045
rewrite hsplit_left - 0046
specialize hextension_witness_witness_right k - 0047
specialize hextension_witness_witness_right a - 0048
apply hextension_witness_witness_right - 0049
specialize le_refl (S k) - 0050
exact le_refl - 0051
exact hterminal - 0052
split - 0053
rewrite hsplit_left - 0054
rewrite hsplit_left - 0055
exact hextension_witness_witness_left - 0056
exact hwindow - 0057
have hold : exists u v. ((((exists bcf_height_bpc_step_old. bcf_height_bpc_step_old + S (u) = S ((S (i)) * c)) /\ exists bcf_quotient_bpc_step_old. b = bcf_quotient_bpc_step_old * S ((S (i)) * c) + (u))) /\ ((((exists bcf_height_bpc_step_next. bcf_height_bpc_step_next + S (v) = S ((S (S i)) * c)) /\ exists bcf_quotient_bpc_step_next. b = bcf_quotient_bpc_step_next * S ((S (S i)) * c) + (v))) /\ ((((~(v = 1) /\ forall frm_prime_left_bpc_old_step_prime frm_prime_right_bpc_old_step_prime. v = frm_prime_left_bpc_old_step_prime * frm_prime_right_bpc_old_step_prime -> frm_prime_left_bpc_old_step_prime = 1 \/ frm_prime_right_bpc_old_step_prime = 1)) /\ ((exists bcf_lt_gap_bpc_old_step_lower. bcf_lt_gap_bpc_old_step_lower + S (u) = v) /\ (exists bcf_lt_gap_bpc_old_step_upper. bcf_lt_gap_bpc_old_step_upper + S (v) = u + u)))))) - 0058
specialize hchain_right i - 0059
apply hchain_right - 0060
exact hsplit_right - 0061
cases hold - 0062
cases hold_witness - 0063
cases hold_witness_witness - 0064
cases hold_witness_witness_right - 0065
exists x2 - 0066
exists x3 - 0067
split - 0068
specialize hextension_witness_witness_right i - 0069
specialize hextension_witness_witness_right x2 - 0070
apply hextension_witness_witness_right - 0071
exact hbound - 0072
exact hold_witness_witness_left - 0073
split - 0074
specialize hextension_witness_witness_right (S i) - 0075
specialize hextension_witness_witness_right x3 - 0076
apply hextension_witness_witness_right - 0077
specialize succ_le_succ (S i) - 0078
specialize succ_le_succ k - 0079
apply succ_le_succ - 0080
exact hsplit_right - 0081
exact hold_witness_witness_right_left - 0082
exact hold_witness_witness_right_right - 0083
exact hextension_witness_witness_left