#
Discovering Non-Linear Boolean Functions by Evolving Walsh Transforms with Genetic Programming^{ †}

^{*}

^{†}

## Abstract

**:**

## 1. Introduction

**RQ1.**- Can we easily obtain balanced solutions?
**RQ2.**- Can we leverage a GP-based evolution to discover solutions with higher non-linearity than random search?
**RQ3.**- What are the implications of changing the tree syntactical structure as regards our fitness function?

- (i).
- We show how we can evolve Walsh Transforms with GP to maximize non-linearity by using spectral inversion.
- (ii).
- We show how we can discover balanced solutions with an effective balancedness-preserving strategy when computing the nearest Boolean functions from the corresponding pseudo-Boolean ones.
- (iii).
- We demonstrate that, even with a small population size and with a low number of generations, GP is able to outperform RS if we choose the correct function set and terminal set.
- (iv).
- We provide an analysis for explaining why certain types of function and terminal set combinations perform poorly by inspecting the percentages of uncertain positions.

## 2. Related Works

## 3. Cryptography Overview

#### 3.1. PRG-Based Stream Cipher Design

#### 3.2. Boolean Function and Walsh Transforms

## 4. Proposed Approach

`even`function outputs 1 if the input value is an even number and 0 otherwise. On the other hand, the

`odd`function outputs 1 if the input value is an odd number and 0 otherwise.

- A terminal set of one variable representing an integer between 0 and ${2}^{n}-1$, i.e., the integer encoded by a given binary string of size n ($\mathsf{N}$);
- A terminal set of n variables representing the binary positions of the input string ($\mathsf{B}$);
- A terminal set of n variables representing the binary positions of the input string in polar form ($\mathsf{P}$).

- (1)
- (2)
- Biased (toward balancedness) uncertainty filling: a strategy that was presented in [38] to propose a technique that tries to improve or, eventually, preserve the balancedness when computing nearest Boolean functions. This strategy is based on the idea that uncertain positions can be exploited for the purpose of balancing ${\mathbf{\Omega}}_{f}$. Let ${\widehat{\mathbf{\Omega}}}_{f}$ be the polar-form-based truth table of $\widehat{f}$. Let:$$\begin{array}{c}\hfill {v}_{1}=\left|\{b\in {\widehat{\mathbf{\Omega}}}_{f}\phantom{\rule{4pt}{0ex}}|\phantom{\rule{4pt}{0ex}}b<0\}\right|\\ \hfill {v}_{0}=\left|\{b\in {\widehat{\mathbf{\Omega}}}_{f}\phantom{\rule{4pt}{0ex}}|\phantom{\rule{4pt}{0ex}}b>0\}\right|\\ \hfill u=\left|\right\{b\in {\widehat{\mathbf{\Omega}}}_{f}\phantom{\rule{4pt}{0ex}}|\phantom{\rule{4pt}{0ex}}b=0\}|\end{array}$$Our purpose is to discover ${\mathbf{u}}^{*}\in {\{-1,\phantom{\rule{4pt}{0ex}}1\}}^{u}$, i.e.:$${\mathbf{u}}^{*}=arg\underset{\mathbf{u}\in {\{-1,\phantom{\rule{4pt}{0ex}}1\}}^{u}}{min}|({v}_{1}+{u}_{1})-({v}_{0}+{u}_{0})|$$$$\begin{array}{c}\hfill {u}_{1}=\left|\{b\in \mathbf{u}\phantom{\rule{4pt}{0ex}}|\phantom{\rule{4pt}{0ex}}b=-1\}\right|\\ \hfill {u}_{0}=\left|\{b\in \mathbf{u}\phantom{\rule{4pt}{0ex}}|\phantom{\rule{4pt}{0ex}}b=1\}\right|\end{array}$$Obviously, the balancedness degree is not affected by the way −1 and 1 are sorted in ${\mathbf{u}}^{*}$. Hence, a given type of ${\mathbf{u}}^{*}$ can be computed deterministically (e.g., ${\mathbf{u}}^{*}=[-{1}^{{u}_{1}},{1}^{{u}_{0}}]$), and in order to enhance diversity, a random permutation of it can be performed. Finally, we obtain ${\mathbf{u}}_{p}^{*}\in {\{-1,\phantom{\rule{4pt}{0ex}}1\}}^{u}$, i.e., a permutation of ${\mathbf{u}}^{*}$ retrieved by performing a random shuffle of it. We leverage ${\mathbf{u}}_{p}^{*}$ to assign the uncertain entries of ${\mathbf{\Omega}}_{f}$ as follows:$$f\left(\mathbf{x}\right)=\left\{\begin{array}{cc}1\hfill & \mathrm{if}\phantom{\rule{4.pt}{0ex}}\tilde{f}\left(\mathbf{x}\right)>0\hfill \\ -1\hfill & \mathrm{if}\phantom{\rule{4.pt}{0ex}}\tilde{f}\left(\mathbf{x}\right)<0\hfill \\ {\mathbf{u}}_{p}^{*}\left[ind\left(\mathbf{x}\right)\right]\hfill & \mathrm{if}\phantom{\rule{4.pt}{0ex}}\tilde{f}\left(\mathbf{x}\right)=0\hfill \end{array}\right.$$

- Initialization: generate an initial population of random symbolic formulae representing mathematical expressions and evaluate their fitness;
- Selection: choose symbolic formulae from the current population as parents for the next generation based on their fitness, with some randomness to maintain diversity;
- Crossover (Recombination): create new symbolic formulae by swapping sub-parts of two parent formulae, combining them to form offspring;
- Mutation: introduce random changes to offspring formula, which may involve adding, removing, or modifying sub-parts. Then, perform a novel evaluation of the fitness of the offspring and go back to the selection step so that the next generation begins.

## 5. Experimental Phase

- (1)
- We analyze the distribution of the best solutions discovered at the end of the evolution with GP and Random Search (RS) and check whether GP is meaningfully better than RS;
- (2)
- We analyze the balancedness degree of the best solutions discovered at the end of the evolution, and we compare the results with the biased strategy and the unbiased strategy;
- (3)
- We perform an in-depth analysis of the mean percentage of uncertain positions in the discovered pseudo-Boolean functions to provide a justification of the obtained results.

`BooleanCryptoGP`, accessed on 10 September 2023.

#### 5.1. Non-Linearity Distribution

#### 5.2. Balancedness Degree

#### 5.3. Uncertainty Position Percentage

## 6. Discussion

**RQ1**.- Can we easily obtain balanced solutions?We demonstrate that by using the proposed biased uncertainty filling method, we are able through a GP evolution to discover solutions that are balanced. This is of paramount importance since unbalanced functions have a statistical bias that can be exploited by attackers. Therefore, it is essential to guarantee a high chance of building balanced solutions when using the proposed spectral inversion technique.
**RQ2**.- Can we leverage a GP-based evolution to discover solutions with higher non-linearity than random search?We show that by using GP, we are able to discover better solutions than RS even if we set a small population size and a low number of generations, provided that we use a specific type of symbolic tree structure. In this case, it seems that the (scaled) non-linearity is usually larger than 0.90. This means that by employing ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N},\mathsf{ERC}}$ and ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N}}$ as tree structures along with GP and biased uncertainty filling, the proposed technique has the potential to identify Boolean functions characterized by a large non-linearity. Therefore, performing an exploration of the search space composed by Walsh transforms is potentially an interesting approach. As a further remark, we stress that for the numbers of bits that have been extensively studied in a way for which the optimal non-linearity has been derived [12], given the complexity of the problem, GP is still unable to reach the optimal non-linearity.
**RQ3**.- What are the implications of changing the tree syntactical structure as regards our fitness function?We provide an analysis of why with certain types of symbolic representations the GP-based method is not able to perform better than random search. We find the justification of this phenomenon in the percentage of uncertain positions in the pseudo-truth tables obtained through spectral inversion. To this end, by analyzing the mean uncertainty position percentage across the executed generations, we show that when the tree structure is different from ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N},\mathsf{ERC}}$ and ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N}}$, the percentage of uncertain positions in the pseudo-truth tables constructed during the evolution is so high that the corresponding nearest functions are basically built at random, making the evolution ineffective and no different from a simple random search. On the other hand, when the percentage of uncertain positions is lower, then there is a portion of these pseudo-truth tables that actually take advantage of the GP evolution, leading to better solutions than random search.

## 7. Conclusions

## Author Contributions

## Funding

## Data Availability Statement

## Conflicts of Interest

## Abbreviations

ANF | Algebraic Normal Form |

EC | Evolutionary Computation |

GA | Genetic Algorithm |

GP | Genetic Programming |

CGP | Cartesian Genetic Programming |

OTP | One-Time Pad |

PRG | Pseudo-Random Generator |

LFSR | Linear Feedback Shift Register |

CSS | Content Scramble System |

WHT | Walsh–Hadamard Transform |

## References

- Katz, J.; Lindell, Y. Introduction to Modern Cryptography; CRC Press: Boca Raton, FL, USA, 2020. [Google Scholar]
- Mariot, L.; Leporati, A. A genetic algorithm for evolving plateaued cryptographic boolean functions. In Proceedings of the International Conference on Theory and Practice of Natural Computing, Mieres, Spain, 15–16 December 2015; pp. 33–45. [Google Scholar]
- Millan, W.; Clark, A.; Dawson, E. An effective genetic algorithm for finding highly nonlinear Boolean functions. In Proceedings of the International Conference on Information and Communications Security, Beijing, China, 11–14 November 1997; pp. 149–158. [Google Scholar]
- Miller, J.F. An empirical study of the efficiency of learning boolean functions using a cartesian genetic programming approach. In Proceedings of the Genetic and Evolutionary Computation Conference, Orlando, FL, USA, 13–17 July 1999; Volume 2, pp. 1135–1142. [Google Scholar]
- Picek, S.; Jakobovic, D.; Miller, J.F.; Marchiori, E.; Batina, L. Evolutionary methods for the construction of cryptographic boolean functions. In Proceedings of the European Conference on Genetic Programming, Copenhagen, Denmark, 8–10 April 2015; pp. 192–204. [Google Scholar]
- Picek, S.; Carlet, C.; Guilley, S.; Miller, J.F.; Jakobovic, D. Evolutionary algorithms for boolean functions in diverse domains of cryptography. Evol. Comput.
**2016**, 24, 667–694. [Google Scholar] [CrossRef] [PubMed] - Mariot, L.; Picek, S.; Jakobovic, D.; Djurasevic, M.; Leporati, A. Evolutionary construction of perfectly balanced boolean functions. In Proceedings of the 2022 IEEE Congress on Evolutionary Computation (CEC), Padua, Italy, 18–23 July 2022; pp. 1–8. [Google Scholar]
- Mariot, L.; Jakobovic, D.; Leporati, A.; Picek, S. Hyper-bent Boolean functions and evolutionary algorithms. In Proceedings of the European Conference on Genetic Programming, Leipzig, Germany, 24–26 April 2019; pp. 262–277. [Google Scholar]
- Carlet, C.; Djurasevic, M.; Jakobovic, D.; Mariot, L.; Picek, S. Evolving constructions for balanced, highly nonlinear boolean functions. In Proceedings of the Genetic and Evolutionary Computation Conference, Boston, MA, USA, 9–13 July 2022; pp. 1147–1155. [Google Scholar]
- Asthana, R.; Verma, N.; Ratan, R. Generation of Boolean functions using Genetic Algorithm for cryptographic applications. In Proceedings of the 2014 IEEE International Advance Computing Conference (IACC), Gurgaon, India, 21–22 February 2014; pp. 1361–1366. [Google Scholar]
- Aguirre, H.; Okazaki, H.; Fuwa, Y. An evolutionary multiobjective approach to design highly non-linear boolean functions. In Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation, London, UK, 7–11 July 2007; p. 7. [Google Scholar]
- Carlet, C. Boolean Functions for Cryptography and Coding Theory; Cambridge University Press: Cambridge, UK, 2021. [Google Scholar]
- Clark, J.A.; Jacob, J.L.; Maitra, S.; Stănică, P. Almost Boolean functions: The design of Boolean functions by spectral inversion. Comput. Intell.
**2004**, 20, 450–462. [Google Scholar] [CrossRef] - Carlet, C.; Crama, Y.; Hammer, P.L. Boolean Functions for Cryptography and Error-Correcting Codes; Cambridge University Press: Cambridge, UK, 2010. [Google Scholar]
- Rothaus, O.S. On “bent” functions. J. Comb. Theory Ser. A
**1976**, 20, 300–305. [Google Scholar] [CrossRef] - McFarland, R.L. A family of difference sets in non-cyclic groups. J. Comb. Theory Ser. A
**1973**, 15, 1–10. [Google Scholar] [CrossRef] - Mesnager, S. Bent Functions; Springer: Berlin/Heidelberg, Germany, 2016; Volume 1. [Google Scholar]
- Li, N.; Qu, L.; Qi, W.F.; Feng, G.; Li, C.; Xie, D. On the construction of Boolean functions with optimal algebraic immunity. IEEE Trans. Inf. Theory
**2008**, 54, 1330–1334. [Google Scholar] [CrossRef] - Chen, Y.; Lu, P. Two classes of symmetric Boolean functions with optimum algebraic immunity: Construction and analysis. IEEE Trans. Inf. Theory
**2011**, 57, 2522–2538. [Google Scholar] [CrossRef] - Tu, Z.; Deng, Y. A conjecture about binary strings and its applications on constructing Boolean functions with optimal algebraic immunity. Des. Codes Cryptogr.
**2011**, 60, 1–14. [Google Scholar] [CrossRef] - Burnett, L.; Millan, W.; Dawson, E.; Clark, A. Simpler methods for generating better Boolean functions with good cryptographic properties. Australas. J. Comb.
**2004**, 29, 231–248. [Google Scholar] - Clark, J.A.; Jacob, J.L.; Stepney, S.; Maitra, S.; Millan, W. Evolving Boolean functions satisfying multiple criteria. In Proceedings of the International Conference on Cryptology in India, Hyderabad, India, 16–18 December 2002; pp. 246–259. [Google Scholar]
- Kirkpatrick, S.; Gelatt, C.D., Jr.; Vecchi, M.P. Optimization by simulated annealing. Science
**1983**, 220, 671–680. [Google Scholar] [CrossRef] - López-López, I.; Sosa-Gómez, G.; Segura, C.; Oliva, D.; Rojas, O. Metaheuristics in the optimization of cryptographic Boolean functions. Entropy
**2020**, 22, 1052. [Google Scholar] [CrossRef] [PubMed] - Knežević, K. Combinatorial optimization in cryptography. In Proceedings of the 2017 40th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, Croatia, 22–26 May 2017; pp. 1324–1330. [Google Scholar]
- Millan, W.; Clark, A.; Dawson, E. Heuristic design of cryptographically strong balanced Boolean functions. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Espoo, Finland, 31 May–4 June 1998; pp. 489–499. [Google Scholar]
- Zheng, Y.; Zhang, X.M. Plateaued functions. In Proceedings of the International Conference on Information and Communications Security, Sydney, NSW, Australia, 9–11 November 1999; pp. 284–300. [Google Scholar]
- Mariot, L.; Leporati, A. Heuristic search by particle swarm optimization of boolean functions for cryptographic applications. In Proceedings of the Companion Publication of the 2015 Annual Conference on Genetic and Evolutionary Computation, Madrid, Spain, 11–15 July 2015; pp. 1425–1426. [Google Scholar]
- Behera, P.K.; Gangopadhyay, S. An improved hybrid genetic algorithm to construct balanced Boolean function with optimal cryptographic properties. Evol. Intell.
**2022**, 15, 639–653. [Google Scholar] [CrossRef] - Dimovski, A.; Gligoroski, D. Generating highly nonlinear Boolean functions using a genetic algorithm. In Proceedings of the 6th International Conference on Telecommunications in Modern Satellite, Cable and Broadcasting Service, Nis, Yugoslavia, 1–3 October 2003; Volume 2, pp. 604–607. [Google Scholar]
- Koza, J.R. Genetic programming as a means for programming computers by natural selection. Stat. Comput.
**1994**, 4, 87–112. [Google Scholar] [CrossRef] - Picek, S.; Jakobovic, D.; Golub, M. Evolving cryptographically sound boolean functions. In Proceedings of the 15th Annual Conference Companion on Genetic and Evolutionary Computation, Amsterdam, The Netherlands, 6–10 July 2013; pp. 191–192. [Google Scholar]
- Hrbacek, R.; Dvorak, V. Bent function synthesis by means of Cartesian genetic programming. In Proceedings of the International Conference on Parallel Problem Solving from Nature, Ljubljana, Slovenia, 13–17 September 2014; pp. 414–423. [Google Scholar]
- Husa, J.; Dobai, R. Designing bent boolean functions with parallelized linear genetic programming. In Proceedings of the Genetic and Evolutionary Computation Conference Companion, Berlin, Germany, 15–19 July 2017; pp. 1825–1832. [Google Scholar]
- Husa, J. Comparison of genetic programming methods on design of cryptographic boolean functions. In Proceedings of the European Conference on Genetic Programming, Leipzig, Germany, 24–26 April 2019; pp. 228–244. [Google Scholar]
- Picek, S.; Marchiori, E.; Batina, L.; Jakobovic, D. Combining evolutionary computation and algebraic constructions to find cryptography-relevant Boolean functions. In Proceedings of the Parallel Problem Solving from Nature–PPSN XIII: 13th International Conference, Ljubljana, Slovenia, 13–17 September 2014; Proceedings 13. Springer: Berlin/Heidelberg, Germany, 2014; pp. 822–831. [Google Scholar]
- Carlet, C.; Jakobovic, D.; Picek, S. Evolutionary algorithms-assisted construction of cryptographic boolean functions. In Proceedings of the Genetic and Evolutionary Computation Conference, Lille, France, 10–14 July 2021; pp. 565–573. [Google Scholar]
- Rovito, L.; De Lorenzo, A.; Manzoni, L. Evolution of Walsh Transforms with Genetic Programming. In Proceedings of the Companion Conference on Genetic and Evolutionary Computation, Lisbon, Portugal, 15–19 July 2023; GECCO ’23 Companion. pp. 2386–2389. [Google Scholar] [CrossRef]
- Shannon, C.E. Communication theory of secrecy systems. Bell Syst. Tech. J.
**1949**, 28, 656–715. [Google Scholar] [CrossRef] - Brent, R.P. Some long-period random number generators using shifts and xors. ANZIAM J.
**2006**, 48, C188–C202. [Google Scholar] [CrossRef] - Barker, E.B.; Kelsey, J.M. Recommendation for Random Number Generation Using Deterministic Random Bit Generators (Revised); US Department of Commerce, Technology Administration, National Institute of Standards and Technology, Computer Security Division, Information Technology Laboratory: Gaithersburg, MD, USA, 2007. [Google Scholar]
- Vernam, G.S. Cipher printing telegraph systems: For secret wire and radio telegraphic communications. J. AIEE
**1926**, 45, 109–115. [Google Scholar] - Cusick, T.W.; Stanica, P. Chapter 2—Fourier Analysis of Boolean Functions. In Cryptographic Boolean Functions and Applications, 2nd ed.; Cusick, T.W., Stanica, P., Eds.; Academic Press: Cambridge, MA, USA, 2017; pp. 7–29. [Google Scholar] [CrossRef]
- Becker, M.; Desoky, A. A study of the DVD content scrambling system (CSS) algorithm. In Proceedings of the Fourth IEEE International Symposium on Signal Processing and Information Technology, Rome, Italy, 18–21 December 2004; pp. 353–356. [Google Scholar]
- Cohen, G.D.; Litsyn, S.N. On the covering radius of Reed-Muller codes. Discret. Math.
**1992**, 106, 147–155. [Google Scholar] [CrossRef] - Hou, X.D. On the norm and covering radius of the first-order Reed-Muller codes. IEEE Trans. Inf. Theory
**1997**, 43, 1025–1027. [Google Scholar] - Blank, J.; Deb, K. pymoo: Multi-Objective Optimization in Python. IEEE Access
**2020**, 8, 89497–89509. [Google Scholar] [CrossRef] - Wilcoxon, F. Individual Comparisons by Ranking Methods; Springer: Berlin/Heidelberg, Germany, 1992. [Google Scholar]

**Figure 2.**Architecture of the Vernam cipher (K = Key, EK = Expanded Key, PT = Plain-Text, and CT = Cipher-Text).

**Figure 4.**Two examples of formulae (trees) related to ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N},\mathsf{ERC}}$.

**Figure 6.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{B}}$.

**Figure 7.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{B},\mathsf{ERC}}$.

**Figure 8.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N}}$.

**Figure 9.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N},\mathsf{ERC}}$.

**Figure 10.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{P}}$.

**Figure 11.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{P},\mathsf{ERC}}$.

**Figure 12.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{2}}^{\mathsf{B}}$.

**Figure 13.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{2}}^{\mathsf{B},\mathsf{ERC}}$.

**Figure 14.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{2}}^{\mathsf{N}}$.

**Figure 15.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{2}}^{\mathsf{N},\mathsf{ERC}}$.

**Figure 16.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{2}}^{\mathsf{P}}$.

**Figure 17.**Box-plot with comparison between GP and RS with ${\mathcal{S}}_{\mathsf{F}\mathsf{2}}^{\mathsf{P},\mathsf{ERC}}$.

**Figure 18.**Trend of the mean uncertainty position percentage across the generations of several GP evolutions.

**Table 1.**Table that details the mean ($\mu $) and standard deviation ($\sigma $) of the balancedness degree belonging to the best individuals. The p-values of the Wilcoxon test [48] are detailed as well. The results are based on GP with ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N},\mathsf{ERC}}$ as the tree structure.

n | Biased | Unbiased | p-Value |
---|---|---|---|

$\mu \phantom{\rule{4pt}{0ex}}\pm \phantom{\rule{4pt}{0ex}}\sigma $ | $\mu \phantom{\rule{4pt}{0ex}}\pm \phantom{\rule{4pt}{0ex}}\sigma $ | ||

6 | 0.53 ± 2.0 | 7.53 ± 2.12 | 0.0 |

7 | 0.0 ± 0.0 | 9.86 ± 5.34 | 0.0 |

8 | 0.0 ± 0.0 | 15.67 ± 6.95 | 0.0 |

9 | 0.0 ± 0.0 | 24.03 ± 10.42 | 0.0 |

10 | 0.0 ± 0.0 | 34.03 ± 19.28 | 0.0 |

11 | 0.0 ± 0.0 | 37.96 ± 21.88 | 0.0 |

12 | 0.0 ± 0.0 | 62.84 ± 44.66 | 0.0 |

13 | 0.0 ± 0.0 | 78.07 ± 42.94 | 0.0 |

14 | 0.0 ± 0.0 | 94.27 ± 67.75 | 0.0 |

15 | 0.0 ± 0.0 | 137.8 ± 107.01 | 0.0 |

16 | 0.0 ± 0.0 | 278.87 ± 185.31 | 0.0 |

**Table 2.**Table that details the mean ($\mu $) and standard deviation ($\sigma $) of the balancedness degree belonging to the best individuals. The p-values of the Wilcoxon test [48] are detailed as well. The results are based on GP with ${\mathcal{S}}_{\mathsf{F}\mathsf{1}}^{\mathsf{N}}$ as tree structure.

n | Biased | Unbiased | p-Value |
---|---|---|---|

$\mu \phantom{\rule{4pt}{0ex}}\pm \phantom{\rule{4pt}{0ex}}\sigma $ | $\mu \phantom{\rule{4pt}{0ex}}\pm \phantom{\rule{4pt}{0ex}}\sigma $ | ||

6 | 0.0 ± 0.0 | 7.03 ± 2.36 | 0.0 |

7 | 0.0 ± 0.0 | 9.89 ± 4.07 | 0.0 |

8 | 0.0 ± 0.0 | 17.47 ± 8.2 | 0.0 |

9 | 0.0 ± 0.0 | 26.22 ± 11.89 | 0.0 |

10 | 0.0 ± 0.0 | 34.8 ± 17.59 | 0.0 |

11 | 0.0 ± 0.0 | 46.48 ± 29.98 | 0.0 |

12 | 0.0 ± 0.0 | 50.8 ± 38.46 | 0.0 |

13 | 0.0 ± 0.0 | 95.2 ± 69.43 | 0.0 |

14 | 0.0 ± 0.0 | 101.38 ± 60.62 | 0.0 |

15 | 0.0 ± 0.0 | 178.51 ± 128.97 | 0.0 |

16 | 0.0 ± 0.0 | 304.38 ± 218.25 | 0.0 |

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |

© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Rovito, L.; De Lorenzo, A.; Manzoni, L.
Discovering Non-Linear Boolean Functions by Evolving Walsh Transforms with Genetic Programming. *Algorithms* **2023**, *16*, 499.
https://doi.org/10.3390/a16110499

**AMA Style**

Rovito L, De Lorenzo A, Manzoni L.
Discovering Non-Linear Boolean Functions by Evolving Walsh Transforms with Genetic Programming. *Algorithms*. 2023; 16(11):499.
https://doi.org/10.3390/a16110499

**Chicago/Turabian Style**

Rovito, Luigi, Andrea De Lorenzo, and Luca Manzoni.
2023. "Discovering Non-Linear Boolean Functions by Evolving Walsh Transforms with Genetic Programming" *Algorithms* 16, no. 11: 499.
https://doi.org/10.3390/a16110499