Nested Canalizing Functions (NCFs) were introduced in . One important characteristic of (nested) canalizing functions is that they exhibit a stabilizing effect on the dynamics of a system. Roughly speaking, phase spaces of stable systems tend to have few components and short limit cycles.
It was shown in  that the class of nested canalizing functions is identical to the class of so-called unate cascade Boolean functions, which have been studied extensively in engineering and computer science. It was shown in  that this class produces the binary decision diagrams with the shortest average path length. Thus, a more detailed mathematical study of NCF has applications to problems in engineering as well. Recently, canalizing and (partially) nested canalizing functions received a lot of attention [17, 18, 19, 20, 21, 22, 23, 24, 27, 28, 29, 30].
In , Cook et al. introduced the notion of sensitivity as a combinatorial measure for Boolean functions by providing lower bounds on the time needed by CREW PRAM (Concurrent Read Exclusive Write Parallel Random Access Machine). It was extended by Nisan  to block sensitivity. Certificate complexity was first introduced by Vishkin and Wigderson .
In , a complete characterization for nested canalizing functions is obtained via its unique algebraic normal form. Based on the algebraic normal form of NCFs, explicit formulas for the number of nested canalizing functions and the average sensitivity of any NCF were provided.
In [28, 30], the formula of the (maximal) sensitivity of any NCF was obtained based on a characterization of NCF from . It was showed that the block sensitivity and the -block sensitivity are the same as the sensitivity for NCF.
In , the author proved sensitivity is same as the certificate complexity for read-once functions. We know certificate complexity of NCF is same as the sensitivity since NCF function is read-once.
In this paper, we obtained the formula of - certificate complexity, and of NCF. Hence, as a by product, we obtained an a direct proof of the certificate complexity formula which is still same as the formula of sensitivity of NCF [28, 30].
Recently, Hao Huang proved the long standing Sensitivity Conjecture . Actually, for any Boolean function , Hao Huang proved that , where is the block sensitivity of and is the sensitivity of .
Symmetric Boolean functions have important applications in code theory and cryptography and have been intensively studied in literature. In section 4, based on a Theorem 4.2 in , we study the properties of symmetric nested canalizing functions. We significantly simplify the proofs of some theorems in . We also investigate the relation between the layer number and the symmetric level for NCFs. For , we obtain the explicit formula of the number of -variable -symmetric Boolean NCFs. When , this number is the cardinality of all the strongly asymmetric NCFs. Through an example, we find the enumeration in Theorem 3.8 in  is incomplete. Actually, we prove the cardinality of all the -variable strongly asymmetric NCFs with maximal layer number is . Hence, all the strongly asymmetric NCFs are more than when .
In this section, we introduce the definitions and notations. Let . If : , it is well known  that can be expressed as a polynomial, called the algebraic normal form (ANF):
where each . The symbol stands for addition modulo 2.
Let be a Boolean function in variables. Let be a permutation on . The function is nested canalizing (NCF) in the variable order with canalizing input values and canalized values , if it can be represented in the form
Where .The function f is nested canalizing if f is nested canalizing in the variable order for some permutation .
 Given , is nested canalizing iff it can be uniquely written as
Where , , for , , , , .
Because each NCF can be uniquely written as (2.1) and the number is uniquely determined by , we can define the following.
3. Certificate Complexity of NCF
Let , . For any subset of , we form by complementing those bits in indexed by elements of . We write for .
In the above definition, =.
 The block sensitivity of at is the maximum number of disjoint subsets of such that, for all , . We refer to such a set as a block. The block sensitivity of , denoted , is .
 The -block sensitivity of at , , is the maximum number of disjoint subsets of such that, for all , and . The -block sensitivity of , denoted , is .
Obviously, we have and .
Certificate complexity was first introduced by Vishkin and Wigderson . This measure was initially called sensitive complexity. In the following, we will slightly modify (actually, simplify) the definition of certificate but the definition of certificate complexity will be the same.
Given Boolean function and a word , if and the restriction function is a constant function, the constant is , then we call the subset a certificate of the function on the word .
The certificate complexity of on is defined as the smallest cardinality of a certificate of on . The certificate complexity of is defined as . The -certificate complexity of , , is defined as .
From the definition we know . Since a certificate for a word will have to contain at least one index of the variable in each sensitive block, we have .
Let and . We list the certificate complexity of on every word in Table 1.
It is easy to check and , where . Hence, .
Let be a Boolean function, be a permutation on ,
. If and , then the certificate complexities of , , , and are the same.
Because is a constant function if and only if
is a constant function. Hence, for any , then .
Because is a constant function if and only if
is a constant function. Hence, for any and given . We get since is a bijection over .
Because is a constant if and only if is a constant, we get . Actually, and . ∎
In the following, we assume
and , ,, .
Let , where , , ,
First, use induction we can rewrite the equation(3.1) as the following
If , then , . Hence, .
Actually, , and , with . ∎
We already obtained the certificate complexity of when . We are ready to prove the following theorem.
and , ,, , , then
We will use induction on to prove the first formula, the proof of the second one is similar.
If , then . We will calculate for every such that . Since if and only if or but , we divide all the into two disjoint groups.
At this moment, there is at least one of the bits ofin the first layer must be 0. Obviously, for such , .
Group 2: and
At this moment, there is only one possibility, namely, . It is easy to check since is the number of the variables in .
Take the maximal value, we get .
If , then or or but . There are two disjoint groups.
In this group, the certificate complexity for each word is 1.
Group B: , and
In this group, . First of all, if we just assign the values of the variables in and ( all of them in are 1s), because , the variables in will never disappear (which means the function is not constant). So, we must chose some variables in to assign the value. Obvious, chose 0 bits of in to assign, then will be reduced to . Obviously, Chose all the bits on to assign is necessary and sufficient to make zero. So, in this group, for any , we have .
In summary, take the maximal value, we get
Now we assume the first formula is true for any NCF with no more than layers.
Let us consider =
we get .
It is clear that or , and .
We will evaluate for all with in the following
Case 1: (There is at least one 0 bit in the first layer of )
In this case, the certificate complexity of the word is 1.
Case 2: , and
In this case, , where is a word with length .
Obviously, we have if and only if .
For a fixed (equivalently, a fixed ), we try to reduce to zero by assigning values of to the variables of . Since will never be zero, we must try to reduce to zero first. Once is zero, we get . Hence, we have . Hence,
Since is a NCF with layers (the first layer is , the second layer is and so on), by the induction assumption, we have
Since for any word in case 1, the certificate complexity is only 1, in summary, we get
. Because , we get the third formula. ∎
Because of Lemma 3.7, we have
If any NCF is written as the one in Theorem 2.1, then
Hence, the certificate complexity of NCF is uniquely determined by it layer structure
We have for any NCF . Both the lower and upper bounds are tight.
4. Symmetric Properties of NCF
In 1938, Shannon  recognized that symmetric functions have particularly efficient switch network implementation. Since then, a lot of research have been done on symmetric or partially symmetric Boolean functions. Symmetry detection is important in logic synthesis, technology mapping, binary decision diagram minimization, and testing [2, 3, 4]. In , the authors investigated the symmetric and partial symmetric properties of Boolean NCFs. They also presented an algorithm for testing whether a given partial symmetric function is a NCF. In this section, We will use a formula in  to give very simple proofs for several theorems in . We will also study the relation between the number of layers and the level of the partial symmetry (the function is -symmetric) of NCFs. Furthermore, we will obtain the formula of the number of -variable -symmetric NCF functions. Particularly, We obtained the formula of the number of all the strongly asymmetric NCF functions. Through an explicit example, we show that the enumeration in Theorem 3.8 in  is incomplete. We will start this section by providing some basic definitions and notations.
A permutation over is a bijection from to . It is well known that a permutation can be written as the product of disjoint cycles. A -cycle, , , will send to for and send to . Namely, . A -cycle is called a transpositions. Any permutation can be written as a product of (may not be disjoint) transpositions. In fact, .
Given Boolean function , if there is a -cycle such that , namely, , then we call variable is equivalent to and this is written as .
Obviously, is an equivalence relation over . We call a symmetric class of . Of course, we have . Let and be the cardinality of , we call -symmetric.
Please note, -symmetric in this paper is equivalent to properly -symmetric in .
Let , then , , . This function is -symmetric.
If there is an index such that , i.e, , then we call is partially symmetric. If , We call totally symmetric or symmetric. -symmetric is also called not partially symmetric.
For the application of -symmetric (totally symmetric) Boolean function in cryptography, Anne Canteaut and Marion Videau presented an extensive study in 2005, more results on symmetric Boolean function can be found in [7, 8, 9, 10, 11, 12, 13, 14, 15].
A Boolean function is strongly asymmetric if implies is identity.
Obviously, if a Boolean function is strongly asymmetric then it is -symmetric.
Let , it is easy to check that is -symmetric (not partially symmetric)but not strongly asymmetric since
In the equation (2.1), we call the canalizing input of the variable .
(Theorem 3.1 in ) Let be a symmetric class for a Boolean NCF , then must be in the same layer with same canalizing input.
This follows immediately from the uniqueness of the equation (2.1). ∎
As a matter of fact, in each layer , for , there are either one or two symmetric classes. One class has canalizing input 0, the other one has canalizing input 1. Obviously, if one layer has more than 2 variables, then there are at least two variables have the same canalizing inputs. Hence, this layer has a symmetric class with at least 2 variables. On the other hand, all the variables from different layers must belong to different symmetric classes, and each layer contributes at most two symmetric classes. From equation (2.1), the last layer has at least two variables, so, we have . In summary, we have
For , let be the layer structure of a Boolean NCF , if for some . Then is partially symmetric. Besides, if NCF is -symmetric, then .
Let be the number of layers of -symmetric NCF , then
The following property is also a straightforward application of the uniqueness of equation (2.1).
(Theorem 3.2 in ) If Boolean NCF contains layers with only one canalizing input, and layers with two distinct canalizing inputs. Then, is ()-symmetric.
(Theorem 3.7 in ) A -variable Boolean NCF is strongly asymmetric iff it is -symmetric.
We already know that strongly asymmetry implies -symmetry.
If NCF is -symmetric, i.e., not partially symmetric, then each layer has at most two variables by proposition 4.6. If there is a permutation such that , let be a product of disjoint cycles, then we have for . Because of the uniqueness of the equation (2.1), we know and must be in the same layer. Since each layer has at most two variables, we know for are all identity or transpositions (with length 1 or 2). But if there is a transpositions, then will be partially symmetric. Hence, all the are identities. Therefore, is identity and is strongly asymmetric. ∎
There are -variable strongly asymmetric NCFs.
Let , and be -symmetric NCF, or equivalently, strongly asymmetric NCF. By proposition 4.6, the layer number is either or .
Let be the layer structure. First, we know since is the last layer. Second, is -symmetric, so by proposition 4.6. Therefore, , hence, and we get
, and , where . So, obviously, there are distinct -variable strongly asymmetric NCFs.
Let be the layer structure, we have , and
, , and . Obviously, there are such -variable strong asymmetric NCFs.
In total, there are -variable strong asymmetric NCFs.
In theorem 3.8 in , it is claimed that the number of -variable strongly asymmetric NCFs is , when , this number is . Since , it is clear the enumeration in  is incomplete by the above example.
The function in Example 4 of  can be written as , where , . It is clear this function has two layers since the last layer must has at least two variables.
In the following we will count the number of -symmetric NCF For . Let be the cardinality of the set of all the -variable -symmetric Boolean NCFs. First, we have
(Proposition 3.9 in ) If , then
Since is 1-symmetric, i.e., totally symmetric, then the layer number must be one and all the canalizing inputs must be the same. So, must be one of the following functions: , , , . ∎
For , the number of all the variable -symmetric NCFs ( Strongly asymmetric NCFs) is
If , then it can be simplified as
By Theorem 2.1, we have
1. It is clear that has two choices.
2. By proposition 4.6, we get .
3. For each layer structure , , (Proposition 4.6) for and , there are
ways to distribute the variables to each layer , .
4. For each layer , , it is either or , in any case, there are two choices. Hence, totally, choices.
Combine all the information above, we obtain the formula of .
When , we simplify the above formula and get and and .
We have obtained the formula of