From 6f1ad27a94c022b531074507002148e3d7742883 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Radek=20Hu=C5=A1ek?= <PitelVonSacek@gmail.com>
Date: Wed, 9 Dec 2015 10:44:47 +0100
Subject: [PATCH] Add group Z5

It looks like Petersen graph is Z5-connected...
---
 group-connectivity.h  | 1 +
 groupConnectivity.pyx | 4 ++++
 2 files changed, 5 insertions(+)

diff --git a/group-connectivity.h b/group-connectivity.h
index ce8c316..6a19341 100644
--- a/group-connectivity.h
+++ b/group-connectivity.h
@@ -14,6 +14,7 @@ template < typename T_ > struct Name { \
   static const T zero = 0; \
 }
 
+MakeRing(Z5, 5, (a + b) % 5, (5 - a) % 5, (a * b) % 5, 1);
 MakeRing(Z4, 4, (a + b) & 3, (4 - a) & 3, (a * b) & 3, 1);
 MakeRing(Z2_2, 4, a^b, a, a&b, 3);
 
diff --git a/groupConnectivity.pyx b/groupConnectivity.pyx
index 45af08b..a732146 100644
--- a/groupConnectivity.pyx
+++ b/groupConnectivity.pyx
@@ -7,6 +7,8 @@ cdef extern from "group-connectivity.h" namespace "Ring":
     pass
   cdef cppclass Z2_2[T]:
     pass
+  cdef cppclass Z5[T]:
+    pass
 
 cdef extern from "group-connectivity.h":
   cdef cppclass AbstractTester:
@@ -35,6 +37,8 @@ def testGroupConnectivity(G, group = "Z4", debug = False):
     tester = new Tester[Z4[int]]()
   elif group == "Z2_2":
     tester = new Tester[Z2_2[int]]()
+  elif group == "Z5":
+    tester = new Tester[Z5[int]]()
 
   assert(tester != NULL)
 
-- 
GitLab