Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Mobius(n,z) is positive-domain only, independently defined from squarefreeness and actual prime-factor parity. Signed codes 0, 2 and 1 represent zero, +1 and -1. This family proves values and prime-adjunction laws; the separate Möbius-inversion family supplies the complete G007 endpoint.
Exact theorem in conservative defined notation
∀ p. ∀ n. Prime(p) → Squarefree(n) → ¬Dvd(p,n) → Squarefree(p · n)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 70 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.
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–5
02Separate the logical casesL6–7
03Fix variables and assumptionsL8–8
Work with arbitrary variables or the premises of the current implication.
- L8
intro hz
04Use earlier factsL9–11
05Fix variables and assumptionsL12–12
Work with arbitrary variables or the premises of the current implication.
- L12
intro hpz
06Use earlier factsL13–18
07Fix variables and assumptionsL19–22
08Establish heqL23–26
09Separate the logical casesL27–27
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L27
cases heq
10Use earlier factsL28–28
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L28
apply hfresh
11Calculate and transport equalitiesL29–30
12Separate the logical casesL31–31
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L31
cases hdiv
13Construct an explicit witnessL32–32
Supply the displayed value, then prove that it has the required property.
- L32
exists x
14Use earlier factsL33–36
15Fix variables and assumptionsL37–37
Work with arbitrary variables or the premises of the current implication.
- L37
intro hz
16Use earlier factsL38–41
17Calculate and transport equalitiesL42–42
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L42
trans (p * p) * x
18Use earlier factsL43–52
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L43
exact hdiv_witness - L44
apply mul_assoc - L45
specialize squarefree_excludes_prime_square (n) - L46
specialize squarefree_excludes_prime_square (q) - L47
apply squarefree_excludes_prime_square - L48
exact hsf - L49
exact hq - L50
specialize gauss_coprime_cancel (q * q) - L51
specialize gauss_coprime_cancel (p) - L52
specialize gauss_coprime_cancel (n)
19Use earlier factsL53–62
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 70 lines
- 0001
intro p - 0002
intro n - 0003
intro hp - 0004
intro hsf - 0005
intro hfresh - 0006
cases hsf - 0007
split - 0008
intro hz - 0009
specialize mul_ne_zero (p) - 0010
specialize mul_ne_zero (n) - 0011
apply mul_ne_zero - 0012
intro hpz - 0013
specialize prime_nonzero (p) - 0014
apply prime_nonzero - 0015
exact hp - 0016
exact hpz - 0017
exact hsf_left - 0018
exact hz - 0019
intro q - 0020
intro hq - 0021
intro hbound - 0022
intro hdiv - 0023
have heq : q = p \/ ~(q = p) - 0024
specialize eq_decidable (q) - 0025
specialize eq_decidable (p) - 0026
apply eq_decidable - 0027
cases heq - 0028
apply hfresh - 0029
rewrite heq_left at hdiv - 0030
rewrite heq_left at hdiv - 0031
cases hdiv - 0032
exists x - 0033
specialize mul_left_cancel_nonzero (p) - 0034
specialize mul_left_cancel_nonzero (n) - 0035
specialize mul_left_cancel_nonzero (p * x) - 0036
apply mul_left_cancel_nonzero - 0037
intro hz - 0038
specialize prime_nonzero (p) - 0039
apply prime_nonzero - 0040
exact hp - 0041
exact hz - 0042
trans (p * p) * x - 0043
exact hdiv_witness - 0044
apply mul_assoc - 0045
specialize squarefree_excludes_prime_square (n) - 0046
specialize squarefree_excludes_prime_square (q) - 0047
apply squarefree_excludes_prime_square - 0048
exact hsf - 0049
exact hq - 0050
specialize gauss_coprime_cancel (q * q) - 0051
specialize gauss_coprime_cancel (p) - 0052
specialize gauss_coprime_cancel (n) - 0053
apply gauss_coprime_cancel - 0054
specialize coprime_mul_left (q) - 0055
specialize coprime_mul_left (q) - 0056
specialize coprime_mul_left (p) - 0057
apply coprime_mul_left - 0058
specialize distinct_primes_coprime (q) - 0059
specialize distinct_primes_coprime (p) - 0060
apply distinct_primes_coprime - 0061
exact hq - 0062
exact hp - 0063
exact heq_right - 0064
specialize distinct_primes_coprime (q) - 0065
specialize distinct_primes_coprime (p) - 0066
apply distinct_primes_coprime - 0067
exact hq - 0068
exact hp - 0069
exact heq_right - 0070
exact hdiv