Multiple-Valued Galois Logic S/D Trees, S/D Canonical Forms, and their Complexity Anas Al-Rabadi, and Marek Perkowski Dept. of Electrical and Computer Engineering Portland State University 1800 S.W. 6th Ave. Portland, OR 97201 U.S.A. [alrabadi, mperkows]@ee.pdx.edu Abstract The idea of S/D trees for binary logic is a general concept that found its main application in ESOP minimization and the generation of new diagrams and canonical forms. As a special case of the most general Linearly Independent (LI) logic, S/D trees demonstrated their power by generating forms that include a minimum Galois-Field-Sum-of-Products (GFSOP) circuits for binary and ternary radices. Galois Field of quaternary radix possesses some interesting properties. Therefore, in this paper, an extension of the S/D trees to the important case of GF(4) is presented. A formula to calculate the number of Inclusive Forms (IFs) per variable order for an arbitrary Galois field radix and arbitrary number of variables is derived; an issue that might be critical in finding minimum GFSOP circuits and in image processing applications. A new fast method to count the number of IFs for an arbitrary Galois field radix and functions of two variables is introduced; the IFn,2 Triangles. Multi-valued and binary circuit realizations of the Universal Logic Modules (ULMs) that correspond to quaternary Shannon and Davio expansions over GF(4) are presented. Binary and multi-valued GFSOP Filter realizations for 1 quaternary Shannon and Davio expansions over GF(4) illustrate some of the applications. 1 Introduction Economical and highly-testable implementations of Boolean functions [7, 13, 14, 21] based on Reed-Muller (AND/EXOR) logic play an important role in logic synthesis and circuit design. Most of the industrial AND/EXOR circuits implement non-canonical minimized forms of functions while circuits with desirable properties possess high regularities that produce canonical forms of functions, i.e. expansions that are unique representations of a Boolean function. Several large families of canonical forms: Fixed Polarity Reed-Muller forms (FPRMs), Generalized Reed-Muller forms (GRMs), Kronecker forms (KROs), and Pseudo-Kronecker forms (PSDKROs), referred to as the Green/Sasao hierarchy, have been described [8, 12, 24]. Because canonical families have higher testability and some other properties desirable for efficient synthesis, especially of some classes of functions like symmetric and unate functions, they are widely investigated. Binary Green/Sasao hierarchy [3] and their extended hierarchy to the ternary case over GF(3) [1] have found applications in many areas; finding minimum GFSOP expressions, creation of new forms, decision diagrams, spectral decision diagrams, regular structures [16], as well as spectral transforms with their well-known applications in digital telecommunications, digital signal processing, and digital image processing [6]. The state-of-the-art ESOP minimizers [23, 27, 32] are either approximate and based on heuristics or give the exact solution only for functions with a small number of variables. The well-known formulation for finding the exact ESOP was given in [11], but 2 all known exact algorithms can deliver solutions only for certain binary functions of more than five variables. Because GFSOP minimization is even more difficult, it is important to investigate structural properties and the countings of their canonical subfamilies in order to create efficient approximate algorithms (analogously to the binary case [27]). Recently, two families of ternary canonical Reed-Muller forms, called Ternary Inclusive Forms (TIFs) and Ternary Generalized Inclusive Forms (TGIFs) have been proposed [1]. The second family includes a minimum ternary GFSOPs. In this paper, it will be proposed, as a generalization of the ternary case, the general formulation of the interesting case of the quaternary S/D trees and the countings of the multi-valued Inclusive Forms (IFs) for an arbitrary Galois field radix and arbitrary number of variables. Binary logic is the simplest information carrying system. Yet, it does not provide a deep insight into logics with more values. Ternary logic structures provide a first glimpse, from analytical point of view, into higher radix logics, but can not provide enough concrete information to generalize ideas into arbitrary multi-valued logic. This is one of the reasons why quaternary systems are important; they provide a concrete generalization, that bridges ternary logic to logics of radices higher than four. Results form quaternary logic can utilize the binary logic and ternary logic as special cases, fivevalued logic as a first “test-bed” to detect the validity of the generalization. Therefore we present, as an example of the multi-valued S/D trees, the special case of the quaternary S/D (QS/D) trees and the corresponding quaternary Inclusive Forms (QIFs). One of the major outcomes of our investigation of quaternary Reed-Muller logic in this paper, is the discovery of a new method for a fast computation of the number of IFs over an arbitrary 3 radix of Galois field logic GF(pk) for two-variable functions; the IFn,2 Triangles. This method will cut drastically the time needed to calculate the number of IFs over any arbitrary order of of Galois foeld for two-variable functions, in contrast to the use of general formulas that consume lots of time, especially when the logics are of radices higher than four. The IFn,2 Triangle of Coefficients show a close relationship to the well known Pascal Triangle; an issue that helps in reusing the already existing algorithms to generate the IFn,2 Triangles. A great interest is paid to Reed-Muller forms over quaternary Galois field GF(4) as it represents the smallest composite field. Quaternary GF represents the smallest nonprime field for GF(pk) where p is a prime number and k is a natural number 1. Therefore quaternary logic can be important as it allows a single four-valued variable to be fully encoded using two 2-valued variables without any don’t cares; an issue that finds an application in the hardware realization of quaternary logic functions using binary circuits, and in the digital processing of multi-valued input/output pictures (e.g. 4x4 blocks of a still image). The remainder of this paper is organized as follows. The basic definitions of families of forms belonging to the Green/Sasao hierarchy over GF(2) are given in section 2. Quaternary S/D trees and their IFs are included in section 3. A general formula to compute the number of IFs for an arbitrary Galois field radix and arbitrary number of variables is presented in section 4. A new method for fast computation of the number of IFs over an arbitrary radix of Galois field logic GF(pk) for two-variable functions is presented in section 5. Various circuit realizations of quaternary Shannon and Davio 4 expansions over GF(4) are presented in section 6. Conclusion and future directions of our work are presented in section 7. 2 Green/Sasao hierarchy of binary canonical forms The Green/Sasao hierarchy of families of canonical forms and corresponding decision diagrams is based on three generic expansions, Shannon, positive Davio, and negative Davio expansions, which are given below respectively: f(x1,x2,…,xn) = x1’ f0(x1,x2,…,xn) x1 f1(x1,x2,…,xn) f(x1,x2,…,xn) = 1 f0(x1,x2,…,xn) x1 f2(x1,x2,…,xn) f(x1,x2,…,xn) = 1 f0(x1,x2,…,xn) x1’ f2(x1,x2,…,xn) (1) (2) (3) Where: f0(x1,x2,…,xn) = f(0,x2,…,xn) = f0………………...negative cofactor of variable x1 f1(x1,x2,…,xn) = f(1,x2,…,xn) = f1……………….…….…..positive cofactor of variable x1 f2(x1,x2,…,xn) = f(0,x2,…,xn) f(1,x2,…,xn) = f0 f1 An arbitrary n-variable function f(x1,x2,…,xn) can be represented using the positive polarity Reed-Muller (PPRM) expression: f(x1,x2,…,xn) = a0 a1x1 a2x2 … anxn a12x1x2 a13x1x3 … a(n-1)nxn-1xn … a12…nx1x2…xn (4) For each function f, the coefficients ai are determined uniquely, so PPRM is a canonical form. If we use either only the positive literal or only thr negative literal for each variable in equation (4), the Fixed polarity Reed-Muller (FPRM) form will be obtained. There are 2n possible combinations of polarities and as many FPRMs for any given logic function. By freely choosing the polarity of each literal in equation (4), we obtain the Generalized Reed-Muller (GRM) form. In GRMs, contrary to FPRMs, the same variable can appear in both positive and negative polarities. There are n2(n-1) literals in equation (4), so there are ( n1) n.2 2 polarities for an n-variable function and as many GRMs [25]. Each of the polarities determines a unique set of coefficients, and thus each 5 GRM is a canonical representation of a function. Two other types of expansions result from the flattening of certain binary trees that will produce Kronecker (KRO) forms and Pseudo Kronecker (PKRO) forms for S, pD, and nD expansions. There are 3n and at most n 1 32 different KROs and PKROs, repectively [25]. More families of canonical expansions were introduced in [1, 3, 18, 19]. These forms are generated by flattening certain type of trees. These forms are the Generalized Kronecker (GK) forms [18], Pseudo Generalized Kronecker (PGK) forms [19], Inclusive Forms (IFs) [1, 3], Generalized Inclusive Forms (GIFs) [1, 3], Free Generalized Inclusive Forms (FGIFs) [1 , 3], and Generalized Inclusive Kronecker Forms (GIKFs) [1]. 3 Quaternary S/D Trees and their IFs and GIFs Galois field (GF) is a fundamental algebraic structure in the theory of algebras. It has proven high efficiency in various applications of logic synthesis among others, especially in the design for test [10]. Quaternary GF logic is an important special case of the multi-valued GF logics as it is the smallest nonprime field that allows four-valued input/output functions to be realized in binary circuits without the need to utilize any don’t cares (i.e. no redundant unused encoding); in contrast to the ternary case for example. This can be achieved by using two 2-valued variables to encode a single fourvalued variable without any don’t cares; an issue that is implemented in the Universal Logic Module (ULM) realization of four-valued input/output functions (See subsection 6.1). This method can be used for both: true realization of four-valued gates, and using four-valued algebra only as an intermediate step in binary circuit minimization. GF(4) addition and GF(4) multiplication are defined in Tables 1.a and 1.b, respectively: 6 + 0 1 2 3 * 0 1 2 0 0 1 2 3 0 0 0 0 0 1 1 0 3 2 1 0 1 2 3 2 2 3 0 1 2 0 2 3 1 3 3 2 1 0 Table 1.a GF(4) addition 3 3 0 3 1 2 Table 1.b GF(4) multiplication In general, the attractive properties of GF-based circuits, such as the high testability of such circuits, are due to the fact that the GF operators exhibit the Cyclic Group (Latin Square) Property. This property can be explained from the four-valued (quaternary) GF operators as shown in Tables 1.a and 1.b, respectively. Note that in any row and column of the addition table (Table 1.a), the elements are all different, which is cyclic, and that the elements have a different order in each row and column. Another cyclic group can be observed in the multiplication table. If the zero elements are removed from the multiplication table (Table 1.b), then the remaining elements form a cyclic group. In binary, for example, the GF(2) addition operator, EXOR, has the cyclic group property. In general, a literal can be defined as any function of a variable. Basis functions in the general case of multi-valued expansions are constructed using literals. Galois field Sum-Of-Products (GFSOPs) expansions (i.e. Shannon expansions) can be performed on variety of literals. For example, one can use, among others: K-Reduced Post literal (KRPL) to produce K-RPL-GFSOP [1], Post literal (PL) to produce PL-GFSOP, Generalized (Post) literal (GL) to produce GL-GFSOP, or Universal literal (UL) to produce UL-GFSOP. Since K-RPL-GFSOP is as simple as PL and more general and it is This characteristic is useful in detecting faults, for instance, because any single change in the inputs of the gate will cause a change in the output (s). 7 simpler from implementation point of view than GL or UL, we will perform all the GFSOP (i.e. Shannon) expansions in this paper utilizing K-RPL-GFSOP. Let us define the 1-Reduced Post literal (1-RPL) as: ix = 1 iff x = i else ix = 0 (5) For example 0x, 1x, 2x, 3x are the: zeroth, first, second, and third polarities of the 1Reduced Post literal, respectively. Also, let us define the quaternary shifts (inversions) over variable x as: x, x’, x”, x’’’ which are the zeroth, first, second, and third shifts (inversions) of the variable x respectively, and variable x can take any value of the set {0, 1, 2, 3}. Theorem 1. Shannon expansion over GF(4) for a function with single variable is: f = 0x f0 + 1x f1 + 2x f2 + 3x f3 (6) Where: f0 is cofactor of f with respect to variable x of value 0 f1 is cofactor of f with respect to variable x of value 1 f2 is cofactor of f with respect to variable x of value 2 f3 is cofactor of f with respect to variable x of value 3. Proof. From equation 5, if we substitute the values of the 1-Reduced Post literal in equation 6, we obtain the following equations: For x = 0 f x=0 = f0 For x = 1 f x=1 = f1 For x = 2 f x=2 = f2 For x = 3 f x=3 = f3 Which are the cofactor of variable x with value zero, cofactor of variable x with value one, cofactor of variable x with value two, cofactor of variable x with value three, respectively. Q.E.D. Example 1. Let f (x1,x2) = x1”x2 + x2’’’x1 The quaternary truth vector of the function f is: F = [0,3,1,2,2,1,3,0,3,0,2,1,1,2,0,3]T 8 Utilizing equation (6), we obtain the following quaternary Shannon expansion over GF(4) of the function f: f = 2 0x1 1x2 + 3 0x1 2x2 + 0x1 3x2 + 3 1x1 0x2 + 1x1 1x2 + 2 1x1 3x2+ 2x1 0x2+ 3 2x1 1x2+ 2 2x1 2x2+ 2 3x1 0x2+ 3x1 2x2+ 3 3x1 3x2 . Using the axioms of GF(4), it can be derived that the 1-Reduced Post literals defined in equation (5) are related to the shifts of variables over GF(4) in terms of powers as follows: 0x = x3 + 1 = x’ + (x’)2 + (x’)3 0x = 3(x’’) + 2(x’’)2 + (x’’)3 0x = 2(x’’’) + 3(x’’’)2 + (x’’’)3 (7) (8) (9) (10) 1x = x + (x)2 + (x)3 = (x’)3 + 1 1x = 2(x’’) + 3(x’’)2 + (x’’)3 1x = 3(x’’’) + 2(x’’’)2 + (x’’’)3 (11) (12) (13) (14) 2x = 3(x) + 2(x)2 + (x)3 2x = 2(x’) + 3(x’)2 + (x’)3 2x = (x’’)3 + 1 2x = x’’’ + (x’’’)2 + (x’’’)3 (15) (16) (17) (18) 3x (19) (20) (21) (22) 0x 1x = 2(x) + 3(x)2 + (x)3 3x = 3(x’) + 2(x’)2 + (x’)3 3x = x’’ + (x’’)2 + (x’’)3 3x = (x’’’)3 + 1 Where: 0x, 1x, 2x, 3x are the: zeroth, first, second, and third polarities of the 1-Reduced Post literal, respectively. Also, x, x’, x”, x’’’ are the zeroth, first, second, and third shifts (inversions) of the variable x respectively, and variable x can take any value of the set {0, 1, 2, 3}. We chose to represent the 1-Reduced Post literal in terms of shifts and powers, among others, because of the ease of the implementation of powers of shifted variables in hardware (See subsection 6.1). After the substitution of equations (7) through (22) in 9 equation (6), and after the rearrangement and reduction of the terms according to the axioms of GF(4), we obtain the following equations: f = 1 f0 + x (f1+3f2+2f3) + (x)2 (f1+2f2+3f3)+(x)3(f0+f1+f2+f3) f = 1 f1 + (x’)(f0+2f2+3f3) + (x’)2 (f0+3f2+2f3)+(x’)3 (f0+f1+f2+f3) f = 1 f2 + (x’’)(3f0+2f1+f3) + (x’’)2 (2f0+3f1+f3)+(x’’)3 (f0+f1+f2+f3) f = 1 f3 + (x’’’)(f2+3f1+2f0) + (x’’’)2 (f2+2f1+3f0)+(x’’’)3 (f0+f1+f2+f3) (23) (24) (25) (26) Equations (6) and (23) through (26) are the 1-Reduced Post literal Shannon and Davio expansions for single variable, respectively. These equations can be rewritten in the following matrix-based forms, respectively: f = [0x 1x 2x 3x] 1 0 0 0 f = [1 x x2 x3] 1 0 0 1 f = [1 x’ (x’)2 (x’)3] 0 1 1 1 f = [1 x” ( x”)2 ( x”)3] 0 3 2 1 0 2 2 3 f = [1 x’’’ (x’’’) ( x’’’) ] 3 1 0 0 0 f 0 1 0 0 f 1 0 1 0 f 2 0 0 1 f 3 0 0 0 f 0 1 3 2 f 1 1 2 3 f 2 1 1 1 f 3 1 0 0 f 0 0 2 3 f 1 0 3 2 f 2 1 1 1 f 3 0 1 0 f 0 2 0 1 f 1 3 0 1 f 2 1 1 1 f 3 0 0 1 f 0 3 1 0 f 1 2 1 0 f 2 1 1 1 f 3 (27) (28) (29) (30) (31) Observe, that equations (27) through (31) are expansions for single variable. Yet, these canonical expressions can be easily generated for arbitrary number of variables (N) 10 using the Kronecker product, analogous to the binary case [28]. This can be expressed formally as in the following forms for Shannon (S), and Davio (D0, D1, D2, and D3) expressions, respectively: f N [ 0xi 1x i 2x i 3x ][S][ F i ] (32) i 1 f N [ 1 xi xi 2 xi3 ][D0][ F ] (33) xi’ (xi’)2 (xi’)3 ][D1][ F ] (34) xi” (xi”)2 (xi”)3 ][D2][ F ] (35) xi’’’ (xi’’’)2 (xi’’’)3 ][D3][ F ] (36) i 1 f N [ 1 i 1 f N [ 1 i 1 f N [ 1 i 1 As analogous to the binary case [3] and the ternary case [1], the expansions can mix Shannon (S) for certain variables and Davio (D0, D1, D2, and D3) for other variables. This will lead to, analogously to the ternary case [1] for instance, to the Kronecker quaternary decision tree (KQDT). Moreover, the mixed expansions can be extended to include, among others, Pseudo Kronecker quaternary decision tree (PKQDT). The basic S, D0, D1, D2, and D3 quaternary expansions (i.e. flattened forms) over GF(4) can be represented in quaternary DTs (QDTs) and the corresponding varieties of reduced quaternary DDs (RQDDs) (i.e. according to the corresponding reduction rules that are used). For one variable (i.e. one level of the DT), Figure 1 represents the expansion nodes for S, D0, D1, D2, and D3, respectively. 11 S 0x 1x 2x 3x Equation (6) (a) D0 1 D1 x2 x Equation (23) (b) x3 1 D2 (x’) (x’)2 (x’)3 Equation (24) 1 (x’’) (x’’)2 (x’’)3 D3 1 (x’’’) (x’’’)2 (x’’’)3 Equation (25) Equation (26) (d) (e) (c) Figure 1. Quaternary S (a), D0 (b), D1 (c), D2(d), and D3 (e) DTs, respectively In correspondence to the binary S/D trees [3], and ternary S/D trees [1], the concept of the Quaternary S/D Trees can be introduced. Analogously to the work in [1, 3], the quaternary S/D trees are generated through the definition of the Generalized Davio expansion over GF(4) as follows: D 1 x (x )2 ( x )3 Figure 2. Generalized quaternary Davio (GQD) expansion The notation here is that ( x ) corresponds to the four possible shifts of the variable x as follows: x {x, x’, x”, x’’’} over GF(4) (37) Utilizing the definition of quaternary Shannon (Figure 1.a) and quaternary Generalized Davio (Figure 2), and analogously to the work done in [1, 3], one can obtain 12 the quaternary Shannon/Davio trees (QS/DT) for two variables. The number of these S/D trees per variable order is: 2(4+1) = 32. The number of QIFs per S/D tree will be later derived in two different ways: the first method is by using the general formula for arbitrary number of variables over GF(4) developed in this section. The second method is using the very general formula developed in section 4. Example 2 illustrates some of the quaternary S/D trees and some of the quaternary trees they produce. The numbers on the top of S/D trees in Figures 3.a and 4.a are the numbers of the total QIFs (i.e. total number of quaternary trees) that can be generated (Full derivation of these numbers will be provided later on in this section and in section 4). Example 2. Let us produce some of the quaternary trees for the following quaternary S/D trees. Utilizing the notation in (37), we obtain, for the S/D trees in Figures 3.a and 4.a, the following S/D trees in Figures (3.b and 3.c) and Figures (4.b and 4.c), respectively: S N = 4,096 0 1 a D 2 a D a S b (b)2 (b)3 1 b’ (b”)2 (b’’’)3 0b 1b 2b 1 3 a S 3b 0b 1b 2b 3b (a) S 0 D 1 a S 2 a D 3 a 0 a S 1 b (b’)2 (b’)3 1 b” (b’)2 (b)3 0b 1b (b) S 2b 3b 0b 1b 2b 3b D a 1 2 a D a 3 a S 1 b (b)2 (b”)3 1 b’ (b)2 (b)3 0b 1b (c) S 2b 3b 0b 1b Figure 3. A quaternary S/D tree for two variables of order {a, b} with three Shannon nodes and two Generalzied Davio nodes (a), and some of the quaternary trees that it generates (b and c). 13 2b 3b N = 262,144 0 1 b D 2 b D a (a)2 (a)3 1 S 1 a 3 b D S (a)2 (a)3 0a 1a b 2a 3a 1 a (a)2 (a)3 (a) S 0 b D 1 1 2 b D a (a)2 (a)3 S b S 1 a’ (a”)2 (a’’’)3 0a 1a 2a 3a 3 0 b D 1 a”(a’’’)2 (a’)3 1 b D a (a)2 (a’)3 1 2 b D 3 b D S 1 a (a”)2 (a’’)3 0a (b) b 1a 2a 3a 1 a” (a)2 (a’)3 (c) Figure 4. A quaternary S/D tree for two variables of order {b, a} with two Shannon nodes and three Generalzied Davio nodes (a), and some of the quaternary trees that it generates (b and c). From the quaternary S/D DTs shown in Figures 3 and 4, by taking any S/D tree. Multiplying the two-level cofactors (which are in the QDT leafs) each by the corresponding path in that QDT, and next summing all the resulting cubes (terms; products) over GF(4), one obtains the flattened form for the function f, as a certain GFSOP expression (expansion). For each QDT in Figures 3.a and 4.a, there are as many forms obtained for the function f as the number of all possible permutations of the polarities of the variables in the second level branches of each QDT. Theorem 2. For GF(4) and N variables, the total number of QIFs per variable order is equal to: 14 # QIFs = = N 1 (4) (4) N 2 (4) N 3 (4) 0 ( N 1) 4 ... {[ k 1 0 k 2 0 0 3.(4) k 30 1 3.(4) k1 (4 ( N 1) (4 kN 0 ) (4 k 1)!k 1! ( N 1) 3.(4) k2 ( N 2) 4 ! ) ...(4 kN ) ( N 2) (4 0 ! ... k 2)!k 2! 4 ! ][ (4 k )!k ! 0 N N (38) ]} Proof. A very general proof that will include the quaternary Galois field as a special case will be provided in section 4. Q.E.D. Properties and extended Green/Sasao hierarchy for quaternary S/D trees and their corresponding forms can be developed similar to the work in [1, 3]. The extension of the concept of S/D trees to higher radices of Galois fields (i.e. higher than four) is a systematic and direct process that follows the same methodology developed for the ternary case [1], and the quaternary case that has been presented in this section. The following example demonstrates the countings of QIFs using Theorem 2. Example 3. For number of variables equal to two (N=2), equation (38) reduces to: 1 0 ( 4) (4) k 1 0 kN 0 = = {[ | k 10, k 2 0 (1) 4 (1) (4 + (0) 4 ! k 1)! k 1! | k 11, k 2 0 + (0) 0 ! (4 k 2)! k 2! (4 3.(4) k1 1 3.(4) ) (4 k2 ) ]} |k 2,k 0 + |k 3,k 0 + |k 4,k 0 + |k 0,k 1 + 1 2 1 2 1 2 1 2 |k 1,k 1 + |k 2,k 1 + |k 3,k 1 + |k 4,k 1 1 2 = 00 + 1 10 + 2 1 2 1 2 20 + 30 + 40 + 01 + 11 + 21 + 31 + 41 = 1 + 256 + 24,576 + 1,048,576 + 16,777,216 + 16,777,216 + 4,294,967,296 + 412,316,860,416 + 1.75921860444* 1013 + 2.81477976711*1014 = 2.99483809211*1014 . 15 Utilizing MVL map representation, we can easily prove that there are 416 = 4,294,967,296 quaternary functions of two variables, and 2.99483809211*1014 quaternary Inclusive Forms generated by the S/D trees. Thus, on the average every function of two variables can be realized in approximately 69,729 ways. This high number of realizations means that most functions of two variables are realized with less than five expansions, and all functions with at most five expansions. 4 General formula to compute the number of IFs for an arbitrary number of variables and arbitrary Galois field radix Although the S/D trees and Inclusive Forms were developed in section 3 for quaternary Galois logic, the same concept can be directly and systematically extended to the case of nth radix of Galois fields and N variables (i.e. N DT levels). The following Theorem provides the total number of IFs per variable order for N variables (i.e. N decision tree levels) and nth radix of any arbitrary algebraic field, including GF(pk) where p is a prime number and k is a natural number 1. This generality of the following theorem comes from the fact that algebraic structures specify the type of operations (e.g. addition and multiplication operations) in the functional expansions but do not specify the countings which are an intrinsic property of the tree structure and independent of the algebraic operations that are performed. Therefore the following theorem is valid, among others, for Galois fields of arbitrary radix (pk) where p is a prime number and k is a natural number 1 (e.g. 3, 4, 5, ,7, 8, 9, 11, 13, …). Theorem 3. The total number of Inclusive Forms for N variables and nth radix Galois field logic is equal to: 16 # QIFs = n,N = N 1 ( n) ( n) N 2 ( n) N 3 ( n) 0 ... {[ k 1 0 k 2 0 k 30 (n 1).( n) (n 0 k1 kN 0 ( N 1) n ( N 1) (n (n 1).(n) 1 ) (n ( N 2) n ! ( N 2) k 1)!k 1! k2 (n ( N 1) (n 1).(n) ) ...(n kN ) ! k 2)!k 2! 0 ... n ! ][ (n k )!k ! 0 ]} N N (39) Proof. The following is the derivation of the general equation (39) to calculate the number of IFs per variable order (For clarity refer to Figures 1, 2, 3, and 4): The total number of nodes for any nth radix Galois field (GF(n)) tree with N levels (i.e. N variables) equals: N 1 (n) k (40) k 0 For any S-type (i.e. Shannon type) node there is only one type of nodes as the branches of the Shannon node have the possibility of single value each. Yet, for D-type (i.e. Davio type) node there are N possible types of nodes (where N is the number of variables, which is equal to the number of levels). The highest possible number of forms for the D-type node exists when the Davio node exists in the first (highest) level, and the lowest possible number of forms for the D-type node is when the Davio node exists in the Nth-level (lowest level). Therefore, for certain number (M) of S-type nodes the following formula describes the number of the D-type nodes for N variables: #S=M#D= N 1 (n) k - M (41) k 0 It can be shown that for GF(n) (i.e. N-ary decision tree with N-levels (i.e. N variables), the general formulas that count the number of D-type nodes, and the number 17 of all possible forms for the D-type node in the kth level (where k is less than or equal the total number of levels N) are, respectively: # Dk = ( k 1) (n) (42) ( N K ) |Dk| = (n 1).(n) (n) (43) Where: # Dk is the number of D-type nodes in the kth level. |Dk| is the number of all possible forms (per node) for the D-type node in the kth level. Let us define the S/D tree category to be: the S/D trees that have in common the same number of S-type nodes and the same number of D-type nodes within the same variable order. Let us define the following entities for nth radix Galois field and N variables (i.e. N decision tree levels): n,N = number of variable orders n,N = number of S/D tree categories per variable order n,N = number of S/D trees per category n,N = number of IFs per variable order (44) (45) (46) (47) From equations (42) and (43), and using some elementary counting rules, one can derive by mathematical induction the following general formulas for N being the number of variables, and n being the field radix: n,N = N! n,N = (48) N 1 (n) k 0 N 1 n,N = k +1 [ n ]! k k 0 N 1 [ n k ]! k! k (49) N 1 , Where k =0, 1, 2, 3, …, (n) k (50) k 0 k 0 18 n,N = N 1 ( n) ( n) N 2 ( n) N 3 ( n) 0 ( N 1) n ... {[ k 1 0 k 2 0 k 30 (n 1).( n) 0 (n ( N 1) (n kN 0 (n 1).(n) 1 k1 ) (n ( N 2) n ! k 1)!k 1! ( N 2) (n ( N 1) (n 1).(n) k2 ) ...(n kN ) 0 ! ... k 2)!k 2! n ! ][ (n k )!k ! 0 N N (51) ]} Q.E.D. Example 7. Let us produce the number of QIFs over GF(4) for two variables (i.e. N=2 and n = 4), then one obtains: 4,2 = 2 1 (4) (4) 22 ( 2 1) 4 k 1 0 = ( 2 1) (4 k 2 0 ( 22) 4 ! ( 2 2) k 1)!k 1! (4 (4 1).(4) 0 ! k 2)!k 2! (4 k1 (4 1).(4) 1 ) (4 k2 ) 10|4,2 + 20|4,2 + 30|4,2 + 40|4,2 + 01|4,2 + 11|4,2 + 21|4,2 + 00|4,2 + 31|4,2 + 41|4,2 = 1 + 256 + 24,576 + 1,048,576 + 16,777,216 + 16,777,216 + 4,294,967,296 + 412,316,860,416 + 1.75921860444* 1013 + 2.81477976711*1014 = 2.99483809211*1014. Which is the same result that was obtained in Example 3. Corollary. From [3] and equation (51), the following mathematical corollary can be obtained to count the number of Inclusive forms for N variables and second radix: n 1 (1 2 2 n k 1 ) k 0 N 1 (2) (2) N 2 2 (2) k N 3 (2) 0 ... {[ k 1 0 k 2 0 k 30 (2 1).(2) 0 (2 k1 kN 0 ( N 1) 2 ( N 1) (2 (2 1).(2) ) (2 1 k2 ( N 2) 2 ! k 1)!k 1! ( N 2) (2 ( N 1) (2 1).(2) ) ...(2 kN ) ! k 2)!k 2! ]} 0 ... 2 ! ][ (2 k )!k ! 0 N N (52) 19 In general, expansions of functions can be produced over basis functions of a single variable, two variables, or any number of variables. The interesting case of expansions of functions utilizing pairs of variables can be produced using the general procedure for expansions over Linearly Independent (LI) logic [20]. This can be achieved by the recursive expansions of a multi-variable function over bases of two variables. The advantage of such expansions is the regular usage of universal blocks with two control variables that generalize multiplexers (data selectors) with two control variables (i.e. variables of control functions) and four data inputs (data functions) [20]. The following section introduces a fast method to calculate the number of IFs (that are special cases of Linearly Independent (LI) logic) for an arbitrary Galois field logic for functions with two variables. 5 A fast method to calculate the number of IFs over an arbitrary radix of Galois field GF(pk) for functions of two variables Counting the number of IFs is important in many applications, especially in providing upper numerical boundaries for efficient search of a minimum GFSOP. Calculating the numbers of Inclusive Forms (IFs) can be very time consuming due to the time required to perform the mathematical operations in the general equation (51). This is why a fast method to generate the number of IFs is needed. Because functions with two variables find an important application in the ULMs for pairs of variables [20], the following subsection provides a fast method to calculate the number of IFs over an arbitrary radix of Galois field GF(pk) for two variable functions (i.e. N = 2). 5.1 IFn,2 Triangles Functions with two variables are attractive in logic synthesis since many functional decomposition methods exist that produce two control inputs for primitive cells in a 20 standard library of standard cells (such as in a multiplexer with two address lines). It is shown in [20] how to produce Universal Logic Modules (ULMs) for pairs of control variables that generalize Shannon and Davio expansion modules. Theorem 4 will introduce a fast method to calculate the number of Inclusive Forms for functions with two input variables over an arbitrary radix of Galois field. Theorem 4. The following IFn,2 Triangles provide a fast method to calculate the number of IFs over an arbitrary nth radix of Galois field (GF(pk)) for two variable functions (N=2). 1 1 1 5 1 6 15 7 21 35 1 4 10 20 35 1 3 6 10 15 21 2 3 4 5 6 7 1 1 1 1 1 1 1 1 1 1 1 1 2 3 4 5 6 7 1 3 6 10 15 21 1 4 1 10 5 1 20 15 6 1 35 35 21 7 1 (a) 40 50 54 30 43 58 20 32 46 21 34 49 22 22 36 36 412 412 23 38 415 24 310 418 312 421 424 512 516 520 520 524 528 532 536 N0(N-1)N1(N-1)N2(N-1) N3(N-1)... N(N-1)(N-1)NN(N-1)NN(N-1) N(N+1)(N-1) N(N+2)(N-1) … 540 N2N(N-1) (b) Figure 5. IFn,2 Triangles; the Triangle of Coeffecients (a) and the Triangle of Values (b) for a fast calculation of the number of Inclusive Forms for an arbitrary radix Galois field and functions of two input variables (N=2). 21 Proof. The proof of Theorem 4 follows directly from the mathematical induction of the number of IFs over an arbitrary radix of Galois field GF(pk) for two variable functions. This can be deduced directly from equation (51); if the IFn,2 Triangles are valid for n = q then they will be also valid for n = q + 1, where n = pk (p is a prime number and k is a natural number 1). Q.E.D. It can be observed that the IFn,2 Triangle of Coefficients possesses a close similarity to the well known Pascal Triangle. This occurs as follows: if one omits the first two rows of the Pascal triangle and duplicates each row into another horizontally adjacent row, the IFn,2 Triangle of Coefficients will be obtained. This fact helps in creating computer algorithms that generates the IFn,2 Triangle of Coefficients since many efficient and optimized algorithms already exist to generate the Pascal triangle [9]. The following example illustrates the concept of counting the number of IFs over an arbitrary radix of Galois field GF(pk) for two variable functions through the IFn,2 Triangles that were demonstrated in Figure 5. Example 6. Utilizing the IFn,2 Triangles from Figure 5, we can calculate the number of Inclusive Forms for GF(2), GF(3), and GF(4) for two variables, respectively, as follows: 2,2 = 1 20+2 21+1 22+1 22+2 23+1 24 = 1 + 4 + 4 + 4 + 16 + 16 = 45 3,2 = 1 30+3 32+3 34+1 36+1 36+3 38+3 310+1 312 = 730,000 4,2 = 1 40+4 4 3+6 46+4 49+1 412+1 412+4 415+6 418+4 421+1 424 = 2.99483809211*1014 (53) (54) (55) One can observe that the results from equations (53), (54), and (55) are the same countings that were obtained in [3], [1], and in sections 3 and 4 of this paper, respectively. 22 5.2 Properties of IFn,2 Triangles The following are some properties of the IFn,2 Triangles presented in Figure 5. 1. The number of positions (elements) in each row of the triangles in Figures 5.a and 5.b are even starting from six. 2. The sum of elements in each row in Figure 5.a equals to the number of S/D trees per variable order. 3. The triangle in Figure 5.a possesses even symmetry around an imaginary vertical axis in the middle of the triangle. 4. The minimum number of columns required to generate the whole triangle in Figure 5.a is equal to three (due to even symmetry): one wing, one column neighbor to the middle column, and one middle column. 5. The triangle in Figure 5.a can be generated by the process of “Shift Diagonally and Add Diagonally” (SDAAD); shift the left wing diagonally from west to southeast direction and add two numbers diagonally from east to southwest direction, and shift the right wing diagonally from east to southwest direction and add two numbers diagonally from west to southeast direction. 6. The difference in powers in the triangle in Figure 5.b per row element is: (N-1). 7. The first number in each row of the triangle in Figure 5.b is: N0 and the last number per row is: N 2N(N-1), where N is the number of variables. 8. The middle two numbers in each row of the triangle in Figure 5.b are always equal to: NN(N-1) , where N is the number of variables. 23 6 Hardware realizations of quaternary GFSOPs The following subsections introduce two circuit realizations of canonical quaternary GFSOP expressions; Universal Logic Modules (ULMs), and Finite Impulse Response (FIR) Filters. Although the following realizations in subsections 6.1 and 6.2 are for GF(4) canonical GFSOP forms, analogous realizations can be produced for Galois field of higher radices equal to 2k where k is a natural number 1 (e.g. 2, 4, 8, 16, 32, 64, …). 6.1 Universal Logic Modules of quaternary GFSOPs In general, multi-valued Shannon and Davio decision trees (DTs) are multi-level tree-structured regular circuits with nodes of two level Universal Logic Modules (ULMs) that are realizations of the corresponding functional expansions. ULMs play an important role in the realization of circuits that need special regular properties such as reconfigurable structures, such as FPGAs, with their well-known applications in memorybased ping-pong architectures and parallel processing systems (such as DEC-PERLE FPGA-based board). Lattices [16] (Pseudo Symmetric Decision Diagrams (PSDDs)) are another example of such regular structures that are used in: fault detection (circuit diagnosis; circuit testing), fault localization, and circuit self-repairing. Such properties are essential in the future advanced technologies for sensitive applications such as spaceoriented applications (e.g. satellite circuits that are immune to galactic/cosmic radiation) and bio-medical applications (e.g. human-IC interface). The nonsingular expansions of quaternary Shannon and Davio expansions, can be realized using a Universal Logic Module (ULM) with control variables corresponding to the variables of the basis functions (i.e. the variables that are expanded upon). We call it a universal logic module, because similarly to a multiplexer, all functions of two variables 24 can be realized with two level trees of such modules using constants on the second level data inputs (See Figure 8). ULMs are complete systems; they can implement all possible functions of certain number of variables. Analogously to the ternary case [1], the general ULM that covers the quaternary Shannon and all Davio expansions can be created. Figure 8 illustrates such a realization. Note that by utilizing Figures 6 and 7, all the quaternary logical addition and multiplication gates in Figure 8 can be converted into the corresponding binary logical addition and multiplication gates, respectively, similar to the encoding of a single 4-valued variable into two 2-valued variables presented in [4] (for simplicity of illustration, the internal 4/2 encoders and 2/4 decoders in Figure 8 are cancelled and the internal structure is simplified). GF(2) GF(4) A a1 C B A a2 C 2/4 B (a) c1 4/2 4/2 b1 b2 c2 (b) Figure 6. Realization of GF(4) addition (a) as GF(2) addition (b) (i.e. vector of EXORs). 25 a1 A 4/2 a2 b1 B . . . . . 4/2 b2 GF(4) . A B C c3 C 2/4 c4 Figure 7. Realization of GF(4) multiplication (a) using GF(2) operations (b) Where: 4/2 Is a quaternary-to-binary encoder 2/4 Is a binary-to-quaternary decoder 0x x x x’ x’’ ” ’ 1 1x . fi . 2x fj . . 3x fk . f + . fl Figure 8. Quaternary ULM that produces quaternary Shannon expansions (equation 6), and all quaternary Davio expansions (equations 23, 24, 25, and 26). 26 Where: Is a binary Mux. . + Is a GF(4) logical multiplier Is a GF(4) logical adder 6.2 FIR filters of quaternary GFSOP canonical forms Another interesting hardware realization of quaternary GFSOPs are various filter implementations of which FIR filter is the simplest case. Higher radix extensions of this kind of filters can be useful for digital signal processing of one-dimensional multi-valued input/output signals or two-dimensional multi-valued input/output blocks of images (e.g. 4x4, and 8x8 blocks of a still image). A general FIR filter for single variable GF(4) GFSOP-based expansion can be produced as in Figure 9. This realization is a direct implementation of the Shannon and Davio expansions that were obtained in section 3. Such realization can be useful in various applications such as applications that involve multi-valued input/output biomedical signals. The addition and multiplication performed in Figure 9 are the Galois field addition and multiplication operations defined in Tables 1.a and 1.b, respectively. These additions and multiplications can be implemented using quaternary circuits, or using binary (2valued) circuits as was shown in subsection 6.1. 27 X Basis1 Generator Basis2 Generator C1 * Basis3 Generator C2 Basis4 Generator C3 C4 * * * + + + F Figure 9. FIR Filter realization of four-valued GF(4) GFSOP canonical forms Yet, another implementation can be achieved by utilizing a third radix Galois field multiplication operation. This can be achieved by utilizing the GF(3) multiplication which is presented in Table 2.b, and noticing the relationship between the multiplication operation over GF(4) (Table 1.b) and the addition operation over GF(3) (Table 2.a). This relationship can be stated as follows: Excluding the first row of zeros and the first column of zeros in the GF(4) multiplication in Table 1.b, then by subtracting one from the remaining rows and columns, the GF(3) addition operation in Table 2.a is obtained, but next one must be added to every entry of Table 2.a in order to obtain Table 1.b. This can be formulated formally as follows: a GF ( 4 ) 0 , if a 0 or b 0 b [( a 1) (b 1)] 1 , otherwise Where: is either GF(3) addition or mod-3 addition + is either a shift up operation or mod-3 addition - is a shift down operation. For simplicity of implementation, shift-up operation is used instead of mod-3 addition for + operation, and mod-3 addition is used instead of GF(3) addition for the 28 operation. Figures 10 and 11 illustrate an implementation of the GF(4) addition and multiplication operations. Similar approaches can be used to realize addition and multiplication operators for higher radices of Galois fields. + 0 1 2 0 1 2 0 1 1 2 2 0 2 0 1 * 0 0 1 2 Table 2.a. GF(3) addition 1 2 0 0 0 1 0 2 0 2 1 Table 2.b. GF(3) multiplication a1 a2 a a b c + b1 + b + b2 c c1 c2 (a) (b) (c) Figure 10. Implementation of three input single GF(4) addition gate (a) as double twoinput tree-structured GF(4) addition gates (b) and consequently as quadruple two-input tree-structured vector of GF(2) EXORs (c). 29 a a b c * b * * c (a) (b) a -1 b -1 3 0 1 +1 0 a+b (c) Figure 11. The implementation of a three input single GF(4) logical multiplication gate (a) using double two-input tree-structured GF(4) logical multiplication gates (b), and the implementation of a single GF(4) logical multiplication gate utilizing mod-3 addition and shift operations (c). Where: -1 Is a -1 shifter +1 Is a +1 shifter 3 Is a modulo3 addition Is a comparator to value 0 Is a multiplexer The physical implementation of the circuit in Figure 11 can be implemented utilizing various choices of technologies such as Pass Transistor Logic (PTL) that have 30 recently found popularity within the CMOS technologies due to circuit optimization issues [2, 29, 30, 31]. Such an implementation will be realized in our forthcoming paper. Other future technologies such as single electron transistors, reversible logic, and Josephson junction technologies require efficient realization of multi-level Shannon and Davio canonical expressions and Galois gates. 7 Conclusion In this contribution, we have presented the important case of quaternary canonical Shannon and Davio forms over GF(4) and the corresponding quaternary S/D (QS/D) trees and quaternary Inclusive Forms (QIFs). An extension of the quaternary case to the case of arbitrary radix of Galois fields is a direct and systematic process following the same methodology used for ternary case in [1], and the quaternary case presented in this work. Counting the number of Inclusive Forms (IFs) can play a critical part in the efficient searching for minimum GFSOP. Thus, we provided a general formula to calculate the number of IFs per variable order for an arbitrary Galois field radix and arbitrary number of variables, that includes the formulas in [1, 3] as special cases. The important case of expansions of functions using pairs of variables can be produced using the general procedure for expansions over Linearly Independent (LI) logic [20]. This can be done by the recursive expansions of a multi-variable function over bases of two variables. The advantage of such expansions is the regular usage of multiplexers (data selectors) with two control variables and four data inputs (data functions) [20]. The choice of functions with two variables is important in many applications, as in the case of Universal Logic Modules (ULMs) for pairs of variables [20]. Thus we introduced a generic method to calculate the number of IFs for an arbitrary Galois field radix and functions of two 31 variables; the IFn,2 Triangles. This method allows for fast calculation of the number of IFs without the need to use the general formulas that were derived in this paper and in [1, 3]. The IFn,2 Triangle of Coefficients shows a close relationship to the well known Pascal Triangle; an issue that helps in reusing the already existing algorithms to generate the IFn,2 Triangles. Binary realization of a general quaternary Universal Logic Module (ULM) that produces quaternary Shannon and all Davio canonical expressions is presented. This sort of realization has the advantage as most of the industrial systems produced so far are of binary nature (i.e. two-valued radix). Also, mapping from quaternary logic to binary logic does not produce any don’t cares (as the ternary case does for instance), so unique realization of the ULM exist for specific encoding. Future technologies will all require the satisfaction of two conditions: reversibility and regularity, which are both guidances of our research, as illustrated in this paper and especially in its following papers. 8 References 1 A. Al-Rabadi, and M. Perkowski,”An Extended Green/Sasao Hierarchy of Canonical Ternary Galois-Field Decision Diagrams and Forms,” submitted to MVL journal. 2 P. Buch, A. Narayan, A. R. Newton, and A. L. Sangiovanni-Vincentelli,”Logic Synthesis for Large Pass Transistor Circuits,” Proc. ACM/IEEE ICCAD, San Jose, CA, November 1997. 3 M. Chrzanowska-Jeske, A. Mishchenko, and M. Perkowski,”A Family of Canonical AND/EXOR Forms That Includes the Exact Minimum ESOPs,” accepted to VLSI Design Journal, 2000. 4 K. Dill, K. Ganguly, R. Safranek, and M. Perkowski,”A new Linearly-Independent, Zhegalkin Galois Field Reed-Muller Logic,” Proc. Reed-Muller’97, pp. 247-257, Oxford Univ. U.K., Sept. 1997. 5 M. Escobar, F. Somenzi,” Synthesis of AND/EXOR Expressions via Satisfiability,” Proc. Reed-Muller’95, pp. 80-87. 32 6 B. Falkowski, and L.-S. Lim,”Gray Scale Image Compression Based on MultipleValued Input Binary Functions, Walsh and Reed-Muller Spectra,” Proc. ISMVL’2000, pp. 279-284, 23-25 May, 2000. 7 H. Fujiwara, Logic Testing and Design for Testability, The MIT Press, 1985. 8 D. H. Green,”Families of Reed-Muller Canonical Forms,” Intern. Journal of Electr., No.2, pp. 259-280, Feb. 1991. 9 http://math.usask.ca/readin/examples/pascal_tri.html. 10 U. Kalay, D. Hall, and M. Perkowski,”A Minimal and Universal Test Set for Multiple-Valued Galois Field Sum-of-Products Circuits,” 7th Workshop on PostBinary ULSI Systems, pp. 50-51, Fukuoka Software Research Park, Fukuoka, Japan, May 1998. 11 M. Perkowski, and M. Chrzanowska-Jeske,”An Exact Algorithm to Minimize MixedRadix Exclusive Sums of Products for Incompletely Specified Boolean Functions,” Proc. IEEE ISCAS’90, Intern. Symposium on Circuits and Systems, pp. 1652-1655, New Orleans, 1-3 May, 1990. 12 M. Perkowski,” The Generalized Orthonormal Expansion of Functions with MultipleValued Inputs and some of its Applications,” Proc. ISMVL’92, pp. 442-450. 13 M. Perkowski,”A Fundamental Theorem for Exor Circuits,” Proc. Reed-Muller’93, pp. 52-60. 14 M. Perkowski, A. Sarabi, and F. Beyl,”Fundamental Theorems and Families of Forms for Binary and Multiple-Valued Linearly Independent Logic,” Proc. Reed-Muller’95, pp. 288-299 15 M. Perkowski, E. Pierzchala, and R. Drechsler,” Layout-Driven Synthesis for Submicron Technology: Mapping Expansions to Regular Lattices,” Proc. First International Conference on Information, Communications, and Signal Processing, ICICS’97, Singapore, 9-12 Sept. 1997, Session 1C1: Spectral Techniques and Decision Diagrams. 16 M. Perkowski, E. Pierzchala, and R. Drechsler,” Ternary and Quaternary Lattice Diagrams for Linearly-Independent Logic, Multiple-Valued Logic and Analog Synthesis,” Proc. ISIC’97, Singapore, vol. 1, pp. 269-273, 10-12 Sept., 1997. 17 M. Perkowski, M. Chrzanowska-Jeske, and Y. Xu,” Lattice Diagrams using ReedMuller Logic,” Proc. Reed-Muller’97, Oxford Univ. U.K., pp. 85-102, Sept. 1997. 33 18 M. Perkowski, L. Jozwiak, and R. Drechler,” A Canonical AND/EXOR Form that includes both the Generalized Reed-Muller Forms and Kronecker Reed-Muller Forms,” Proc. Reed-Muller’97, Oxford Univ. U.K., pp. 219-233, Sept. 1997. 19 M. Perkowski, L. Jozwiak, and R. Drechler,” Two Hierarchies of Generalized Kronecker Trees, Forms, Decision Diagrams, and Regular Layouts,” Proc. ReedMuller’97, Oxford Univ. U.K., pp. 115-132, Sept. 1997. 20 M. Perkowski, B. Falkowski, M. Chrzanowska-Jeske, and R. Drechsler,” Efficient Algorithms for Creation of Linearly-Independent Decision Diagrams and their Mapping to Regular Layout,” accepted to VLSI Design. 21 S. M. Reddy,” Easily Testable Realizations of Logic Functions,” IEEE Trans. On Comp., C-21, pp. 1183-1188, Nov. 1972. 22 T. Sasao,” An Exact Minimization of AND-EXOR Expressions Using BDDs,” Proc. Reed-Muller’93, pp. 91-98. 23 T. Sasao,”EXMIN2: A simplification algorithm for exclusive-OR-Sum-of-products expressions for multiple-valued input two-valued output functions”, IEEE Trans. On CAD of Int. Circuits and Systems, Vol. 12, No. 5, pp. 621-632, May 1993. 24 T. Sasao,” Representation of Logic Functions using EXOR Operators,” Proc. ReedMuller’95, pp. 11-20. 25 T. Sasao,” Representation of Logic Functions Using EXOR Operators,“ In Representations of Discrete Functions, T. Sasao (editor), pp. 29-54, Kluwer 1996. 26 T. Sasao, F. Izuhara,” Exact Minimization of FPRMs Using Multi-Terminal EXOR TDDs”, In Representations of Discrete Functions, T. Sasao (editor), pp. 191-210, Kluwer 1996. 27 N. Song, and M. Perkowski, “ Minimization of Exclusive Sum of Products Expressions for Multiple-Valued Input Incompletely Specified Functions,” IEEE Trans. On Cad, Vol. 15, No. 4, pp. 385-395, April 1996. 28 R. S. Stankovic, Spectral Transform Decision Diagrams in Simple Questions and Simple Answers, Nauka, Belgrade, 1998. 29 M. Suzuki, et al,” A 1.5ns 32b CMOS ALU in Double Pass-Transistor Logic,” in 1993 Digest of Technical Papers, IEEE International Solid-State Circuits Conference, February 1993. 30 UC Berkeley Electronics Research Laboratory, Memorandum No. UCB/ERL M97/26, April 1997. 34 31 K. Yano, et al,” A 3.8-ns CMOS 16x16-b Multiplier Using Complementary PassTransistor Logic,” IEEE Journal of Solid-State Circuits, Vol. 25, No. 2, April 1990. 32 X. Zeng, M. Perkowski, K. Dill, and A. Sarabi,”Approximate Minimization of Generalized Reed-Muller Forms,” Proc. Reed-Muller’95, pp. 221-230. 35