Classification of Bent Cubics in 8 variables
It is well known there are only 4 affine classes of bent functions in 6 variables. As pointed to us by Xiang-Dong Hou the number of bent cubics in 8 variables is known ( 5386705781653504 x 512 ) but not the number of classes. The objective of the project is to fill this gap.
Let m be a positive integer. The space of boolean functions from GF(2,m) into GF(2) is denoted by RM(k,m). This notation comes from coding theory, it is the Reed-Muller code of order k in m variables. The affine group AG(2, m) acts over the spaces RM(k,m), and thus on RM(k,m)/RM(s,m) when s<=k. Two Boolean functions f and g are said to be equivalent modulo RM(s, m) if there exists an affine transformation A in AG(2,m) such that
Let f be a boolean function. Recall that f is a bent function when all its Walsh Fourier coefficient have the same magnitude. The Walsh coefficient at a point y of GF(2,m)
input f : form of degree 3 N : orbit size of f output G : fixator of f hash := hashtable with 2^30 entries goal := #GL(2,8) / N G := { 1 } while ( #G < goal ) begin A := at random in AG( 2, 8 ) g := f o A if collision at g then B := hash[ g ] G := < G, A/B > else hash[ g ] = A fi end return GThe running time depends on the order of the fixator :
cardinality time sec ---------------------------------------- 192 5490.43 91 minutes 336 3161.40 432 5481.38 768 4529.87 2304 2412.72 3072 1289.77 3072 2158.04 3072 3454.79 10752 1134.07 18432 631.41 24576 849.16 46080 691.06 49152 880.67 82944 370.08 96768 242.83 294912 203.39 393216 133.73 1179648 96.90 1474560 42.01 1548288 62.53 1935360 46.87 2359296 90.66 9437184 31.39 47185920 18.83 88080384 11.91 1056964608 3.67 1387266048 3.91 2972712960 3.12 11890851840 0.96 63417876480 1.04 55046716784640 0.48 5348063769211699200 0.41
For all subset W of {1,2,...,8}, with #W >=6 0 = sum_{ u U v = W } a_u a_v
real 12m21.386s user 12m17.661s sys 0m3.648s
real 15m32.983s user 15m26.343s sys 0m6.557s