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 ab ac d bb bc M a. (((exists ff_h_pfp_length_head. ff_h_pfp_length_head + S (a) = S ((S (0)) * ac)) /\ exists ff_q_pfp_length_head. ab = ff_q_pfp_length_head * S ((S (0)) * ac) + (a))) -> (~(a=0)) -> (forall pfrep_power_length_equivalent pfrep_left_length_equivalent pfrep_right_length_equivalent. ((exists pfrep_position_length_equivalentfirst. ((pfrep_position_length_equivalentfirst+S (pfrep_power_length_equivalent)=(S d)) /\ ((((exists ff_h_pfp_length_equivalentfirstentry. ff_h_pfp_length_equivalentfirstentry + S (pfrep_left_length_equivalent) = S ((S (pfrep_position_length_equivalentfirst)) * ac)) /\ exists ff_q_pfp_length_equivalentfirstentry. ab = ff_q_pfp_length_equivalentfirstentry * S ((S (pfrep_position_length_equivalentfirst)) * ac) + (pfrep_left_length_equivalent)))))) \/ (((exists pfrep_gap_length_equivalentfirstoutside. pfrep_gap_length_equivalentfirstoutside+(S d)=(pfrep_power_length_equivalent)) /\ (((pfrep_left_length_equivalent)=0))))) -> ((exists pfrep_position_length_equivalentsecond. ((pfrep_position_length_equivalentsecond+S (pfrep_power_length_equivalent)=(M)) /\ ((((exists ff_h_pfp_length_equivalentsecondentry. ff_h_pfp_length_equivalentsecondentry + S (pfrep_right_length_equivalent) = S ((S (pfrep_position_length_equivalentsecond)) * bc)) /\ exists ff_q_pfp_length_equivalentsecondentry. bb = ff_q_pfp_length_equivalentsecondentry * S ((S (pfrep_position_length_equivalentsecond)) * bc) + (pfrep_right_length_equivalent)))))) \/ (((exists pfrep_gap_length_equivalentsecondoutside. pfrep_gap_length_equivalentsecondoutside+(M)=(pfrep_power_length_equivalent)) /\ (((pfrep_right_length_equivalent)=0))))) -> pfrep_left_length_equivalent=pfrep_right_length_equivalent) -> (exists pfc_gap_length_result. pfc_gap_length_result+(S d)=(M))Constructive proof overview
Generated structural guide
A nonzero coefficient at the leading power cannot be matched by an outside-prefix zero. This length bound needs neither primality nor canonical coefficients.
The unchanged tactic script uses 2 declared prerequisites and contains 31 exact native proof lines.
Alpha v34 checked-use · first admitted v34 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
le_or_lt Alpha theorem; checked-use authorized zero_add 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
02Establish horderL11–14
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le or lt.
03Separate the logical casesL15–16
04Use earlier factsL17–21
05Separate the logical casesL22–22
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L22
left
06Construct an explicit witnessL23–23
Supply the displayed value, then prove that it has the required property.
- L23
exists 0
07Separate the logical casesL24–24
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L24
split
08Use earlier factsL25–26
09Separate the logical casesL27–28
10Use earlier factsL29–29
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L29
exact horder_left
11Calculate and transport equalitiesL30–30
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L30
refl
12Use earlier factsL31–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L31
exact horder_right
Original exact command ledger · 31 lines
- 0001
intro ab - 0002
intro ac - 0003
intro d - 0004
intro bb - 0005
intro bc - 0006
intro M - 0007
intro a - 0008
intro ha - 0009
intro hne - 0010
intro he - 0011
have horder : (exists pfc_gap_length_order. pfc_gap_length_order+(M)=(d)) \/ (exists pfa_gap_length_strict. pfa_gap_length_strict + S (d) = (M)) - 0012
specialize le_or_lt (M) - 0013
specialize le_or_lt (d) - 0014
apply le_or_lt - 0015
cases horder - 0016
exfalso - 0017
apply hne - 0018
specialize he (d) - 0019
specialize he (a) - 0020
specialize he (0) - 0021
apply he - 0022
left - 0023
exists 0 - 0024
split - 0025
apply zero_add - 0026
exact ha - 0027
right - 0028
split - 0029
exact horder_left - 0030
refl - 0031
exact horder_right