Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Every grid, slice, row sum and intermediate table is constructed. Retained cells have witnessed n=(a*e)*c and value F(a)*(H(e)*G(c)). The flat endpoint is unused. Table associativity includes N=0 and compares only positive values, not encodings. Full G009 remains broader.
Exact theorem in conservative defined notation
∀ F. ∀ G. ∀ H. ∀ n. ∀ a. ∀ e. ∀ z. ∀ Z. DirichletGridEntry(F,G,H,n,a,e,z) → DirichletGridEntry(F,G,H,n,a,e,Z) → z = Z
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 76 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–10
02Separate the logical casesL11–20
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L11
cases hz - L12
cases hz_left - L13
cases hz_left_right - L14
cases hz_left_right_right - L15
cases hz_left_right_right_witness - L16
cases hz_left_right_right_witness_witness - L17
cases hz_left_right_right_witness_witness_witness - L18
cases hz_left_right_right_witness_witness_witness_witness - L19
cases hz_left_right_right_witness_witness_witness_witness_right - L20
cases hz_left_right_right_witness_witness_witness_witness_right_right
03Separate the logical casesL21–21
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L21
cases hz_left_right_right_witness_witness_witness_witness_right_right_right
04Establish hotherL22–31
Establish this local claim before using it. It is not an additional assumption.
- L22
have hother : ∃ dfg_inner_unique_other. SignedMul(x2,x3,dfg_inner_unique_other) ∧ SignedMul(x1,dfg_inner_unique_other,Z)Definitions: SignedMul(x2,x3,dfg_inner_unique_other)SignedMul(x1,dfg_inner_unique_other,Z)Original native command in the exact edition - L23
specialize dirichlet_grid_entry_factor_product (F) - L24
specialize dirichlet_grid_entry_factor_product (G) - L25
specialize dirichlet_grid_entry_factor_product (H) - L26
specialize dirichlet_grid_entry_factor_product (n) - L27
specialize dirichlet_grid_entry_factor_product (a) - L28
specialize dirichlet_grid_entry_factor_product (e) - L29
specialize dirichlet_grid_entry_factor_product (x) - L30
specialize dirichlet_grid_entry_factor_product (x1) - L31
specialize dirichlet_grid_entry_factor_product (x2)
05Use earlier factsL32–41
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L32
specialize dirichlet_grid_entry_factor_product (x3) - L33
specialize dirichlet_grid_entry_factor_product (Z) - L34
apply dirichlet_grid_entry_factor_product - L35
exact hz_left_left - L36
exact hz_left_right_left - L37
exact hz_left_right_right_witness_witness_witness_witness_left - L38
exact hz_left_right_right_witness_witness_witness_witness_right_left - L39
exact hz_left_right_right_witness_witness_witness_witness_right_right_left - L40
exact hz_left_right_right_witness_witness_witness_witness_right_right_right_left - L41
exact hZ
06Separate the logical casesL42–45
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
07Establish hinnerL46–55
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply signed mul functional.
- L46
have hinner : x4=x5 - L47
specialize signed_mul_functional (x2) - L48
specialize signed_mul_functional (x3) - L49
specialize signed_mul_functional (x4) - L50
specialize signed_mul_functional (x5) - L51
apply signed_mul_functional - L52
exact hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness_left - L53
exact hother_witness_left - L54
rewrite hinner at hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness_right - L55
rewrite hinner at hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness_right
08Use earlier factsL56–62
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L56
specialize signed_mul_functional (x1) - L57
specialize signed_mul_functional (x5) - L58
specialize signed_mul_functional (z) - L59
specialize signed_mul_functional (Z) - L60
apply signed_mul_functional - L61
exact hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness_right - L62
exact hother_witness_right
09Separate the logical casesL63–63
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L63
cases hz_right
10Calculate and transport equalitiesL64–64
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L64
trans 0
11Use earlier factsL65–65
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L65
exact hz_right_right
12Calculate and transport equalitiesL66–66
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L66
symm
13Use earlier factsL67–76
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L67
specialize dirichlet_grid_entry_omitted_value (F) - L68
specialize dirichlet_grid_entry_omitted_value (G) - L69
specialize dirichlet_grid_entry_omitted_value (H) - L70
specialize dirichlet_grid_entry_omitted_value (n) - L71
specialize dirichlet_grid_entry_omitted_value (a) - L72
specialize dirichlet_grid_entry_omitted_value (e) - L73
specialize dirichlet_grid_entry_omitted_value (Z) - L74
apply dirichlet_grid_entry_omitted_value - L75
exact hz_right_left - L76
exact hZ
Original defined command ledger · 76 lines
- 0001
intro F - 0002
intro G - 0003
intro H - 0004
intro n - 0005
intro a - 0006
intro e - 0007
intro z - 0008
intro Z - 0009
intro hz - 0010
intro hZ - 0011
cases hz - 0012
cases hz_left - 0013
cases hz_left_right - 0014
cases hz_left_right_right - 0015
cases hz_left_right_right_witness - 0016
cases hz_left_right_right_witness_witness - 0017
cases hz_left_right_right_witness_witness_witness - 0018
cases hz_left_right_right_witness_witness_witness_witness - 0019
cases hz_left_right_right_witness_witness_witness_witness_right - 0020
cases hz_left_right_right_witness_witness_witness_witness_right_right - 0021
cases hz_left_right_right_witness_witness_witness_witness_right_right_right - 0022
have hother : ∃ dfg_inner_unique_other. SignedMul(x2,x3,dfg_inner_unique_other) ∧ SignedMul(x1,dfg_inner_unique_other,Z) - 0023
specialize dirichlet_grid_entry_factor_product (F) - 0024
specialize dirichlet_grid_entry_factor_product (G) - 0025
specialize dirichlet_grid_entry_factor_product (H) - 0026
specialize dirichlet_grid_entry_factor_product (n) - 0027
specialize dirichlet_grid_entry_factor_product (a) - 0028
specialize dirichlet_grid_entry_factor_product (e) - 0029
specialize dirichlet_grid_entry_factor_product (x) - 0030
specialize dirichlet_grid_entry_factor_product (x1) - 0031
specialize dirichlet_grid_entry_factor_product (x2) - 0032
specialize dirichlet_grid_entry_factor_product (x3) - 0033
specialize dirichlet_grid_entry_factor_product (Z) - 0034
apply dirichlet_grid_entry_factor_product - 0035
exact hz_left_left - 0036
exact hz_left_right_left - 0037
exact hz_left_right_right_witness_witness_witness_witness_left - 0038
exact hz_left_right_right_witness_witness_witness_witness_right_left - 0039
exact hz_left_right_right_witness_witness_witness_witness_right_right_left - 0040
exact hz_left_right_right_witness_witness_witness_witness_right_right_right_left - 0041
exact hZ - 0042
cases hz_left_right_right_witness_witness_witness_witness_right_right_right_right - 0043
cases hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness - 0044
cases hother - 0045
cases hother_witness - 0046
have hinner : x4=x5 - 0047
specialize signed_mul_functional (x2) - 0048
specialize signed_mul_functional (x3) - 0049
specialize signed_mul_functional (x4) - 0050
specialize signed_mul_functional (x5) - 0051
apply signed_mul_functional - 0052
exact hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness_left - 0053
exact hother_witness_left - 0054
rewrite hinner at hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness_right - 0055
rewrite hinner at hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness_right - 0056
specialize signed_mul_functional (x1) - 0057
specialize signed_mul_functional (x5) - 0058
specialize signed_mul_functional (z) - 0059
specialize signed_mul_functional (Z) - 0060
apply signed_mul_functional - 0061
exact hz_left_right_right_witness_witness_witness_witness_right_right_right_right_witness_right - 0062
exact hother_witness_right - 0063
cases hz_right - 0064
trans 0 - 0065
exact hz_right_right - 0066
symm - 0067
specialize dirichlet_grid_entry_omitted_value (F) - 0068
specialize dirichlet_grid_entry_omitted_value (G) - 0069
specialize dirichlet_grid_entry_omitted_value (H) - 0070
specialize dirichlet_grid_entry_omitted_value (n) - 0071
specialize dirichlet_grid_entry_omitted_value (a) - 0072
specialize dirichlet_grid_entry_omitted_value (e) - 0073
specialize dirichlet_grid_entry_omitted_value (Z) - 0074
apply dirichlet_grid_entry_omitted_value - 0075
exact hz_right_left - 0076
exact hZ