CoCalc Public FilesBoolean-Cayley-graphs / sage-code / cayley_graphs_boolean_dimension_4.ipynb
Author: Paul Leopardi
Compute Environment: Ubuntu 18.04 (Deprecated)

# Cayley graphs of binary bent functions of dimension 4.

Import the required modules.

In [1]:
import os
from boolean_cayley_graphs.bent_function import BentFunction
from boolean_cayley_graphs.bent_function_cayley_graph_classification import BentFunctionCayleyGraphClassification


Connect to the database that contains the classifications of bent functions in 4 dimensions.

In [2]:
load("boolean_dimension_cayley_graph_classifications.py")


Set c to be the list of classifications for dimension 4, starting from 1. c[0] is None.

In [3]:
c = save_boolean_dimension_cayley_graph_classifications(4, dir=os.path.join("..","sobj"))


Display the length of c, the list of classifications.

In [4]:
len(c)

2

Verify that c[0] is None.

In [5]:
print(c[0])

None

Print the algebraic normal form of the bent function corresponding to c[1].

In [6]:
c[1].algebraic_normal_form

x0*x1 + x2*x3

Produce a report on the classification c[1].

In [7]:
c[1].report(report_on_graph_details=True)

Algebraic normal form of Boolean function: x0*x1 + x2*x3 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 16, 6, 2)) Classification of Cayley graphs and classification of Cayley graphs of duals are the same: There are 2 extended Cayley classes in the extended translation class. For each extended Cayley class in the extended translation class: Clique polynomial, strongly regular parameters, rank, and order of a representative graph; and linear code and generator matrix for a representative bent function: EC class 0 : Algebraic normal form of representative: x0*x1 + x2*x3 Clique polynomial: 8*t^4 + 32*t^3 + 48*t^2 + 16*t + 1 Strongly regular parameters: (16, 6, 2, 2) Rank: 6 Order: 1152 Linear code from representative: [6, 4] linear code over GF(2) Generator matrix: [1 0 0 0 0 1] [0 1 0 1 0 0] [0 0 1 1 0 0] [0 0 0 0 1 1] Linear code is projective. Weight distribution: {0: 1, 2: 6, 4: 9} EC class 1 : Algebraic normal form of representative: x0*x1 + x0 + x1 + x2*x3 Clique polynomial: 16*t^5 + 120*t^4 + 160*t^3 + 80*t^2 + 16*t + 1 Strongly regular parameters: (16, 10, 6, 6) Rank: 6 Order: 1920 Linear code from representative: [10, 4] linear code over GF(2) Generator matrix: [1 0 1 0 1 0 0 1 0 0] [0 1 1 0 1 1 0 1 1 0] [0 0 0 1 1 1 0 0 0 1] [0 0 0 0 0 0 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 4: 5, 6: 10}

Produce a matrix plot of the weight_class_matrix.

In [8]:
matrix_plot(c[1].weight_class_matrix,cmap='gist_stern')


Produce a matrix plot of bent_cayley_graph_index_matrix, the matrix of indices of extended Cayley classes within the extended translation class.

In [9]:
matrix_plot(c[1].bent_cayley_graph_index_matrix,cmap='gist_stern')

In [ ]:


In [ ]: