Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
A genuine divisor mask has S n entries, indexed zero through n, and forces its zeroth entry to zero regardless of F(0). Möbius values remain positive-domain only. This family constructs divisor sums and Möbius tables; cancellation and the full G007 endpoint are separately proved later in the same release.
Exact theorem in conservative defined notation
∀ N. ∀ F. ∀ z. MobiusTable(N,F) → Mobius(S N,z) → ∃ x. MobiusTable(S N,x) ∧ ArithTableEqual(F,x,S N)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 103 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.
Named ingredients (2)
01Fix variables and assumptionsL1–5
02Separate the logical casesL6–7
03Establish hextL8–13
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply arithmetic signed table append.
- L8
have hext : ∃ G. ArithExtend(F,G,S N,z)Definitions: ArithExtend(F,G,S N,z)Original native command in the exact edition - L9
specialize arithmetic_signed_table_append (N) - L10
specialize arithmetic_signed_table_append (F) - L11
specialize arithmetic_signed_table_append (z) - L12
apply arithmetic_signed_table_append - L13
exact hmu_left
04Separate the logical casesL14–16
05Construct an explicit witnessL17–17
Supply the displayed value, then prove that it has the required property.
- L17
exists x
06Separate the logical casesL18–19
07Use earlier factsL20–20
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L20
exact hext_witness_left
08Separate the logical casesL21–21
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L21
split
09Use earlier factsL22–31
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L22
specialize arithmetic_signed_table_equal_entry_transport (S N) - L23
specialize arithmetic_signed_table_equal_entry_transport (F) - L24
specialize arithmetic_signed_table_equal_entry_transport (x) - L25
specialize arithmetic_signed_table_equal_entry_transport (S N) - L26
specialize arithmetic_signed_table_equal_entry_transport (0) - L27
specialize arithmetic_signed_table_equal_entry_transport (0) - L28
apply arithmetic_signed_table_equal_entry_transport - L29
exact hext_witness_left - L30
exact hext_witness_right_left - L31
specialize zero_le (S N)
10Use earlier factsL32–38
11Fix variables and assumptionsL39–43
12Establish hcaseL44–48
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le eq or lt.
13Separate the logical casesL49–49
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L49
cases hcase
14Calculate and transport equalitiesL50–53
15Establish heqL54–63
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed table at functional.
- L54
have heq : z = y - L55
specialize divisor_signed_table_at_functional (x) - L56
specialize divisor_signed_table_at_functional (S N) - L57
specialize divisor_signed_table_at_functional (z) - L58
specialize divisor_signed_table_at_functional (y) - L59
apply divisor_signed_table_at_functional - L60
exact hext_witness_right_right - L61
exact hv - L62
rewrite heq at hz - L63
rewrite heq at hz
16Calculate and transport equalitiesL64–72
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
17Use earlier factsL73–73
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L73
exact hz
18Establish hboundL74–78
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le of succ le succ.
19Establish huL79–85
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed table lookup.
- L79
have hu : ∃ u. ArithAt(F,i,u)Definitions: ArithAt(F,i,u)Original native command in the exact edition - L80
specialize divisor_signed_table_lookup (N) - L81
specialize divisor_signed_table_lookup (F) - L82
specialize divisor_signed_table_lookup (i) - L83
apply divisor_signed_table_lookup - L84
exact hmu_left - L85
exact hbound
20Separate the logical casesL86–86
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L86
cases hu
21Establish heqL87–96
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hext witness right left.
Original defined command ledger · 103 lines
- 0001
intro N - 0002
intro F - 0003
intro z - 0004
intro hmu - 0005
intro hz - 0006
cases hmu - 0007
cases hmu_right - 0008
have hext : ∃ G. ArithExtend(F,G,S N,z) - 0009
specialize arithmetic_signed_table_append (N) - 0010
specialize arithmetic_signed_table_append (F) - 0011
specialize arithmetic_signed_table_append (z) - 0012
apply arithmetic_signed_table_append - 0013
exact hmu_left - 0014
cases hext - 0015
cases hext_witness - 0016
cases hext_witness_right - 0017
exists x - 0018
split - 0019
split - 0020
exact hext_witness_left - 0021
split - 0022
specialize arithmetic_signed_table_equal_entry_transport (S N) - 0023
specialize arithmetic_signed_table_equal_entry_transport (F) - 0024
specialize arithmetic_signed_table_equal_entry_transport (x) - 0025
specialize arithmetic_signed_table_equal_entry_transport (S N) - 0026
specialize arithmetic_signed_table_equal_entry_transport (0) - 0027
specialize arithmetic_signed_table_equal_entry_transport (0) - 0028
apply arithmetic_signed_table_equal_entry_transport - 0029
exact hext_witness_left - 0030
exact hext_witness_right_left - 0031
specialize zero_le (S N) - 0032
apply zero_le - 0033
specialize succ_le_succ (0) - 0034
specialize succ_le_succ (N) - 0035
apply succ_le_succ - 0036
specialize zero_le (N) - 0037
apply zero_le - 0038
exact hmu_right_left - 0039
intro i - 0040
intro y - 0041
intro hi - 0042
intro hib - 0043
intro hv - 0044
have hcase : i = S N ∨ Lt(i,S N) - 0045
specialize le_eq_or_lt (i) - 0046
specialize le_eq_or_lt (S N) - 0047
apply le_eq_or_lt - 0048
exact hib - 0049
cases hcase - 0050
rewrite hcase_left at hv - 0051
rewrite hcase_left at hv - 0052
rewrite hcase_left at hv - 0053
rewrite hcase_left at hv - 0054
have heq : z = y - 0055
specialize divisor_signed_table_at_functional (x) - 0056
specialize divisor_signed_table_at_functional (S N) - 0057
specialize divisor_signed_table_at_functional (z) - 0058
specialize divisor_signed_table_at_functional (y) - 0059
apply divisor_signed_table_at_functional - 0060
exact hext_witness_right_right - 0061
exact hv - 0062
rewrite heq at hz - 0063
rewrite heq at hz - 0064
rewrite heq at hz - 0065
rewrite hcase_left - 0066
rewrite hcase_left - 0067
rewrite hcase_left - 0068
rewrite hcase_left - 0069
rewrite hcase_left - 0070
rewrite hcase_left - 0071
rewrite hcase_left - 0072
rewrite hcase_left - 0073
exact hz - 0074
have hbound : Le(i,N) - 0075
specialize le_of_succ_le_succ (i) - 0076
specialize le_of_succ_le_succ (N) - 0077
apply le_of_succ_le_succ - 0078
exact hcase_right - 0079
have hu : ∃ u. ArithAt(F,i,u) - 0080
specialize divisor_signed_table_lookup (N) - 0081
specialize divisor_signed_table_lookup (F) - 0082
specialize divisor_signed_table_lookup (i) - 0083
apply divisor_signed_table_lookup - 0084
exact hmu_left - 0085
exact hbound - 0086
cases hu - 0087
have heq : x1 = y - 0088
specialize hext_witness_right_left (i) - 0089
specialize hext_witness_right_left (x1) - 0090
specialize hext_witness_right_left (y) - 0091
apply hext_witness_right_left - 0092
exact hcase_right - 0093
exact hu_witness - 0094
exact hv - 0095
rewrite heq at hu_witness - 0096
rewrite heq at hu_witness - 0097
specialize hmu_right_right (i) - 0098
specialize hmu_right_right (y) - 0099
apply hmu_right_right - 0100
exact hi - 0101
exact hbound - 0102
exact hu_witness - 0103
exact hext_witness_right_left