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 PA statement
forall b c n sn. sn = S n -> (forall fp_i_bounded_succ. (exists fp_gap_bounded_succ_index. fp_gap_bounded_succ_index + S fp_i_bounded_succ = sn) -> exists fp_value_bounded_succ. ((((exists ff_h_bounded_succ_entry. ff_h_bounded_succ_entry + S (fp_value_bounded_succ) = S ((S (fp_i_bounded_succ)) * c)) /\ exists ff_q_bounded_succ_entry. b = ff_q_bounded_succ_entry * S ((S (fp_i_bounded_succ)) * c) + (fp_value_bounded_succ))) /\ (exists fp_gap_bounded_succ_value. fp_gap_bounded_succ_value + S fp_value_bounded_succ = sn))) -> (forall fp_i_inj_succ fp_j_inj_succ fp_value_inj_succ. (exists fp_gap_inj_succ_i. fp_gap_inj_succ_i + S fp_i_inj_succ = sn) -> (exists fp_gap_inj_succ_j. fp_gap_inj_succ_j + S fp_j_inj_succ = sn) -> (((exists ff_h_inj_succ_left. ff_h_inj_succ_left + S (fp_value_inj_succ) = S ((S (fp_i_inj_succ)) * c)) /\ exists ff_q_inj_succ_left. b = ff_q_inj_succ_left * S ((S (fp_i_inj_succ)) * c) + (fp_value_inj_succ))) -> (((exists ff_h_inj_succ_right. ff_h_inj_succ_right + S (fp_value_inj_succ) = S ((S (fp_j_inj_succ)) * c)) /\ exists ff_q_inj_succ_right. b = ff_q_inj_succ_right * S ((S (fp_j_inj_succ)) * c) + (fp_value_inj_succ))) -> fp_i_inj_succ = fp_j_inj_succ) -> (forall fp_value_surj_n. (exists fp_gap_surj_n_value. fp_gap_surj_n_value + S fp_value_surj_n = n) -> exists fp_i_surj_n. ((exists fp_gap_surj_n_index. fp_gap_surj_n_index + S fp_i_surj_n = n) /\ (((exists ff_h_surj_n_entry. ff_h_surj_n_entry + S (fp_value_surj_n) = S ((S (fp_i_surj_n)) * c)) /\ exists ff_q_surj_n_entry. b = ff_q_surj_n_entry * S ((S (fp_i_surj_n)) * c) + (fp_value_surj_n))))) -> (((exists ff_h_last_n. ff_h_last_n + S (n) = S ((S (n)) * c)) /\ exists ff_q_last_n. b = ff_q_last_n * S ((S (n)) * c) + (n)))Structural proof guide
Generated structural guide
A bounded injective successor sequence must place the new value last once its prefix is surjective.
Use the direct prerequisites finite_bounded_last_succ, finite_lt_succ_eq_or_lt, le_refl, le_succ, lt_irrefl_expanded as previously established PA formulas.
The proof proceeds by case analysis (5), intermediate claims (4), equality transport (5).
Referenced ingredients
Proof neighborhood
Direct dependencies
PA004I finite_bounded_last_succ PA003D finite_lt_succ_eq_or_lt PA001A le_refl PA002O le_succ PA0010 lt_irrefl_expandedDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Stable checked-use theorem is independently kernel-checked when replayed.
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 (5)
01Fix variables and assumptionsL1–8
02Calculate and transport equalitiesL9–10
03Establish hlastL11–18
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite bounded last succ.
- L11
have hlast : exists x. (((exists h. h + S x = S ((S n) * c)) /\ exists q. b = q * S ((S n) * c) + x) /\ exists h. h + S x = S n) - L12
specialize finite_bounded_last_succ b - L13
specialize finite_bounded_last_succ c - L14
specialize finite_bounded_last_succ n - L15
specialize finite_bounded_last_succ sn - L16
apply finite_bounded_last_succ - L17
exact hsn - L18
exact hbounded
04Separate the logical casesL19–20
05Establish hsplitL21–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
06Separate the logical casesL26–26
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L26
cases hsplit
07Calculate and transport equalitiesL27–28
08Use earlier factsL29–30
09Establish hpreL31–33
10Separate the logical casesL34–35
11Establish hniL36–45
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hinj.
12Use earlier factsL46–48
13Separate the logical casesL49–49
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L49
exfalso
14Use earlier factsL50–51
15Calculate and transport equalitiesL52–52
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L52
rewrite hni
16Use earlier factsL53–53
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L53
exact hpre_witness_left
Original exact command ledger · 53 lines
- 0001
intro b - 0002
intro c - 0003
intro n - 0004
intro sn - 0005
intro hsn - 0006
intro hbounded - 0007
intro hinj - 0008
intro hsurj - 0009
rewrite hsn at hinj - 0010
rewrite hsn at hinj - 0011
have hlast : exists x. (((exists h. h + S x = S ((S n) * c)) /\ exists q. b = q * S ((S n) * c) + x) /\ exists h. h + S x = S n) - 0012
specialize finite_bounded_last_succ b - 0013
specialize finite_bounded_last_succ c - 0014
specialize finite_bounded_last_succ n - 0015
specialize finite_bounded_last_succ sn - 0016
apply finite_bounded_last_succ - 0017
exact hsn - 0018
exact hbounded - 0019
cases hlast - 0020
cases hlast_witness - 0021
have hsplit : x = n \/ exists h. h + S x = n - 0022
specialize finite_lt_succ_eq_or_lt n - 0023
specialize finite_lt_succ_eq_or_lt x - 0024
apply finite_lt_succ_eq_or_lt - 0025
exact hlast_witness_right - 0026
cases hsplit - 0027
rewrite hsplit_left at hlast_witness_left - 0028
rewrite hsplit_left at hlast_witness_left - 0029
exact hlast_witness_left - 0030
specialize hsurj x - 0031
have hpre : exists i. ((exists h. h + S i = n) /\ ((exists h. h + S x = S ((S i) * c)) /\ exists q. b = q * S ((S i) * c) + x)) - 0032
apply hsurj - 0033
exact hsplit_right - 0034
cases hpre - 0035
cases hpre_witness - 0036
have hni : n = x1 - 0037
specialize hinj n - 0038
specialize hinj x1 - 0039
specialize hinj x - 0040
apply hinj - 0041
specialize le_refl (S n) - 0042
exact le_refl - 0043
specialize le_succ (S x1) - 0044
specialize le_succ n - 0045
apply le_succ - 0046
exact hpre_witness_left - 0047
exact hlast_witness_left - 0048
exact hpre_witness_right - 0049
exfalso - 0050
specialize lt_irrefl_expanded n - 0051
apply lt_irrefl_expanded - 0052
rewrite hni - 0053
exact hpre_witness_left