Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Each retained summand has a witnessed n=d*q and actual signed multiplication. Zero and nondivisors contribute zero. Input and output values at zero are unrestricted; uniqueness is for positive represented values. The separate inverse family proves the unit-at-one criterion. Full G009 multiplicative-function closure is now admitted in the separate Alpha-v32 multiplicative-convolution family.
Exact theorem in conservative defined notation
∀ F. ∀ G. ∀ n. ∀ d. ∀ q. ∀ a. ∀ b. ∀ z. ¬d = 0 → n = d · q → ArithAt(F,d,a) → ArithAt(G,q,b) → DirichletEntry(F,G,n,d,z) → SignedMul(a,b,z)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 64 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–10
02Fix variables and assumptionsL11–13
03Separate the logical casesL14–21
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
04Establish heqqL22–31
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul left cancel nonzero.
05Calculate and transport equalitiesL32–35
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
06Establish heqaL36–43
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed table at functional.
- L36
have heqa : x1=a - L37
specialize divisor_signed_table_at_functional (F) - L38
specialize divisor_signed_table_at_functional (d) - L39
specialize divisor_signed_table_at_functional (x1) - L40
specialize divisor_signed_table_at_functional (a) - L41
apply divisor_signed_table_at_functional - L42
exact he_left_right_witness_witness_witness_right_left - L43
exact ha
07Establish heqbL44–53
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed table at functional.
- L44
have heqb : x2=b - L45
specialize divisor_signed_table_at_functional (G) - L46
specialize divisor_signed_table_at_functional (q) - L47
specialize divisor_signed_table_at_functional (x2) - L48
specialize divisor_signed_table_at_functional (b) - L49
apply divisor_signed_table_at_functional - L50
exact he_left_right_witness_witness_witness_right_right_left - L51
exact hb - L52
rewrite heqa at he_left_right_witness_witness_witness_right_right_right - L53
rewrite heqa at he_left_right_witness_witness_witness_right_right_right
08Calculate and transport equalitiesL54–55
09Use earlier factsL56–56
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L56
exact he_left_right_witness_witness_witness_right_right_right
10Separate the logical casesL57–59
11Use earlier factsL60–62
12Construct an explicit witnessL63–63
Supply the displayed value, then prove that it has the required property.
- L63
exists q
13Use earlier factsL64–64
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L64
exact hq
Original defined command ledger · 64 lines
- 0001
intro F - 0002
intro G - 0003
intro n - 0004
intro d - 0005
intro q - 0006
intro a - 0007
intro b - 0008
intro z - 0009
intro hd - 0010
intro hq - 0011
intro ha - 0012
intro hb - 0013
intro he - 0014
cases he - 0015
cases he_left - 0016
cases he_left_right - 0017
cases he_left_right_witness - 0018
cases he_left_right_witness_witness - 0019
cases he_left_right_witness_witness_witness - 0020
cases he_left_right_witness_witness_witness_right - 0021
cases he_left_right_witness_witness_witness_right_right - 0022
have heqq : x=q - 0023
specialize mul_left_cancel_nonzero (d) - 0024
specialize mul_left_cancel_nonzero (x) - 0025
specialize mul_left_cancel_nonzero (q) - 0026
apply mul_left_cancel_nonzero - 0027
exact hd - 0028
trans n - 0029
symm - 0030
exact he_left_right_witness_witness_witness_left - 0031
exact hq - 0032
rewrite heqq at he_left_right_witness_witness_witness_right_right_left - 0033
rewrite heqq at he_left_right_witness_witness_witness_right_right_left - 0034
rewrite heqq at he_left_right_witness_witness_witness_right_right_left - 0035
rewrite heqq at he_left_right_witness_witness_witness_right_right_left - 0036
have heqa : x1=a - 0037
specialize divisor_signed_table_at_functional (F) - 0038
specialize divisor_signed_table_at_functional (d) - 0039
specialize divisor_signed_table_at_functional (x1) - 0040
specialize divisor_signed_table_at_functional (a) - 0041
apply divisor_signed_table_at_functional - 0042
exact he_left_right_witness_witness_witness_right_left - 0043
exact ha - 0044
have heqb : x2=b - 0045
specialize divisor_signed_table_at_functional (G) - 0046
specialize divisor_signed_table_at_functional (q) - 0047
specialize divisor_signed_table_at_functional (x2) - 0048
specialize divisor_signed_table_at_functional (b) - 0049
apply divisor_signed_table_at_functional - 0050
exact he_left_right_witness_witness_witness_right_right_left - 0051
exact hb - 0052
rewrite heqa at he_left_right_witness_witness_witness_right_right_right - 0053
rewrite heqa at he_left_right_witness_witness_witness_right_right_right - 0054
rewrite heqb at he_left_right_witness_witness_witness_right_right_right - 0055
rewrite heqb at he_left_right_witness_witness_witness_right_right_right - 0056
exact he_left_right_witness_witness_witness_right_right_right - 0057
cases he_right - 0058
exfalso - 0059
cases he_right_left - 0060
apply hd - 0061
exact he_right_left_left - 0062
apply he_right_left_right - 0063
exists q - 0064
exact hq