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 p a n l. p = S n -> ((~(p = 1) /\ forall esi_prime_left_esip_bounded_prime esi_prime_right_esip_bounded_prime. p = esi_prime_left_esip_bounded_prime * esi_prime_right_esip_bounded_prime -> esi_prime_left_esip_bounded_prime = 1 \/ esi_prime_right_esip_bounded_prime = 1)) -> ~(a = 0) -> (exists esip_gap_bounded_target_bound. esip_gap_bounded_target_bound + S (a) = p) -> (exists esip_weak_gap_bounded. esip_weak_gap_bounded + l = n) -> exists b c. (forall esip_index_bounded_result. (exists esip_gap_bounded_result_prefix_bound. esip_gap_bounded_result_prefix_bound + S (esip_index_bounded_result) = l) -> exists esip_mate_bounded_result. ((((exists ff_h_esip_bounded_result_entry. ff_h_esip_bounded_result_entry + S (esip_mate_bounded_result) = S ((S (esip_index_bounded_result)) * c)) /\ exists ff_q_esip_bounded_result_entry. b = ff_q_esip_bounded_result_entry * S ((S (esip_index_bounded_result)) * c) + (esip_mate_bounded_result))) /\ ((exists esip_gap_bounded_result_relation_index_bound. esip_gap_bounded_result_relation_index_bound + S (esip_index_bounded_result) = n) /\ ((((~((S esip_index_bounded_result) = 0) /\ (exists esip_gap_bounded_result_relation_scaled_left_bound. esip_gap_bounded_result_relation_scaled_left_bound + S (S esip_index_bounded_result) = p))) /\ (((~(esip_mate_bounded_result = 0) /\ (exists esip_gap_bounded_result_relation_scaled_right_bound. esip_gap_bounded_result_relation_scaled_right_bound + S (esip_mate_bounded_result) = p))) /\ (exists esi_mod_left_bounded_result_relation_scaled_mod esi_mod_right_bounded_result_relation_scaled_mod. ((S esip_index_bounded_result) * esip_mate_bounded_result) + p * esi_mod_left_bounded_result_relation_scaled_mod = (a) + p * esi_mod_right_bounded_result_relation_scaled_mod)))))))Structural proof guide
Generated structural guide
Every bounded predecessor length has a beta-coded scaled-inverse prefix.
Use the direct prerequisites add_eq_zero_right, succ_ne_zero, lt_to_le, prime_scaled_inverse_prefix_extend as previously established PA formulas.
The proof proceeds by structural induction (1), case analysis (5), intermediate claims (4).
Referenced ingredients
Proof neighborhood
Direct dependencies
PA0004 add_eq_zero_right PA0005 succ_ne_zero PA000X lt_to_le PA008R prime_scaled_inverse_prefix_extendDirect dependents
Formal native tactic body
Dependencies are introduced as named hypotheses before line 1. Linked names are exact direct references. This Alpha-v25 checked-use theorem is independently kernel-checked when replayed; it is not a Stable theorem.
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–3
02Induction on lL4–9
03Construct an explicit witnessL10–11
04Fix variables and assumptionsL12–13
05Separate the logical casesL14–15
06Establish hsiL16–25
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply add eq zero right.
07Fix variables and assumptionsL26–28
08Establish hprev_boundL29–33
09Establish hprevL34–40
10Separate the logical casesL41–42
11Establish hnextL43–52
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime scaled inverse prefix extend.
- L43
have hnext : ∃ z. ∃ d. ScaledInversePrefix(p,a,n,z,d,S l)Definitions: ScaledInversePrefix - L44
specialize prime_scaled_inverse_prefix_extend p - L45
specialize prime_scaled_inverse_prefix_extend a - L46
specialize prime_scaled_inverse_prefix_extend n - L47
specialize prime_scaled_inverse_prefix_extend x - L48
specialize prime_scaled_inverse_prefix_extend x1 - L49
specialize prime_scaled_inverse_prefix_extend l - L50
specialize prime_scaled_inverse_prefix_extend (S l) - L51
apply prime_scaled_inverse_prefix_extend - L52
exact hpn
12Use earlier factsL53–56
13Calculate and transport equalitiesL57–57
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L57
refl
14Use earlier factsL58–58
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L58
exact hprev_witness_witness
15Separate the logical casesL59–60
16Construct an explicit witnessL61–62
17Use earlier factsL63–63
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L63
exact hnext_witness_witness
Original exact command ledger · 63 lines
- 0001
intro p - 0002
intro a - 0003
intro n - 0004
induction l - 0005
intro hpn - 0006
intro hp - 0007
intro ha0 - 0008
intro hap - 0009
intro hln - 0010
exists 0 - 0011
exists 0 - 0012
intro i - 0013
intro hi - 0014
exfalso - 0015
cases hi - 0016
have hsi : S i = 0 - 0017
specialize add_eq_zero_right x - 0018
specialize add_eq_zero_right (S i) - 0019
apply add_eq_zero_right - 0020
exact hi_witness - 0021
specialize succ_ne_zero i - 0022
apply succ_ne_zero - 0023
exact hsi - 0024
intro hpn - 0025
intro hp - 0026
intro ha0 - 0027
intro hap - 0028
intro hln - 0029
have hprev_bound : exists h. h + l = n - 0030
specialize lt_to_le l - 0031
specialize lt_to_le n - 0032
apply lt_to_le - 0033
exact hln - 0034
have hprev : exists b c. (forall esip_index_bounded_previous. (exists esip_gap_bounded_previous_prefix_bound. esip_gap_bounded_previous_prefix_bound + S (esip_index_bounded_previous) = l) -> exists esip_mate_bounded_previous. ((((exists ff_h_esip_bounded_previous_entry. ff_h_esip_bounded_previous_entry + S (esip_mate_bounded_previous) = S ((S (esip_index_bounded_previous)) * c)) /\ exists ff_q_esip_bounded_previous_entry. b = ff_q_esip_bounded_previous_entry * S ((S (esip_index_bounded_previous)) * c) + (esip_mate_bounded_previous))) /\ ((exists esip_gap_bounded_previous_relation_index_bound. esip_gap_bounded_previous_relation_index_bound + S (esip_index_bounded_previous) = n) /\ ((((~((S esip_index_bounded_previous) = 0) /\ (exists esip_gap_bounded_previous_relation_scaled_left_bound. esip_gap_bounded_previous_relation_scaled_left_bound + S (S esip_index_bounded_previous) = p))) /\ (((~(esip_mate_bounded_previous = 0) /\ (exists esip_gap_bounded_previous_relation_scaled_right_bound. esip_gap_bounded_previous_relation_scaled_right_bound + S (esip_mate_bounded_previous) = p))) /\ (exists esi_mod_left_bounded_previous_relation_scaled_mod esi_mod_right_bounded_previous_relation_scaled_mod. ((S esip_index_bounded_previous) * esip_mate_bounded_previous) + p * esi_mod_left_bounded_previous_relation_scaled_mod = (a) + p * esi_mod_right_bounded_previous_relation_scaled_mod))))))) - 0035
apply IH - 0036
exact hpn - 0037
exact hp - 0038
exact ha0 - 0039
exact hap - 0040
exact hprev_bound - 0041
cases hprev - 0042
cases hprev_witness - 0043
have hnext : exists z d. (forall esip_index_bounded_successor. (exists esip_gap_bounded_successor_prefix_bound. esip_gap_bounded_successor_prefix_bound + S (esip_index_bounded_successor) = S l) -> exists esip_mate_bounded_successor. ((((exists ff_h_esip_bounded_successor_entry. ff_h_esip_bounded_successor_entry + S (esip_mate_bounded_successor) = S ((S (esip_index_bounded_successor)) * d)) /\ exists ff_q_esip_bounded_successor_entry. z = ff_q_esip_bounded_successor_entry * S ((S (esip_index_bounded_successor)) * d) + (esip_mate_bounded_successor))) /\ ((exists esip_gap_bounded_successor_relation_index_bound. esip_gap_bounded_successor_relation_index_bound + S (esip_index_bounded_successor) = n) /\ ((((~((S esip_index_bounded_successor) = 0) /\ (exists esip_gap_bounded_successor_relation_scaled_left_bound. esip_gap_bounded_successor_relation_scaled_left_bound + S (S esip_index_bounded_successor) = p))) /\ (((~(esip_mate_bounded_successor = 0) /\ (exists esip_gap_bounded_successor_relation_scaled_right_bound. esip_gap_bounded_successor_relation_scaled_right_bound + S (esip_mate_bounded_successor) = p))) /\ (exists esi_mod_left_bounded_successor_relation_scaled_mod esi_mod_right_bounded_successor_relation_scaled_mod. ((S esip_index_bounded_successor) * esip_mate_bounded_successor) + p * esi_mod_left_bounded_successor_relation_scaled_mod = (a) + p * esi_mod_right_bounded_successor_relation_scaled_mod))))))) - 0044
specialize prime_scaled_inverse_prefix_extend p - 0045
specialize prime_scaled_inverse_prefix_extend a - 0046
specialize prime_scaled_inverse_prefix_extend n - 0047
specialize prime_scaled_inverse_prefix_extend x - 0048
specialize prime_scaled_inverse_prefix_extend x1 - 0049
specialize prime_scaled_inverse_prefix_extend l - 0050
specialize prime_scaled_inverse_prefix_extend (S l) - 0051
apply prime_scaled_inverse_prefix_extend - 0052
exact hpn - 0053
exact hp - 0054
exact ha0 - 0055
exact hap - 0056
exact hln - 0057
refl - 0058
exact hprev_witness_witness - 0059
cases hnext - 0060
cases hnext_witness - 0061
exists x2 - 0062
exists x3 - 0063
exact hnext_witness_witness