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 u v b c l n. n = S (S l) -> (((forall wpo_position_wtp_terminal_state_closed wpo_source_wtp_terminal_state_closed wpo_mate_wtp_terminal_state_closed. (exists wpo_gap_wtp_terminal_state_closed_position_bound. wpo_gap_wtp_terminal_state_closed_position_bound + S (wpo_position_wtp_terminal_state_closed) = l) -> (((exists wpo_beta_height_wtp_terminal_state_closed_source_entry. wpo_beta_height_wtp_terminal_state_closed_source_entry + S (wpo_source_wtp_terminal_state_closed) = S ((S (wpo_position_wtp_terminal_state_closed)) * c)) /\ exists wpo_beta_quotient_wtp_terminal_state_closed_source_entry. b = wpo_beta_quotient_wtp_terminal_state_closed_source_entry * S ((S (wpo_position_wtp_terminal_state_closed)) * c) + (wpo_source_wtp_terminal_state_closed))) -> (((exists wpo_beta_height_wtp_terminal_state_closed_inverse_entry. wpo_beta_height_wtp_terminal_state_closed_inverse_entry + S (wpo_mate_wtp_terminal_state_closed) = S ((S (wpo_source_wtp_terminal_state_closed)) * v)) /\ exists wpo_beta_quotient_wtp_terminal_state_closed_inverse_entry. u = wpo_beta_quotient_wtp_terminal_state_closed_inverse_entry * S ((S (wpo_source_wtp_terminal_state_closed)) * v) + (wpo_mate_wtp_terminal_state_closed))) -> exists wpo_mate_position_wtp_terminal_state_closed. ((exists wpo_gap_wtp_terminal_state_closed_mate_bound. wpo_gap_wtp_terminal_state_closed_mate_bound + S (wpo_mate_position_wtp_terminal_state_closed) = l) /\ (((exists wpo_beta_height_wtp_terminal_state_closed_mate_entry. wpo_beta_height_wtp_terminal_state_closed_mate_entry + S (wpo_mate_wtp_terminal_state_closed) = S ((S (wpo_mate_position_wtp_terminal_state_closed)) * c)) /\ exists wpo_beta_quotient_wtp_terminal_state_closed_mate_entry. b = wpo_beta_quotient_wtp_terminal_state_closed_mate_entry * S ((S (wpo_mate_position_wtp_terminal_state_closed)) * c) + (wpo_mate_wtp_terminal_state_closed))))) /\ ((forall fom_index_wtp_terminal_state_bounded. (exists fom_gap_wtp_terminal_state_bounded_index_bound. fom_gap_wtp_terminal_state_bounded_index_bound + S (fom_index_wtp_terminal_state_bounded) = l) -> exists fom_value_wtp_terminal_state_bounded. ((((exists fom_beta_height_wtp_terminal_state_bounded_entry. fom_beta_height_wtp_terminal_state_bounded_entry + S (fom_value_wtp_terminal_state_bounded) = S ((S (fom_index_wtp_terminal_state_bounded)) * c)) /\ exists fom_beta_quotient_wtp_terminal_state_bounded_entry. b = fom_beta_quotient_wtp_terminal_state_bounded_entry * S ((S (fom_index_wtp_terminal_state_bounded)) * c) + (fom_value_wtp_terminal_state_bounded))) /\ (exists fom_gap_wtp_terminal_state_bounded_value_bound. fom_gap_wtp_terminal_state_bounded_value_bound + S (fom_value_wtp_terminal_state_bounded) = n))) /\ ((forall wpo_position_wtp_terminal_state_nonendpoint wpo_value_wtp_terminal_state_nonendpoint. (exists wpo_gap_wtp_terminal_state_nonendpoint_position_bound. wpo_gap_wtp_terminal_state_nonendpoint_position_bound + S (wpo_position_wtp_terminal_state_nonendpoint) = l) -> (((exists wpo_beta_height_wtp_terminal_state_nonendpoint_entry. wpo_beta_height_wtp_terminal_state_nonendpoint_entry + S (wpo_value_wtp_terminal_state_nonendpoint) = S ((S (wpo_position_wtp_terminal_state_nonendpoint)) * c)) /\ exists wpo_beta_quotient_wtp_terminal_state_nonendpoint_entry. b = wpo_beta_quotient_wtp_terminal_state_nonendpoint_entry * S ((S (wpo_position_wtp_terminal_state_nonendpoint)) * c) + (wpo_value_wtp_terminal_state_nonendpoint))) -> (~(wpo_value_wtp_terminal_state_nonendpoint = 0) /\ ~((S wpo_value_wtp_terminal_state_nonendpoint) = n))) /\ (forall wpo_injective_left_wtp_terminal_state_injective wpo_injective_right_wtp_terminal_state_injective wpo_injective_value_wtp_terminal_state_injective. (exists wpo_gap_wtp_terminal_state_injective_left_bound. wpo_gap_wtp_terminal_state_injective_left_bound + S (wpo_injective_left_wtp_terminal_state_injective) = l) -> (exists wpo_gap_wtp_terminal_state_injective_right_bound. wpo_gap_wtp_terminal_state_injective_right_bound + S (wpo_injective_right_wtp_terminal_state_injective) = l) -> (((exists wpo_beta_height_wtp_terminal_state_injective_left_entry. wpo_beta_height_wtp_terminal_state_injective_left_entry + S (wpo_injective_value_wtp_terminal_state_injective) = S ((S (wpo_injective_left_wtp_terminal_state_injective)) * c)) /\ exists wpo_beta_quotient_wtp_terminal_state_injective_left_entry. b = wpo_beta_quotient_wtp_terminal_state_injective_left_entry * S ((S (wpo_injective_left_wtp_terminal_state_injective)) * c) + (wpo_injective_value_wtp_terminal_state_injective))) -> (((exists wpo_beta_height_wtp_terminal_state_injective_right_entry. wpo_beta_height_wtp_terminal_state_injective_right_entry + S (wpo_injective_value_wtp_terminal_state_injective) = S ((S (wpo_injective_right_wtp_terminal_state_injective)) * c)) /\ exists wpo_beta_quotient_wtp_terminal_state_injective_right_entry. b = wpo_beta_quotient_wtp_terminal_state_injective_right_entry * S ((S (wpo_injective_right_wtp_terminal_state_injective)) * c) + (wpo_injective_value_wtp_terminal_state_injective))) -> wpo_injective_left_wtp_terminal_state_injective = wpo_injective_right_wtp_terminal_state_injective))))) -> (forall gmp_index_wtp_terminal_range. (exists gsp_lt_gap_wtp_terminal_range_index_bound. gsp_lt_gap_wtp_terminal_range_index_bound + S gmp_index_wtp_terminal_range = l) -> exists gmp_magnitude_wtp_terminal_range. ((((exists ff_h_gmp_wtp_terminal_range_decoded. ff_h_gmp_wtp_terminal_range_decoded + S (gmp_magnitude_wtp_terminal_range) = S ((S (gmp_index_wtp_terminal_range)) * c)) /\ exists ff_q_gmp_wtp_terminal_range_decoded. b = ff_q_gmp_wtp_terminal_range_decoded * S ((S (gmp_index_wtp_terminal_range)) * c) + (gmp_magnitude_wtp_terminal_range))) /\ ((exists gsp_lt_gap_wtp_terminal_range_positive. gsp_lt_gap_wtp_terminal_range_positive + S 0 = gmp_magnitude_wtp_terminal_range) /\ (exists gsp_le_gap_wtp_terminal_range_bounded. gsp_le_gap_wtp_terminal_range_bounded + gmp_magnitude_wtp_terminal_range = l))))Structural proof guide
Generated structural guide
A terminal PairOrder state decodes exactly positive values bounded by its length.
Use the direct prerequisites one_le_of_ne_zero, le_of_succ_le_succ, le_eq_or_lt as previously established PA formulas.
The proof proceeds by case analysis (7), intermediate claims (4), equality transport (3).
Referenced ingredients
Proof neighborhood
Direct dependencies
Direct 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 (3)
01Fix variables and assumptionsL1–8
02Separate the logical casesL9–11
03Calculate and transport equalitiesL12–13
04Fix variables and assumptionsL14–15
05Establish hentryL16–19
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hstate right left.
- L16
have hentry : exists x. ((((exists wpo_beta_height_wtp_terminal_entry_x. wpo_beta_height_wtp_terminal_entry_x + S (x) = S ((S (q)) * c)) /\ exists wpo_beta_quotient_wtp_terminal_entry_x. b = wpo_beta_quotient_wtp_terminal_entry_x * S ((S (q)) * c) + (x))) /\ (exists wpo_gap_wtp_terminal_value_bound_x. wpo_gap_wtp_terminal_value_bound_x + S (x) = S (S l))) - L17
specialize hstate_right_left q - L18
apply hstate_right_left - L19
exact hq
06Separate the logical casesL20–21
07Establish hnonendpointL22–27
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hstate right right left.
08Separate the logical casesL28–28
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L28
cases hnonendpoint
09Construct an explicit witnessL29–29
Supply the displayed value, then prove that it has the required property.
- L29
exists x
10Separate the logical casesL30–30
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L30
split
11Use earlier factsL31–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L31
exact hentry_witness_left
12Separate the logical casesL32–32
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L32
split
13Use earlier factsL33–35
14Establish hxle_succL36–40
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le of succ le succ.
15Establish hxsplitL41–45
16Separate the logical casesL46–47
17Use earlier factsL48–48
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L48
apply hnonendpoint_right
18Calculate and transport equalitiesL49–50
Original exact command ledger · 54 lines
- 0001
intro u - 0002
intro v - 0003
intro b - 0004
intro c - 0005
intro l - 0006
intro n - 0007
intro hterminal - 0008
intro hstate - 0009
cases hstate - 0010
cases hstate_right - 0011
cases hstate_right_right - 0012
rewrite hterminal at hstate_right_left - 0013
rewrite hterminal at hstate_right_right_left - 0014
intro q - 0015
intro hq - 0016
have hentry : exists x. ((((exists wpo_beta_height_wtp_terminal_entry_x. wpo_beta_height_wtp_terminal_entry_x + S (x) = S ((S (q)) * c)) /\ exists wpo_beta_quotient_wtp_terminal_entry_x. b = wpo_beta_quotient_wtp_terminal_entry_x * S ((S (q)) * c) + (x))) /\ (exists wpo_gap_wtp_terminal_value_bound_x. wpo_gap_wtp_terminal_value_bound_x + S (x) = S (S l))) - 0017
specialize hstate_right_left q - 0018
apply hstate_right_left - 0019
exact hq - 0020
cases hentry - 0021
cases hentry_witness - 0022
have hnonendpoint : ~(x = 0) /\ ~((S x) = S (S l)) - 0023
specialize hstate_right_right_left q - 0024
specialize hstate_right_right_left x - 0025
apply hstate_right_right_left - 0026
exact hq - 0027
exact hentry_witness_left - 0028
cases hnonendpoint - 0029
exists x - 0030
split - 0031
exact hentry_witness_left - 0032
split - 0033
specialize one_le_of_ne_zero x - 0034
apply one_le_of_ne_zero - 0035
exact hnonendpoint_left - 0036
have hxle_succ : exists h. h + x = S l - 0037
specialize le_of_succ_le_succ x - 0038
specialize le_of_succ_le_succ (S l) - 0039
apply le_of_succ_le_succ - 0040
exact hentry_witness_right - 0041
have hxsplit : x = S l \/ exists h. h + S x = S l - 0042
specialize le_eq_or_lt x - 0043
specialize le_eq_or_lt (S l) - 0044
apply le_eq_or_lt - 0045
exact hxle_succ - 0046
cases hxsplit - 0047
exfalso - 0048
apply hnonendpoint_right - 0049
rewrite hxsplit_left - 0050
refl - 0051
specialize le_of_succ_le_succ x - 0052
specialize le_of_succ_le_succ l - 0053
apply le_of_succ_le_succ - 0054
exact hxsplit_right