TL;DR: The OBDD data structure is described and a number of applications that have been solved by OBDd-based symbolic analysis are surveyed.
Abstract: Ordered Binary-Decision Diagrams (OBDDs) represent Boolean functions as directed acyclic graphs. They form a canonical representation, making testing of functional properties such as satisfiability and equivalence straightforward. A number of operations on Boolean functions can be implemented as graph algorithms on OBDD data structures. Using OBDDs, a wide variety of problems can be solved through symbolic analysis. First, the possible variations in system parameters and operating conditions are encoded with Boolean variables. Then the system is evaluated for all variations by a sequence of OBDD operations. Researchers have thus solved a number of problems in digital-system design, finite-state system analysis, artificial intelligence, and mathematical logic. This paper describes the OBDD data structure and surveys a number of applications that have been solved by OBDD-based symbolic analysis.
TL;DR: This paper characterize the degree of this polynomial in terms of certain combinatorial properties of the boolean function in order to establish a tight lower bound on the degree needed to represent any boolean function that depends on n variables.
Abstract: Every boolean function may be represented as a real polynomial. In this paper we characterize the degree of this polynomial in terms of certain combinatorial properties of the boolean function.Our first result is a tight lower bound of O(log n) on the degree needed to represent any boolean function that depends on n variables.Our second result states that for every boolean function f the following measures are all polynomially related:(1) The decision tree complexity of f. (2) The degree of the polynomial representing f. (3) The smallest degree of a polynomial approximating f in the Lmax norm.
TL;DR: The authors present efficient exact and approximate methods for solving weighted max-satisfiability and show that these methods are viable for large-scale problems through examination of experimental results.
Abstract: It is shown that a simplified model of power dissipation relates maximizing dissipation to maximizing gate output activity, appropriately weighted to account for differing load capacitances. To find the input or input sequence that minimizes the weighted activity, algorithms are given for transforming the problem to a weighted max-satisfiability problem, and exact and approximate algorithms for solving weighted max-satisfiability are presented. Algorithms for constructing the max-satisfiability problem for both dynamic and static CMOS, where for the latter dissipation caused by glitching is considered, are presented. The authors present efficient exact and approximate methods for solving weighted max-satisfiability and show that these methods are viable for large-scale problems through examination of experimental results. >
TL;DR: The authors show that implicit set manipulation techniques can also be used with success to compute and manipulate implicitly large sets of prime and of essential prime implicants of incompletely specified Boolean functions.
Abstract: Recently introduced implicit set manipulation techniques have made it possible to formally verify finite state machines with state graphs too large to be built. The authors show that these techniques can also be used with success to compute and manipulate implicitly large sets of prime and of essential prime implicants of incompletely specified Boolean functions. These sets are denoted by meta-products that are represented with binary decision diagrams (BDDs). Two procedures are described. The first is based on the standard BDD operators, and the second, more efficient, takes advantage of the structural properties of BDDs and of meta-products to handle a larger class of functions than the first procedure. >
TL;DR: Genetic algorithms (GAS) are used to generate neural networks that implement Boolean functions by using chromosomes that encode an algorithmic description based upon a cell rewriting grammar to give modular and interpretable architectures with a powerful scalability property.
Abstract: Genetic algorithms (GAS) are used to generate neural networks that implement Boolean functions. Neural networks both involve an architecture that is a graph of connections, and a set of weights. The algorithm that is put forward yields both the architecture and the weights by using chromosomes that encode an algorithmic description based upon a cell rewriting grammar. The developmental process interprets the grammar for l cycles and develops a neural net parametrized by l. The encoding along with the developmental process have been designed in order to improve the existing approaches. They implement the following key-properties. The representation on the chromosome is abstract and compact. Any chromosome develops a valid phenotype. The developmental process gives modular and interpretable architectures with a powerful scalability property. The GA finds a neural net for the 50 inputs parity function, and for the 40 inputs symmetry function. >
TL;DR: This paper studies the approximation of pseudo-Boolean functions by linear functions and more generally by functions of (at most) a specified degree and points out the relevance of linear approximations to game theory and shows that the well known Banzhaf power index and Shapley value are obtained as best linear approxIMations of the game.
Abstract: This paper studies the approximation of pseudo-Boolean functions by linear functions and more generally by functions of (at most) a specified degree. Here a pseudo-Boolean function means a real valued function defined on {0,1}
n
, and its degree is that of the unique multilinear polynomial that expresses it; linear functions are those of degree at most one. The approximation consists in choosing among all linear functions the one which is closest to a given function, where distance is measured by the Euclidean metric onR
2n
. A characterization of the best linear approximation is obtained in terms of the average value of the function and its first derivatives. This leads to an explicit formula for computing the approximation from the polynomial expression of the given function. These results are later generalized to handle approximations of higher degrees, and further results are obtained regarding the interaction of approximations of different degrees. For the linear case, a certain constrained version of the approximation problem is also studied. Special attention is given to some important properties of pseudo-Boolean functions and the extent to which they are preserved in the approximation. A separate section points out the relevance of linear approximations to game theory and shows that the well known Banzhaf power index and Shapley value are obtained as best linear approximations of the game (each in a suitably defined sense).
TL;DR: This paper introduces a new variant of this algorithm, where the Riemannian metric used for defining the search region is dynamically modified, and gives a method to synthesize a Boolean function that describes the sample.
Abstract: In this paper we describe an interior point mathematical programming approach to inductive inference. We list several versions of this problem and study in detail the formulation based on hidden Boolean logic. We consider the problem of identifying a hidden Boolean functionź:{0, 1}n ź {0, 1} using outputs obtained by applying a limited number of random inputs to the hidden function. Given this input--output sample, we give a method to synthesize a Boolean function that describes the sample. We pose the Boolean Function Synthesis Problem as a particular type of Satisfiability Problem. The Satisfiability Problem is translated into an integer programming feasibility problem, that is solved with an interior point algorithm for integer programming. A similar integer programming implementation has been used in a previous study to solve randomly generated instances of the Satisfiability Problem. In this paper we introduce a new variant of this algorithm, where the Riemannian metric used for defining the search region is dynamically modified. Computational results on 8-, 16- and 32-input, 1-output functions are presented. Our implementation successfully identified the majority of hidden functions in the experiment.
TL;DR: The authors present a new training algorithm to be used on a four-layer perceptron-type feedforward neural network for the generation of binary-to-binary mappings, derived from original principles of Boolean algebra followed by selected extensions.
Abstract: The authors present a new training algorithm to be used on a four-layer perceptron-type feedforward neural network for the generation of binary-to-binary mappings. This algorithm is called the Boolean-like training algorithm (BLTA) and is derived from original principles of Boolean algebra followed by selected extensions. The algorithm can be implemented on analog hardware, using a four-layer binary feedforward neural network (BFNN). The BLTA does not constitute a traditional circuit building technique. Indeed, the rules which govern the BLTA allow for generalization of data in the face of incompletely specified Boolean functions. When compared with techniques which employ descent methods, training times are greatly reduced in the case of the BLTA. Also, when the BFNN is used in conjunction with A/D converters, the applicability of the present algorithm can be extended to accept real-valued inputs. >
TL;DR: Three methods are developed: fast graph coloring to perform a quasi-optimum 'don't care' assignment; variable partitioning to quickly find the 'best' partitions; and local transformation to transform a nondecomposable function into several decomposable ones.
Abstract: An approach to the decomposition of incompletely specified Boolean functions is introduced, and its application to lookup-table-based field programmable gate array (FPGA) mapping is described. Three methods are developed: fast graph coloring to perform a quasi-optimum 'don't care' assignment; variable partitioning to quickly find the 'best' partitions; and local transformation to transform a nondecomposable function into several decomposable ones. The methods perform global optimization of the input function. A short description of a FPGA mapping program (TRADE) and an evaluation of its results are provided. >
TL;DR: A theoretical model for learning Boolean functions in domains having a large, potentially infinite number of attributes allows an algorithm to employ a rich vocabulary to describe the objects it encounters in the world without necessarily incurring time and space penalties so long as each individual object is relatively simple.
Abstract: This paper presents a theoretical model for learning Boolean functions in domains having a large, potentially infinite number of attributes. The model allows an algorithm to employ a rich vocabulary to describe the objects it encounters in the world without necessarily incurring time and space penalties so long as each individual object is relatively simple. We show that many of the basic Boolean functions learnable in standard theoretical models, such as conjunctions, disjunctions, K-CNF, and K-DNF, are still learnable in the new model, though by algorithms no longer quite so trivial as before. The new model forces algorithms for such classes to act in a manner that appears more natural for many learning scenarios.
TL;DR: The construction of cryptographically strong 5×5 S-boxes is described using near-bent boolean functions of five variables, where the number of variables is odd, and these functions possess highly desirable cryptographic properties and can be generated easily and systematically.
Abstract: While there is evidence that large substitution boxes (S-boxes) have better cryptographic properties than small S-boxes, they are much harder to design. The difficulty arises from the relative scarcity of suitable boolean functions as the size of the S-box increases. We describe the construction of cryptographically strong 5×5 S-boxes using near-bent boolean functions of five variables. These functions, where the number of variables is odd, possess highly desirable cryptographic properties and can be generated easily and systematically. Moreover, the S-boxes they compose are shown to satisfy all the important design criteria. Further, we feel that it is possible to generalize near-bent functions to any odd number of variables, thereby making construction of yet larger S-boxes feasible.
TL;DR: Fast exact and quasi-minimal algorithms for minimal fixed polarity AND/XOR canonical representation of Boolean functions and features of arrays of disjoint cubes representations of functions to identify the minimal networks are introduced.
Abstract: The authors introduce fast exact and quasi-minimal algorithms for minimal fixed polarity AND/XOR canonical representation of Boolean functions. The method uses features of arrays of disjoint cubes representations of functions to identify the minimal networks. These features can drastically reduce the search space and provide high quality heuristics for quasi-minimal representations. Experimental results show that these special AND/XOR networks, on the average, have a similar number of terms to Boolean AND/OR networks while there were functions for which AND/XOR circuits were much smaller. The circuits generated are much more testable. >
TL;DR: The algorithm and its implementation provide the fastest and most comprehensive program (having many options) known to the authors for the calculation of the Rademacher-Walsh transform.
Abstract: A theory has been developed to calculate the Rademacher-Walsh transform from a cube array specification of incompletely specified Boolean functions. The importance of representing Boolean functions as arrays of disjoint ON- and DC-cubes has been pointed out, and an efficient new algorithm to generate disjoint cubes from nondisjoint ones has been designed. The transform algorithm makes use of the properties of an array of disjoint cubes and allows the determination of the spectral coefficients in an independent way. The programs for both algorithms use advantages of C language to speed up the execution. The comparison of different versions of the algorithm has been carried out. The algorithm and its implementation provide the fastest and most comprehensive program (having many options) known to the authors for the calculation of the Rademacher-Walsh transform. It successfully overcomes all drawbacks in the calculation of the transform from the design automation system based on spectral method-the SPECSYS system from Drexel University, which uses fast Walsh transform. >
TL;DR: An algorithm for Boolean matching based on binary decision diagrams using a level-first search strategy is presented and it is shown how the matching algorithm and the filters can be extended to Boolean functions with don't cares.
Abstract: An algorithm for Boolean matching based on binary decision diagrams using a level-first search strategy is presented. This algorithm is generally not restricted to circuits with just a few inputs and can be used for both technology mapping and logic verification. Unlike depth-first and breadth-first strategies, a level-first strategy permits significant pruning of the search space. A set of filters that further improve the performance of the matching algorithm is described. A method of analyzing the effectiveness of a filter is presented, and the various filters are ranked on the basis of their effect/cost ratio. Experimental results on a number of benchmark circuits are presented, comparing the basic matching algorithm with and without the use of various filters. It is shown how the matching algorithm and the filters can be extended to Boolean functions with don't cares. >
TL;DR: This chapter discusses relationships between monotone and non-monotone network complexity, Boolean complexity and probabilistic constructions, and Networks computing Boolean functions for multiple input values in AC0.
Abstract: 1. Relationships between monotone and non-monotone network complexity 2. On read-once Boolean functions 3. Boolean function complexity: a lattice-theoretic perspective 4. Monotone complexity 5. On submodular complexity measures 6. Why is Boolean complexity so difficult? 7. The multiplicative complexity of Boolean quadratic forms 8. Some problems involving Razborov-Smolensky polynomials 9. Symmetry functions in AC0 10. Boolean complexity and probabilistic constructions 11. Networks computing Boolean functions for multiple input values 12. Optimal carry save networks.
TL;DR: In this paper, an algorithm for matching under input negations that takes time polynomial in the size of the BDDs representing the functions to be matched is proposed, and a simple mapper based on the algorithms was implemented and tested on a suite of combinational circuits.
Abstract: Efficient algorithms for performing the matching step in technology mapping are proposed. The main result is an algorithm for matching under input negations that takes time polynomial in the size of the BDDs representing the functions to be matched. This algorithm is the basis for efficient methods for matching under permutations, bridging and constant inputs. A simple mapper based on the algorithms was implemented and tested on a suite of combinational circuits. Using the Actel type 1 mother cell, the mapper required an average of 8.5% fewer cells than mispga. When integrated into a more sophisticated technology mapper, the matching algorithms could provide even better performance. >
TL;DR: The authors present efficient methods based upon the universal alignment theorem and binary decision diagrams to computed a synchronization sequence, to compute a tight lower bound for the length of such a sequence, and to check that an initial state given in the specification is a reset state.
Abstract: A synchronization sequence for a synchronous design D is a sequence of primary input vectors which when applied to any initial state of D will drive D to a single state, called a reset state. The authors present efficient methods based upon the universal alignment theorem and binary decision diagrams to compute a synchronization sequence, to compute a tight lower bound for the length of such a sequence, and to check that an initial state given in the specification is a reset state. It was shown in the experiments that the proposed method can handle fairly large circuits and the length of the actual synchronization sequence computed is quite close to the lower bound. >
TL;DR: A general lower bound on the number of examples required for allested hypotheses is obtained and it is proved that for any t ε Hn, there is exactly one set of examples of minimal cardinality.
Abstract: Some recent work [7, 14, 15] in computational learning theory has discussed learning in situations where the teacher is helpful, and can choose to present carefully chosen sequences of labelled examples to the learner. We say a function t in a set H of functions (a hypothesis space) defined on a set X is specified by S***X if the only function in H which agrees with t on S is t itself. The specification number s(t) of t is the least cardinality of such an S. For a general hypothesis space, we show that the specification number of any hypotheis is at least equal to a parameter from [14] known as the testing dimension of H. We investigate in some detail the specification numbers of hypotheses in the set Hn of linearly separable boolean functions: We present general methods for finding upper bounds on s(t) and we characterise those t which have largest s(t). We obtain a general lower bound on the number of examples required and we show that for all nested hypotheses, this lower bound is attained. We prove that for any t e Hn, there is exactly one set of examples of minimal cardinality (i.e., of cardinality s(t)) which specifies t. We then discuss those t e Hn which have limited dependence, in the sense that some of the variables are redundant (i.e., there are irrelevant attributes), giving tight upper and lower bounds on s(t) for such hypotheses. In the final section of the paper, we address the complexity of computing specification numbers and related parameters.
TL;DR: In this article, implicit set manipulation techniques have been used with success to compute and manipulate implicitly large sets of prime and essential prime implicants of incompletely specified Boolean functions, denoted by meta-products that are represented with binary decision diagrams (BDDs).
Abstract: Recently introduced implicit set manipulation techniques have made it possible to formally verify finite state machines with state graphs too large to be built The authors show that these techniques can also be used with success to compute and manipulate implicitly large sets of prime and of essential prime implicants of incompletely specified Boolean functions These sets are denoted by meta-products that are represented with binary decision diagrams (BDDs) Two procedures are described The first is based on the standard BDD operators, and the second, more efficient, takes advantage of the structural properties of BDDs and of meta-products to handle a larger class of functions than the first procedure
TL;DR: In this article, a method for exact hazard-free logic minimization of Boolean functions is described, given an incompletely specified Boolean function, the method produces a minimal sum-of-products implementation which is hazard free for a given set of multiple input changes.
Abstract: A method for exact hazard-free logic minimization of Boolean functions is described Given an incompletely specified Boolean function, the method produces a minimal sum-of-products implementation which is hazard-free for a given set of multiple-input changes, if such a solution exists The method is a constrained version of the Quine-McCluskey algorithm It has been automated and applied to a number of examples Results are compared with results of a comparable non-hazard-free method (espresso-exact) Overhead due to hazard elimination is shown to be negligible >
TL;DR: This work constructs a pseudo-random function generator that can be computed by shallow boolean circuits and shows that the class ofNC circuits can not be learned with n x n log log n samples for any c, showing cryptographic lower bounds on the number of samples and computational resources required.
Abstract: We investigate cryptographic lower bounds on the number of samples and on computational resources required to learn several classes of boolean circuits on the uniform distribution. Under the assumption that solving n x n1+e subset sum is hard, we construct (using the results of Impagliazzo and Naor [IN89] and Goldreich, Goldwasser, and Micali[GGM86] a pseudo-random function generator that can be computed by shallow boolean circuits. From this we conclude that learning AC1 circuits on the uniform distribution requires O(nlog log n) different samples, or, alternatively, that learning AC1 circuits on the uniform distribution with a polynomial number of samples is as hard as solving n x n1+e subset sum. We also show that no algorithm can learn NC1 circuits on the uniform distribution with a polynomial number of samples. Using the weaker assumption that solving n x (1+e)nsubset sum is hard, we show that the class of NC circuits can not be learned with nlogcn samples for any c.
TL;DR: An algorithm for matching under input negations that takes time polynomial in the size of the BDDs representing the functions to be matched is proposed, which is the basis for efficient methods for matched under permutations, bridging and constant inputs.
Abstract: We propose efficient new algorithms for performing the matching step in technology mapping. Our main result is an algorithm for matching under input negations that takes time polynomial in the size of the BDDs representing the functions to be matched. This algorithm is the basis for efficient methods for matching under permutations, bridging and constant inputs. We implemented a simple mapper based on our algorithms, and tested it on a suite of combinational circuits. Using the Actel type 1 mother cell, our mapper required an average of 8.5% fewer cells than mispga. When integrated into a more sophisticated technology mapper, we believe our matching algorithms could provide even better performance.
TL;DR: The indexed binary decision diagrams (IBDDs) as mentioned in this paper allow multiple occurrences of the input variables, subject to ordering constraints, and allow polynomial representations of functions which provably require exponential space using OBDDs.
Abstract: A central issue in the solution of many computer aided design problems is finding a concise representation for circuit designs and their functional specifications. Ordered binary decision diagrams (OBDDs) have recently emerged as a popular representation for various CAD applications such as design verification, synthesis, testing, modeling and simulation. Unfortunately, there is no efficient OBDD representation for many circuits, even in some cases for circuits which perform such apparently simple functions as multiplication. The authors present a new BDD representation scheme, called indexed BDDs (IBDDs), and show that it allows polynomial representations of functions which provably require exponential space using OBDDs. The key idea in IBDDs is to allow multiple occurrences of the input variables, subject to ordering constraints. The authors give an algorithm for verifying the equivalence of two IBDDs and a heuristic for constructing IBDDs for arbitrary combinational circuits. >
TL;DR: This work studies a conjecture stated in [6] about the numbers of non-zeros of, respectively, the auto-correlation function and the Walsh transform of the function (-l)f(x) where f( x) is any boolean (unction on {0, l}n) and introduces the class of partially-bent functions.
Abstract: We study a conjecture stated in [6] about the numbers of non-zeros of, respectively, the auto-correlation function and the Walsh transform of the function (-l)f(x) where f(x) is any boolean (unction on {0, l}n. The result that, we obtain leads us to introduce the class of partially-bent functions. We study within these functions the propagation criterion. We characterize those partially-bent functions which are balanced and prove a relation between their number (which is unknown) and the number of non-balanced partially-bent functions on {0.1}n-1. Eventually, we study their correlation immunity.
TL;DR: A new test generation technique for path delay faults in scan/hold type circuits is presented, which uses reduced ordered binary decision diagrams to represent Boolean functions implemented by the subcircuits in a circuit, as well as to represent the constraints to be satisfied by the delay fault test.
Abstract: A new test generation technique for path delay faults in scan/hold type circuits is presented. It uses reduced ordered binary decision diagrams to represent Boolean functions implemented by the subcircuits in a circuit, as well as to represent the constraints to be satisfied by the delay fault test. Two faults are considered for each path in the circuit under test and a pair of constraint functions, corresponding to the two time frames that constitute a transition, is evaluated for each fault. These constraints are then manipulated to obtain robust tests, if they exist; otherwise, nonrobust tests are obtained from the constraint functions, if they exist. An implementation of this technique was used to analyze delay fault testability of several ISCAS '89 benchmark circuits. >
TL;DR: Using general Binary Decision Diagrams, i.e. BDDs where input variables are allowed to appear multiple times along any path in the BDD, can be used to check for Boolean satisfiability, a much more powerful representation than reduced, ordered B DDs (OBDDs).
TL;DR: New techniques for automatically translating constructs like arithmetic, sequential control flow, and complex data structures into BDDs are presented and generate Boolean next-state relations in a form that allows efficient image computation without building the full BDD for the next- state relation, thereby side-stepping the commonly-encountered BDD-size blowup of next-State relations.
Abstract: Currently, many are investigating promising verification methods based on Boolean decision diagrams (BDDs). Using BDDs, however, requires modeling the system under verification in terms of Boolean formulas. This modeling can be difficult and error-prone, especially when dealing with constructs like arithmetic, sequential control flow, and complex data structures. We present new techniques for automatically translating these constructs into BDDs. Furthermore, these techniques generate Boolean next-state relations in a form that allows efficient image computation without building the full BDD for the next-state relation, thereby side-stepping the commonly-encountered BDD-size blowup of next-state relations.
TL;DR: The authors address the problem of how to realize a given combinational circuit described by means of Boolean equations using the minimum number of blocks of the target TLU table lookup architecture using a reduced ordered binary decision diagram of a subject function, using two techniques.
Abstract: The authors address the problem of how to realize a given combinational circuit described by means of Boolean equations using the minimum number of blocks of the target TLU table lookup architecture. Their Boolean decomposition scheme works directly on a reduced ordered binary decision diagram (ROBDD) of a subject function, using two techniques. The first, referred to as cutting, is an efficient implementation of Roth-Karp decomposition. The second technique is referred to as a substitution. The idea is to replace subgraphs of ROBDD by new variables. The substitution process is accompanied by certain reductions of the resulting ROBDD graph, which further decreases its size. >
TL;DR: Seberry and Zhang as discussed by the authors constructed 0-1 balanced boolean functions on Y2k+l (k 2: 1) having nonlinearity 22k 2k and satisfying SAC.
Abstract: Nonlinearity, 0-1 balancedness and strict avalanche criterion (SAC) are important criteria for cryptographic functions. Bent functions have maximum nonlinearity and satisfy SAC however they are not 01 balanced and hence cannot be directly used in many cryptosystems where 0-1 balancedness is needed. In this paper we construct (i) 0-1 balanced boolean functions on V2k+1 (k ≥ 1) having nonlinearity 22k 2k and satisfying SAC, (ii) 0-1 balanced boolean functions on V2k (k ≥ 2) having nonlinearity 22k-1 2k and satisfying SAC. We demonstrate that the above nonlinearities are very high not only for the 0-1 balanced functions satisfying SAC but also for all 0-1 balanced functions. Disciplines Physical Sciences and Mathematics Publication Details Jennifer Seberry and Xian-Mo Zhang, Highly nonlinear 0-1 balanced boolean functions satisfying strict avalanche criterion, ( Jennifer Seberry and Yuliang Zheng, (Eds.)), Advances in Cryptography Auscrypt'92, Conference held at the Gold Coast, Australia, December 1992, 718, Lecture Notes in Computer Science, Springer-Verlag, Berlin--Heidelberg--New York, (1993), 145-155. This conference paper is available at Research Online: http://ro.uow.edu.au/infopapers/1082 Highly Nonlinear 0-1 Balanced Boolean Functions Satisfying Strict Avalanche Criterion (Extended Abstract) Jennifer Seberry * and Xian-Mo Zhang ** Department of Computer Science The University of Wollongong Wollongong, NSW 2522, AUSTRALIA Abstract. Nonlinearity, 0-1 balanced ness and strict avalanche criterion (SAC) are important criteria for cryptographic functions. Bent functions have maximum nonlinearity and satisfy SAC however they are not 01 balanced and hence cannot be directly used in many cryptosystems where 0-1 balanced ness is needed. In this paper we construct (i) 0-1 balanced boolean functions on Y2k+l (k 2: 1) having nonlinearity 22k _ 2k and satisfying SAC, (ii) 0-1 balanced boolean functions on Y2k (k 2: 2) having nonlinearity 2 1 _ 2k and satisfying SAC. We demonstrate that the above nonlinearities are very high not only for the 0-1 balanced functions satisfying SAC but also for all 0-1 balanced functions. Nonlinearity, 0-1 balanced ness and strict avalanche criterion (SAC) are important criteria for cryptographic functions. Bent functions have maximum nonlinearity and satisfy SAC however they are not 01 balanced and hence cannot be directly used in many cryptosystems where 0-1 balanced ness is needed. In this paper we construct (i) 0-1 balanced boolean functions on Y2k+l (k 2: 1) having nonlinearity 22k _ 2k and satisfying SAC, (ii) 0-1 balanced boolean functions on Y2k (k 2: 2) having nonlinearity 2 1 _ 2k and satisfying SAC. We demonstrate that the above nonlinearities are very high not only for the 0-1 balanced functions satisfying SAC but also for all 0-1 balanced functions.
TL;DR: The authors introduce characteristic signatures for Boolean functions that do not exhibit sensitivity to permutations of input variables and are used to develop a method of rapidly matching subcircuits with cells in a large library.
Abstract: The authors introduce characteristic signatures for Boolean functions. The signatures do not exhibit sensitivity to permutations of input variables. These signatures are used to develop a method of rapidly matching subcircuits with cells in a large library. The procedure is analogous to hashing. Filters are discussed that were found to be useful in improving the matching of variables before applying the equivalence verification. Experimental results and the figure of merit of various signatures are outlined. >