Skip to content

Commit f35385e

Browse files
RaggedRclaude
andcommitted
doc: add visualization links for Klein quartic and Zhou graph
Link to symmetry-aware drawings hosted in the symmetric-graphs repo. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent abcb5df commit f35385e

2 files changed

Lines changed: 52 additions & 0 deletions

File tree

Archive/KleinSurface.lean

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ embedded on the Klein quartic surface of genus 3.
1313
- V = 56, E = 84, F = 24, genus = 3, χ = -4
1414
- **CSS code**: [[84, 6, ≥ 4]]
1515
16+
- [Visualization](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/klein-F056A.jpg) — symmetry-aware drawing
17+
1618
Array-backed data (auto-generated by `generate_lean_surface.py`).
1719
-/
1820

Archive/ZhouGraph.lean

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
44
Authors: Robin Langer
55
-/
66
import Mathlib.Combinatorics.SimpleGraph.Basic
7+
import Mathlib.Combinatorics.SimpleGraph.QuotientGraph
78

89
/-!
910
# The Zhou graph (F182A)
@@ -16,6 +17,10 @@ The Zhou graph (Foster census F182A) is a cubic arc-transitive graph on 182 vert
1617
Z₁₃ ⋊ Z₆, and Z₇ ⋊ Z₃ (none of order 6).
1718
- 273 edges, 3-regular
1819
20+
## Visualizations
21+
22+
* [The Zhou graph](https://raw.githubusercontent.com/RaggedR/symmetric-graphs/main/lean/named_graphs/zhou-F182A.jpg) — symmetry-aware drawing with imprimitive block structure
23+
1924
## References
2025
2126
* Robin Langer, *Symmetric Graphs and their Quotients*, arXiv:1306.4798
@@ -94,3 +99,48 @@ theorem zhouGraph_edgeCount :
9499
(Finset.univ.filter fun p : Fin 182 × Fin 182 =>
95100
p.1 < p.2 ∧ zhouGraph.Adj p.1 p.2).card = 273 := by
96101
native_decide
102+
103+
/-! ### The Z₂ quotient: Sab(PSL(2,13), D₁₂)
104+
105+
S₃ is not maximal in PSL(2,13) — it sits inside D₁₂ (dihedral of order 12,
106+
index 91). The Z₂ block system pairs each of the 182 vertices with one partner,
107+
giving 91 blocks of size 2. The quotient is a 6-regular primitive graph on 91
108+
vertices. D₁₂ IS maximal in PSL(2,13), so this quotient is primitive. -/
109+
110+
private def zhouBlockData : List (Fin 91) := [
111+
0, 27, 14, 7, 3, 1, 15, 5, 77, 70, 21, 75, 52, 56, 87, 68, 42, 49, 59, 2,
112+
45, 11, 31, 89, 85, 29, 36, 64, 24, 67, 48, 90, 72, 39, 41, 66, 80, 44, 22, 65,
113+
71, 46, 25, 13, 6, 15, 50, 33, 43, 68, 42, 8, 9, 49, 23, 30, 18, 85, 88, 4,
114+
29, 12, 16, 74, 40, 67, 28, 41, 53, 73, 22, 69, 65, 20, 60, 37, 0, 62, 38, 83,
115+
9, 8, 54, 59, 23, 19, 34, 82, 31, 64, 74, 58, 48, 72, 28, 76, 73, 80, 81, 44,
116+
46, 17, 61, 10, 1, 83, 27, 26, 62, 5, 35, 57, 11, 19, 4, 89, 16, 40, 79, 90,
117+
63, 76, 71, 20, 10, 47, 77, 50, 57, 51, 87, 56, 82, 88, 36, 12, 84, 58, 39, 66,
118+
69, 25, 60, 61, 32, 38, 14, 86, 75, 51, 55, 2, 84, 53, 32, 26, 43, 70, 21, 35,
119+
52, 30, 78, 17, 13, 37, 7, 47, 33, 34, 78, 63, 86, 54, 45, 6, 3, 18, 79, 81,
120+
24, 55]
121+
122+
private theorem zhouBlockData_length : zhouBlockData.length = 182 := by native_decide
123+
124+
/-- The Z₂ block map on the Zhou graph: `Fin 182 → Fin 91`. -/
125+
def zhouBlockMap (v : Fin 182) : Fin 91 :=
126+
zhouBlockData.get (v.cast zhouBlockData_length.symm)
127+
128+
/-- The **Zhou quotient graph**: Sab(PSL(2,13), D₁₂), a 6-regular primitive graph
129+
on 91 vertices. This is the Z₂ quotient of the Zhou graph by the unique
130+
non-trivial block system. -/
131+
def zhouQuotientGraph : SimpleGraph (Fin 91) :=
132+
zhouGraph.quotientGraph zhouBlockMap
133+
134+
instance : DecidableRel zhouQuotientGraph.Adj := by
135+
intro i j; unfold zhouQuotientGraph SimpleGraph.quotientGraph; simp only; exact instDecidableAnd
136+
137+
/-- The Zhou quotient is 6-regular. -/
138+
theorem zhouQuotientGraph_regular :
139+
∀ v : Fin 91, (Finset.univ.filter fun w => zhouQuotientGraph.Adj v w).card = 6 := by
140+
native_decide
141+
142+
/-- The Zhou quotient has 273 edges. -/
143+
theorem zhouQuotientGraph_edgeCount :
144+
(Finset.univ.filter fun p : Fin 91 × Fin 91 =>
145+
p.1 < p.2 ∧ zhouQuotientGraph.Adj p.1 p.2).card = 273 := by
146+
native_decide

0 commit comments

Comments
 (0)