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 expanded first-order arithmetic statement
forall p b c L t d e M. L=t+M -> (forall fom_index_pfp_suffix_input_coefficients. (exists fom_gap_pfp_suffix_input_coefficients_index_bound. fom_gap_pfp_suffix_input_coefficients_index_bound + S (fom_index_pfp_suffix_input_coefficients) = L) -> exists fom_value_pfp_suffix_input_coefficients. ((((exists fom_beta_height_pfp_suffix_input_coefficients_entry. fom_beta_height_pfp_suffix_input_coefficients_entry + S (fom_value_pfp_suffix_input_coefficients) = S ((S (fom_index_pfp_suffix_input_coefficients)) * c)) /\ exists fom_beta_quotient_pfp_suffix_input_coefficients_entry. b = fom_beta_quotient_pfp_suffix_input_coefficients_entry * S ((S (fom_index_pfp_suffix_input_coefficients)) * c) + (fom_value_pfp_suffix_input_coefficients))) /\ (exists fom_gap_pfp_suffix_input_coefficients_value_bound. fom_gap_pfp_suffix_input_coefficients_value_bound + S (fom_value_pfp_suffix_input_coefficients) = p))) -> (forall pftrim_index_suffix_bounded pftrim_value_suffix_bounded. (exists pfa_gap_suffix_boundedbound. pfa_gap_suffix_boundedbound + S (pftrim_index_suffix_bounded) = (M)) -> (((exists ff_h_pfp_suffix_boundedsource. ff_h_pfp_suffix_boundedsource + S (pftrim_value_suffix_bounded) = S ((S ((t)+pftrim_index_suffix_bounded)) * c)) /\ exists ff_q_pfp_suffix_boundedsource. b = ff_q_pfp_suffix_boundedsource * S ((S ((t)+pftrim_index_suffix_bounded)) * c) + (pftrim_value_suffix_bounded))) -> (((exists ff_h_pfp_suffix_boundedoutput. ff_h_pfp_suffix_boundedoutput + S (pftrim_value_suffix_bounded) = S ((S (pftrim_index_suffix_bounded)) * e)) /\ exists ff_q_pfp_suffix_boundedoutput. d = ff_q_pfp_suffix_boundedoutput * S ((S (pftrim_index_suffix_bounded)) * e) + (pftrim_value_suffix_bounded)))) -> (forall fom_index_pfp_suffix_output_coefficients. (exists fom_gap_pfp_suffix_output_coefficients_index_bound. fom_gap_pfp_suffix_output_coefficients_index_bound + S (fom_index_pfp_suffix_output_coefficients) = M) -> exists fom_value_pfp_suffix_output_coefficients. ((((exists fom_beta_height_pfp_suffix_output_coefficients_entry. fom_beta_height_pfp_suffix_output_coefficients_entry + S (fom_value_pfp_suffix_output_coefficients) = S ((S (fom_index_pfp_suffix_output_coefficients)) * e)) /\ exists fom_beta_quotient_pfp_suffix_output_coefficients_entry. d = fom_beta_quotient_pfp_suffix_output_coefficients_entry * S ((S (fom_index_pfp_suffix_output_coefficients)) * e) + (fom_value_pfp_suffix_output_coefficients))) /\ (exists fom_gap_pfp_suffix_output_coefficients_value_bound. fom_gap_pfp_suffix_output_coefficients_value_bound + S (fom_value_pfp_suffix_output_coefficients) = p)))Constructive proof overview
Generated structural guide
A genuine suffix ending at the annotated input length inherits every canonical coefficient bound.
The unchanged tactic script uses 1 declared prerequisite and contains 34 exact native proof lines.
Alpha v34 checked-use · first admitted v32 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
matrix_recursive_lt_add_left Alpha 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–10
02Fix variables and assumptionsL11–13
03Establish hshiftL14–20
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply matrix recursive lt add left.
04Establish haL21–24
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hc.
- L21
have ha : exists a. ((((exists ff_h_pfp_suffix_bounded_source. ff_h_pfp_suffix_bounded_source + S (a) = S ((S (t+i)) * c)) /\ exists ff_q_pfp_suffix_bounded_source. b = ff_q_pfp_suffix_bounded_source * S ((S (t+i)) * c) + (a))) /\ ((exists pfa_gap_suffix_bounded_value. pfa_gap_suffix_bounded_value + S (a) = (p)))) - L22
specialize hc (t+i) - L23
apply hc - L24
exact hshift
05Separate the logical casesL25–26
06Construct an explicit witnessL27–27
Supply the displayed value, then prove that it has the required property.
- L27
exists x
07Separate the logical casesL28–28
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L28
split
Original exact command ledger · 34 lines
- 0001
intro p - 0002
intro b - 0003
intro c - 0004
intro L - 0005
intro t - 0006
intro d - 0007
intro e - 0008
intro M - 0009
intro hlen - 0010
intro hc - 0011
intro hs - 0012
intro i - 0013
intro hi - 0014
have hshift : exists pfa_gap_suffix_shift_bound. pfa_gap_suffix_shift_bound + S (t+i) = (L) - 0015
rewrite hlen - 0016
specialize matrix_recursive_lt_add_left (i) - 0017
specialize matrix_recursive_lt_add_left (M) - 0018
specialize matrix_recursive_lt_add_left (t) - 0019
apply matrix_recursive_lt_add_left - 0020
exact hi - 0021
have ha : exists a. ((((exists ff_h_pfp_suffix_bounded_source. ff_h_pfp_suffix_bounded_source + S (a) = S ((S (t+i)) * c)) /\ exists ff_q_pfp_suffix_bounded_source. b = ff_q_pfp_suffix_bounded_source * S ((S (t+i)) * c) + (a))) /\ ((exists pfa_gap_suffix_bounded_value. pfa_gap_suffix_bounded_value + S (a) = (p)))) - 0022
specialize hc (t+i) - 0023
apply hc - 0024
exact hshift - 0025
cases ha - 0026
cases ha_witness - 0027
exists x - 0028
split - 0029
specialize hs (i) - 0030
specialize hs (x) - 0031
apply hs - 0032
exact hi - 0033
exact ha_witness_left - 0034
exact ha_witness_right