Boolean Function Evaluation Using Differential XOR Accumulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing processing systems face challenges in efficiently evaluating Boolean functions due to their complex nature, which impacts performance and computational complexity, particularly with techniques like tabulation and transformation methods such as Algebraic Normal Form (ANF), Conjunctive Normal Form (CNF), and Disjunctive Normal Form (DNF).
Innovation Solution
A processing system employing a differential calculation unit, accumulation unit, and XOR adder to evaluate Boolean functions using the Guilley Transform, which involves calculating differentials and accumulating products using the XOR operator, allowing for efficient evaluation of Boolean functions through a hardware circuit implementation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If tabulation technique is used to evaluate Boolean functions, then evaluation can be performed by looking up pre-computed values, but memory requirements become excessively large due to the need to store complete truth tables
Solution Approach 1:
The patent segments the Boolean function evaluation process into two distinct phases: a pre-computation phase where a compact differential table is generated, and an evaluation phase where the function is computed using XOR operations on selected table entries. This segmentation allows the system to store only essential differential information rather than complete truth tables, dramatically reducing memory requirements while maintaining fast evaluation capability.
Solution Approach 2:
The patent performs preliminary computation of differential values Δf(y) = f(y) ⊕ f(y-1) and stores them in a compact table before actual function evaluation. This preliminary action transforms the function into a form that requires minimal storage during runtime, as only the differential table and input value are needed to compute the result through XOR operations, avoiding the need to store entire truth tables.
2Ease of manufacture
If transformation techniques such as ANF, CNF, or DNF are used to evaluate Boolean functions, then systematic evaluation is achieved, but computational complexity increases due to evaluation in unnatural vector bases requiring monomial, maxterm, or minterm calculations
Solution Approach 1:
The patent changes the parameter representation from traditional Boolean algebraic forms (monomials, maxterms, minterms) to differential values Δf(y). This parameter transformation allows the function to be expressed as f(x) = f(0) ⊕ ⊕(y:Δf(y)=1)cy(x,y), where cy(x,y) are carry functions from arithmetic addition. This parameter change simplifies the computational structure by leveraging natural arithmetic operations instead of complex algebraic transformations.
Solution Approach 2:
The patent substitutes the mechanical algebraic manipulation required by ANF/CNF/DNF transformations with arithmetic addition and XOR operations. Instead of systematically transforming and evaluating complex algebraic expressions, the system uses the carry functions from standard arithmetic addition, which are naturally optimized in hardware, thereby reducing computational complexity while maintaining systematic evaluation capability.
3Adaptability or versatility
If conventional Boolean function evaluation methods are used, then existing processing capabilities are utilized, but performance is degraded due to the inherently complex nature of Boolean function evaluations
Solution Approach 1:
The patent makes the processing system serve itself by leveraging its built-in arithmetic addition capability to perform Boolean function evaluation. The carry functions cy(x,y) from arithmetic addition are directly utilized without requiring external specialized hardware or complex transformation logic. This self-service approach allows existing general-purpose processors to efficiently evaluate Boolean functions using their native arithmetic operations, improving performance while maintaining full compatibility with existing systems.
Data Source
AI summary
A processing system configured to execute one or more processing operations, the execution of the one or more processing operations involving the evaluation of at least one Boolean function. The processing system includes an evaluation device configured to evaluate each Boolean function ƒ defined from 2n over 2, in a variable x of length n over 2n. The evaluation device includes: a differential calculation unit configured to calculate differentials Δƒ(y)=ƒ(y)⊕ƒ(y−1) for each integer intermediary variable y ranging from 1 to 2n−1; an accumulation unit configured to sum, using the XOR operator, the product of the differential Δƒ(y) and cn2<sup2>n</sup2>−y(x) for each value of y ranging from 1 to 2n−1, according to the following XOR accumulation term ⊕y=12<sup2>n</sup2>−1(Δƒ(y))cn2<sup2>n</sup2>−y(x), where cnz(x) is the function associating x to the outbound carry of arithmetic summation x+z; a XOR adder configured to add ƒ(0) to the result of the accumulation unit, wherein the output of the XOR adder provides the result of the evaluation of the Boolean function ƒ.


