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

# Cayley graphs of binary bent functions of dimension 6.

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


Import controls.

In [2]:
import boolean_cayley_graphs.cayley_graph_controls as controls


Turn on verbose output.

In [3]:
controls.timing = True
controls.verbose = True


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

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


Set c to be the list of classifications for dimension 6. c[0] is None.

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

Function 1 : 2020-09-19 18:15:03.663504 0 0 2020-09-19 18:15:07.218274 1 2 2020-09-19 18:15:10.334464 2 2 2020-09-19 18:15:13.469501 3 2 2020-09-19 18:15:16.566445 4 2 2020-09-19 18:15:19.670102 5 2 2020-09-19 18:15:22.764647 6 2 2020-09-19 18:15:25.848770 7 2 2020-09-19 18:15:28.939122 8 2 2020-09-19 18:15:32.074114 9 2 2020-09-19 18:15:35.169955 10 2 2020-09-19 18:15:38.320578 11 2 2020-09-19 18:15:41.463846 12 2 2020-09-19 18:15:44.582819 13 2 2020-09-19 18:15:47.668148 14 2 2020-09-19 18:15:50.736480 15 2 2020-09-19 18:15:53.935752 16 2 2020-09-19 18:15:57.018545 17 2 2020-09-19 18:16:00.135439 18 2 2020-09-19 18:16:03.304129 19 2 2020-09-19 18:16:06.461431 20 2 2020-09-19 18:16:09.620432 21 2 2020-09-19 18:16:12.715773 22 2 2020-09-19 18:16:15.822094 23 2 2020-09-19 18:16:18.920784 24 2 2020-09-19 18:16:22.039198 25 2 2020-09-19 18:16:25.161698 26 2 2020-09-19 18:16:28.250847 27 2 2020-09-19 18:16:31.381336 28 2 2020-09-19 18:16:34.504462 29 2 2020-09-19 18:16:37.614053 30 2 2020-09-19 18:16:40.720033 31 2 2020-09-19 18:16:43.807220 32 2 2020-09-19 18:16:46.926959 33 2 2020-09-19 18:16:50.033342 34 2 2020-09-19 18:16:53.089996 35 2 2020-09-19 18:16:56.178149 36 2 2020-09-19 18:16:59.242992 37 2 2020-09-19 18:17:02.336146 38 2 2020-09-19 18:17:05.426307 39 2 2020-09-19 18:17:08.511814 40 2 2020-09-19 18:17:11.642496 41 2 2020-09-19 18:17:14.752563 42 2 2020-09-19 18:17:17.848397 43 2 2020-09-19 18:17:20.945871 44 2 2020-09-19 18:17:24.067183 45 2 2020-09-19 18:17:27.164217 46 2 2020-09-19 18:17:30.257097 47 2 2020-09-19 18:17:33.437270 48 2 2020-09-19 18:17:36.546273 49 2 2020-09-19 18:17:39.602295 50 2 2020-09-19 18:17:42.672066 51 2 2020-09-19 18:17:45.758083 52 2 2020-09-19 18:17:48.832213 53 2 2020-09-19 18:17:51.898182 54 2 2020-09-19 18:17:54.978798 55 2 2020-09-19 18:17:58.074980 56 2 2020-09-19 18:18:01.144725 57 2 2020-09-19 18:18:04.208315 58 2 2020-09-19 18:18:07.289856 59 2 2020-09-19 18:18:10.384335 60 2 2020-09-19 18:18:13.470027 61 2 2020-09-19 18:18:16.533002 62 2 2020-09-19 18:18:19.618587 63 2 2020-09-19 18:18:22.709210 Algebraic normal form of Boolean function: x0*x1 + x2*x3 + x4*x5 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 64, 28, 12)) 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. Function 2 : 2020-09-19 18:18:22.748778 0 0 2020-09-19 18:18:25.924115 1 3 2020-09-19 18:18:29.037308 2 3 2020-09-19 18:18:32.340719 3 3 2020-09-19 18:18:35.564603 4 3 2020-09-19 18:18:38.705009 5 3 2020-09-19 18:18:41.914100 6 3 2020-09-19 18:18:45.040811 7 3 2020-09-19 18:18:48.306474 8 3 2020-09-19 18:18:51.498895 9 3 2020-09-19 18:18:54.736106 10 3 2020-09-19 18:18:58.107733 11 3 2020-09-19 18:19:01.425109 12 3 2020-09-19 18:19:04.718186 13 3 2020-09-19 18:19:07.925725 14 3 2020-09-19 18:19:11.275723 15 3 2020-09-19 18:19:14.864711 16 3 2020-09-19 18:19:19.070466 17 3 2020-09-19 18:19:23.391149 18 3 2020-09-19 18:19:27.416023 19 3 2020-09-19 18:19:31.113846 20 3 2020-09-19 18:19:34.740500 21 3 2020-09-19 18:19:38.145977 22 3 2020-09-19 18:19:41.451620 23 3 2020-09-19 18:19:44.694832 24 3 2020-09-19 18:19:48.213895 25 3 2020-09-19 18:19:51.630976 26 3 2020-09-19 18:19:54.985948 27 3 2020-09-19 18:19:58.710141 28 3 2020-09-19 18:20:02.121740 29 3 2020-09-19 18:20:05.499490 30 3 2020-09-19 18:20:08.924884 31 3 2020-09-19 18:20:12.306027 32 3 2020-09-19 18:20:15.918328 33 3 2020-09-19 18:20:19.652436 34 3 2020-09-19 18:20:23.378944 35 3 2020-09-19 18:20:27.073585 36 3 2020-09-19 18:20:30.704088 37 3 2020-09-19 18:20:34.249713 38 3 2020-09-19 18:20:37.682623 39 3 2020-09-19 18:20:41.203535 40 3 2020-09-19 18:20:44.659386 41 3 2020-09-19 18:20:48.058189 42 3 2020-09-19 18:20:51.393413 43 3 2020-09-19 18:20:54.893105 44 3 2020-09-19 18:20:58.463100 45 3 2020-09-19 18:21:01.606437 46 3 2020-09-19 18:21:04.879749 47 3 2020-09-19 18:21:08.237937 48 3 2020-09-19 18:21:11.520541 49 3 2020-09-19 18:21:14.833980 50 3 2020-09-19 18:21:18.195601 51 3 2020-09-19 18:21:21.403532 52 3 2020-09-19 18:21:24.591846 53 3 2020-09-19 18:21:27.734073 54 3 2020-09-19 18:21:30.941164 55 3 2020-09-19 18:21:34.334064 56 3 2020-09-19 18:21:37.693361 57 3 2020-09-19 18:21:40.855146 58 3 2020-09-19 18:21:44.078617 59 3 2020-09-19 18:21:47.246541 60 3 2020-09-19 18:21:50.453927 61 3 2020-09-19 18:21:53.659543 62 3 2020-09-19 18:21:57.194215 63 3 2020-09-19 18:22:01.206512 Algebraic normal form of Boolean function: x0*x1*x2 + x0*x3 + x1*x4 + x2*x5 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 64, 28, 12)) Classification of Cayley graphs and classification of Cayley graphs of duals are the same: There are 3 extended Cayley classes in the extended translation class. Function 3 : 2020-09-19 18:22:01.236474 0 0 2020-09-19 18:22:05.680625 1 4 2020-09-19 18:22:09.487946 2 4 2020-09-19 18:22:13.270691 3 4 2020-09-19 18:22:17.028553 4 4 2020-09-19 18:22:20.547182 5 4 2020-09-19 18:22:23.918074 6 4 2020-09-19 18:22:27.313805 7 4 2020-09-19 18:22:30.682139 8 4 2020-09-19 18:22:34.009259 9 4 2020-09-19 18:22:37.353964 10 4 2020-09-19 18:22:40.667053 11 4 2020-09-19 18:22:43.946317 12 4 2020-09-19 18:22:47.266061 13 4 2020-09-19 18:22:50.575743 14 4 2020-09-19 18:22:53.889282 15 4 2020-09-19 18:22:57.255713 16 4 2020-09-19 18:23:00.745100 17 4 2020-09-19 18:23:04.239517 18 4 2020-09-19 18:23:07.355619 19 4 2020-09-19 18:23:10.551618 20 4 2020-09-19 18:23:13.745043 21 4 2020-09-19 18:23:16.836187 22 4 2020-09-19 18:23:19.929940 23 4 2020-09-19 18:23:23.010252 24 4 2020-09-19 18:23:26.102935 25 4 2020-09-19 18:23:29.198700 26 4 2020-09-19 18:23:32.533629 27 4 2020-09-19 18:23:35.756854 28 4 2020-09-19 18:23:38.886494 29 4 2020-09-19 18:23:42.056009 30 4 2020-09-19 18:23:45.313631 31 4 2020-09-19 18:23:48.665162 32 4 2020-09-19 18:23:52.163190 33 4 2020-09-19 18:23:55.293774 34 4 2020-09-19 18:23:58.505041 35 4 2020-09-19 18:24:01.774424 36 4 2020-09-19 18:24:04.946673 37 4 2020-09-19 18:24:08.220742 38 4 2020-09-19 18:24:11.592740 39 4 2020-09-19 18:24:14.921591 40 4 2020-09-19 18:24:18.153264 41 4 2020-09-19 18:24:21.351694 42 4 2020-09-19 18:24:24.523860 43 4 2020-09-19 18:24:27.694897 44 4 2020-09-19 18:24:30.865977 45 4 2020-09-19 18:24:34.163385 46 4 2020-09-19 18:24:37.414718 47 4 2020-09-19 18:24:40.694157 48 4 2020-09-19 18:24:43.935666 49 4 2020-09-19 18:24:47.135180 50 4 2020-09-19 18:24:50.306966 51 4 2020-09-19 18:24:53.428679 52 4 2020-09-19 18:24:56.672534 53 4 2020-09-19 18:24:59.892464 54 4 2020-09-19 18:25:03.146706 55 4 2020-09-19 18:25:06.505950 56 4 2020-09-19 18:25:09.743209 57 4 2020-09-19 18:25:12.934191 58 4 2020-09-19 18:25:16.217931 59 4 2020-09-19 18:25:19.494133 60 4 2020-09-19 18:25:22.664779 61 4 2020-09-19 18:25:25.880256 62 4 2020-09-19 18:25:29.177330 63 4 2020-09-19 18:25:32.349140 Algebraic normal form of Boolean function: x0*x1*x2 + x0*x1 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x4 + x3*x4 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 64, 28, 12)) Classification of Cayley graphs and classification of Cayley graphs of duals are the same: There are 4 extended Cayley classes in the extended translation class. Function 4 : 2020-09-19 18:25:32.377241 0 0 2020-09-19 18:25:35.521470 1 3 2020-09-19 18:25:38.615762 2 3 2020-09-19 18:25:41.855294 3 3 2020-09-19 18:25:45.040897 4 3 2020-09-19 18:25:48.353811 5 3 2020-09-19 18:25:51.486268 6 3 2020-09-19 18:25:54.570356 7 3 2020-09-19 18:25:57.962527 8 3 2020-09-19 18:26:01.072032 9 3 2020-09-19 18:26:04.257425 10 3 2020-09-19 18:26:07.551569 11 3 2020-09-19 18:26:10.666758 12 3 2020-09-19 18:26:13.797922 13 3 2020-09-19 18:26:17.064380 14 3 2020-09-19 18:26:20.789639 15 3 2020-09-19 18:26:24.068938 16 3 2020-09-19 18:26:27.146730 17 3 2020-09-19 18:26:30.386471 18 3 2020-09-19 18:26:33.874067 19 3 2020-09-19 18:26:36.917560 20 3 2020-09-19 18:26:39.974771 21 3 2020-09-19 18:26:42.993069 22 3 2020-09-19 18:26:46.060157 23 3 2020-09-19 18:26:49.453695 24 3 2020-09-19 18:26:52.513766 25 3 2020-09-19 18:26:55.717827 26 3 2020-09-19 18:26:58.772957 27 3 2020-09-19 18:27:02.020300 28 3 2020-09-19 18:27:05.444102 29 3 2020-09-19 18:27:08.515095 30 3 2020-09-19 18:27:11.556094 31 3 2020-09-19 18:27:14.623438 32 3 2020-09-19 18:27:17.801907 33 3 2020-09-19 18:27:21.139520 34 3 2020-09-19 18:27:24.493341 35 3 2020-09-19 18:27:27.674154 36 3 2020-09-19 18:27:30.862190 37 3 2020-09-19 18:27:33.948288 38 3 2020-09-19 18:27:37.152653 39 3 2020-09-19 18:27:40.328729 40 3 2020-09-19 18:27:43.372183 41 3 2020-09-19 18:27:46.432863 42 3 2020-09-19 18:27:49.481764 43 3 2020-09-19 18:27:52.651338 44 3 2020-09-19 18:27:55.840468 45 3 2020-09-19 18:27:59.348502 46 3 2020-09-19 18:28:02.636206 47 3 2020-09-19 18:28:05.877351 48 3 2020-09-19 18:28:09.109851 49 3 2020-09-19 18:28:12.315491 50 3 2020-09-19 18:28:15.673990 51 3 2020-09-19 18:28:18.935989 52 3 2020-09-19 18:28:22.167362 53 3 2020-09-19 18:28:25.415916 54 3 2020-09-19 18:28:28.545002 55 3 2020-09-19 18:28:31.653731 56 3 2020-09-19 18:28:34.940474 57 3 2020-09-19 18:28:38.200092 58 3 2020-09-19 18:28:41.717501 59 3 2020-09-19 18:28:44.779970 60 3 2020-09-19 18:28:48.164542 61 3 2020-09-19 18:28:51.898602 62 3 2020-09-19 18:28:55.434636 63 3 2020-09-19 18:28:58.997238 Algebraic normal form of Boolean function: x0*x1*x2 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x3*x5 + x2*x3 + x2*x4 + x2*x5 + x3*x4 + x3*x5 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 64, 28, 12)) Classification of Cayley graphs and classification of Cayley graphs of duals are the same: There are 3 extended Cayley classes in the extended translation class.

Display the length of c, the list of classifications.

In [6]:
len(c)

5

Verify that c[0] is None.

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

None

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

In [8]:
c[1].algebraic_normal_form

x0*x1 + x2*x3 + x4*x5

Produce a report on the classification c[1].

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

Algebraic normal form of Boolean function: x0*x1 + x2*x3 + x4*x5 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 64, 28, 12)) 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 + x4*x5 Clique polynomial: 64*t^8 + 512*t^7 + 1792*t^6 + 3584*t^5 + 5376*t^4 + 3584*t^3 + 896*t^2 + 64*t + 1 Strongly regular parameters: (64, 28, 12, 12) Rank: 8 Order: 2580480 Linear code from representative: [28, 6] linear code over GF(2) Generator matrix: [1 0 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 0 0 0 1 1 1 0 1 1 0 1] [0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 1 1 1 0 0 0 1 1 1] [0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 1 0 1 1 1 0 0 1] [0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 1 1 0 1 1 0 1 1 0] [0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 12: 28, 16: 35} EC class 1 : Algebraic normal form of representative: x0*x1 + x0 + x1 + x2*x3 + x4*x5 Clique polynomial: 2304*t^6 + 13824*t^5 + 19200*t^4 + 7680*t^3 + 1152*t^2 + 64*t + 1 Strongly regular parameters: (64, 36, 20, 20) Rank: 8 Order: 3317760 Linear code from representative: [36, 6] linear code over GF(2) Generator matrix: [1 0 1 0 1 0 0 1 0 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1] [0 1 1 0 1 1 0 1 1 0 0 1 1 0 1 1 0 1 1 0 0 1 1 0 1 1 0 1 1 0 0 0 0 0 1 1] [0 0 0 1 1 1 0 0 0 1 0 0 0 1 1 1 0 0 0 1 0 0 0 1 1 1 0 0 0 1 0 1 0 1 1 1] [0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 16: 27, 20: 36}

Produce a matrix plot of the weight_class_matrix.

In [10]:
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 [11]:
matrix_plot(c[1].bent_cayley_graph_index_matrix,cmap='gist_stern')


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

In [12]:
c[2].algebraic_normal_form

x0*x1*x2 + x0*x3 + x1*x4 + x2*x5

Produce a report on the classification c[2].

In [13]:
c[2].report(report_on_graph_details=True)

Algebraic normal form of Boolean function: x0*x1*x2 + x0*x3 + x1*x4 + x2*x5 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 64, 28, 12)) Classification of Cayley graphs and classification of Cayley graphs of duals are the same: There are 3 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 + x0*x3 + x1*x4 + x2*x5 Clique polynomial: 64*t^8 + 512*t^7 + 1792*t^6 + 3584*t^5 + 5376*t^4 + 3584*t^3 + 896*t^2 + 64*t + 1 Strongly regular parameters: (64, 28, 12, 12) Rank: 8 Order: 2580480 Linear code from representative: [28, 6] linear code over GF(2) Generator matrix: [1 0 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 1 0 1 1 0 1 1] [0 1 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 1 0 0] [0 0 1 0 0 1 0 1 1 1 1 0 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0] [0 0 0 1 0 1 1 0 1 1 0 1 0 1 0 1 1 1 1 0 1 0 0 1 1 1 0 1] [0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 12: 28, 16: 35} EC class 1 : Algebraic normal form of representative: x0*x1*x2 + x0*x3 + x1*x2 + x1*x4 + x2*x5 + x3 Clique polynomial: 256*t^6 + 1536*t^5 + 4352*t^4 + 3584*t^3 + 896*t^2 + 64*t + 1 Strongly regular parameters: (64, 28, 12, 12) Rank: 8 Order: 24576 Linear code from representative: [28, 6] linear code over GF(2) Generator matrix: [1 0 0 1 0 0 1 0 0 1 1 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0] [0 1 0 0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 1 0 0] [0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1 1 0 0 1 1] [0 0 0 0 1 0 0 1 0 1 1 0 0 1 1 0 0 1 0 1 1 0 1 0 1 1 0 0] [0 0 0 0 0 1 1 0 1 0 0 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 12: 28, 16: 35} EC class 2 : Algebraic normal form of representative: x0*x1*x2 + x0*x1 + x0*x2 + x0*x3 + x0 + x1*x2 + x1*x4 + x1 + x2*x5 + x2 + x3 + x4 + x5 Clique polynomial: 192*t^8 + 1536*t^7 + 8960*t^6 + 19968*t^5 + 20224*t^4 + 7680*t^3 + 1152*t^2 + 64*t + 1 Strongly regular parameters: (64, 36, 20, 20) Rank: 8 Order: 73728 Linear code from representative: [36, 6] linear code over GF(2) Generator matrix: [1 0 1 0 1 0 1 0 1 1 1 1 0 0 1 0 1 1 0 1 0 0 1 0 1 0 1 1 1 0 1 0 1 0 0 1] [0 1 1 0 0 1 1 0 0 1 0 1 0 1 1 1 1 1 0 1 0 0 0 1 1 1 0 1 0 1 1 0 0 1 0 1] [0 0 0 1 1 1 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 1 1 1 1 0 1 1 0 1 1 0 0 0 1 1] [0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 16: 27, 20: 36}

Produce a matrix plot of the weight_class_matrix.

In [14]:
matrix_plot(c[2].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 [15]:
matrix_plot(c[2].bent_cayley_graph_index_matrix,cmap='gist_stern')


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

In [16]:
c[3].algebraic_normal_form

x0*x1*x2 + x0*x1 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x4 + x3*x4

Produce a report on the classification c[3].

In [17]:
c[3].report(report_on_graph_details=True)

Algebraic normal form of Boolean function: x0*x1*x2 + x0*x1 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x4 + x3*x4 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 64, 28, 12)) Classification of Cayley graphs and classification of Cayley graphs of duals are the same: There are 4 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 + x0*x1 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x4 + x3*x4 Clique polynomial: 32*t^8 + 256*t^7 + 896*t^6 + 2048*t^5 + 4608*t^4 + 3584*t^3 + 896*t^2 + 64*t + 1 Strongly regular parameters: (64, 28, 12, 12) Rank: 12 Order: 6144 Linear code from representative: [28, 6] linear code over GF(2) Generator matrix: [1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 0 0 1 1 1 0 0 0 1 1 1] [0 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0] [0 0 1 0 0 1 0 0 1 1 1 1 0 1 0 1 1 0 0 0 0 0 1 0 1 0 0 1] [0 0 0 1 0 0 1 1 0 1 0 0 0 0 1 1 1 0 1 1 0 1 0 0 1 0 1 0] [0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 12: 28, 16: 35} EC class 1 : Algebraic normal form of representative: x0*x1*x2 + x0*x1 + x0*x3 + x0 + x1*x2 + x1*x3*x4 + x1*x4 + x1*x5 + x1 + x2*x4 + x3*x4 + x3 + x4 Clique polynomial: 160*t^8 + 1280*t^7 + 9344*t^6 + 21504*t^5 + 20480*t^4 + 7680*t^3 + 1152*t^2 + 64*t + 1 Strongly regular parameters: (64, 36, 20, 20) Rank: 12 Order: 10240 Linear code from representative: [36, 6] linear code over GF(2) Generator matrix: [1 0 1 0 0 0 1 1 1 0 1 0 0 0 1 0 1 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 0 1 0 1] [0 1 1 0 1 0 0 1 0 0 1 1 0 1 1 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 1 1] [0 0 0 1 1 0 0 0 1 1 1 1 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 0 1 1] [0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 16: 27, 20: 36} EC class 2 : Algebraic normal form of representative: x0*x1*x2 + x0*x1 + x0*x2 + x0*x3 + x0 + x1*x3*x4 + x1*x5 + x2*x4 + x5 Clique polynomial: 64*t^6 + 1024*t^5 + 4096*t^4 + 3584*t^3 + 896*t^2 + 64*t + 1 Strongly regular parameters: (64, 28, 12, 12) Rank: 12 Order: 7680 Linear code from representative: [28, 6] linear code over GF(2) Generator matrix: [1 0 0 0 0 1 0 1 0 0 0 1 0 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1] [0 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0] [0 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 1 1 1 1 0 1 0] [0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 1 1 0 0 1 0 0 0 1 1 0 0 1] [0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 12: 28, 16: 35} EC class 3 : Algebraic normal form of representative: x0*x1*x2 + x0*x1 + x0*x2 + x0*x3 + x0 + x1*x2 + x1*x3*x4 + x1*x5 + x1 + x2*x4 + x2 + x3 + x5 Clique polynomial: 160*t^8 + 1664*t^7 + 9792*t^6 + 21504*t^5 + 20480*t^4 + 7680*t^3 + 1152*t^2 + 64*t + 1 Strongly regular parameters: (64, 36, 20, 20) Rank: 12 Order: 7680 Linear code from representative: [36, 6] linear code over GF(2) Generator matrix: [1 0 1 0 1 0 1 0 1 1 1 1 0 1 0 1 0 1 1 0 0 0 1 0 1 1 0 1 1 1 0 1 0 1 0 0] [0 1 1 0 0 1 1 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 1 1 1 1 0 1 0 1 1 0 0 1 0 1] [0 0 0 1 1 1 1 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1] [0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 16: 27, 20: 36}

Produce a matrix plot of the weight_class_matrix.

In [18]:
matrix_plot(c[3].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 [19]:
matrix_plot(c[3].bent_cayley_graph_index_matrix,cmap='gist_stern')


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

In [20]:
c[4].algebraic_normal_form

x0*x1*x2 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x3*x5 + x2*x3 + x2*x4 + x2*x5 + x3*x4 + x3*x5

Produce a report on the classification c[4].

In [21]:
c[4].report(report_on_graph_details=True)

Algebraic normal form of Boolean function: x0*x1*x2 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x3*x5 + x2*x3 + x2*x4 + x2*x5 + x3*x4 + x3*x5 Function is bent. SDP design incidence structure t-design parameters: (True, (2, 64, 28, 12)) Classification of Cayley graphs and classification of Cayley graphs of duals are the same: There are 3 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 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x3*x5 + x2*x3 + x2*x4 + x2*x5 + x3*x4 + x3*x5 Clique polynomial: 32*t^8 + 256*t^7 + 896*t^6 + 1792*t^5 + 4480*t^4 + 3584*t^3 + 896*t^2 + 64*t + 1 Strongly regular parameters: (64, 28, 12, 12) Rank: 14 Order: 5376 Linear code from representative: [28, 6] linear code over GF(2) Generator matrix: [1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 1 1 0 0 1 0 0 1 0 0 0 0] [0 1 0 0 1 0 0 1 1 0 0 0 0 1 1 0 1 1 1 0 0 1 0 1 0 0 1 0] [0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 1 1 1 1 0 0 1 1] [0 0 0 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 1 0 0 1 1 0] [0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 12: 28, 16: 35} EC class 1 : Algebraic normal form of representative: x0*x1*x2 + x0*x2 + x0*x3 + x1*x3*x4 + x1*x5 + x2*x3*x5 + x2*x3 + x2*x4 + x2*x5 + x3*x5 + x5 Clique polynomial: 16*t^8 + 128*t^7 + 448*t^6 + 1280*t^5 + 4224*t^4 + 3584*t^3 + 896*t^2 + 64*t + 1 Strongly regular parameters: (64, 28, 12, 12) Rank: 14 Order: 1536 Linear code from representative: [28, 6] linear code over GF(2) Generator matrix: [1 0 0 1 0 1 0 0 1 0 1 1 0 1 1 0 1 0 1 1 0 0 0 1 0 0 0 0] [0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 0 1 1 1 1 0 1 1 0 0 0 1 0] [0 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 0 1 0 0 0 0 1 1] [0 0 0 0 1 0 0 0 1 1 0 1 0 1 0 1 0 0 1 0 1 1 1 0 0 1 1 0] [0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 12: 28, 16: 35} EC class 2 : Algebraic normal form of representative: x0*x1*x2 + x0*x1 + x0*x2 + x0*x3 + x0 + x1*x2 + x1*x3*x4 + x1*x5 + x1 + x2*x3*x5 + x2*x3 + x2*x4 + x2*x5 + x2 + x4 Clique polynomial: 176*t^8 + 1408*t^7 + 9664*t^6 + 22272*t^5 + 20608*t^4 + 7680*t^3 + 1152*t^2 + 64*t + 1 Strongly regular parameters: (64, 36, 20, 20) Rank: 14 Order: 1536 Linear code from representative: [36, 6] linear code over GF(2) Generator matrix: [1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 1 0 0 0 1 1 1 0 1 0 1 0 0 0 0] [0 1 1 0 0 1 1 0 1 0 0 0 0 1 1 1 1 0 1 0 0 1 1 0 1 0 0 1 1 1 1 1 1 0 1 0] [0 0 0 1 1 1 1 0 1 1 0 1 1 1 1 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 0 0 1 1] [0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1] [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1] Linear code is projective. Weight distribution: {0: 1, 16: 27, 20: 36}

Produce a matrix plot of the weight_class_matrix.

In [22]:
matrix_plot(c[4].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 [23]:
matrix_plot(c[4].bent_cayley_graph_index_matrix,cmap='gist_stern')

In [ ]:


In [ ]: