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 first-order arithmetic statement
forall L n. (forall sfd_search_prime_search_absent. (exists pvs_gap_search_absentbound. pvs_gap_search_absentbound + S (sfd_search_prime_search_absent) = (L)) -> (~((sfd_search_prime_search_absent) = 1) /\ forall pvs_left_search_absentdomain pvs_right_search_absentdomain. (sfd_search_prime_search_absent) = pvs_left_search_absentdomain * pvs_right_search_absentdomain -> pvs_left_search_absentdomain = 1 \/ pvs_right_search_absentdomain = 1) -> ~(exists pvs_factor_search_absentsquare. (n) = (sfd_search_prime_search_absent * sfd_search_prime_search_absent) * pvs_factor_search_absentsquare)) \/ exists p. (((exists pvs_gap_search_presentbound. pvs_gap_search_presentbound + S (p) = (L)) /\ (((~((p) = 1) /\ forall pvs_left_search_presentprime pvs_right_search_presentprime. (p) = pvs_left_search_presentprime * pvs_right_search_presentprime -> pvs_left_search_presentprime = 1 \/ pvs_right_search_presentprime = 1) /\ (exists pvs_factor_search_presentsquare. (n) = (p * p) * pvs_factor_search_presentsquare)))))Constructive proof overview
Generated structural guide
Finite induction decides absence of all squared prime divisors below any bound or constructs an actual bounded prime-square divisor.
The unchanged tactic script uses 6 declared prerequisites and contains 80 exact native proof lines.
Alpha v34 checked-use · first admitted v29 · independently kernel and Lean verified; not Stable
Proof neighborhood
Direct dependencies
factor_permutation_below_zero_impossible Alpha theorem; checked-use authorized prime_decidable Stable theorem; checked-use authorized multiple_decidable Stable theorem; checked-use authorized le_refl Stable theorem; checked-use authorized finite_lt_succ_eq_or_lt Stable theorem; checked-use authorized le_succ Stable 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–1
Work with arbitrary variables or the premises of the current implication.
- L1
intro L
02Induction on LL2–3
03Separate the logical casesL4–4
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L4
left
04Fix variables and assumptionsL5–8
05Use earlier factsL9–11
06Fix variables and assumptionsL12–12
Work with arbitrary variables or the premises of the current implication.
- L12
intro n
07Use earlier factsL13–13
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L13
specialize IH n
08Separate the logical casesL14–14
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L14
cases IH
09Use earlier factsL15–15
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L15
specialize prime_decidable L
10Separate the logical casesL16–16
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L16
cases prime_decidable
11Use earlier factsL17–18
12Separate the logical casesL19–20
13Construct an explicit witnessL21–21
Supply the displayed value, then prove that it has the required property.
- L21
exists L
14Separate the logical casesL22–22
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L22
split
15Use earlier factsL23–24
16Separate the logical casesL25–25
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L25
split
17Use earlier factsL26–27
18Separate the logical casesL28–28
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L28
left
19Fix variables and assumptionsL29–32
20Establish hcaseL33–37
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
21Separate the logical casesL38–38
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L38
cases hcase
22Calculate and transport equalitiesL39–40
23Use earlier factsL41–47
24Separate the logical casesL48–48
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L48
left
25Fix variables and assumptionsL49–52
26Establish hcaseL53–57
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply finite lt succ eq or lt.
27Separate the logical casesL58–58
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L58
cases hcase
28Calculate and transport equalitiesL59–60
29Use earlier factsL61–67
30Separate the logical casesL68–71
31Construct an explicit witnessL72–72
Supply the displayed value, then prove that it has the required property.
- L72
exists x
32Separate the logical casesL73–73
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L73
split
33Use earlier factsL74–77
34Separate the logical casesL78–78
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L78
split
Original exact command ledger · 80 lines
- 0001
intro L - 0002
induction L - 0003
intro n - 0004
left - 0005
intro p - 0006
intro hbound - 0007
intro hp - 0008
intro hdiv - 0009
specialize factor_permutation_below_zero_impossible (p) - 0010
apply factor_permutation_below_zero_impossible - 0011
exact hbound - 0012
intro n - 0013
specialize IH n - 0014
cases IH - 0015
specialize prime_decidable L - 0016
cases prime_decidable - 0017
specialize multiple_decidable (L * L) - 0018
specialize multiple_decidable n - 0019
cases multiple_decidable - 0020
right - 0021
exists L - 0022
split - 0023
specialize le_refl (S L) - 0024
apply le_refl - 0025
split - 0026
exact prime_decidable_left - 0027
exact multiple_decidable_left - 0028
left - 0029
intro p - 0030
intro hbound - 0031
intro hp - 0032
intro hdiv - 0033
have hcase : p = L \/ (exists pvs_gap_search_case. pvs_gap_search_case + S (p) = (L)) - 0034
specialize finite_lt_succ_eq_or_lt (L) - 0035
specialize finite_lt_succ_eq_or_lt (p) - 0036
apply finite_lt_succ_eq_or_lt - 0037
exact hbound - 0038
cases hcase - 0039
rewrite hcase_left at hdiv - 0040
rewrite hcase_left at hdiv - 0041
apply multiple_decidable_right - 0042
exact hdiv - 0043
specialize IH_left (p) - 0044
apply IH_left - 0045
exact hcase_right - 0046
exact hp - 0047
exact hdiv - 0048
left - 0049
intro p - 0050
intro hbound - 0051
intro hp - 0052
intro hdiv - 0053
have hcase : p = L \/ (exists pvs_gap_search_case. pvs_gap_search_case + S (p) = (L)) - 0054
specialize finite_lt_succ_eq_or_lt (L) - 0055
specialize finite_lt_succ_eq_or_lt (p) - 0056
apply finite_lt_succ_eq_or_lt - 0057
exact hbound - 0058
cases hcase - 0059
rewrite hcase_left at hp - 0060
rewrite hcase_left at hp - 0061
apply prime_decidable_right - 0062
exact hp - 0063
specialize IH_left (p) - 0064
apply IH_left - 0065
exact hcase_right - 0066
exact hp - 0067
exact hdiv - 0068
right - 0069
cases IH_right - 0070
cases IH_right_witness - 0071
cases IH_right_witness_right - 0072
exists x - 0073
split - 0074
specialize le_succ (S x) - 0075
specialize le_succ (L) - 0076
apply le_succ - 0077
exact IH_right_witness_left - 0078
split - 0079
exact IH_right_witness_right_left - 0080
exact IH_right_witness_right_right