Boolean-Cayley-graphs / papers-talks / RMIT-2017-Melbourne / Leopardi-Bent-functions-RMIT-2017-talk.tex
22144 views\documentclass[pdf,sprung,slideColor,nocolorBG]{beamer}1%2%\documentclass[hyperref={pdfpagelabels=false}]{beamer}3\mode<presentation>45\newenvironment{colortheme}[1]{6\def\ProvidesPackageRCS $##1${\relax}7\renewcommand{\ProcessOptions}{\relax}8\makeatletter9\input beamercolortheme#1.sty10\makeatother11}{}1213\let\Tiny=\tiny14\usetheme{Adelaide}15\usefonttheme[stillsansseriftext]{serif}16\setbeamerfont{structure}{series=\bfseries}17\setbeamertemplate{frametitle}[default][center]18\usepackage[figurename={}]{caption}19\usepackage[latin1]{inputenc}20%\usepackage{amsmath} %needed for \begin{align}... \end{align} environment21\usepackage{amsfonts}22\usepackage{amssymb}23%\usepackage{amscd}24%\usepackage[all]{xy}25\usepackage{xcolor}26\usepackage{enumerate}27%28\newcommand{\slidecite}[1]{\tiny{(#1)}\normalsize{}}29\newcommand{\smallcite}[1]{\small{(#1)}\normalsize{}}3031\newcommand{\mb}[1]{\mathbb{#1}}32\newcommand{\mf}[1]{\mathbf{#1}}33\newcommand{\Emph}[1]{\emph{\textcolor{blue}{#1}}}3435\newcommand{\abs}[1]{\left| #1 \right|}36\newcommand{\norm}[1]{\left\| #1 \right\|}37\newcommand{\To}{\rightarrow}3839\newcommand{\Cay}[1]{\operatorname{Cay}\left(#1\right)}40\newcommand{\Clique}[1]{\omega\left(#1\right)}41\newcommand{\dual}[1]{\widetilde{#1}}42\newcommand{\support}[1]{\operatorname{supp}\left(#1\right)}43\newcommand{\weight}[1]{\operatorname{wt}\left(#1\right)}44\newcommand{\weightclass}[1]{\operatorname{wc}\left(#1\right)}4546\newcommand{\G}{\mb{G}}47\newcommand{\R}{\mb{R}}48\newcommand{\Z}{\mb{Z}}49\newtheorem{Def}{Definition}50\newtheorem{Conjecture}{Conjecture}51\newtheorem{Question}{Question}52\newtheorem{Proposition}{Proposition}5354\title{Classifying bent functions by their Cayley graphs, using Sage}55\author{Paul Leopardi}5657\date{For RMIT University58\\59Melbourne60\\6128 April 2017}6263\institute{University of Melbourne64\\65Australian Government - Bureau of Meteorology}66\titlegraphic{67%\includegraphics[angle=0,width=10mm]{../../common/beamer-anu-colourlogo.png}68%\includegraphics[angle=0,width=20mm]{../../common/carma_logo.jpg}69}70\begin{document}7172\frame{\titlepage}73\begin{frame}74\frametitle{Acknowledgements}75\begin{center}76Nathan Clisby,77Robert Craigen,78Joanne Hall,79David Joyner, Philippe Langevin, William Martin,80Padraig {\'O} Cath{\'a}in,81Judy-anne Osborn, Dima Pasechnik and William Stein.8283~8485kodlu on MathOverflow.8687~8889Matthew Leingang for Beamer colour themes.9091~9293Australian National University. University of Newcastle, Australia. University of Melbourne.9495~9697Australian Government - Bureau of Meteorology.9899~100101SageMath, Bliss, Nauty.102\end{center}103\end{frame}104105\begin{frame}106\frametitle{Overview}107%\begin{center}108\begin{itemize}109\item110Key concepts.111112~113114\item115Equivalence.116117~118119\item120Some results.121122~123124\item125Observations for small dimensions.126127~128129\item130Some questions.131132~133134\item135SageMath code.136\end{itemize}137138%\end{center}139\end{frame}140141\section{Key concepts}142\begin{colortheme}{seagull}143\begin{frame}144\frametitle{Bent functions}145% Bent functions can be defined in a number of equivalent ways.146% The definition used here involves the Walsh Hadamard Transform.147\begin{Def}148\label{def-Walsh-Hadamard-transform}149The Walsh Hadamard transform of150a Boolean function $f : \Z_2^{2m} \To \Z_2$ is151\begin{align*}152W_f(x)153&:=154\sum_{y \in \Z_2^{2m}} (-1)^{f(y) + \langle x, y \rangle}155\end{align*}156\end{Def}157158\begin{Def}159\label{def-Bent-function}160A Boolean function $f : \Z_2^{2m} \To \Z_2$ is \Emph{bent}161if and only if its Walsh Hada\-mard transform has constant absolute value $2^{m}$.162% \cite[p. 74]{Dil74}163% \cite[p. 300]{Rot76}.164\end{Def}165\slidecite{Dillon 1974; Rothaus 1976}166\end{frame}167\begin{frame}168\frametitle{Dual bent functions}169170\begin{Def}171\label{def-dual-Bent-function}172For a bent function $f : \Z_2^{2m} \To \Z_2$, the function $\dual{f}$, defined by173\begin{align*}174(-1)^{\dual{f}(x)} &:= 2^{-m} W_f(x)175\end{align*}176is called the \Emph{dual} of $f$.177\end{Def}178179~180181The function $\dual{f}$ is also a bent function on $\Z_2^{2m}$.182183~184185\slidecite{Dillon 1974; Rothaus 1976; Tokareva 2011}186\end{frame}187188\begin{colortheme}{jubata}189\begin{frame}190\frametitle{Weights and weight classes}191\begin{Def}192The \Emph{weight} of a binary function is the cardinality of its \Emph{support}.193For $f$ on $\Z_2^{2m}$194\begin{align*}195\support{f} &:= \{x \in \Z_2^{2m} \mid f(x)=1 \}.196\end{align*}197198A bent function $f$ on $\Z_2^{2m}$ has weight199\begin{align*}200\weight{f} &= 2^{2 m - 1} - 2^{m-1} \quad (\text{weight class~} \weightclass{f}=0), \text{~or}201\\202\weight{f} &= 2^{2 m - 1} + 2^{m-1} \quad (\text{weight class~} \weightclass{f}=1).203\end{align*}204% If $f(0)=0$ then $\weightclass{\Cay{f}} := \weightclass{f}$.205\end{Def}206\end{frame}207\end{colortheme}208209\begin{frame}210\frametitle{The Cayley graph of a Boolean function}211%\begin{center}212The \Emph{Cayley graph} $\Cay{f}$ of a Boolean function213214~215216\begin{align*}217%218f : \Z_2^n \To \Z_2 \quad \text{where} \quad f(0) = 0219%220\end{align*}221222~223224is225an undirected graph with226227\begin{align*}228V(\Cay{f}) &:= \Z_2^n, \quad (x,y) \in E(\Cay{f}) \Leftrightarrow f(x+y) = 1.229\end{align*}230231~232233\slidecite{Bernasconi and Codenotti 1999}234\end{frame}235236\begin{frame}237\frametitle{Strongly regular graphs}238%\begin{center}239A simple graph $\Gamma$ of order $v$ is \Emph{strongly regular} with parameters240$(v,k,\lambda,\mu)$ if241242~243244\begin{itemize}245\item246each vertex has degree $k,$247248~249\item250each adjacent pair of vertices has $\lambda$ common neighbours, and251252~253\item254each nonadjacent pair of vertices has $\mu$ common neighbours.255\end{itemize}256257~258259\slidecite{Brouwer, Cohen and Neumaier 1989}260261%\end{center}262\end{frame}263264\begin{frame}265\frametitle{Bent functions and strongly regular graphs}266267\begin{Proposition}268\smallcite{Bernasconi and Codenotti 1999}269270The Cayley graph $\Cay{f}$ of a bent function $f$ on $\Z_2^{2m}$271272with $f(0)=0$ is a strongly regular graph with $\lambda = \mu.$273\end{Proposition}274275The parameters of $\Cay{f}$ are276\begin{align*}277(v,k,\lambda) = &(4^m, 2^{2 m - 1} - 2^{m-1}, 2^{2 m - 2} - 2^{m-1})278\\279\text{or} \quad &(4^m, 2^{2 m - 1} + 2^{m-1}, 2^{2 m - 2} + 2^{m-1}).280\end{align*}281282~283284\slidecite{Menon 1962; Dillon 1974; Bernasconi and Codenotti 1999}285%\end{center}286\end{frame}287\end{colortheme}288\begin{colortheme}{seagull}289\begin{frame}290\frametitle{Projective two-weight binary codes}291292\begin{Def}293A \Emph{two-weight binary code} with parameters $[n,k,d]$ is a $k$ dimensional subspace of $\Z_2^n$294with295minimum Hamming distance $d$, such that the set of Hamming weights of the non-zero vectors has size2962.297298~299300``A \Emph{generator matrix} $G$ of a linear code $[n, k]$ code $C$ is any matrix301of rank $k$ (over $\Z_2$) with rows from $C.$''302303~304305``A linear $[n, k]$ code is called \Emph{projective} if no two columns of a generator matrix306$G$ are linearly dependent, i.e., if the columns of $G$ are pairwise different points in a307projective $(k-1)$-dimensional space.''308In the case of $\Z_2$, no two columns are equal.309310~311312\end{Def}313314\slidecite{Tonchev 1996; Bouyukliev, Fack, Willems and Winne 2006}315316\end{frame}317\end{colortheme}318319\begin{colortheme}{seagull}320\begin{frame}321\frametitle{From bent function to linear code (1)}322\begin{Def}323324\smallcite{Carlet 2007; Ding 2015, Corollary 10}325326For a bent function $f : \Z_2^{2m} \To \Z_2$,327define the linear code $C(f)$ by the generator matrix328\begin{align*}329M C(f) &\in \Z_2^{4^m \times \weight{f}},330\\331M C(f)_{x,y} &:= \langle x, \support{f}(y) \rangle,332\end{align*}333with $x$ in lexicographic order of $\Z_2^{2m}$334and $\support{f}(y)$ in lexicographic order of $\support{f}$.335336The $4^m$ words of the code $C(f)$ are the rows of the generator matrix $M C(f)$.337\end{Def}338339\slidecite{Carlet 2007; Ding 2015, Corollary 10}340341\end{frame}342\begin{frame}343\frametitle{From bent function to linear code (2)}344\begin{Proposition}345\smallcite{Carlet 2007, Prop. 20; Ding 2015, Corollary 10}346347For a bent function $f : \Z_2^{2m} \To \Z_2$, the linear code $C(f)$348is a projective two-weight code.349350~351352The possible weights of non-zero code words are:353\begin{align*}354\begin{cases}3552^{2m-2}, 2^{2m-2} - 2^{m-1} & \text{if~} \weightclass{f}=0.356\\3572^{2m-2}, 2^{2m-2} + 2^{m-1} & \text{if~} \weightclass{f}=1.358\end{cases}359\end{align*}360361\end{Proposition}362363\slidecite{Carlet 2007, Prop. 20; Ding 2015, Corollary 10}364365\end{frame}366\begin{frame}367\frametitle{From linear code to strongly regular graph}368\begin{Def}369\label{R-f-def}370Given $f : \Z_2^{2m} \To \Z_2$, form the linear code $C(f)$.371372The graph $R(f)$ is defined as:373374Vertices of $R(f)$ are code words of $C(f)$.375376For $v,w \in C(f)$, edge $(u,v) \in R(f)$ if and only if377\begin{align*}378\begin{cases}379\weight{u+v} = 2^{2m-2} - 2^{m-1} & (\text{if~}\weightclass{f}=0).380\\381\weight{u+v} = 2^{2m-2} + 2^{m-1} & (\text{if~}\weightclass{f}=1).382\end{cases}383\end{align*}384385\end{Def}386Since $C(f)$ is a projective two-weight code,387$R(f)$ is a strongly regular graph.388389\slidecite{Delsarte 1972, Theorem 2}390\end{frame}391\begin{frame}392\frametitle{The two block designs of a bent function}393394The first block design of a bent function $f$ is obtained by interpreting395the adjacency matrix of $\Cay{f}$ as the incidence matrix of a block design.396In this case we do not need $f(0)=0$.397398~399\begin{Def}400The second block design of a bent function $f$ is defined by the incidence matrix401$D(f)$ where402\begin{align*}403D(f)_{c,x} &:= f(x) + \langle c, x \rangle + \dual{f}(c).404\end{align*}405This is a symmetric block design with the \Emph{symmetric difference property},406called the \Emph{SDP design} of $f$.407\end{Def}408409~410411\slidecite{Kantor 1983; Dillon and Schatz 1987; Neumann 2006}412\end{frame}413\end{colortheme}414415\section{Equivalence}416417\begin{colortheme}{seagull}418\begin{frame}419\frametitle{Extended affine equivalence}420421\begin{Def}422For bent functions $f,g : \Z_2^{2m} \To \Z_2$,423424$f$ is \Emph{extended affine equivalent} to $g$ if and only if425\begin{align*}426g(x) &= f(A x + b) + \langle c, x \rangle + \delta427\end{align*}428for some $A \in GL(2m,2)$, $b, c \in \Z_2^{2m}$, $\delta \in \Z_2$.429\end{Def}430~431432\slidecite{Tokareva 2014}433\end{frame}434\end{colortheme}435436\begin{colortheme}{jubata}437\begin{frame}438\frametitle{General linear equivalence}439440\begin{Def}441For bent functions $f,g : \Z_2^{2m} \To \Z_2$,442$f$ is \Emph{general linear equivalent} to $g$ if and only if443\begin{align*}444g(x) &= f(A x)445\end{align*}446for some $A \in GL(2m,2)$.447\end{Def}448\end{frame}449\begin{frame}450\frametitle{Extended translation equivalence}451452\begin{Def}453For bent functions $f,g : \Z_2^{2m} \To \Z_2$,454455$f$ is \Emph{extended translation equivalent} to $g$ if and only if456\begin{align*}457g(x) &= f(x + b) + \langle c, x \rangle + \delta458\end{align*}459for $b, c \in \Z_2^{2m}$, $\delta \in \Z_2$.460\end{Def}461\end{frame}462\end{colortheme}463464\begin{colortheme}{jubata}465\begin{frame}466\frametitle{Cayley equivalence}467\begin{Def}468%469For $f, g : \Z_2^{2m} \To \Z_2$, with both $f$ and $g$ bent,470471we call $f$ and $g$ \Emph{Cayley equivalent},472and write $f \equiv g$,473474if and only if $f(0)=g(0)=0$ and $\Cay{f} \equiv \Cay{g}$ as graphs.475476~477478Equivalently, $f \equiv g$ if and only if $f(0)=g(0)=0$ and479480there exists a bijection $\pi : \Z_2^{2m} \To \Z_2^{2m}$ such that481\begin{align*}482g(x+y) &= f \big(\pi(x)+\pi(y)\big) \quad \text{for all~} x,y \in \Z_2^{2m}.483\end{align*}484\end{Def}485\end{frame}486\begin{frame}487\frametitle{Extended Cayley equivalence}488\begin{Def}489For $f, g : \Z_2^{2m} \To \Z_2$, with both $f$ and $g$ bent,490491if there exist $\delta, \epsilon \in \{0,1\}$ such that $f + \delta \equiv g + \epsilon$,492493we call $f$ and $g$ \Emph{extended Cayley (EC) equivalent} and write $f \cong g$.494\end{Def}495Extended Cayley equivalence is an equivalence relation on the set of all bent functions on $\Z_2^{2m}$.496\end{frame}497\section{Some results}498499\begin{frame}500\frametitle{General linear equivalence \\ implies Cayley equivalence}501502\begin{Theorem}503If $f$ is bent with $f(0)=0$ and $g(x) := f(A x)$ where $A \in GL(2m,2)$,504then $g$ is bent with $g(0)=0$ and $f \equiv g$.505\end{Theorem}506\begin{proof}507\begin{align*}508g(x+y) &= f\big(A(x+y)\big) = f(A x + A y)\quad \text{for all~} x,y \in \Z_2^{2m}.509\end{align*}510\end{proof}511512\end{frame}513514\begin{frame}515\frametitle{Extended affine, extended translation, and extended Cayley equivalence (1)}516517\begin{Theorem}518For $A \in GL(2m,2)$, $b, c \in \Z_2^{2m}$, $\delta \in \Z_2$,519$f : \Z_2^{2m} \To \Z_2$,520521the function522\begin{align*}523h(x) &:= f(A x + b) + \langle c, x \rangle + \delta524\intertext{can be expressed as $h(x) = g(A x)$ where}525g(x) &:= f(x+b) + \langle (A^{-1})^T c, x \rangle + \delta,526\end{align*}527and therefore if $f$ is bent then $h \cong g$.528\end{Theorem}529\end{frame}530531\begin{frame}532\frametitle{Extended affine, extended translation, and extended Cayley equivalence (2)}533534Therefore, to determine the extended Cayley equivalence classes within the extended affine equivalence class of535a bent function $f : \Z_2^{2m} \To \Z_2$, for which $f(0)=0$, we need only examine536the extended translation equivalent functions of the form537\begin{align*}538f(x+b) + \langle c, x \rangle + f(b),539\end{align*}540for each $b, c \in \Z_2^{2m}$.541\end{frame}542\begin{frame}543\frametitle{Quadratic bent functions have two \\ extended Cayley classes}544\begin{Theorem}545For each $m>0$, the extended affine equivalence class of quadratic bent functions546$q : \Z_2^{2m} \To \Z_2$ contains exactly two extended Cayley equivalence classes,547corresponding to the two possible weight classes of $x \mapsto q(x+b) + \langle c, x \rangle + q(b)$.548\end{Theorem}549550\end{frame}551%\end{colortheme}552553%\begin{colortheme}{jubata}554\begin{frame}555\frametitle{The strongly regular graph $R(f)$ is \\ the Cayley graph of the dual}556557\begin{Theorem}558For $f : \Z_2^{2m} \To \Z_2$, with $f(0)=0$,559\begin{align*}560R(f) &\equiv \Cay{\dual{f} + \weightclass{f}}.561\end{align*}562\end{Theorem}563564\end{frame}565\begin{frame}566\frametitle{The weight class matrix is \\ the SDP design matrix}567\begin{Theorem}568For every bent function $f$, the \Emph{weight class matrix} of the ET class of $f$569equals the incidence matrix of the SDP design of $f$.570571~572573Specifically,574\begin{align*}575\weightclass{\Cay{x \mapsto f(x+b) + \langle c, x \rangle + f(b)}}576&=577f(b) + \langle c, b \rangle + \dual{f}(c)578\\579&=580D(f)_{c,b}.581\end{align*}582583\end{Theorem}584585\end{frame}586\end{colortheme}587\section{Observations}588\begin{colortheme}{jubata}589\begin{frame}590\frametitle{For 2 dimensions: classes}591592One extended affine class, containing the extended translation class $[f_{2,1}]$,593where $f_{2,1}(x) := x_0 x_1$ is self dual.594595~596597Two extended Cayley classes:598\begin{align*}599\begin{array}{|cccl|}600\hline601\text{Class} &602\text{Parameters} &603\text{2-rank} &604\text{Clique polynomial}605\\606\hline6071 &608(4, 1, 0, 0) & 4 &6092t^{2} + 4t + 1610\\6112 &612K_4 & 4 &613t^{4} + 4t^{3} + 6t^{2} + 4t + 1614\\615\hline616\end{array}617\end{align*}618619\end{frame}620\begin{frame}621\frametitle{For ET class $[f_{2,1}]$: matrices}622\begin{figure}623\centering624\begin{minipage}{.48\textwidth}625\centering626\includegraphics[width=.9\linewidth]{../matrix_plot/re2_1_weight_class_matrix.png}627\captionof{figure}{$[f_{2,1}]$: weight classes}628\label{fig:c2_1_weight_class_matrix}629\end{minipage}%630\begin{minipage}{.48\textwidth}631\centering632\includegraphics[width=.9\linewidth]{../matrix_plot/re2_1_bent_cayley_graph_index_matrix.png}633\captionof{figure}{$[f_{2,1}]$: extended Cayley classes}634\label{fig:c2_1_bent_cayley_graph_index_matrix}635\end{minipage}636\end{figure}637\end{frame}638\begin{frame}639\frametitle{For 4 dimensions: classes}640641One extended affine class, containing the extended translation class $[f_{4,1}]$, where642$f_{4,1}(x) := x_0 x_1 + x_2 x_3$ is self dual.643644~645646Two extended Cayley classes:647\begin{align*}648\begin{array}{|cccl|}649\hline650\text{Class} &651\text{Parameters} &652\text{2-rank} &653\text{Clique polynomial}654\\655\hline6561 &657(16, 6, 2, 2) &6586 &6598t^{4} + 32t^{3} + 48t^{2} + 16t + 1660\\6612 &662(16, 10, 6, 6) &6636 &664\begin{array}{l}66516t^{5} + 120t^{4} + 160t^{3} +666\\66780t^{2} + 16t + 1668\end{array}669\\670\hline671\end{array}672\end{align*}673\end{frame}674\begin{frame}675\frametitle{For ET class $[f_{4,1}]$: matrices}676\begin{figure}677\centering678\begin{minipage}{.48\textwidth}679\centering680\includegraphics[width=.9\linewidth]{../matrix_plot/re4_1_weight_class_matrix.png}681\captionof{figure}{$[f_{4,1}]$: weight classes}682\label{fig:c4_1_weight_class_matrix}683\end{minipage}%684\begin{minipage}{.48\textwidth}685\centering686\includegraphics[width=.9\linewidth]{../matrix_plot/re4_1_bent_cayley_graph_index_matrix.png}687\captionof{figure}{$[f_{4,1}]$: extended Cayley classes}688\label{fig:c4_1_bent_cayley_graph_index_matrix}689\end{minipage}690\end{figure}691\end{frame}692\begin{frame}693\frametitle{For 6 dimensions: ET classes}694695Four extended affine classes, containing the following extended translation classes:696697\begin{align*}698\def\arraystretch{1.2}699\begin{array}{|cl|}700\hline701\text{Class} &702\text{Representative}703\\704\hline705\,[f_{6,1}] & f_{6,1} :=706\begin{array}{l}707x_{0} x_{1} + x_{2} x_{3} + x_{4} x_{5}708\end{array}709\\710\,[f_{6,2}] & f_{6,2} :=711\begin{array}{l}712x_{0} x_{1} x_{2} + x_{0} x_{3} + x_{1} x_{4} + x_{2} x_{5}713\end{array}714\\715\,[f_{6,3}] & f_{6,3} :=716\begin{array}{l}717x_{0} x_{1} x_{2} + x_{0} x_{1} + x_{0} x_{3} + x_{1} x_{3} x_{4} + x_{1} x_{5}718\\719+\, x_{2} x_{4} + x_{3} x_{4}720\end{array}721\\722\,[f_{6,4}] & f_{6,4} :=723\begin{array}{l}724x_{0} x_{1} x_{2} + x_{0} x_{3} + x_{1} x_{3} x_{4} + x_{1} x_{5} + x_{2} x_{3} x_{5}725\\726+\, x_{2} x_{3} + x_{2} x_{4} + x_{2} x_{5} + x_{3} x_{4} + x_{3} x_{5}727\end{array}728\\729\hline730\end{array}731\end{align*}732\end{frame}733\begin{frame}734\frametitle{For ET class $[f_{6,1}]$: EC classes}735736Bent function737$f_{6,1}(x) = x_0 x_1 + x_2 x_3 + x_4 x_5$ is self dual.738739~740741Two extended Cayley classes corresponding to Tonchev's projective two-weight codes:742\begin{align*}743\def\arraystretch{1.2}744\begin{array}{|ccl|}745\hline746\text{Class} &747\text{Parameters} & \text{Reference}748\\749\hline7500 & [35,6,16] & \text{Table 1.156 1, 2 (complement)}751\\7521 & [27,6,12] & \text{Table 1.155 1 }753\\754\hline755\end{array}756\end{align*}757758Graph for class 0 is also isomorphic to the complement of Royle's $(64,35,18,20)$ strongly regular759graph $X$.760761\slidecite{Tonchev 1996, 2006; Royle 2008}762\end{frame}763\begin{frame}764\frametitle{For ET class $[f_{6,1}]$: matrices}765\begin{figure}766\centering767\begin{minipage}{.48\textwidth}768\centering769\includegraphics[width=.9\linewidth]{../matrix_plot/re6_1_weight_class_matrix.png}770\captionof{figure}{$[f_{6,1}]$: weight classes}771\label{fig:6_1_weight_class_matrix}772\end{minipage}%773\begin{minipage}{.48\textwidth}774\centering775\includegraphics[width=.9\linewidth]{../matrix_plot/re6_1_bent_cayley_graph_index_matrix.png}776\captionof{figure}{$[f_{6,1}]$: 2 extended Cayley classes}777\label{fig:6_1_bent_cayley_graph_index_matrix}778\end{minipage}779\end{figure}780\end{frame}781\begin{frame}782\frametitle{For ET class $[f_{6,2}]$: EC classes}783784Bent function785$f_{6,2}(x) = x_{0} x_{1} x_{2} + x_{0} x_{3} + x_{1} x_{4} + x_{2} x_{5}$.786787~788789Three extended Cayley classes corresponding to Tonchev's projective two-weight codes:790\begin{align*}791\def\arraystretch{1.2}792\begin{array}{|ccl|}793\hline794\text{Class} &795\text{Parameters} & \text{Reference}796\\797\hline7980 & [35,6,16] & \text{Table 1.156 1, 2 (complement)}799\\8001 & [35,6,16] & \text{Table 1.156 3 (complement)}801\\8022 & [27,6,12] & \text{Table 1.155 2 }803\\804\hline805\end{array}806\end{align*}807808Graph for class 0 is also isomorphic to that of $[f_{6,1}]$ class 0.809810\slidecite{Tonchev 1996, 2006}811\end{frame}812\begin{frame}813\frametitle{For ET class $[f_{6,2}]$: matrices}814\begin{figure}815\centering816\begin{minipage}{.48\textwidth}817\centering818\includegraphics[width=.9\linewidth]{../matrix_plot/re6_2_weight_class_matrix.png}819\captionof{figure}{$[f_{6,2}]$: weight classes}820\label{fig:6_2_weight_class_matrix}821\end{minipage}%822\begin{minipage}{.48\textwidth}823\centering824\includegraphics[width=.9\linewidth]{../matrix_plot/re6_2_bent_cayley_graph_index_matrix.png}825\captionof{figure}{$[f_{6,2}]$: 3 extended Cayley classes}826\label{fig:6_2_bent_cayley_graph_index_matrix}827\end{minipage}828\end{figure}829\end{frame}830\begin{frame}831\frametitle{For ET class $[f_{6,3}]$: EC classes}832833Bent function834\begin{align*}835f_{6,3}(x) &= x_{0} x_{1} x_{2} + x_{0} x_{1} + x_{0} x_{3} + x_{1} x_{3} x_{4}836\\837&+ x_{1} x_{5} + x_{2} x_{4} + x_{3} x_{4}.838\end{align*}839840Four extended Cayley classes corresponding to Tonchev's projective two-weight codes:841\begin{align*}842\def\arraystretch{1.2}843\begin{array}{|ccl|}844\hline845\text{Class} &846\text{Parameters} & \text{Reference}847\\848\hline8490 & [35,6,16] & \text{Table 1.156 4 (complement)}850\\8511 & [27,6,12] & \text{Table 1.155 3 }852\\8532 & [35,6,16] & \text{Table 1.156 5 (complement)}854\\8553 & [27,6,12] & \text{Table 1.155 4 }856\\857\hline858\end{array}859\end{align*}860861\slidecite{Tonchev 1996, 2006}862\end{frame}863\begin{frame}864\frametitle{For ET class $[f_{6,3}]$: matrices}865\begin{figure}866\centering867\begin{minipage}{.48\textwidth}868\centering869\includegraphics[width=.9\linewidth]{../matrix_plot/re6_3_weight_class_matrix.png}870\captionof{figure}{$[f_{6,3}]$: weight classes}871\label{fig:6_3_weight_class_matrix}872\end{minipage}%873\begin{minipage}{.48\textwidth}874\centering875\includegraphics[width=.9\linewidth]{../matrix_plot/re6_3_bent_cayley_graph_index_matrix.png}876\captionof{figure}{$[f_{6,3}]$: 4 extended Cayley classes}877\label{fig:6_3_bent_cayley_graph_index_matrix}878\end{minipage}879\end{figure}880\end{frame}881\begin{frame}882\frametitle{For ET class $[f_{6,4}]$: EC classes}883884Bent function885\begin{align*}886f_{6,4}(x) &= x_{0} x_{1} x_{2} + x_{0} x_{3} + x_{1} x_{3} x_{4} + x_{1} x_{5} + x_{2} x_{3} x_{5}887\\888&+ x_{2} x_{3} + x_{2} x_{4} + x_{2} x_{5} + x_{3} x_{4} + x_{3} x_{5}.889\end{align*}890891Three extended Cayley classes corresponding to Tonchev's projective two-weight codes:892\begin{align*}893\def\arraystretch{1.2}894\begin{array}{|ccl|}895\hline896\text{Class} &897\text{Parameters} & \text{Reference}898\\899\hline9000 & [35,6,16] & \text{Table 1.156 7 (complement)}901\\9021 & [35,6,16] & \text{Table 1.156 6 (complement)}903\\9042 & [27,6,12] & \text{Table 1.155 5 }905\\906\hline907\end{array}908\end{align*}909910\slidecite{Tonchev 1996, 2006}911\end{frame}912\begin{frame}913\frametitle{For ET class $[f_{6,4}]$: matrices}914\begin{figure}915\centering916\begin{minipage}{.48\textwidth}917\centering918\includegraphics[width=.9\linewidth]{../matrix_plot/re6_4_weight_class_matrix.png}919\captionof{figure}{$[f_{6,4}]$: weight classes}920\label{fig:6_4_weight_class_matrix}921\end{minipage}%922\begin{minipage}{.48\textwidth}923\centering924\includegraphics[width=.9\linewidth]{../matrix_plot/re6_4_bent_cayley_graph_index_matrix.png}925\captionof{figure}{$[f_{6,4}]$: 3 extended Cayley classes}926\label{fig:6_4_bent_cayley_graph_index_matrix}927\end{minipage}928\end{figure}929\end{frame}930\begin{colortheme}{seagull}931\begin{frame}932\frametitle{For 8 dimensions: \\ number of bent functions and EA classes}933934According to Langevin and Leander (2011)935there are $99270589265934370305785861242880 \approx 2^{106}$ bent functions in dimension 8.936937~938939The number of EA classes has not yet been published, let alone a list of representatives.940941\slidecite{Langevin and Leander 2011}942\end{frame}943\end{colortheme}944\begin{frame}945\frametitle{For 8 dimensions, up to degree 3: \\ extended translation classes}946947Ten extended affine classes,948949containing the following extended translation classes:950951\tiny{}952\begin{align*}953\def\arraystretch{1.2}954\begin{array}{|cl|}955\hline956\text{Class} &957\text{Representative}958\\959\hline960\,[f_{ 8 , 1 }] & f_{ 8 , 1 } :=961\begin{array}{l}962x_{0} x_{1} + x_{2} x_{3} + x_{4} x_{5} + x_{6} x_{7}963\end{array}964\\965\,[f_{ 8 , 2 }] & f_{ 8 , 2 } :=966\begin{array}{l}967x_{0} x_{1} x_{2} + x_{0} x_{3} + x_{1} x_{4} + x_{2} x_{5} + x_{6} x_{7}968\end{array}969\\970\,[f_{ 8 , 3 }] & f_{ 8 , 3 } :=971\begin{array}{l}972x_{0} x_{1} x_{2} + x_{0} x_{6} + x_{1} x_{3} x_{4} + x_{1} x_{5} + x_{2} x_{3} + x_{4} x_{7}973\end{array}974\\975\,[f_{ 8 , 4 }] & f_{ 8 , 4 } :=976\begin{array}{l}977x_{0} x_{1} x_{2} + x_{0} x_{2} + x_{0} x_{4} + x_{1} x_{3} x_{4} + x_{1} x_{5} + x_{2} x_{3} + x_{6} x_{7}978\end{array}979\\980\,[f_{ 8 , 5 }] & f_{ 8 , 5 } :=981\begin{array}{l}982x_{0} x_{1} x_{2} + x_{0} x_{6} + x_{1} x_{3} x_{4} + x_{1} x_{4} + x_{1} x_{5} + x_{2} x_{3} x_{5} + x_{2} x_{4} + x_{3} x_{7}983\end{array}984\\985\,[f_{ 8 , 6 }] & f_{ 8 , 6 } :=986\begin{array}{l}987x_{0} x_{1} x_{2} + x_{0} x_{2} + x_{0} x_{3} + x_{1} x_{3} x_{4} + x_{1} x_{6} + x_{2} x_{3} x_{5} + x_{2} x_{4} + x_{5} x_{7}988\end{array}989\\990\,[f_{ 8 , 7 }] & f_{ 8 , 7 } :=991\begin{array}{l}992x_{0} x_{1} x_{2} + x_{0} x_{1} + x_{0} x_{2} + x_{0} x_{3} + x_{1} x_{3} x_{4} + x_{1} x_{4} + x_{1} x_{5} + x_{2} x_{3} x_{5}993\\994+\, x_{2} x_{4} + x_{6} x_{7}995\end{array}996\\997\,[f_{ 8 , 8 }] & f_{ 8 , 8 } :=998\begin{array}{l}999x_{0} x_{1} x_{2} + x_{0} x_{5} + x_{1} x_{3} x_{4} + x_{1} x_{6} + x_{2} x_{3} x_{5} + x_{2} x_{4} + x_{3} x_{7}1000\end{array}1001\\1002\,[f_{ 8 , 9 }] & f_{ 8 , 9 } :=1003\begin{array}{l}1004x_{0} x_{1} x_{6} + x_{0} x_{3} + x_{1} x_{4} + x_{2} x_{3} x_{6} + x_{2} x_{5} + x_{3} x_{4} + x_{4} x_{5} x_{6} + x_{6} x_{7}1005\end{array}1006\\1007\,[f_{ 8 , 10 }] & f_{ 8 , 10 } :=1008\begin{array}{l}1009x_{0} x_{1} x_{2} + x_{0} x_{3} x_{6} + x_{0} x_{4} + x_{0} x_{5} + x_{1} x_{3} x_{4} + x_{1} x_{6} + x_{2} x_{3} x_{5} + x_{2} x_{4}1010\\1011+\, x_{3} x_{7}1012\end{array}1013\\1014\hline1015\end{array}1016\end{align*}1017\normalsize{}1018\end{frame}1019\begin{frame}1020\frametitle{For ET class $[f_{8,1}]$: matrices}1021\begin{figure}1022\centering1023\begin{minipage}{.48\textwidth}1024\centering1025\includegraphics[width=.9\linewidth]{../matrix_plot/re8_1_weight_class_matrix.png}1026\captionof{figure}{$[f_{8,1}]$: weight classes}1027\label{fig:8_1_weight_class_matrix}1028\end{minipage}%1029\begin{minipage}{.48\textwidth}1030\centering1031\includegraphics[width=.9\linewidth]{../matrix_plot/re8_1_bent_cayley_graph_index_matrix.png}1032\captionof{figure}{$[f_{8,1}]$: 2 extended Cayley classes}1033\label{fig:8_1_bent_cayley_graph_index_matrix}1034\end{minipage}1035\end{figure}1036~1037\end{frame}1038\begin{frame}1039\frametitle{For ET class $[f_{8,2}]$: matrices}1040\begin{figure}1041\centering1042\begin{minipage}{.48\textwidth}1043\centering1044\includegraphics[width=.9\linewidth]{../matrix_plot/re8_2_weight_class_matrix.png}1045\captionof{figure}{$[f_{8,2}]$: weight classes}1046\label{fig:8_2_weight_class_matrix}1047\end{minipage}%1048\begin{minipage}{.48\textwidth}1049\centering1050\includegraphics[width=.9\linewidth]{../matrix_plot/re8_2_bent_cayley_graph_index_matrix.png}1051\captionof{figure}{$[f_{8,2}]$: 4 extended Cayley classes}1052\label{fig:8_2_bent_cayley_graph_index_matrix}1053\end{minipage}1054\end{figure}1055~1056\end{frame}1057\begin{frame}1058\frametitle{For ET class $[f_{8,3}]$: matrices}1059\begin{figure}1060\centering1061\begin{minipage}{.48\textwidth}1062\centering1063\includegraphics[width=.9\linewidth]{../matrix_plot/re8_3_weight_class_matrix.png}1064\captionof{figure}{$[f_{8,3}]$: weight classes}1065\label{fig:8_3_weight_class_matrix}1066\end{minipage}%1067\begin{minipage}{.48\textwidth}1068\centering1069\includegraphics[width=.9\linewidth]{../matrix_plot/re8_3_bent_cayley_graph_index_matrix.png}1070\captionof{figure}{$[f_{8,3}]$: 6 extended Cayley classes}1071\label{fig:8_3_bent_cayley_graph_index_matrix}1072\end{minipage}1073\end{figure}1074~1075\end{frame}1076\begin{frame}1077\frametitle{For ET class $[f_{8,4}]$: matrices}1078\begin{figure}1079\centering1080\begin{minipage}{.48\textwidth}1081\centering1082\includegraphics[width=.9\linewidth]{../matrix_plot/re8_4_weight_class_matrix.png}1083\captionof{figure}{$[f_{8,4}]$: weight classes}1084\label{fig:8_4_weight_class_matrix}1085\end{minipage}%1086\begin{minipage}{.48\textwidth}1087\centering1088\includegraphics[width=.9\linewidth]{../matrix_plot/re8_4_bent_cayley_graph_index_matrix.png}1089\captionof{figure}{$[f_{8,4}]$: 5 extended Cayley classes}1090\label{fig:8_4_bent_cayley_graph_index_matrix}1091\end{minipage}1092\end{figure}1093~1094\end{frame}1095\begin{frame}1096\frametitle{For ET class $[f_{8,5}]$: matrices}1097\begin{figure}1098\centering1099\begin{minipage}{.48\textwidth}1100\centering1101\includegraphics[width=.9\linewidth]{../matrix_plot/re8_5_weight_class_matrix.png}1102\captionof{figure}{$[f_{8,5}]$: weight classes}1103\label{fig:8_5_weight_class_matrix}1104\end{minipage}%1105\begin{minipage}{.48\textwidth}1106\centering1107\includegraphics[width=.9\linewidth]{../matrix_plot/re8_5_bent_cayley_graph_index_matrix.png}1108\captionof{figure}{$[f_{8,5}]$: 9 extended Cayley classes}1109\label{fig:8_5_bent_cayley_graph_index_matrix}1110\end{minipage}1111\end{figure}1112~1113\end{frame}1114\begin{frame}1115\frametitle{For ET class $[f_{8,6}]$: matrices}1116\begin{figure}1117\centering1118\begin{minipage}{.48\textwidth}1119\centering1120\includegraphics[width=.9\linewidth]{../matrix_plot/re8_6_weight_class_matrix.png}1121\captionof{figure}{$[f_{8,6}]$: weight classes}1122\label{fig:8_6_weight_class_matrix}1123\end{minipage}%1124\begin{minipage}{.48\textwidth}1125\centering1126\includegraphics[width=.9\linewidth]{../matrix_plot/re8_6_bent_cayley_graph_index_matrix.png}1127\captionof{figure}{$[f_{8,6}]$: 9 extended Cayley classes}1128\label{fig:8_6_bent_cayley_graph_index_matrix}1129\end{minipage}1130\end{figure}1131The same 9 classes as $[f_{8,5}]$, with the same frequencies!1132\end{frame}1133\begin{frame}1134\frametitle{For ET class $[f_{8,7}]$: matrices}1135\begin{figure}1136\centering1137\begin{minipage}{.48\textwidth}1138\centering1139\includegraphics[width=.9\linewidth]{../matrix_plot/re8_7_weight_class_matrix.png}1140\captionof{figure}{$[f_{8,7}]$: weight classes}1141\label{fig:8_7_weight_class_matrix}1142\end{minipage}%1143\begin{minipage}{.48\textwidth}1144\centering1145\includegraphics[width=.9\linewidth]{../matrix_plot/re8_7_bent_cayley_graph_index_matrix.png}1146\captionof{figure}{$[f_{8,7}]$: 5 extended Cayley classes}1147\label{fig:8_7_bent_cayley_graph_index_matrix}1148\end{minipage}1149\end{figure}1150~1151\end{frame}1152\begin{frame}1153\frametitle{For ET class $[f_{8,8}]$: matrices}1154\begin{figure}1155\centering1156\begin{minipage}{.48\textwidth}1157\centering1158\includegraphics[width=.9\linewidth]{../matrix_plot/re8_8_weight_class_matrix.png}1159\captionof{figure}{$[f_{8,8}]$: weight classes}1160\label{fig:8_8_weight_class_matrix}1161\end{minipage}%1162\begin{minipage}{.48\textwidth}1163\centering1164\includegraphics[width=.9\linewidth]{../matrix_plot/re8_8_bent_cayley_graph_index_matrix.png}1165\captionof{figure}{$[f_{8,8}]$: 6 extended Cayley classes}1166\label{fig:8_8_bent_cayley_graph_index_matrix}1167\end{minipage}1168\end{figure}1169~1170\end{frame}1171\begin{frame}1172\frametitle{For ET class $[f_{8,9}]$: matrices}1173\begin{figure}1174\centering1175\begin{minipage}{.48\textwidth}1176\centering1177\includegraphics[width=.9\linewidth]{../matrix_plot/re8_9_bent_cayley_graph_index_matrix.png}1178\captionof{figure}{$[f_{8,9}]$: 8 extended Cayley classes ~~ ~~~~ ~~~~ ~~~~~~~~~}1179\label{fig:c8_9_bent_cayley_graph_index_matrix}1180\end{minipage}1181\begin{minipage}{.48\textwidth}1182\centering1183\includegraphics[width=.9\linewidth]{../matrix_plot/re8_9_dual_cayley_graph_index_matrix.png}1184\captionof{figure}{$[f_{8,9}]$: 8 extended Cayley classes of dual bent functions}1185\label{fig:c8_9_dual_cayley_graph_index_matrix}1186\end{minipage}%1187\end{figure}11884 of the 8 classes form 2 dual pairs of classes.1189\end{frame}1190\begin{frame}1191\frametitle{For ET class $[f_{8,10}]$: matrices}1192\begin{figure}1193\centering1194\begin{minipage}{.48\textwidth}1195\centering1196\includegraphics[width=.9\linewidth]{../matrix_plot/re8_10_bent_cayley_graph_index_matrix.png}1197\captionof{figure}{$[f_{8,10}]$: 10 extended Cayley classes ~~ ~~~~ ~~~~ ~~~~~~~~~}1198\label{fig:c8_10_bent_cayley_graph_index_matrix}1199\end{minipage}1200\begin{minipage}{.48\textwidth}1201\centering1202\includegraphics[width=.9\linewidth]{../matrix_plot/re8_10_dual_cayley_graph_index_matrix.png}1203\captionof{figure}{$[f_{8,10}]$: 10 extended Cayley classes of dual bent functions}1204\label{fig:c8_10_dual_cayley_graph_index_matrix}1205\end{minipage}%1206\end{figure}12076 of the 10 classes form 3 dual pairs of classes.1208\end{frame}1209\end{colortheme}1210\begin{colortheme}{seagull}1211\begin{frame}[fragile]1212\frametitle{For 8 dimensions: number of partial spread \\ bent functions and EA classes}12131214According to Langevin and Hou (2011)1215there are $70576747237594114392064 \approx 2^{75.9}$ \Emph{partial spread} bent functions in dimension 8,1216contained in $14758$ EA classes, of which $14756$ have degree 4.12171218~12191220The EA class representatives are listed at Langevin's web site12211222\begin{verbatim}1223http://langevin.univ-tln.fr/project/spread/psp.html1224\end{verbatim}12251226\slidecite{Langevin and Hou 2011}1227\end{frame}1228\end{colortheme}1229\begin{colortheme}{jubata}1230\begin{frame}1231\frametitle{Example partial spread ET class $[psf_{9,5439}]$}1232\begin{figure}1233\centering1234\begin{minipage}{.48\textwidth}1235\centering1236\includegraphics[width=.9\linewidth]{../matrix_plot/psf_9_5439_bent_cayley_graph_index_matrix.png}1237\captionof{figure}{$[psf_{9,5439}]$: 16 extended Cayley classes ~~ ~~~~ ~~~~ ~~~~~~~~~}1238\label{fig:psf_9_5439_bent_cayley_graph_index_matrix}1239\end{minipage}1240\begin{minipage}{.48\textwidth}1241\centering1242\includegraphics[width=.9\linewidth]{../matrix_plot/psf_9_5439_dual_cayley_graph_index_matrix.png}1243\captionof{figure}{$[psf_{9,5439}]$: 16 extended Cayley classes of dual bent functions}1244\label{fig:psf_9_5439_dual_cayley_graph_index_matrix}1245\end{minipage}%1246\end{figure}12476 of the 16 classes form 3 dual pairs of classes.1248\end{frame}1249\begin{colortheme}{seagull}1250\begin{frame}[fragile]1251\frametitle{For 8 dimensions: Bent functions from CAST-128 S-boxes}12521253The CAST-128 encryption algorithm is used in PGP and elsewhere.12541255CAST-128, including the S-boxes, is specified by IETF RFC 2144:1256\begin{verbatim}1257https://www.ietf.org/rfc/rfc2144.txt1258\end{verbatim}12591260The algorithm uses 8 S-boxes, each of which consists of 32 binary bent functions in 8 dimensions,1261with degree 4.12621263~12641265\slidecite{Adams 1997}1266\end{frame}1267\end{colortheme}1268\begin{frame}1269\frametitle{Example CAST-128 ET class $[cast128_{1,0}]$}1270\begin{figure}1271\centering1272\begin{minipage}{.48\textwidth}1273\centering12741275\includegraphics[width=.9\linewidth]{../matrix_plot/cast_128_1_0_weight_class_matrix.png}1276\captionof{figure}{$[cast128_{1,0}]$: weight classes ~~~~~~ ~~~~~~~~}1277\label{fig:cast128_1_1_weight_class_matrix}1278\end{minipage}1279\begin{minipage}{.48\textwidth}1280\centering1281\includegraphics[width=.9\linewidth]{../matrix_plot/cast_128_1_0_bent_cayley_graph_index_matrix.png}1282\captionof{figure}{$[cast128_{1,0}]$: $65\,536$ extended Cayley classes}1283\label{fig:cast_128_1_1_bent_cayley_graph_index_matrix}1284\end{minipage}%1285\end{figure}1286Dual bent functions yield another $65\,536$ extended Cayley classes!1287\end{frame}1288\section{Questions}1289\begin{frame}1290\frametitle{Open problems}1291Settled only for dimensions up to 6:1292\begin{enumerate}1293\item1294How many EC classes are there for each dimension?1295Are there ``Exponential numbers'' of classes?1296\item1297In $n$ dimensions,1298which ET classes contain the maximum number, $4^n$, of different EC classes?1299\item1300Which EC classes overlap more than one ET class?1301\item1302Which bent functions are extended affine equivalent to their dual?1303\item1304Which bent functions are Cayley equivalent to their dual?1305\end{enumerate}1306~13071308Also, what are the remaining EA and EC classes of binary bent functions of dimension 8 and degree 4?13091310~13111312\slidecite{Kantor 1983; Jungnickel and Tonchev 1991; Langevin and Leander 2008, 2011}1313\end{frame}1314\end{colortheme}1315\section{Source code}1316\begin{colortheme}{jubata}1317\begin{frame}[fragile]1318\frametitle{Source code on GitHub and SageMathCloud}1319~13201321GitHub: Sage and Python source code13221323\begin{verbatim}1324https://github.com/penguian/Boolean-Cayley-graphs1325\end{verbatim}13261327~13281329SageMathCloud: Public worksheets, Sage and Python source code13301331\begin{verbatim}1332http://tinyurl.com/Boolean-Cayley-graphs1333\end{verbatim}13341335\end{frame}1336\end{colortheme}1337\section{Last}1338\begin{colortheme}{jubata}1339\begin{frame}1340\frametitle{Thank you.}13411342\begin{figure}1343\centering1344\begin{minipage}{.48\textwidth}1345\centering1346\includegraphics[width=.9\linewidth]{../matrix_plot/tau_3_bent_cayley_graph_index_matrix.png}1347\captionof{figure}{$[\tau_3]$: 3 extended Cayley classes}1348\label{fig:tau_3_bent_cayley_graph_index_matrix}1349\end{minipage}1350\begin{minipage}{.48\textwidth}1351\centering1352\includegraphics[width=.9\linewidth]{../matrix_plot/tau_4_bent_cayley_graph_index_matrix.png}1353\captionof{figure}{$[\tau_4]$: 5 extended Cayley classes}1354\label{fig:tau_4_bent_cayley_graph_index_matrix}1355\end{minipage}%1356\end{figure}1357\end{frame}13581359\end{colortheme}1360\end{document}136113621363