/ / Article

Research Article | Open Access

Volume 2013 |Article ID 270424 | https://doi.org/10.1155/2013/270424

Ranjeet Kumar Rout, Pabitra Pal Choudhury, Sudhakar Sahoo, "Classification of Boolean Functions Where Affine Functions Are Uniformly Distributed", Journal of Discrete Mathematics, vol. 2013, Article ID 270424, 12 pages, 2013. https://doi.org/10.1155/2013/270424

# Classification of Boolean Functions Where Affine Functions Are Uniformly Distributed

Revised22 Aug 2013
Accepted11 Sep 2013
Published31 Oct 2013

#### Abstract

The present paper on classification of -variable Boolean functions highlights the process of classification in a coherent way such that each class contains a single affine Boolean function. Two unique and different methods have been devised for this classification. The first one is a recursive procedure that uses the Cartesian product of sets starting from the set of one variable Boolean functions. In the second method, the classification is done by changing some predefined bit positions with respect to the affine function belonging to that class. The bit positions which are changing also provide us information concerning the size and symmetry properties of the classes/subclasses in such a way that the members of classes/subclasses satisfy certain similar properties.

#### 1. Introduction

Classification of non-linear Boolean functions has been a long standing problem in the field of theoretical computer science. A systematic classification of Boolean functions with -variable having a representative in each class is a welcomed step in this area of study. It has been very accurately considered as vital and meaningful because of two important well-defined reasons: (a) equivalent functions in each class possess similar properties and (b) the number of representatives in each class is much less than that of Boolean functions.

Earlier, when two Boolean functions of -variable differ only by permutation or complementation of their variables, they fall into equivalence classes. The formula for counting the number of such equivalence classes is given in . Further, it has also been elaborated in  about the procedures of selection of a representative assembly, with one member from each equivalence class. In , the linear group and the affine Boolean function group of transformations have been defined and an algorithm has been proposed for counting the number of classes under both groups. The classification of the set of -input functions is specifically based on three criteria: the number of functions, the number of classes, and the number of NPN classes, which are first introduced in . Classification of the affine equivalence classes of cosets of the first order Reed-Muller code with respect to cryptographic properties such as correlation immunity, resiliency, and propagation characteristics has been discussed in . Heuristic design of cryptographically strong balanced Boolean function was envisaged in . In , three variable Boolean functions in the name of 3-neighborhood cellular automata rules have been classified on the basis of hamming distance with respect to linear rules. The characterization of 3-variable non-linear Boolean functions has been undertaken in three different ways, by Boolean derivatives, by deviant states, and by matrices as elaborated in the papers , respectively.

In this paper, two methods have been proposed for generating equivalence classes of Boolean functions with a specific objective in our mind that, in each class, exactly one affine Boolean function is present. The first method is a recursive approach to classify -variable Boolean functions starting from -variable to higher variables. In the second method, the classification is done through changing some variable bit positions with respect to the affine function belonging to that class.

In the following sections, the paper is organized in a precise methodical manner. In Section 2, the literature of Boolean functions of different variables relevant to our work is reviewed. In Section 3, the method of recursive classification of -variable Boolean functions is introduced and the properties of these classes are discussed. Based on these properties another efficient method has also been proposed for generating the same classes of -variable Boolean functions. In Section 4, we have studied the behavior of those classes by using different binary operations such as Hamming distance (HD), XOR operation, and Carry value transformation (CVT) . Section 5 deals with concluding remarks emphasizing the key factors of the entire analysis.

#### 2. Relevant Review

An -variable Boolean function is a mapping from the set of all possible -bit strings into . The number of different -variable Boolean functions is , where each function can be represented by a truth table output as a binary string of length . The decimal equivalent of the binary string starting from bottom to top (least significant bit) in the truth table is called the rule number of that function . The complement of is denoted as .

A Boolean function with algebraic expression, where the degree is at most one is called an affine Boolean function. The general form for -variable affine function is where the coefficients are either zero or one.

If the constant term of an affine function is zero then the function is called a linear Boolean function. Thus, affine Boolean functions are either linear Boolean functions or their complements. The number of different -variable affine Boolean functions is out of which are linear. As an example, the 16 affine Boolean functions in -variables are , , , , , , , , , , , , , , , and out of which the first eight are linear and the remaining Boolean functions are their corresponding complements .

The concatenation of the Boolean function with itself and the concatenation of with its complement are denoted as and , respectively. For example,

Note that if is a Boolean function of -variable, then and are Boolean functions of -variable.

Theorem 1. is linear if and only if and are linear.

Apart from the above concatenations as stated in Theorem 1, all other concatenations give non-linear Boolean functions .

Corollary 2. is an affine Boolean function if and only if , , , and are affine Boolean functions.

Proof. The proof of the corollary easily follows from Theorem 1 as affine Boolean functions are either linear Boolean functions or their complements.

#### 3. Proposed Methods for Classification of Boolean Functions

In this section, two different methods have been proposed to classify the set of all possible -variable Boolean functions such that each class is of equal cardinality and contains only a single affine function.

##### 3.1. A Recursive Procedure to Classify -Variable Boolean Functions

Let be a set of all -variable Boolean functions. Here all the Boolean functions are affine. Let be a set containing all linear Boolean functions of -variable, and is the complement of the set . The Cartesian product of the sets with and is defined successively as follows: Note that, contains four classes each containing a -variable Boolean functions whereas, the set contains eight disjoint classes of all -variable Boolean functions. Here, each class contains exactly one -variable affine Boolean function as highlighted above in (3). This process is repeated for the next higher variable, using the recursive formula of the following.(i)Base case: (for ) (ii)Recursion: (for ) where contains the classes of all -variable Boolean functions, where each class contains exactly one -variable affine function. Here both the sets and are complement to each other.

Theorem 3. The recursive procedure of (4) and (5), when repeated up to times, classifies the set of all -variable Boolean functions into number of disjoint classes. such that each class contains exactly one -variable affine Boolean function along with some -variable non-linear Boolean functions.

Proof. The result follows because of the fact that and . And the property that each class contains exactly one -variable affine Boolean function can be ascertained on using Corollary 2 of Section 2.

Illustration (from 2-variable classes to 3-variable classes). From (4) and (5) the set and this set contains the classes of all -variable Boolean functions. The set is the first four classes of and is the set containing the remaining classes of and complement of the set . Now, the classes of -variables are generated using the formula as , , and . Some of the class members are shown in the following: The naming of the classes is given as class , class , class such that the complement of class is the class where . In (7), only the members of and are shown and other classes of Boolean functions are shown in Appendix A.

Theorem 4. The number of different classes in the above classification is .

Proof. As each class contains exactly one affine Boolean function, the number of classes of -variable is the same as the number of affine Boolean functions and equals to .

Theorem 5. The classes are of equal size and the cardinality of each class is equal to .

Proof. The equal size of the classes easily follows from the cardinality of the two sets and . On using Theorem 4, the cardinality of each class = .

Theorem 6. The least significant bit of all the Boolean functions in is , whereas in it is .

Proof. When , that is for the base case of the recursion, the least significant bit position of all the Boolean functions in the set is and for the set it is . Therefore, the recursive procedure using the Cartesian product also preserves the same property for the next higher variable.

Interestingly, the relation defined in the recursive procedure is operating on the set of -variable Boolean functions, but the partition is obtained in the set of -variable Boolean functions. Therefore, an equivalence relation must exist on the set of -variable Boolean functions, which divides the set into disjoint equivalence classes.

Theorem 7. For each class of -variable, the length of a Boolean function is , out of which bits are fixed and the remaining bits are changing with respect to the affine Boolean function of that class. The bit positions of a Boolean function which are fixed in a class are calculated using the formula , where and the values of .

Proof (using mathematical induction). Basis. For , each class contains a single Boolean function of length . Hence both the first and second bit positions are fixed and it satisfies the formula for and . So, the bit positions are and . Hence the formula is valid for .
Induction Hypothesis. Assume that the formula is valid for the classes of -variable Boolean functions, . From recursive definition, the formula is also valid for all the classes of and . Thus, by induction hypothesis, the invariant bit positions of a class of is calculated using the formula as given below:
Induction. Here we have to prove that the formula is true for all classes in . According to the recursive formula where and . Consider a particular class of and let it be . The corresponding classes of which will be generated using must contain the Boolean functions of length , where the first (starting from most significant bit) bit positions are from a single class . And hence by induction hypothesis, number of bit positions is fixed and satisfies (9). From Theorem 6, the least significant bit position of the remaining string of length is for all the members of the classes of . Therefore, the bit positions of a Boolean function, which are fixed in a class of is calculated by adding to all the numbers generated from (9). Along with this, we have to include the least significant bit position (or the first position) in the formula, which gives invariant positions of a class in . Thus for , the formula is calculated as follows:
for , for , the value is 1:
So the formula is true for all the values of . The above formula is also true for all the classes of , as any class in is either generated using the formula or . Hence, by the principle of mathematical induction, we conclude that is true for all positive integers .
Illustration. For every -variable Boolean function, all the bit positions are fixed and the bit positions are and . For every -variable Boolean function, three bit positions are fixed and the bit positions are , , and . Similarly, for every -variable Boolean function, four bit positions are fixed and the bit positions are , , , and . For -variable functions, all classes and their subclasses are given in Appendix A.
The set of bit positions which are changing in a class can be calculated by subtracting the set of invariant bit positions from the set .

Corollary 8. The bit positions which are fixed or changing are invariant for all classes with respect to the concerned affine function of that class.

Proof. The formula given in Theorem 7 is used to calculate the bit positions which are fixed or changing and valid for an arbitrary class. Hence, it is also valid for all classes.

Using the result of Theorem 7, an equivalence relation has been defined on the set of all possible -variable Boolean functions by which the same class or classes can be generated without using recursion.

Let and be two -variable Boolean functions, and is a binary relation on the set of -variable Boolean functions defined as if and only if “there exist bit positions calculated on using Theorem 7 and the calculated bit positions are the same for the functions and .” Clearly, (1). So, is reflexive.(2)If then . So, is symmetric.(3)If and then . So, is transitive. Hence, is an equivalence relation. The next procedure uses the above equivalence relation and can efficiently generate the same class or classes without using the recursive procedure.

##### 3.2. Procedure to Generate the Same Class without Using Recursion

Let be an -variable affine Boolean function. Let be an array which is used to store the bit positions, which are fixed for a Boolean function with respect to the affine function. Array can be calculated using Algorithm 9. The worst case time complexity of the Algorithm is .

Algorithm 9 (fixed-bit positions ()). (1)Initialize (2)for to (3) { (4) = (5) = (6) } (7)return .

By invoking the above function in an algorithm, we can get other non-linear functions in a class. For this purpose, one has to put all possible binary sequences of length , except those fixed bit positions of . Taking different affine functions as input, different classes can be generated.

##### 3.3. List of Inferences Drawn from the above Classification Method

(1)The method of keeping some of the bit positions fixed and varying other bit positions with respect to a Boolean function will be a handle to find out equivalence classes of equal cardinality.(2)The number of equivalence classes is equal to , where is the number of fixed positions.(3)Different set of fixed positions generates different classes of Boolean functions.(4)The number of members in a particular class is for , where is the number of changing bit positions.(5)How to select the set of representative functions that generate disjoint equivalence classes of equal cardinality? The generators are all possible bit sequences in the fixed positions and the rest of the positions are arbitrarily filled up by 0/1. Any Boolean function generated through this procedure can be a representative for the class. The number of generators for the proposed classification is .(6)Any Boolean function of a class can be a representative of that class. In fact, taking affine function as the representative of a class will provide us with the guarantee of the inclusion of that affine function in that class.

#### 4. Different Operations in Classes

In this section, classes are divided into several subclasses on using the Hamming distance (HD) between the Boolean functions and the affine function in that class. Also, the classes are analyzed on performing XOR and CVT operations among the functions of a class.

##### 4.1. Subclassification

Hamming distance (HD) between two Boolean functions is denoted as , where can be where is a Boolean function and is an affine Boolean function and both belong to the same class of -variable. Further, Boolean functions in a class having with respect to the corresponding affine Boolean function form subclasses whose cardinality is binomial coefficients of the form , where .

Illustration. Table 1 shows the -variable Boolean functions belonging to class , where the affine Boolean function is . There are five subclasses having cardinality , , , , and with Hamming distance , , , , and , respectively. For -variables all classes and their subclasses are given in Appendix A.

 Boolean functions Decimal value HD wrt affine Boolean function No. of Boolean function 00000000 (Affine) 0 0 1 00000010 2 1 4 00100000 32 00001000 8 00000100 4 00100010 34 2 6 00001010 10 00101000 40 00001100 12 00000110 4 00100100 36 00101010 42 3 4 00001110 14 00101100 44 00001100 12 00100110 38 00101110 36 4 1
##### 4.2. XOR Operation in Classes

Let and be two -variable Boolean functions belonging to a particular class. The XOR operation of all the classes when arranged in a table only gives those entries given by class functions, as , where, the XOR operation of and is defined as .

Illustration. Suppose we want the XOR operation of = and = both belonging to class of -variables. And == . Table 2 is constructed for all classes of -variable Boolean functions that contain only the XOR values of all the functions in a class. The functions are arranged in ascending order in both rows and columns of the table. It can be proved that the content of each table remain invariant under the XOR operation and the decimal values of the content in the table are same as in class 1. For -variables the XOR operation of other classes are given in Appendix B.

 XOR 0 2 4 6 8 10 12 14 32 34 36 38 40 42 44 46 0 0 2 4 6 8 10 12 14 32 34 36 38 40 42 44 46 2 2 0 6 4 10 8 14 12 34 32 38 36 42 40 46 44 4 4 6 0 2 12 14 8 10 36 38 32 34 44 46 40 42 6 6 4 2 0 14 12 10 8 38 36 34 32 46 44 42 40 8 8 10 12 14 0 2 4 6 40 42 44 46 32 34 36 38 10 10 8 14 12 2 0 6 4 42 40 46 44 34 32 38 36 12 12 14 8 10 4 6 0 2 44 46 40 42 36 38 32 34 14 14 12 10 8 6 4 2 0 46 44 42 40 38 36 34 32 32 32 34 36 38 40 42 44 46 0 2 4 6 8 10 12 14 34 34 32 38 36 42 40 46 44 2 0 6 4 10 8 14 12 36 36 38 32 34 44 46 40 42 4 6 0 2 12 14 8 10 38 38 36 34 32 46 44 42 40 6 4 2 0 14 12 10 8 40 40 42 44 46 32 34 36 38 8 10 12 14 0 2 4 6 42 42 40 46 44 34 32 38 36 10 8 14 12 2 0 6 4 44 44 46 40 42 36 38 32 34 12 14 8 10 4 6 0 2 46 46 44 42 40 38 36 34 32 14 12 10 8 6 4 2 0
##### 4.3. CVT Operation in Classes

Let and be two Boolean functions in a Class. Then the Carry Value Transform (CVT) of and is defined in  as . Carry Value Transformation (CVT) is a kind of representation of -variable Boolean functions and is used to produce many interesting patterns . Under the CVT operation, we have observed some interesting self-similar fractal patterns which are invariant for all classes of -variable Boolean functions.

Illustration. The CVT operation of and is . The patterns for class functions using CVT operation is shown in Table 3 and others are shown in Appendix C. #### 5. Conclusion

The novelty of this paper lies in its systematic classification of Boolean functions with focal emphasis on the prominent binary operations like Hamming distance, XOR, and CVT. The present analytical study introduces a new way towards the formulation of an universal classifier of arbitrary length which is being actively pursued. The procedures followed in this paper are very handy and useful even for our future experimental research in this domain of theoretical computer science. A number of tables have been incorporated in this paper for easy reference and clear comprehension showing varied subclasses, patterns, and values of different classes.

#### A. Subclassification

Table 4 shows the classes and subclasses of 3-variable Boolean functions.

 Class 1 BF DV HD No. of BF 00000000 0 0 1 00000010 2 1 4 00100000 32 00001000 8 00000100 4 00100010 34 2 6 00001010 10 00101000 40 00001100 12 00000110 6 00100100 36 00101010 42 3 4 00001110 14 00101100 44 00100110 38 00101110 46 4 1 Class 2 BF DV HD No. of BF 10101010 170 0 1 10100010 162 1 4 10101000 168 10001010 138 10101110 174 10100000 160 2 6 10000010 130 10001000 136 10101100 172 10001110 142 10100110 166 10000000 128 3 4 10001100 140 10100100 164 10000110 134 10000100 132 4 1 Class 3 BF DV HD No. of BF 11001100 204 0 1 11001000 200 1 4 11001110 206 11101100 236 11000100 196 11000000 192 2 6 11001010 202 11101000 232 11101110 238 11000110 198 11100100 228 11000010 194 3 4 11100000 224 11101010 234 11100110 230 11100010 226 4 1 Class 4 BF DV HD No. of BF 01100110 102 0 1 01100010 98 1 4 01101110 110 01100100 100 01000110 70 01100000 96 2 6 01000010 66 01101010 106 01101100 108 01001110 78 01000100 68 01000000 64 3 4 01101000 104 01001010 74 01001100 76 01001000 72 4 1 Class 5 BF DV HD No. of BF 11110000 240 0 1 11110010 242 1 4 11010000 208 11111000 248 11110100 244 11010010 210 2 6 11111010 250 11011000 216 11111100 252 11110110 246 11010100 212 11011010 218 3 4 11111110 254 11011100 220 11010110 214 11011110 222 4 1 Class 6 BF DV HD No. of BF 01011010 90 0 1 01010010 82 1 4 01011000 88 01111010 122 01011110 94 01010000 80 2 6 01110010 114 01111000 120 01011100 92 01111110 126 01010110 86 01110000 112 3 4 01111100 124 01010100 84 01110110 118 01110100 116 4 1 Class 7 BF DV HD No. of BF 00111100 60 0 1 00111000 56 1 4 00111110 62 00011100 28 00110100 52 00110000 48 2 6 00111010 58 00011000 24 00011110 30 00110110 54 00010100 20 00110010 50 3 4 00010000 16 00011010 26 00010110 22 00010010 18 4 1 Class 8 BF DV HD No. of BF 10010110 150 0 1 10010010 146 1 4 10011110 158 10010100 148 10110110 182 10010000 144 2 6 10110010 178 10011010 154 10011100 156 10111110 190 10110100 180 10110000 176 3 4 10011000 152 10111010 186 10111100 188 10111000 184 4 1 Class 9 BF DV HD No. of BF 11111111 255 0 1 11111101 253 1 4 11011111 223 11110111 247 11111011 251 11011101 221 2 6 11110101 245 11010111 215 11110011 243 11111001 249 11011011 219 11010101 213 3 4 11110001 241 11010011 211 11011001 217 11010001 209 4 1 Class 10 BF DV HD No. of BF 01010101 85 0 1 01011101 93 1 4 01010111 87 01110101 117 01010001 81 01011111 95 2 6 01111101 125 01110111 119 01010011 83 01110001 113 01011001 89 01111111 127 3 4 01110011 115 01011011 91 01111001 121 01111011 123 4 1 Class 11 BF DV HD No. of BF 00110011 51 0 1 00110111 55 1 4 00110001 49 00010011 19 00111011 59 00111111 63 2 6 00110101 53 00010111 23 00010001 17 00111001 57 00011011 27 00111101 61 3 4 00011111 31 00010101 21 00011001 25 00011101 29 4 1 Class 12 BF DV HD No. of BF 10011001 153 0 1 10011101 157 1 4 10010001 145 10011011 155 10111001 185 10011111 159 2 6 10111101 189 10010101 149 10010011 147 10110001 177 10111011 187 10111111 191 3 4 10010111 151 10110101 181 10110011 179 10110111 183 4 1 Class 13 BF DV HD No. of BF 00001111 15 0 1 00001101 13 1 4 00101111 47 00000111 7 00001011 11 00101101 45 2 6 00000101 5 00100111 39 00000011 3 00001001 9 00101011 43 00100101 37 3 4 00000001 1 00100011 35 00101001 41 00100001 33 4 1 Class 14 BF DV HD No. of BF 10100101 165 0 1 10101101 173 1 4 10100111 167 10000101 133 10100001 161 10101111 175 2 6 10001101 141 10000111 135 10100011 163 10000001 129 10101001 169 10001111 143 3 4 10000011 131 10101011 171 10001001 137 10001011 139 4 1 Class 15 BF DV HD No. of BF 11000011 195 0 1 11000111 199 1 4 11000001 193 11100011 227 11001011 203 11001111 207 2 6 11000101 197 11100111 231 11100001 225 11001001 201 11101011 235 11001101 205 3 4 11101111 239 11100101 229 11101001 233 11101101 237 4 1 Class 16 BF DV HD No. of BF 01101001 105 0 1 01101101 109 1 4 01100001 97 01101011 107 01001001 73 01101111 111 2 6 01001101 77 01100101 101 01100011 99 01000001 65 01001011 75 01001111 79 3 4 01100111 103 01000101 69 01000011 67 01000111 71 4 1
BF: Boolean function, DV: decimal value, HD: Hamming distance, and No. BF: number of Boolean functions.

#### B. XOR Operations in Classes

Table 5 shows the XOR operation values of class-1, class-2 and class-3 of 3-variable Boolean functions.

(a)
 XOR 0 2 4 6 8 10 12 14 32 34 36 38 40 42 44 46 0 0 2 4 6 8 10 12 14 32 34 36 38 40 42 44 46 2 2 0 6 4 10 8 14 12 34 32 38 36 42 40 46 44 4 4 6 0 2 12 14 8 10 36 38 32 34 44 46 40 42 6 6 4 2 0 14 12 10 8 38 36 34 32 46 44 42 40 8 8 10 12 14 0 2 4 6 40 42 44 46 32 34 36 38 10 10 8 14 12 2 0 6 4 42 40 46 44 34 32 38 36 12 12 14 8 10 4 6 0 2 44 46 40 42 36 38 32 34 14 14 12 10 8 6 4 2 0 46 44 42 40 38 36 34 32 32 32 34 36 38 40 42 44 46 0 2 4 6 8 10 12 14 34 34 32 38 36 42 40 46 44 2 0 6 4 10 8 14 12 36 36 38 32 34 44 46 40 42 4 6 0 2 12 14 8 10 38 38 36 34 32 46 44 42 40 6 4 2 0 14 12 10 8 40 40 42 44 46 32 34 36 38 8 10 12 14 0 2 4 6 42 42 40 46 44 34 32 38 36 10 8 14 12 2 0 6 4 44 44 46 40 42 36 38 32 34 12 14 8 10 4 6 0 2 46 46 44 42 40 38 36 34 32 14 12 10 8 6 4 2 0
(b)
 XOR 128 130 132 134 136 138 140 142 160 162 164 166 168 170 172 174 128 0 2 4 6 8 10 12 14 32 34 36 38 40 42 44 46 130 2 0 6 4 10 8 14 12 34 32 38 36 42 40 46 44 132 4 6 0 2 12 14 8 10 36 38 32 34 44 46 40 42 134 6 4 2 0 14 12 10 8 38 36 34 32 46 44 42 40 136 8 10 12 14 0 2 4 6 40 42 44 46 32 34 36 38 138 10 8 14 12 2 0 6 4 42 40 46 44 34 32 38 36 140 12 14 8 10 4 6 0 2 44 46 40 42 36 38 32 34 142 14 12 10 8 6 4 2 0 46 44 42 40 38 36 34 32 160 32 34 36 38 40 42 44 46 0 2 4 6 8 10 12 14 162 34 32 38 36 42 40 46 44 2 0 6 4 10 8 14 12 164 36 38 32 34 44 46 40 42 4 6 0 2 12 14 8 10 166 38 36 34 32 46 44 42 40 6 4 2 0 14 12 10 8 168 40 42 44 46 32 34 36 38 8 10 12 14 0 2 4 6 170 42 40 46 44 34 32 38 36 10 8 14 12 2 0 6 4 172 44 46 40 42 36 38 32 34 12 14 8 10 4 6 0 2 174 46 44 42 40 38 36 34 32 14 12 10 8 6 4 2 0
(c)
 XOR 192 194 196 198 200 202 204 206 224 226 228 230 232 234 236 238 192 0 2 4 6 8 10 12 14 32 34 36 38 40 42 44 46 194 2 0 6 4 10 8 14 12 34 32 38 36 42 40 46 44 196 4 6 0 2 12 14 8 10 36 38 32 34 44 46 40 42 198 6 4 2 0 14 12 10 8 38 36 34 32 46 44 42 40 200 8 10 12 14 0 2 4 6 40 42 44 46 32 34 36 38 202 10 8 14 12 2 0 6 4 42 40 46 44 34 32 38 36 204 12 14 8 10 4 6 0 2 44 46 40 42 36 38 32 34 206 14 12 10 8 6 4 2 0 46 44 42 40 38 36 34 32 224 32 34 36 38 40 42 44 46 0 2 4 6 8 10 12 14 226 34 32 38 36 42 40 46 44 2 0 6 4 10 8 14 12 228 36 38 32 34 44 46 40 42 4 6 0 2 12 14 8 10 230 38 36 34 32 46 44 42 40 6 4 2 0 14 12 10 8 232 40 42 44 46 32 34 36 38 8 10 12 14 0 2 4 6 234 42 40 46 44 34 32 38 36 10 8 14 12 2 0 6 4 236 44 46 40 42 36 38 32 34 12 14 8 10 4 6 0 2 138 46 44 42 40 38 36 34 32 14 12 10 8 6 4 2 0

#### C. CVT Operations in Classes

Table 6 shows the CVT (Carry Value Transformation) patterns of class 1, class 2 and class 3 of 3-variable Boolean Functions.

(a) (b) (c) #### Acknowledgment

The authors are grateful to Professor Birendra Kumar Nayak of Utkal University and Mr Sk. Sarif Hassan of Institute of Mathematics and Applications, Bhubaneswar, for their valuable suggestions.

1. D. Slepian, “On the number of symmetry types of Boolean functions of $n$ variables,” Canadian Journal of Mathematics, vol. 5, no. 2, pp. 185–193, 1953.
2. S. W. Golomb, “On the classification of Boolean functions,” IRE Transactions on Circuit Theory, vol. 6, no. 5, pp. 176–186, 1959. View at: Publisher Site | Google Scholar
3. M. A. Harrison, “On the classification of Boolean functions by the general linear and affine groups,” Journal of the Society for Industrial and Applied Mathematics, vol. 12, no. 2, pp. 285–299, 1964.
4. V. P. Correia and A. I. Reis, “Classifying n-input Boolean functions,” in Proceedings of the 7th Workshop IBERCHIP (IWS '01), pp. 58–66, Montevideo, Uruguay, March 2001. View at: Google Scholar
5. A. Braeken, Y. Borissov, S. Nikova, and B. Preneel, “Classification of Boolean functions of 6 variables or less with respect to some cryptographic properties,” in Automata, Languages and Programming, L. Caires, G. F. Italiano, L. Monteiro, C. Palamidessi, and M. Yung, Eds., vol. 3580 of Lecture Notes in Computer Science, pp. 324–334, Springer, Berlin, Germany, 2005.
6. P. Stănică and S. H. Sung, “Boolean functions with five controllable cryptographic properties,” Designs, Codes and Cryptography, vol. 31, no. 2, pp. 147–157, 2004.
7. Y. V. Taranikov, “On resilient functions with maximum possible nonlinearity,” in Progress in Cryptology—INDOCRYPT 2000, B. Roy and E. Okamoto, Eds., vol. 1977 of Lecture Notes in Computer Science, pp. 19–30, Springer, 2000. View at: Publisher Site | Google Scholar
8. X.-M. Zhang and Y. Zheng, “Cryptographically resilient functions,” IEEE Transactions on Information Theory, vol. 43, no. 5, pp. 1740–1747, 1997.
9. W. Millan, A. Clark, and E. Dawson, “Heuristic design of cryptographically strong balanced Boolean functions,” in Advances in Cryptology—EUROCRYPT'98, K. Nyberg, Ed., vol. 1403 of Lecture Notes in Computer Science, pp. 489–499, Springer, 1998. View at: Publisher Site | Google Scholar
10. P. P. Choudhury, S. Sahoo, and M. Chakraborty, “Characterization of the evolution of nonlinear uniform cellular automata in the light of deviant states,” International Journal of Mathematics and Mathematical Sciences, vol. 2011, Article ID 605098, 16 pages, 2011. View at: Publisher Site | Google Scholar | MathSciNet
11. P. P. Choudhury, S. Sahoo, M. Chakraborty, S. K. Bhandari, and A. Pal, “Investigation of the global dynamics of cellular automata using Boolean derivatives,” Computers and Mathematics with Applications, vol. 57, no. 8, pp. 1337–1351, 2009.
12. S. Sahoo, P. P. Choudhury, and M. Chakraborty, “Characterization of any non-linear Boolean function using a set of linear operators,” Journal of Orissa Mathematical Society, vol. 2, no. 1-2, pp. 111–133, 2010. View at: Google Scholar
13. P. P. Choudhury, S. Sahoo, B. K. Nayak, and Sk. S. Hassan, “Theory of Carry Value Transformation (CVT) and its application in fractal formation,” Global Journal of Computer Science and Technology, vol. 10, no. 14, pp. 98–107, 2010. View at: Google Scholar
14. S. Wolfram, A New Kind of Science, Wolfram Media, Champaign, Ill, USA, 2002. View at: MathSciNet
15. B. K. Nayak, S. Sahoo, and S. Biswal, “Cellular automata rules and linear numbers,” http://arxiv.org/abs/1204.3999. View at: Google Scholar

#### More related articles

Article of the Year Award: Outstanding research contributions of 2020, as selected by our Chief Editors. Read the winning articles.