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
∀ F. ∀ n. ∀ l. ∀ M. ∀ z. DivisorMask(F,n,l,M) → DivisorMaskEntry(F,n,S l,z) → ∃ x. DivisorMask(F,n,S l,x) ∧ ArithTableEqual(M,x,S l)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 84 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 (1)
01Fix variables and assumptionsL1–7
02Separate the logical casesL8–8
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L8
cases hm
03Establish hextL9–14
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply arithmetic signed table append.
- L9
have hext : ∃ G. ArithExtend(M,G,S l,z)Definitions: ArithExtend(M,G,S l,z)Original native command in the exact edition - L10
specialize arithmetic_signed_table_append (l) - L11
specialize arithmetic_signed_table_append (M) - L12
specialize arithmetic_signed_table_append (z) - L13
apply arithmetic_signed_table_append - L14
exact hm_left
04Separate the logical casesL15–17
05Construct an explicit witnessL18–18
Supply the displayed value, then prove that it has the required property.
- L18
exists x
06Separate the logical casesL19–20
07Use earlier factsL21–21
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L21
exact hext_witness_left
08Fix variables and assumptionsL22–25
09Establish hcL26–30
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le eq or lt.
10Separate the logical casesL31–31
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L31
cases hc
11Calculate and transport equalitiesL32–35
12Establish heqL36–45
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 heq : z=u - L37
specialize divisor_signed_table_at_functional (x) - L38
specialize divisor_signed_table_at_functional (S l) - L39
specialize divisor_signed_table_at_functional (z) - L40
specialize divisor_signed_table_at_functional (u) - L41
apply divisor_signed_table_at_functional - L42
exact hext_witness_right_right - L43
exact hu - L44
rewrite heq at hz - L45
rewrite heq at hz
13Calculate and transport equalitiesL46–54
14Use earlier factsL55–55
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L55
exact hz
15Establish hboundL56–60
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply le of succ le succ.
16Establish hvL61–67
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply divisor signed table lookup.
- L61
have hv : ∃ v. ArithAt(M,d,v)Definitions: ArithAt(M,d,v)Original native command in the exact edition - L62
specialize divisor_signed_table_lookup (l) - L63
specialize divisor_signed_table_lookup (M) - L64
specialize divisor_signed_table_lookup (d) - L65
apply divisor_signed_table_lookup - L66
exact hm_left - L67
exact hbound
17Separate the logical casesL68–68
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L68
cases hv
18Establish heqL69–78
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 · 84 lines
- 0001
intro F - 0002
intro n - 0003
intro l - 0004
intro M - 0005
intro z - 0006
intro hm - 0007
intro hz - 0008
cases hm - 0009
have hext : ∃ G. ArithExtend(M,G,S l,z) - 0010
specialize arithmetic_signed_table_append (l) - 0011
specialize arithmetic_signed_table_append (M) - 0012
specialize arithmetic_signed_table_append (z) - 0013
apply arithmetic_signed_table_append - 0014
exact hm_left - 0015
cases hext - 0016
cases hext_witness - 0017
cases hext_witness_right - 0018
exists x - 0019
split - 0020
split - 0021
exact hext_witness_left - 0022
intro d - 0023
intro u - 0024
intro hd - 0025
intro hu - 0026
have hc : d = S l ∨ Lt(d,S l) - 0027
specialize le_eq_or_lt (d) - 0028
specialize le_eq_or_lt (S l) - 0029
apply le_eq_or_lt - 0030
exact hd - 0031
cases hc - 0032
rewrite hc_left at hu - 0033
rewrite hc_left at hu - 0034
rewrite hc_left at hu - 0035
rewrite hc_left at hu - 0036
have heq : z=u - 0037
specialize divisor_signed_table_at_functional (x) - 0038
specialize divisor_signed_table_at_functional (S l) - 0039
specialize divisor_signed_table_at_functional (z) - 0040
specialize divisor_signed_table_at_functional (u) - 0041
apply divisor_signed_table_at_functional - 0042
exact hext_witness_right_right - 0043
exact hu - 0044
rewrite heq at hz - 0045
rewrite heq at hz - 0046
rewrite heq at hz - 0047
rewrite hc_left - 0048
rewrite hc_left - 0049
rewrite hc_left - 0050
rewrite hc_left - 0051
rewrite hc_left - 0052
rewrite hc_left - 0053
rewrite hc_left - 0054
rewrite hc_left - 0055
exact hz - 0056
have hbound : Le(d,l) - 0057
specialize le_of_succ_le_succ (d) - 0058
specialize le_of_succ_le_succ (l) - 0059
apply le_of_succ_le_succ - 0060
exact hc_right - 0061
have hv : ∃ v. ArithAt(M,d,v) - 0062
specialize divisor_signed_table_lookup (l) - 0063
specialize divisor_signed_table_lookup (M) - 0064
specialize divisor_signed_table_lookup (d) - 0065
apply divisor_signed_table_lookup - 0066
exact hm_left - 0067
exact hbound - 0068
cases hv - 0069
have heq : x1=u - 0070
specialize hext_witness_right_left (d) - 0071
specialize hext_witness_right_left (x1) - 0072
specialize hext_witness_right_left (u) - 0073
apply hext_witness_right_left - 0074
exact hc_right - 0075
exact hv_witness - 0076
exact hu - 0077
rewrite heq at hv_witness - 0078
rewrite heq at hv_witness - 0079
specialize hm_right (d) - 0080
specialize hm_right (u) - 0081
apply hm_right - 0082
exact hbound - 0083
exact hv_witness - 0084
exact hext_witness_right_left