FormalConjectures/Wikipedia/Hadamard.lean
Explanation legend Lean4 Domain Explanation Language (L4DEL)
L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.
- L4DEL
- Lean4 Domain Explanation Language
Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.
Project sources: Pinned project documentation, Formal Conjectures paper, arXiv v1
9 declarations, 4 contain sorry, 0 declared as axioms
Hadamard's conjecture
References:
- Wikipedia
- Résolution d'une question relative aux déterminants by Jacques Hadamard, Bull. des sciences math., p.245, 1893
Imports (1)
Imported by 2 files
- def
Hadamard.IsHadamardA square matrix $M$ with $±1$-entries that satisfies the equality $|M| ≤ n^\frac{n}{2}$ is called a Hadamard matrix line 35 sourceSource documentation
A square matrix $M$ with $±1$-entries that satisfies the equality $|M| ≤ n^\frac{n}{2}$ is called a Hadamard matrix.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Matrix,Fin,RealProof uses:
And,Membership.mem,Finset,Insert.insert,OfNat.ofNat,Singleton.singleton,Neg.neg,Eq,abs,Matrix.det,HPow.hPow,HDiv.hDiv22 instances, coercions and auxiliary constants left out.
def IsHadamard {n : ℕ} (M : Matrix (Fin n) (Fin n) ℝ) : Prop := … - def
Hadamard.IsHadamard'Equivalently, a square matrix $M$ with $±1$-entries $|A| ≤ n^\frac{n}{2}.$ if it satisfies the equality $M^TM = n \cdot 1$, where $1$ denotes the unit matrix line 43 sourceSource documentation
Equivalently, a square matrix $M$ with $±1$-entries $|A| ≤ n^\frac{n}{2}.$ if it satisfies the equality $M^TM = n \cdot 1$, where $1$ denotes the unit matrix.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Matrix,Fin,RealProof uses:
And,Membership.mem,Finset,Insert.insert,OfNat.ofNat,Singleton.singleton,Neg.neg,Eq,HMul.hMul,Matrix.transpose17 instances, coercions and auxiliary constants left out.
def IsHadamard' {n : ℕ} (M : Matrix (Fin n) (Fin n) ℝ) : Prop := … - theorem
Hadamard.isHadamard_equiv_isHadamard'Both definitions are equivalent sorry line 53 sourceSource documentation
Both definitions are equivalent.
TODO(firsching): complete and golf the proof
depends on sorry what this means
Statement uses:
Nat,Matrix,Fin,Real,Iff, Hadamard.IsHadamard', Hadamard.IsHadamardProof uses:
Eq.mpr,Or,Eq,OfNat.ofNat,Neg.neg,HMul.hMul,Matrix.transpose,abs,Matrix.det,HPow.hPow,HDiv.hDiv,id,Eq.trans,And,congr,congrArg,congrFun',Membership.mem,Finset,Insert.insertand 49 more89 instances, coercions and auxiliary constants left out.
Tactic trace: 33 steps
Open to load the checked before-and-after goal states.
theorem isHadamard_equiv_isHadamard' (n : ℕ) (M : Matrix (Fin n) (Fin n) ℝ) : IsHadamard' M ↔ IsHadamard M := by …
Mentions: Hadamard.IsHadamard', Hadamard.IsHadamard
- theorem
Hadamard.HadamardConjectureThere exists a Hadamard matrix for all $n = 4k$ sorry line 90 sourceSource documentation
There exists a Hadamard matrix for all $n = 4k$.
depends on sorry what this means
Statement uses:
Nat,Exists,Matrix,Fin,HMul.hMul,OfNat.ofNat,Real, Hadamard.IsHadamardProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous6 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem HadamardConjecture (k : ℕ) : ∃ M, IsHadamard (n := 4 * k) M := by …
Mentions: Hadamard.IsHadamard
- theorem
Hadamard.exists_hadamard_zeroline 94 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Exists,Matrix,Fin,OfNat.ofNat,Nat,Real, Hadamard.IsHadamardProof uses:
Exists.intro,of_eq_true,And,Membership.mem,Finset,Insert.insert,Singleton.singleton,Neg.neg,Eq,abs,Matrix.det,HPow.hPow,HDiv.hDiv,Eq.trans,True,congr,congrArg,forall_congr,False,Orand 10 more67 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- def
Hadamard.H12Hadamard constructs a 12 x 12 matrix line 101 sourceSource documentation
Hadamard constructs a 12 x 12 matrix ...
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Matrix,Fin,OfNat.ofNat,Nat,RealProof uses:
Equiv,Matrix.of,Matrix.vecCons,Matrix.vecEmpty,Neg.neg8 instances, coercions and auxiliary constants left out.
def H12 : Matrix (Fin 12) (Fin 12) ℝ := …
- theorem
Hadamard.isHadamard_H12which satisfies the condition line 118 sourceSource documentation
which satisfies the condition.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses: Hadamard.IsHadamard,
OfNat.ofNat,Nat, Hadamard.H12Proof uses:
Eq,Matrix,Fin,Real,HMul.hMul,Matrix.transpose,HSMul.hSMul,Eq.mpr,id,congrArg,Eq.symm,propext,Matrix.ext_iff,of_eq_true,Eq.trans,And,HAdd.hAdd,Matrix.vecCons,Matrix.vecEmpty,Neg.negand 110 more141 instances, coercions and auxiliary constants left out.
Tactic trace: 9 steps
Open to load the checked before-and-after goal states.
theorem isHadamard_H12 : IsHadamard H12 := by …
Mentions: Hadamard.IsHadamard, Hadamard.H12
- theorem
Hadamard.HadamardConjecture.variants.first_casesFor all $k ≤ 166$, it is known there that there is a Hadamard matrix of size $4 * k$ sorry line 132 sourceSource documentation
For all $k ≤ 166$, it is known there that there is a Hadamard matrix of size $4 * k$.
depends on sorry what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,Exists,Matrix,Fin,HMul.hMul,Real, Hadamard.IsHadamardProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous8 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem HadamardConjecture.variants.first_cases (k : ℕ) (h : k ≤ 166) : ∃ M, IsHadamard (n := 4 * k) M := by …Mentions: Hadamard.IsHadamard
- theorem
Hadamard.HadamardConjecture.variants.«167»The smallest order for which no Hadamard matrix is presently known is $668 = 4 * 167$ sorry line 140 sourceSource documentation
The smallest order for which no Hadamard matrix is presently known is $668 = 4 * 167$.
depends on sorry what this means
Statement uses:
Exists,Matrix,Fin,HMul.hMul,Nat,OfNat.ofNat,Real, Hadamard.IsHadamardProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous6 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem HadamardConjecture.variants.«167» : ∃ M, IsHadamard (n := 4 * 167) M := by …
Mentions: Hadamard.IsHadamard