Since asking the question "How should I determine if two strongly regular 
graphs are isomorphic?" I have made great progress in classifying Bent 
functions by their Cayley graphs.
That is, up until now. I have found two graphs which I was (emprically) 
expecting to be isomorphic have different canonical labels.

To reproduce:
1. Clone the python-refactor branch of penguian/Boolean-Cayley-graphs
2. Copy the attached Sage file test_isomorphism.sage to your cloned 
Boolean-Cayley-graphs 
directory.
3. In your cloned Boolean-Cayley-graphs directory, run sage and enter
load("test_isomorphism.sage")

You should see:

















*sage: load("test_isomorphism.sage")Defining bent function 
f...f.algebraic_normal_form() == x0*x1*x6 + x0*x3 + x1*x4 + x2*x3*x6 + 
x2*x5 + x3*x4 + x4*x5*x6 + x6*x7Determining strongly regular graphs SG1 and 
SG2...Finding canonical labels CG1 and GG2...CG1 == CG2: 
FalseG1.is_isomorphic(G2): FalseSageCG1 == SageCG2: 
FalseSG1.stored_clique_polynomial == SG2.stored_clique_polynomial: 
TrueSG1.stored_clique_polynomial == 45056*t^9 + 780288*t^8 + 2998272*t^7 + 
5505024*t^6 + 4816896*t^5 + 1892352*t^4 + 286720*t^3 + 15360*t^2 + 256*t + 
1SG1.rank == SG2.rank: TrueSG1.rank == 16SG1.group_order == 
SG2.group_order: TrueSG1.group_order == 
229376G1.automorphism_group().is_isomorphic(G2.automorphism_group()): 
Truesage: *
This is saying that G1, the Cayley graph of f, and G2, the strongly regular 
graph obtained from the two-weight code derived from f, are not isomorphic, 
*but*
G1 and G2 have the same clique polynomial, *and*
G1 and G2 have isomorphic automorphism groups.

Do you have any hints on how I can further diagnose what is really going on 
here? I suspect a bug in my own code rather than a bug in Sage or a true 
non-isomorphism, but at this stage I can't be sure.
For example, I have not yet found nor devised a proof that G1 and G2 should 
be isomorphic, beyond observing that it is true for all the other cases I 
have examined so far.

The code for cayley_graph() and for strongly_regular_graph() is in 
bent_function.py. 
The method strongly_regular_graph() depends on linear_code(), which is 
defined in boolean_function_improved.py, and is based on a simplified 
version of Ding III a) https://arxiv.org/abs/1503.06511 
Sorry I haven't yet fully documented my code. It is a work in progress.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Attachment: test_isomorphism.sage
Description: Binary data

Reply via email to