Fact-checked by Grok 2 weeks ago

Algebraic normal form

Algebraic normal form (ANF) is a canonical polynomial representation of any Boolean function on n variables as a multivariate polynomial over the finite field \mathbb{F}_2 (the field with two elements, where addition is XOR and multiplication is AND), in which each variable appears with degree at most 1 and the polynomial is unique for each function. This form expresses the function f: \mathbb{F}_2^n \to \mathbb{F}_2 as f(x_1, \dots, x_n) = \sum_{u \in \mathbb{F}_2^n} a_u \prod_{i: u_i=1} x_i, where coefficients a_u \in \mathbb{F}_2 are determined by a_u = \bigoplus_{x \preceq u} f(x) via the Möbius inversion over the Boolean lattice, with \preceq denoting componentwise inequality and \bigoplus denoting summation modulo 2. The ANF can be computed from the truth table of the function in O(n 2^n) time using fast Möbius transforms, making it efficient for small n. Introduced by the Soviet mathematician Ivan Zhegalkin in 1927 as a way to represent operations via ordinary polynomials modulo 2, the ANF—often called the in mathematical literature—provides a bridge between and polynomial algebra over \mathbb{F}_2. A key property is that the algebraic degree of the , defined as the maximum number of variables in any with nonzero a_u \neq 0 (i.e., the maximum of such u), directly influences the function's complexity and strength; for instance, the constant zero function has degree -1 by convention. The representation is affine-invariant, meaning it remains structurally similar under affine transformations of the input variables, which aids in classifying functions up to equivalence. In applications, the ANF is fundamental in for analyzing stream ciphers, block ciphers, and S-boxes, as it facilitates algebraic attacks that exploit low-degree equations to recover keys; higher-degree ANFs enhance resistance to such attacks. It also appears in , particularly in Reed-Muller codes where codewords correspond to evaluations of low-degree ANF polynomials, and in studies to measure multiplicative complexity via the number of AND gates needed. For example, the ANF of the Boolean function with truth table [0,1,1,0,1,0,1,1] on three variables is x_0 x_1 x_2 + x_0 + x_1 x_2 + x_1 + x_2, illustrating how disjunctive normal forms can be converted to this modulo 2.

Fundamentals

Definition

The algebraic normal form (ANF) of a Boolean function is a canonical polynomial representation over the finite field GF(2), expressed as a sum of product terms where each variable appears at most once (degree at most 1 per variable) and coefficients are elements of {0,1}, with arithmetic performed modulo 2—addition as exclusive-or (XOR) and multiplication as logical AND. This form leverages the structure of Boolean algebra interpreted in GF(2), where the ring of polynomials is quotiented by the ideal generated by x_i^2 + x_i for each variable x_i, enforcing idempotence (x_i^2 = x_i) and ensuring no higher-degree terms arise. Formally, for a Boolean function f: \{0,1\}^n \to \{0,1\}, its ANF is given by f(x_1, \dots, x_n) = \sum_{S \subseteq } a_S \prod_{i \in S} x_i, where = \{1, \dots, n\}, each a_S \in \mathrm{GF}(2), the sum is modulo 2 (i.e., XOR over all terms with a_S = 1), and the product is over distinct variables. The coefficients a_S are uniquely determined by the function f, making the ANF a unique representation for any Boolean function. In this modulo 2 semantics, Boolean absorption laws hold in a compatible way, which simplifies polynomial reductions. For example, the function f(x) = x \oplus 1 has ANF x + 1 (modulo 2), where the constant term 1 corresponds to the flipped output at x=0. This contrasts briefly with , which uses OR instead of XOR for summation.

Basic Properties

The algebraic normal form (ANF) of a provides a unique representation over the field \mathbb{F}_2. Specifically, every f: \mathbb{F}_2^n \to \mathbb{F}_2 can be expressed uniquely as f(\mathbf{x}) = \sum_{I \subseteq \{1, \dots, n\}} a_I \prod_{i \in I} x_i, where the coefficients a_I \in \mathbb{F}_2 are determined by the applied to the of f, ensuring a one-to-one correspondence between functions and their ANF . The of a f, denoted \deg(f), is defined as the maximum size of the support of any with nonzero in its ANF, i.e., \deg(f) = \max \{ |I| : a_I = [1](/page/1) \}. This captures the nonlinearity of f; for instance, linear functions such as f(x_1, x_2) = x_1 + x_2 have 1, while functions like f(x_1, x_2) = x_1 x_2 + x_1 have 2, influencing properties such as to linear approximations in cryptographic contexts. The ANF representation is algebraically closed under the operations of XOR (addition in \mathbb{F}_2) and AND (multiplication in \mathbb{F}_2). The ANF of the XOR of two functions f \oplus g is the component-wise sum of their ANF coefficients modulo 2, while the ANF of f \cdot g is the convolution of their coefficient vectors, preserving the multilinear structure without higher powers. This closure enables polynomial-time computation of the ANF for compositions involving these operations, facilitating efficient analysis in applications like circuit synthesis and cryptographic evaluations. The of a f in its ANF is the set of variables \{ i : \exists I \ni i \text{ with } a_I = 1 \}, representing the variables that appear in at least one nonzero and determining the effective dimensionality of f. Algebraic immunity measures the resistance of f to algebraic attacks and is defined as the smallest d such that there exists a nonzero g of degree at most d satisfying either f \cdot g = 0 or (f + 1) \cdot g = 0 (where all operations are in \mathbb{F}_2). High algebraic immunity, ideally \lceil n/2 \rceil, ensures no low-degree annihilates f or its complement, enhancing security against attacks that exploit such relations in the ANF.

Representation

Univariate Case

In the univariate case, where a f: \mathbb{F}_2 \to \mathbb{F}_2 depends on a single variable x, the algebraic normal form (ANF) simplifies to an affine of the form f(x) = a_0 \oplus a_1 x, with coefficients a_0, a_1 \in \mathbb{F}_2. This representation captures all possible univariate functions, of which there are exactly four, each corresponding to a unique with two entries: f(0) and f(1). Basic univariate functions have straightforward ANFs. The constant function f(x) = 0 is represented by the empty sum (or simply 0). The constant function f(x) = 1 is represented by 1. The f(x) = x is represented by x. The function \neg x (or f(x) = 1 \oplus x) is represented by $1 \oplus x. The coefficients in the univariate ANF can be computed using the over \mathbb{F}_2, where the coefficient a_k for the x^k (with k \leq 1) is given by a_k = \bigoplus_{j=0}^k (-1)^{k-j} f(j). Since operations are in \mathbb{F}_2, where -1 = 1, this simplifies to direct mappings: a_0 = f(0) and a_1 = f(0) \oplus f(1). The following table visualizes the mapping from truth tables to ANFs for all four possible univariate Boolean functions:
Truth Table [f(0), f(1)]ANF RepresentationDescriptionDegree
[0, 0]$0Constant 0-1
[1, 1]$1Constant 0
[0, 1]x1
[1, 0]$1 \oplus x1
All univariate ANFs are affine, meaning their algebraic is at most 1, with no higher- monomials possible due to the single variable.

Multivariate Case

In the multivariate case, the algebraic normal form (ANF) of a f: \mathbb{F}_2^n \to \mathbb{F}_2 extends the univariate representation by expressing f as a unique over \mathbb{F}_2 in n variables, where each term is a corresponding to a product of distinct variables. Specifically, f(x_1, \dots, x_n) = \sum_{u \in \mathbb{F}_2^n} a_u \prod_{i=1}^n x_i^{u_i}, with coefficients a_u \in \mathbb{F}_2, and since x_i^2 = x_i in \mathbb{F}_2[x_i]/(x_i^2 - x_i), higher powers reduce, making each a square-free product over a S \subseteq \{1, \dots, n\}, such as x_1 x_2 x_4 for S = \{1,2,4\}. This representation captures interactions among variables through the supports of non-zero monomials, with the algebraic defined as the maximum of such supports. The ANF can be derived recursively by fixing one variable and differencing. For a function f(x_1, \dots, x_n), it decomposes as f(x_1, \dots, x_n) = f(0, x_2, \dots, x_n) \oplus x_1 \cdot (f(1, x_2, \dots, x_n) \oplus f(0, x_2, \dots, x_n)), where the first term is the ANF over n-1 variables with x_1 = 0, and the second is x_1 times the ANF of the first-order difference operator \Delta_{x_1} f = f(1, x_2, \dots, x_n) \oplus f(0, x_2, \dots, x_n), which has degree at most one less than that of f. Higher-order terms arise from iterated differencing over subsets, with coefficients a_u = \bigoplus_{v \leq u} f(v), where \leq denotes componentwise inequality in \mathbb{F}_2^n. This recursive structure builds the full multivariate polynomial from lower-dimensional slices. For symmetric Boolean functions, which depend only on the of the input, the ANF takes a particularly structured form as a sum of elementary symmetric polynomials. A representative example is the on 3 variables, \mathrm{maj}(x_1, x_2, x_3), which outputs 1 if at least two inputs are 1; its ANF is x_1 x_2 \oplus x_1 x_3 \oplus x_2 x_3. This quadratic form highlights the pairwise interactions without higher-degree terms, and evaluating it confirms the function values: 0 for inputs with fewer than two 1s, and 1 otherwise (noting that the three quadratic terms sum to 1 modulo 2 when all inputs are 1). Such examples illustrate how ANF concisely encodes symmetric dependencies in multivariate settings. The structure of the ANF reveals variable influences and dependencies through the supports of monomials with non-zero coefficients: a variable x_i influences f if it appears in at least one such monomial, while the size and overlap of supports indicate the strength and nature of interactions (e.g., linear terms for individual influences, quadratic for pairwise). Non-zero a_u \neq 0 for | \mathrm{supp}(u) | = k signifies a degree-k dependency among those variables, aiding analysis of function complexity and resilience in applications like cryptography.

Conversion Methods

From Truth Tables

The truth table of a f: \{0,1\}^n \to \{0,1\} consists of $2^n rows, each corresponding to an input vector \mathbf{x} \in \{0,1\}^n (typically ordered lexicographically), with entries giving the output values f(\mathbf{x}). This tabular representation serves as the starting point for deriving the algebraic normal form (ANF), where the goal is to compute the coefficients a_S \in \{0,1\} for each \prod_{i \in S} x_i with S \subseteq . The forward differencing algorithm computes these coefficients via the Möbius inversion formula on the Boolean lattice:
a_S = \bigoplus_{T \subseteq S} f(T),
where T is interpreted as the input vector with 1s exactly in the positions indexed by T, and \bigoplus denotes summation modulo 2 (XOR over the relevant entries). This equates to the parity of the number of subsets T \subseteq S where f(T) = 1. The naive implementation iterates over all $2^n subsets S and, for each, XORs the $2^{|S|} values f(T) for T \subseteq S, yielding a time complexity of O(3^n) operations, since the total subset pairs sum to $3^n.
A more efficient approach is the , which computes all coefficients in O(n \cdot 2^n) time through iterative in-place XOR operations across variable dimensions, exploiting the structure. This method is analogous to the and is practical for n up to 20–30 on standard hardware, as the exponential $2^n factor limits scalability for larger n, though the linear n prefactor provides significant speedup over naive methods for moderate sizes. The algorithm proceeds as follows in (assuming 0-based indexing and the stored in A of size $2^n, with index k representing the binary vector for input k):
function fast_mobius_transform(A, n):
    for i in 0 to n-1:  // for each [variable](/page/Variable) dimension
        step = 1 << (i + 1)  // 2^{i+1}
        half = 1 << i        // 2^i
        for j in 0 to (1<<n)-1 step step:
            for k in 0 to half-1:
                idx_low = j + k
                idx_high = j + k + half
                A[idx_high] = A[idx_low] XOR A[idx_high]
    return A  // Now A[k] = a_S where [binary](/page/Binary)(k) corresponds to S
After execution, A[k] holds a_S for the subset S whose vector is the binary representation of k. This transform is an over GF(2), meaning applying it twice recovers the original . To illustrate for n=2, consider the AND function f(x_1, x_2) = x_1 \land x_2, with truth table rows for inputs (x_1, x_2):
\begin{array}{c|c} (x_1, x_2) & f \\ \hline (0,0) & 0 \\ (0,1) & 0 \\ (1,0) & 0 \\ (1,1) & 1 \\ \end{array}
or compactly as [[0,0], [0,1]] (grouped by x_1). Initialize A = [0, 0, 0, 1] (indices 0: (0,0), 1: (0,1), 2: (1,0), 3: (1,1)).
For i=0 (first variable, half=1, step=2):
  • j=0: XOR A ^= A → 0 ^= 0 = 0
  • j=2: XOR A ^= A → 1 ^= 0 = 1
    Now A = [0, 0, 0, 1].
For i=1 (second variable, half=2, step=4):
  • j=0: XOR A ^= A → 0 ^= 0 = 0; A ^= A → 1 ^= 0 = 1
    Now A = [0, 0, 0, 1]. The coefficients are a_\emptyset = 0, a_{\{2\}} = 0, a_{\{1\}} = 0, a_{\{1,2\}} = 1, yielding ANF f(x_1, x_2) = x_1 x_2. This matches the monomial structure where only the full-support term is present.

From Disjunctive Normal Form

To convert a Boolean function given in disjunctive normal form (DNF) to algebraic normal form (ANF), the expression is interpreted over the field GF(2), where logical OR corresponds to addition modulo 2 (XOR) and logical AND corresponds to multiplication. Each term in the DNF, which is a conjunction of literals, is expanded into a polynomial by replacing negated variables \neg x_i with $1 + x_i (since \neg x_i \equiv 1 \oplus x_i in GF(2)) and positive variables x_i remain as is. The product is then distributed to yield a sum of monomials, and the entire DNF is the modulo 2 sum of these expanded terms across all clauses. Like terms are collected, and coefficients that appear an even number of times cancel out (equivalent to 0 modulo 2), resulting in the unique ANF representation. This process handles shared factors naturally through the modulo 2 arithmetic, as overlapping monomials from different clauses XOR their coefficients. For instance, consider the on two variables, whose DNF is x_1 \land \neg x_2 \lor \neg x_1 \land x_2. Substituting negations gives (x_1 (1 + x_2)) + ((1 + x_1) x_2) = x_1 + x_1 x_2 + x_2 + x_1 x_2, where the x_1 x_2 terms cancel modulo 2, yielding the ANF x_1 + x_2. This demonstrates how XOR summation in ANF resolves redundancies from shared variables in the DNF. The algorithm proceeds as follows: (1) Parse the DNF into its clauses, each a product of literals; (2) for each , replace \neg x_i with $1 + x_i and expand the resulting multilinear expression into using distributivity; (3) sum all expanded from all clauses modulo 2, tracking coefficients in a dictionary or array indexed by monomial supports; (4) retain only monomials with odd coefficients (1 modulo 2) in the final ANF. This direct expansion avoids enumeration and leverages the structure of the input DNF. In the worst case, the conversion has time and in the number of variables, as each clause with k negated literals expands to $2^k monomials, potentially leading to up to $2^n terms before . However, if the DNF is sparse (few clauses) or has low , the process is in the input size, making it efficient for practical cryptographic functions with structured DNF representations.

Operations

Algebraic Operations

Algebraic operations on algebraic normal forms (ANFs) of functions are performed in the of functions from \{0,1\}^n to , where corresponds to pointwise XOR and to pointwise AND. These operations preserve the ANF representation through manipulations of the coefficients and s. of two ANFs f(x) = \sum_{S \subseteq } c_S \prod_{i \in S} x_i and g(x) = \sum_{S \subseteq } d_S \prod_{i \in S} x_i is computed by XORing the s for each : the of \prod_{i \in S} x_i in f + g is c_S + d_S \pmod{2}. This operation is efficient, requiring a single pass over the monomials present in either representation. For instance, if f = x_1 + x_2 and g = x_1, then f + g = x_2. Multiplication of ANFs is more involved, as it requires accounting for the ring structure where x_i^2 = x_i. The product f \cdot g has ANF given by summing over all pairs of monomials: (f \cdot g)(x) = \sum_{S, T \subseteq } c_S d_T \prod_{i \in S \cup T} x_i, with coefficients XORed modulo 2 for each resulting monomial after collecting . The support of the product monomial is the union of the supports of the input monomials, reflecting the x_i \cdot x_i = x_i. The algebraic satisfies \deg(f \cdot g) \leq \deg(f) + \deg(g). As an example, consider the linear ANFs f = x_1 + x_2 and g = x_1. The pairs yield:
  • x_1 \cdot x_1 = x_1 ( \{1\} \cup \{1\} = \{1\}),
  • x_2 \cdot x_1 = x_1 x_2 ( \{2\} \cup \{1\} = \{1,2\}).
Collecting terms gives the quadratic ANF f \cdot g = x_1 + x_1 x_2. To compute coefficients for a target with support W, sum (modulo 2) over all pairs (S, T) such that S \cup T = W. Scalar multiplication by elements of GF(2) is trivial: multiplying by 0 yields the zero function, while multiplying by 1 leaves the ANF unchanged. In sparse representations, where ANFs are stored as lists of non-zero monomials, addition requires merging supports and XORing coefficients, while multiplication involves generating all pairwise unions and aggregating coefficients, with complexity O(d^2) when the number of terms is bounded by the square of the degree.

Function Composition

The algebraic normal form (ANF) of the composition involving a Boolean function g: \mathbb{F}_2^k \times \mathbb{F}_2 \to \mathbb{F}_2 and f: \mathbb{F}_2^n \to \mathbb{F}_2, where the output of f is substituted into one input variable of g, is obtained by substituting the ANF polynomial representation of f into the ANF of g and expanding the resulting multivariate polynomial over \mathbb{F}_2, simplifying via the ring properties where addition is XOR and multiplication is AND. This substitution rule leverages the fact that ANF representations are unique polynomials modulo x_i^2 = x_i for each variable x_i, ensuring the expanded form remains in ANF after collecting like terms and discarding higher powers. For example, consider f(x_2, x_3) = x_2 \oplus x_3 (degree 1) and g(x_1, y) = x_1 y (degree 1, representing AND with x_1); the composition g(x_1, f(x_2, x_3)) = x_1 (x_2 \oplus x_3) expands directly to x_1 x_2 \oplus x_1 x_3 over \mathbb{F}_2, yielding an ANF of degree 2. In general, the algebraic degree of such a substituted composition is at most the product of the degrees of g and f, though cancellations in the expansion can reduce it. Direct substitution often results in an in the number of monomials during expansion, known as ANF bloat, which can make the representation impractical for functions with moderate degrees and many variables, as the support size may approach $2^n in the worst case. To mitigate this, an alternative is to first compute the of the composed function—potentially via evaluation of g on outputs of f—and then derive the ANF coefficients using the recursive operator from the multivariate representation, defined as \Delta_S f(x) = f(x) \oplus f(x \oplus e_S) for subset S with indicator vector e_S, iterated to obtain coefficients a_S = \Delta_S f(0). This approach avoids intermediate polynomial explosion but requires O(n 2^n) time overall. Such compositions in ANF are useful for analyzing circuit evaluations, where substituting gate functions preserves the polynomial structure for further algebraic manipulation.

Applications

In

Algebraic normal form (ANF) plays a central role in cryptographic analysis by representing Boolean functions underlying primitives like ciphers and boxes (S-boxes) as multivariate over , enabling the formulation of algebraic attacks that solve systems of equations for key recovery. These representations exploit the structure of ciphers where nonlinearity is introduced via low-degree , transforming into solving overdefined multivariate quadratic systems using methods like the . In stream ciphers based on linear feedback shift registers (LFSRs), the keystream is generated by filtering LFSR output through a nonlinear expressed in ANF; if this function has low algebraic degree, attackers can derive low-degree equations relating observed keystream bits to the LFSR . By multiplying the ANF by monomials to eliminate the nonlinearity (), the system reduces to linear equations over GF(2) solvable via , with complexity scaling as the square root of the internal size for typical designs. This vulnerability was first systematically demonstrated in 2003, building on earlier work from 2000 that introduced efficient solvers for such systems, revealing weaknesses in ciphers like those using combiners with . For block ciphers, ANF decomposes S-boxes into polynomial expressions to assess non-linearity and resistance to algebraic , where the overall is modeled as a system of multivariate equations incorporating key mixing and layers. Low-degree ANF terms in S-boxes allow attackers to set up or cubic equations exploitable by computations or variants of the algorithm, as shown in attacks on reduced-round using S-box representations to recover keys from multiple plaintext-ciphertext pairs. Courtois's , introduced in 2000, linearizes higher-degree equations by adding multiples, making it effective against ciphers with S-boxes of algebraic degree up to 3 or 4, though practical success depends on the number of variables and equations. A prominent example is the , whose ANF has algebraic degree 7, derived from its inversion structure, which resists low-degree algebraic attacks by requiring higher-order equation systems that are computationally infeasible to solve for full-round AES. Higher algebraic degree in S-box ANF enhances security by increasing the minimal degree of the resulting system, thereby raising the complexity of solving for the , as attacks like XL scale exponentially with degree. Algebraic immunity, defined as the smallest degree of a non-zero (a f such that f * g = 0 for the target g), serves as another key ; optimal immunity for n-variable functions is \lceil n/2 \rceil, ensuring no low-degree relations undermine the cipher's nonlinearity. These metrics guide S-box design to balance degree and immunity against algebraic threats.

In Boolean Circuit Design

In Boolean circuit design, the algebraic normal form (ANF) facilitates the of circuits by providing a representation that maps directly to XOR-AND structures. Each term in the ANF is implemented as an computing the of its variables (or their negations, though ANF typically uses uncomplemented variables), while the summation over GF(2) is realized via an XOR tree connecting these AND outputs. This approach yields efficient implementations for XOR-rich functions, such as those in arithmetic circuits, by avoiding redundant OR operations and leveraging the inherent parallelism of XOR networks to reduce overall gate count and propagation delay. The ANF corresponds to the Reed-Muller decomposition of a , where the complete expansion equates to the Reed-Muller code RM(m, m) for m variables, and lower-degree forms align with RM(r, m) for r < m; specifically, the linear ANF (degree 1) matches RM(1, m), which underpins error-correcting circuit designs by enabling built-in parity checks for fault detection in . To optimize ANF-based circuits, designers focus on minimizing the algebraic degree (highest ) or the support size (variables per ) of the representation, which directly lowers the literal count and gate complexity in descriptions—critical for resource-constrained environments like FPGAs, where reduced literals improve LUT packing and routing efficiency. Algebraic factoring, , and fixed-polarity conversions are common techniques to achieve these reductions without altering functionality. A representative example is the parity checker , whose ANF is the linear f(x_1, \dots, x_n) = x_1 \oplus x_2 \oplus \dots \oplus x_n, implementable as a balanced XOR that limits to two inputs per , thereby minimizing delay (logarithmic in n) and compared to a single multi-input XOR . Post-2000 tools such as (A for and ) enable ANF-based minimization through And-Inverter rewriting and resynthesis flows that detect and optimize XOR structures, supporting efficient multi-level for circuits derived from ANF specifications.

References

  1. [1]
    [PDF] Lecture Notes on Cryptographic Boolean Functions
    Definition 1.1 (Boolean function). A Boolean function of n variables is a ... Theorem 1.3 (Algebraic normal form). Let f be a Boolean function of n ...
  2. [2]
    [PDF] Algebraic normal form of a bent function: properties and restrictions
    Any Boolean function can be uniquely represented in its algebraic normal form ... Zhegalkin polynomial in honor of Ivan Zhegalkin (1869–1947), a mathematician who.
  3. [3]
    Boolean functions - Cryptography
    The algebraic degree of a Boolean function is defined as the degree of its algebraic normal form. ... Iterator through the values of a Boolean function. EXAMPLES:.
  4. [4]
    The Multiplicative Complexity of 6-variable Boolean Functions - PMC
    This polynomial is called the algebraic normal form (ANF) of f. The degree ... Definition 6 A Boolean function f is computable by a topology T if it is ...<|control11|><|separator|>
  5. [5]
    [PDF] Boolean Functions for Cryptography and Error Correcting Codes
    Boolean Functions for Cryptography and Error. Correcting Codes. Claude Carlet∗. ∗LAGA, University of Paris 8, France; e-mail: claude.carlet@univ-paris8.fr. 1 ...
  6. [6]
    [PDF] Modifying Boolean Functions to Ensure Maximum Algebraic Immunity
    2 as supp(b) = {1 ≤ i ≤ n : bi = 1}. Any n-variable Boolean function f is uniquely expressed by the Algebraic Normal Form (ANF) as f(x) = X v∈Fn. 2 cvxv.
  7. [7]
    [PDF] Boolean Functions for Cryptography and Coding Theory - LAGA
    Page 1. Boolean Functions for. Cryptography and Coding. Theory. Claude Carlet,. University of Bergen, Norway, and University of Paris 8, France. E-mail: claude.
  8. [8]
    [PDF] On the computation of the Möbius transform - arXiv
    Apr 15, 2020 · In this work, we introduce a new al- gebraic point of view of this transformation based on the polynomial form of Boolean functions.
  9. [9]
    [PDF] ANALYSIS OF BOOLEAN FUNCTIONS Ryan O'Donnell
    The purpose of this May 2021 revision is to fix 100+ small typos and er- rors present in the first edition, and to make the result available on arXiv.
  10. [10]
    [PDF] Differential Cryptanalysis and Boolean Functions
    Such a representation is called the disjunctive normal form. ... This representation is called the algebraic normal form. ... There exists an easy conversion ...
  11. [11]
    [PDF] The boolfun Package : Cryptographic Properties of Boolean Functions
    2.2 Algebraic Normal Form . ... Computing the algebraic normal form. ... composition of boolean functions. In In Advances ...
  12. [12]
    Algebraic Attacks on Stream Ciphers with Linear Feedback
    Our new general algebraic attack breaks stream ciphers satisfying all the previously known design criteria in at most the square root of the complexity.
  13. [13]
    (PDF) Algebraic attacks on stream ciphers - ResearchGate
    Recently, a new kind of attack was added to this list. This generic scheme is called algebraic attack (e.g., Courtois, Meier [6], Armknecht, Krause [2] ). For ...
  14. [14]
    [PDF] Algebraic Immunity of S-boxes Based on Power Mappings
    Note that this mapping has zero bi-affine equations (see Theorem 3), is maximally nonlin- ear, has high algebraic degree and good uniform differential property.
  15. [15]
    Logic synthesis for arithmetic circuits using the Reed-Muller representation
    Insufficient relevant content. The provided URL (https://ieeexplore.ieee.org/document/205904) only displays a loading page and minimal metadata, lacking substantive information on Reed-Muller representation in logic synthesis for Boolean circuits or arithmetic circuits. No details on circuit extraction, optimization techniques, examples, or benefits (e.g., gate count, hardware) are available.
  16. [16]
    [PDF] Unit 19 Reed-Muller Canonical Form
    The multi input XOR gate structure can therefore be considered to be a parity generating circuit. If we want to obtain a circuit which will implement an AND/XOR ...
  17. [17]
    An efficient and fast polarity optimization approach for mixed polarity ...
    Mar 7, 2017 · An efficient and fast polarity optimization approach for mixed polarity Reed-Muller logic circuits. Research Article; Published: 07 March 2017.Missing: ANF | Show results with:ANF
  18. [18]
    ABC: A System for Sequential Synthesis and Verification
    ABC is a growing software system for synthesis and verification of binary sequential logic circuits appearing in synchronous hardware designs.