Keywords

1 Introduction

Symmetric Boolean functions [5] have being widely used as components of different cryptosystems [25] (e.g. in stream ciphers, block ciphers or hash functions). In combinatorial mathematics [10], a symmetric Boolean function is a Boolean function whose value does not depend on the permutation of its input bits [4], i.e. it depends only on the number of ones in the input on n variables of 0–1 vectors [21]. A total of \(2^{n}\) vectors are composed of a vector space or a phase space for the construction [19]. For a specific symmetric Boolean function, it is necessary to have invariant properties undertaken a special group of permutations [18]. For example, rotation symmetric Boolean functions are invariant under the circular translation of indices. In addition to rotation symmetric properties, multiple invariants (combination, crossing, reflection, translation) may be composed of various symmetric subgroups of permutations [10, 22]. Various combinatorial counting schemes are explored [34,35,36].

1.1 Symmetric Functions—Combinatorial Invariant

From a combinatorial viewpoint, symmetric Boolean functions are a combinatorial invariant that links to the number of one elements \(p, 0\le p \le n\) in a vector [35]. In combinatorics, this type of function has being linked to binomial coefficients, and normally, there are \(n+1\) partitions to distinct the parameter of a measuring phase space into various clusters [30]. Symmetric Boolean functions are characterized [36] by the fact that their outputs only depend on the p numbers of their inputs. The usefulness of symmetric functions in a cryptographic context has being widely explored which possess good cryptographic properties [6, 7].

1.2 Crossing Number - Topological Invariant

A zero-crossing [23] describes a point where the sign of a mathematical function changes (e.g. from positive to negative), represented by a crossing of the axis (zero value) in the graph of the function. It is a commonly used term in electronics, mathematics, sound and image processing.

From a measuring viewpoint, a 0–1 vector with n bits can be expressed as a circular ring that has a fixed crossing number \(q, 0\le q \le \lfloor \frac{n}{2} \rfloor \) distinguished a number of derivative changes on either 0–1 or 1–0, respectively. This type of derivative invariant is widely used in crypto-analysis for many years. In NIST random data testing packages [1], binary derivative [3] and Runs tests [2] play an important role to measure the randomness of a binary sequence formed by a pseudorandom number generator for use in cipher systems. From an analytic viewpoint, this parameter is a topological invariant and different from a combinatorial invariant to provide another type of partition capacities to organize a set of clusters in a measuring phase space.

1.3 Rotation Symmetric Functions - Geometric Invariant

In combinatorial mathematics, rotation symmetric properties are widely explored from early stage of abstract group theories and symmetric group constructions [10, 22] as a geometric invariant. Filiol and Fontaine [12] were initially explored on balanced Boolean functions with a good correlation immunity. Pieprzyk and Qu [26] were applied in crypto-applications to use Rotation Symmetric Boolean Functions (RSBF) as components in the rounds of a hashing algorithm.

Extensive R&D activities on RSBF are continuous for last decades, a list of advanced works explored, such as degree and non-linearity [6], optimal algebraic immunity [7], bent and semi-bent functions [8, 33], non-linearity of resilient, non-linear Boolean functions [20, 28], balanced Boolean functions [12, 16], non-linear balanced Boolean functions [31], weights and non-linearity [11], immune combining functions [32], count and cryptographic properties [13, 29], etc.

1.4 Trinomial Coefficients

It is a natural approach [10, 18, 19] to apply binomial coefficients to partition a measuring phase space on 0–1 vector sets. However, when parameters increase more than three, a generalization [34,35,36] using multinomial coefficients may not provide a general solution on further refined partitions, if the processed phase space is composed of 0–1 vectors. It is convenient for us to use a trinomial expression to show this fact.

Let \(n = n_{1} + n_{2} + n_{3}, 0 < n,\)

$$ \left( {\begin{array}{c}n\\ n_{1},n_{2},n_{3}\end{array}}\right) = \frac{n!}{n_{1}!n_{2}!n_{3}!}, $$

collecting all possible trinomial coefficients, we have

$$\begin{aligned} \sum _{\forall n_{1},n_{2},n_{3}} \left( {\begin{array}{c}n\\ n_{1},n_{2},n_{3}\end{array}}\right) = 3^{n} \ne 2^{n}. \end{aligned}$$
(1)

From Eq. 1, it is interesting to notice that trinomial coefficients provide further segments to partition three-valued 0–2 vectors. Due to this reason, extensions using multinomial coefficients may not be directly relevant to binary-valued 0–1 vector sets. Refined identity equations of combinatorics are required [14, 15].

1.5 Variant Symmetric Schemes - Variant Invariants

Various schemes to use multiple invariants to partition special phase spaces have being explored in binary image analysis and processing for many years. In 1990s, Zheng [39, 40] proposed conjugate classifications to apply seven invariants in a hierarchy to partition the kernels of four regular plane lattices on \(n=\{4,5,7,9\}\) cases for 2D binary images. For n-tuple 0–1 vectors, variant logic frameworks [41, 42] are proposed in 2010s, various applications are explored, such as 3D visual method [37], variant Pseudorandom Number Generator (PRNG) [38, 43], computational simulation on quantum interactions [44,45,46,47] and non-coding DNA analysis [48,49,50].

1.6 Organization of the Chapter

In this chapter, an algebraic equation of variant trinomial will be proposed as a kernel structure to arrange a hierarchical phase space. This extension provides a general framework of multiple symmetric operations to support three numeric numbers: combinatorial, crossing and variant in a hierarchy. Three meta clusters of measuring phase spaces are identified by the three invariants: \(\{n,p,q\}\) and their combinations. Refined levels can be compared with the rotation symmetric scheme under \(n=\{1,2,3,4,5\}\) conditions. Similarities and differences among the four schemes are explored.

In Sect. 2, symbols and local counting properties of symmetric clusters in measuring spaces are defined, algebraic equations are formulated and two important projections are discussed. In Sect. 3, variant symmetric clusters and their elementary equation are proposed. In Sect. 4, four number sets of symmetric clusters are explored from a global viewpoint. In Sect. 5, symmetric Boolean functions of selected clusters are constructed and both algebraic and approximate numeric properties are discussed. In Sect. 6, cryptographic properties of symmetric Boolean functions in a hierarchy are discussed and special properties on the variant scheme are stressed. Section 7 is the conclusion of the chapter. Main results of the chapter are expressed in a list of theorems and corollaries in Sects. 25, respectively.

Table 1 Basic symbols

2 Symmetric Clusters in Measuring Phase Spaces

In this section, basic symbols, primary definitions and algebraic formulas are defined for different clusters in their measuring phase spaces.

2.1 Basic Symbols

Main symbols in this chapter are listed in Table 1.

2.2 Primary Definitions

Definition 1

(x an n-tuple vector on 0–1 variables) Let x be a 0–1 vector with n length.

$$\begin{aligned} x=(x_{n-1},\ldots ,x_{i},\ldots ,x_{0}), 0\le i < n, x_{i}\in \{0,1\}=B_{2}, x\in B_{2}^{n}, \end{aligned}$$
(2)

e.g. \(x=110010, n=6\).

Definition 2

(I index for a vector x) For a vector x, let I or I(x) be an index:

$$\begin{aligned} I=I(x)=\sum _{i=0}^{n-1} x_{i}*2^{i}, \end{aligned}$$
(3)

e.g. \(x=110010, I(x) = 2^5 + 2^4 + 2 =32+16+2 = 50\).

Definition 3

(\(\varOmega (n)\) a full set of n-tuple 0–1 vectors) Let \(\varOmega (n)\) be a vector space or a phase space of all n-tuple 0–1 vectors,

$$\begin{aligned} \varOmega (n)=\{\forall x| 0\le I< 2^{n}, x\in B_{2}^{n}\} \text { and } \varOmega (n)=B_{2}^{n}. \end{aligned}$$
(4)

Definition 4

Let \(f_{\varOmega }(n)\) denote a number of vectors in \(\varOmega (n)\).

Lemma 1

\(f_{\varOmega }(n)\) is equal to \(2^n\).

Proof

For a vector \(x\in B_{2}^{n}\) from \(0\ldots 0\) to \(1\ldots 1\), its index I can cover a full region of \(0\le I < 2^{n}\), so \(\varOmega (n)\) contains \(2^n\) distinct vectors and \(f_{\varOmega }(n)=2^n\).

Definition 5

(Measuring Phase Space) If a phase space can be organized by various invariants, then it is a measuring phase space and its dimension is determined by a number of active invariants.

Corollary 1

For any \(n>0\), \(\varOmega (n)\) is a measuring phase space in zero dimension.

Proof

For any \(n>0\), \(\varOmega (n)\) is composed of one cluster of vectors as a single point.

Definition 6

(R rotation operator) Let R(xr) be a rotation operator on a vector x rotation \(-n< r <n\) positions:

$$\begin{aligned} R(x;r)= & {} R(x_{n-1},\ldots ,x_{i},\ldots ,x_{0};r) \nonumber \\= & {} (x_{n-1+r\mod n},\ldots ,x_{i+r\mod n},\ldots ,x_{0+r\mod n}), \end{aligned}$$
(5)

e.g. \(x=110010, \{R(x;r)\}_{r=0}^{5} = \{110010,100101,001011,010110,101100,011001\}\) with six distinct vectors.

Lemma 2

(Maximal cyclic structure) Initially from any vector x under a rotation operator, at most n distinct vectors will be distinguished under the rotation operator.

Proof

From any x, a set of \(\{R(x;r)\}_{r=0}^{n-1}\) with n vectors can be generated. If the listed set of n vector sequences contains more than one cycle, then the number of distinct vectors will be less than n.

For example, \(x=110110, \{R(x;r)\}_{r=0}^{5} = \{110110,101101,011011,110110,101101,011011\}\) with only a set of three distinct vectors: \(\{110110,101101,011011\}\).

Definition 7

(F reflection operator) Let F(x) be a reflect operator,

$$\begin{aligned} F(x)=F(x_{n-1},\ldots ,x_{i},\ldots ,x_{0})=(x_{0},\ldots ,x_{i},\ldots ,x_{n-1}), 0\le i <n. \end{aligned}$$
(6)

Lemma 3

(A pair of reflections) For any vector x, only two results are distinguished under F(x) operation: (1) \(F(x)=x\); (2) \(F(x)\ne x\).

Proof

(1) If \(F(x)=x\), then the values of the vector x are distributed as a central symmetric form; (2) if \(F(x)\ne x\), then the vector x does not have a symmetric distribution.

For example, \(x=110010,F(x)=010011\); \(y=110011,F(y)=110011\).

Definition 8

(p number of one elements) Let p or p(x) be a number of one elements in x,

$$\begin{aligned} p=p(x) = \sum _{i=0}^{n-1} x_{i}, 0\le p \le n. \end{aligned}$$
(7)

For example, \(x=110010,p(x)=3\); \(y=110011,p(y)=4\).

Definition 9

(q number of cyclic crossings) Let q or q(x) be a number of cyclic crossings either 0–1 or 1–0 in a vector x,

$$ \begin{aligned} q=q(x) =\sum _{0\le i<n} (x_{i}\equiv 0) \& (x_{i+1}\equiv 1); x_{i},x_{i+1}\in B_{2}, (i+1) \mod n; \nonumber \\ =\sum _{0\le i <n} (x_{i}\equiv 0) \& (x_{i-1}\equiv 1); x_{i},x_{i-1}\in B_{2}, (i-1) \mod n; \nonumber \\ 0\le q \le \lfloor \frac{n}{2} \rfloor . \end{aligned}$$
(8)

For example, \(x=110010,q(x)=2\); \(y=110011,q(y)=1\).

2.3 Counting Properties on Rotation Clusters

Definition 10

(G(mn) m-th rotation symmetric cluster) Let G(mn) be an m-th rotation symmetric cluster of vectors, \(G(m,n)=\varOmega (n|m) \subset \varOmega (n)\) in \(\varOmega (n)\), and let a total number of rotation symmetric clusters be \(C_G(n)\), \(1\le m \le C_G(n)\),

$$\begin{aligned} \varOmega (n) = \bigcup _{m=1}^{C_G(n)}\varOmega (n|m) = \bigcup _{m=1}^{C_G(n)} G(m,n). \end{aligned}$$
(9)

Corollary 2

A set of \(\{G(m,n)\}_{m=1}^{C_G(n)}\) is composed of a measuring phase space in one dimension.

Proof

Using the parameter m, \(\{G(m,n)\}_{m=1}^{C_G(n)}\) can be listed in a linear order.

Lemma 4

By Burnside’s lemma, \(\phi \) being Euler’s phi-function,

$$\begin{aligned} C_G(n) = \frac{1}{n}\sum _{k|n}\phi (k)2^{\frac{n}{k}}. \end{aligned}$$
(10)

Proof

A brief proof of this lemma can be found in [29].

Definition 11

Let \(f_G(m,n)\) denote a number of vectors in the m-th cluster G(mn).

Corollary 3

For any \(f_G(m,n)\), \(1\le f_G(m,n) \le n\).

Proof

Due to Lemma 2, each \(f_G(m,n)\le n\) in general; for two special vectors in \(\{0\ldots 0, 1\ldots 1\}\), we have \(f_G(m,n)=1\).

Corollary 4

Collecting all possible rotation clusters, the total number of vectors is equal to \(f_{\varOmega }(n)\)

$$\begin{aligned} \sum _{m=1}^{C_G(n)} f_G(m,n)= & {} 2^n\nonumber \\= & {} f_{\varOmega }(n). \end{aligned}$$
(11)

Proof

From Lemma 4 and Corollary 3, it contains a full set of \(2^n\) vectors in \(\varOmega (n)\).

Lemma 5

For a given n, \(C_G(n)\) has an approximate number,

$$\begin{aligned} C_G(n) \approx O(\frac{2^n}{n}). \end{aligned}$$
(12)

Proof

Using Corollaries 3 and 4, each distinct cluster contains at most n vectors; it is a natural to have such an approximate number in enumeration.

It is convenient to list defined rotation parameters in Table 2 for \(n=4\) condition.

Table 2 Six rotation clusters, various vectors in \(\{G(m,4)\}\)

2.4 Counting Properties on Measuring Phase Spaces

For any vector \(x \in \varOmega (n)\), three measuring parameters \(\{n,p,q\}\) are represented as three invariants. Three measurements transfer a phase space into a set of measuring phase spaces in a hierarchy.

Definition 12

(L(pn) combinatorial cluster) Let L(pn) be a combinatorial cluster of vectors in \(\varOmega (n), L(p,n)=\varOmega (n|p) \subset \varOmega (n)\). Two parameters \(\{n,p\}\) partition the phase space \(\varOmega (n)\) to form a set of clusters \(\{L(p,n)\}\) in a measuring phase space.

$$\begin{aligned} \varOmega (n|p) = L(p,n) = \{\forall x| 0\le p\le n, x\in \varOmega (n)\}. \end{aligned}$$
(13)

Corollary 5

A set of \(\{L(p,n)\}_{p=0}^{n}\) is composed of a measuring phase space in one dimension.

Proof

The parameter p is the active invariant to arrange the phase space in a linear order.

Definition 13

Let \(C_L(n)\) be a number of clusters in \(\forall p,\{L(p,n)\}\).

Lemma 6

For a given n,

$$\begin{aligned} C_L(n) = n+1. \end{aligned}$$
(14)

Proof

Using Definition 12, \(0\le p \le n\) and for any p, \(L(p,n) \ne \emptyset \), the parameter p partitions the whole set \(\varOmega (n)\) into \(n+1\) distinct subsets as clusters.

Definition 14

(\(f_L(p,n)\) combinatorial number) Let \(f_L(p,n)\) be a combinatorial number of vectors in a cluster L(pn).

Lemma 7

For a pair of \(\{n,p\}\) parameters,

$$\begin{aligned} f_L(p,n)= \left( {\begin{array}{c}n\\ p\end{array}}\right) \end{aligned}$$
(15)

Proof

Using Definition 12, this number is equal to a binomial coefficient selected p elements from n positions.

It is convenient to list defined measuring parameters in Table 3 for \(n=4\) condition.

Table 3 Five clusters, various vectors in \(\{L(p,4)\}\)

Definition 15

(E(qn) crossing cluster of vectors) Let E(qn) be a crossing cluster of vectors in \(\varOmega (n)\), \(E(q,n)=\varOmega (n|q) \subset \varOmega (n)\). Two parameters \(\{n,q\}\) partition the phase space \(\varOmega (n)\) to form a set of clusters \(\{E(q,n)\}\) in a measuring phase space.

$$\begin{aligned} \varOmega (n|q) = E(q,n) = \{\forall x| 0\le q\le \lfloor \frac{n}{2} \rfloor , x\in \varOmega (n)\} \end{aligned}$$
(16)

Corollary 6

A set of \(\{E(q,n)\}_{q=0}^{\lfloor n/2 \rfloor }\) is composed of a measuring phase space in one dimension.

Proof

The parameter q is the active invariant to arrange the phase space in a linear order.

Definition 16

Let \(C_E(n)\) be a number of crossing clusters in \(\forall q, \{E(q,n)\} \).

Lemma 8

For a given \(n>0\),

$$\begin{aligned} C_E(n)=\lfloor \frac{n}{2} \rfloor +1. \end{aligned}$$
(17)

Proof

According to Definition 15 and each \(E(q,n)\ne \emptyset , 0\le q\le \lfloor \frac{n}{2} \rfloor \), the parameter q partitions the whole set \(\varOmega (n)\) into \(\lfloor \frac{n}{2} \rfloor +1\) distinct subsets as clusters.

Definition 17

(\(f_E(q,n)\) number of vectors) Let \(f_E(q,n)\) be a number of vectors in a cluster E(qn).

Lemma 9

For a pair of \(\{n,q\}\) parameters,

$$\begin{aligned} f_E(q,n)= 2*\left( {\begin{array}{c}n\\ 2q\end{array}}\right) , 0\le q \le \lfloor \frac{n}{2} \rfloor .\end{aligned}$$
(18)

Proof

Two cases can be distinguished: Case 1: \(q=0\); Case 2: \(1\le q \le \lfloor \frac{n}{2} \rfloor \).

Case 1: All n values are either 1 or 0, \(2*\left( {\begin{array}{c}n\\ 0\end{array}}\right) =2\).

Case 2: For a given q, 2q crossing positions are composed of a pair of a 0–1 crossing then a 1–0 crossing repeatedly for q times in a vector and this configuration has a total of \(\left( {\begin{array}{c}n\\ 2q\end{array}}\right) \) vectors included, and the same pair of positions can be exchanged as a pair of 1–0 and 0–1 crossings with the same number of different vectors, so a total of \(2*\left( {\begin{array}{c}n\\ 2q\end{array}}\right) \) vectors are involved in each q selection.

It is convenient to list above defined measuring parameters in Table 4 for \(n=4\) condition.

Table 4 Three clusters, vectors in \(\{E(q,4)\}\) cases

3 Variant Symmetric Clusters

Definition 18

(V(qpn) variant cluster) Let V(qpn) be a variant cluster of vectors in \(\varOmega (n)\), \(V(q,p,n) = \varOmega (n|p,q) \subset \varOmega (n)\). Three parameters \(\{n,p,q\}\) partition the phase space \(\varOmega (n)\) to form a set of clusters \(\{V(q,p,n)\}\) in a measuring phase space.

$$\begin{aligned} \varOmega (n|p,q) = V(q,p,n) = \{\forall x|0\le p\le n, 0\le q\le \lfloor \frac{n}{2} \rfloor , x\in \varOmega (n)\} \end{aligned}$$
(19)

Corollary 7

A set of \(\{V(q,p,n)\}_{\forall q, p}\) is composed of a measuring phase space on two dimensions.

Proof

Both invariants q and p are two active invariants to arrange the phase space on a 2D plane lattice.

Lemma 10

Both \(\{L(p,n)\}\) combinatorial clusters and \(\{E(q,n)\}\) crossing clusters can be generated from special subsets of \(\{V(q,p,n)\}\) variant clusters.

Proof

For a given pL(pn) can be determined by

$$\begin{aligned} L(p,n)= & {} \bigcup _{q=0}^{\lfloor \frac{n}{2} \rfloor } V(q,p,n). \end{aligned}$$

For a given qE(qn) can be determined by

$$\begin{aligned} E(q,n)= & {} \bigcup _{p=0}^{n} V(q,p,n). \end{aligned}$$

Applying this set of partitions, three sets of relevant clusters can be identified.

For example, \(n=4\), all 16 vectors in the vector space, three sets of clusters can be distinguished as six clusters \(\{V(q,p,n)\}\), five clusters for \(\{L(p,n)\}\) and three clusters for \(\{E(q,n)\}\) shown in Table 5, respectively.

Table 5 Three sets of variant clusters for \(n=4\) in \(\{V(q,p,n)\}\) condition

Definition 19

Let \(C_V(n)\) be a number of non-trivial variant clusters in \(\forall q,p, \{V(q,p,n)\} \).

In general condition for any given \(n > 1\), three sets of variant clusters could be shown in Fig. 1.

Fig. 1
figure 1

Three sets of variant clusters \(\{V(q,p,n)\},\{E(q,n)\} , \{L(p,n)\}\) for \(n > 1\)

Theorem 1

For a given n, \(C_V(n)\) satisfies Eq. 20

$$\begin{aligned} C_V(n)= & {} {\left\{ \begin{array}{ll} n^2/4 + 2;&{} n\equiv 0 \text { mod 2}\\ (n^2 -1)/4 + 2; &{} n\equiv 1 \text { mod 2}. \end{array}\right. } \end{aligned}$$
(20)

Proof

From Fig. 1 for a given n, a triangular shape for non-trivial variant clusters is composed of two parts: a triangular area and two \(q=0\) points. The triangular area has \((n-1)\) length and \(\lfloor n/2 \rfloor \) high. If \(n\equiv 0 \text { mod 2}\), the triangular area is a regular triangle contained \(n^2/4\) clusters, so the total number of this triangular shape contains \(n^2/4 + 2\) clusters. For an odd valued n, a triangular area has additional \(\lfloor n/2 \rfloor \) clusters side on a regular triangle with \(\lfloor n/2 \rfloor ^2\) clusters, so the total number of clusters is \(\lfloor n/2 \rfloor ^2+\lfloor n/2 \rfloor + 2= (n^2 -1)/4 + 2\).

3.1 Variant Trinomial Coefficients – Elementary Equation

Definition 20

Let \(f_V(q,p,n)\) or f(qpn) \(0\le p \le n, 0\le q \le \lfloor \frac{n}{2} \rfloor \) denote an enumeration function for a number of 0–1 vectors in a variant cluster.

It is convenient to list relevant measuring parameters in Table 6 for \(n=4\) conditions.

Table 6 Six clusters, vectors in \(\{V(q,p,4)\}\)

Definition 21

For two initial and end clusters \(p=\{0,n\},q=0\), let two cases be \(f(0,0,n)=f(0,n,n)=1\). For other cases, each cluster \(0< p< n, 0< q \le \lfloor \frac{n}{2} \rfloor \) contains a subgroup of vectors under a given condition. A variant trinomial coefficient for a number of vectors in a cluster is defined as an elementary equation in Equation 21,

$$\begin{aligned} f(q,p,n) = \frac{n}{n-p}\left( {\begin{array}{c}n-p\\ q\end{array}}\right) \left( {\begin{array}{c}p-1\\ q-1\end{array}}\right) . \end{aligned}$$
(21)

Applying variant trinomial coefficients in Eq. 21, there is no difficult to process more complicated cases in enumeration. Global arrangements on their triangular shapes are convenient to be arranged by p measures in vertical direction. Two cases \(n=\{4,5\}\) are shown in Table 7.

Table 7 Three sets of vector numbers \(\{f(q,p,n)\},\{f_E(q,n)\},\{f_L(p,n)\}\);(a) \(n=4\);(b) \(n=5\)
Fig. 2
figure 2

Three sets of \(\{f(q,p,n)\},\{f_E(q,n)\} , \{f(p,n)\} \) variant numbers for \(n > 1\)

In a general condition for any given \(n > 1\), three sets of various numbers can be shown in Fig. 2.

3.2 Combinatorial Projection on Variant Clusters

From an algebraic viewpoint, the following theorems and corollaries are established for a general condition to meet any \(n\ge 1\) cases.

Lemma 11

If \(f_L(p,n)=\sum _{q=1}^{p} f(q,p,n), 0<p<n\), then the projection function \(f_L(p,n)\) is a binomial coefficient and

$$\begin{aligned} f_L(p,n)= & {} \left( {\begin{array}{c}n\\ p\end{array}}\right) . \end{aligned}$$
(22)

Proof

For a fixed \(p, 0< p <n\), all possible \(\{f(q,p,n)\}\) are collected to form the following combinatorial identities: [14, 15, 21],

$$\begin{aligned} f_L(p,n)= & {} \sum _{q=1}^{p} f(q,p,n) \\= & {} \sum _{q=1}^{p} \frac{n}{n-p}\left( {\begin{array}{c}n-p\\ q\end{array}}\right) \left( {\begin{array}{c}p-1\\ q-1\end{array}}\right) \\= & {} \frac{n}{n-p} \sum _{q=1}^{p} \left( {\begin{array}{c}n-p\\ q\end{array}}\right) \left( {\begin{array}{c}p-1\\ q-1\end{array}}\right) \\= & {} \frac{n}{n-p} \sum _{q=1}^{p}\left( {\begin{array}{c}n-p\\ q\end{array}}\right) \left( {\begin{array}{c}p-1\\ p-q\end{array}}\right) ; \quad \left( {\begin{array}{c}N\\ k\end{array}}\right) =\left( {\begin{array}{c}N\\ N-k\end{array}}\right) \\= & {} \frac{n}{n-p} \left( {\begin{array}{c}n-1\\ p\end{array}}\right) ; \quad \left( {\begin{array}{c}x+y\\ N\end{array}}\right) =\sum _{k=0}^N\left( {\begin{array}{c}x\\ k\end{array}}\right) \left( {\begin{array}{c}y\\ N-k\end{array}}\right) \\= & {} \frac{n}{(n-p)}\frac{(n-1)!}{(n-p-1)!p!} \\= & {} \frac{n!}{(n-p)!p!} \\= & {} \left( {\begin{array}{c}n\\ p\end{array}}\right) . \end{aligned}$$

For a complete sequence of binomial coefficients, it is necessary to include both initial and end clusters. Further Theorem 2 can be established.

Theorem 2

For any given \(n>0\), a set of projection function \(\{f_L(p,n)\}_{p=0}^{n}\) is composed of the same sequence of binomial coefficients

$$\begin{aligned} f_L(p,n)= & {} \left( {\begin{array}{c}n\\ p\end{array}}\right) . \end{aligned}$$
(23)

Proof

For \(0<p<n\) condition, the equation has been determined by Lemma 11 and two end clusters \(p=\{0,n\},\left( {\begin{array}{c}n\\ 0\end{array}}\right) =\left( {\begin{array}{c}n\\ n\end{array}}\right) =1\) are determined by Definition 21.

Corollary 8

The sum of all possible \(\{f_L(p,n)\}_{p=0}^{n}\) is equal to \(f_{\varOmega }(n)\),

$$\begin{aligned} \sum _{p=0}^n f_L(p,n)= & {} f_{\varOmega }(n) = 2^n. \end{aligned}$$
(24)

Proof

Collecting all possible numbers in Theorem 2, we have

$$\begin{aligned} \sum _{p=0}^n f_L(p,n)= & {} \sum _{p=0}^n \left( {\begin{array}{c}n\\ p\end{array}}\right) \\= & {} (1+1)^n\\= & {} 2^n \\= & {} f_{\varOmega }(n). \end{aligned}$$

3.3 Crossing Projection on Variant Clusters

Lemma 12

If \(f_E(q,N)=\sum _{p=q}^{n-q} f(q,p,n), 1\le q \le \lfloor \frac{n}{2} \rfloor \), then the enumeration function \(f_E(q,n)\) is a double of a binomial coefficient

$$\begin{aligned} f_E(q,n)= & {} 2\left( {\begin{array}{c}n\\ 2q\end{array}}\right) . \end{aligned}$$
(25)

Proof

For a fixed q, collecting all possible \(\{f(q,p,n)\}_{p=q}^{n-q}\), the following combinatorial identities [14, 15, 21] are deduced:

$$\begin{aligned} f_E(q,n)= & {} \sum _{p=q}^{n-q} f(q,p,n) \\= & {} \sum _{p=q}^{n-p} \frac{n}{n-p}\left( {\begin{array}{c}n-p\\ q\end{array}}\right) \left( {\begin{array}{c}p-1\\ q-1\end{array}}\right) \\= & {} \sum _{p=q}^{n-p} \frac{n}{q}\left( {\begin{array}{c}n-p-1\\ q-1\end{array}}\right) \left( {\begin{array}{c}p-1\\ q-1\end{array}}\right) ; \quad \frac{N}{q}\left( {\begin{array}{c}N-p-1\\ q-1\end{array}}\right) =\frac{N}{N-p}\left( {\begin{array}{c}N-p\\ q\end{array}}\right) \\= & {} \frac{n}{q}\sum _{p=q}^{n-p} \left( {\begin{array}{c}n-p-1\\ q-1\end{array}}\right) \left( {\begin{array}{c}p-1\\ q-1\end{array}}\right) \\= & {} \frac{n}{q}\left( {\begin{array}{c}n-1\\ 2q-1\end{array}}\right) ; \quad \left( {\begin{array}{c}N+1\\ r+s+1\end{array}}\right) = \sum _{k=r}^{N-s} \left( {\begin{array}{c}k\\ r\end{array}}\right) \left( {\begin{array}{c}N-k\\ s\end{array}}\right) \\= & {} 2\frac{n}{2q}\frac{(n-1)!}{(n-2q)!(2q-1)!} \\= & {} 2\frac{n!}{(2q)!(n-2q)!}\\= & {} 2\left( {\begin{array}{c}n\\ 2q\end{array}}\right) . \\ \end{aligned}$$

Theorem 3

For any given \(n>0\) under the listed condition, a set of projection function \(\{f_E(q,n)\}_{0\le q \le \lfloor \frac{n}{2} \rfloor }\) are composed of the subsequence of binomial coefficients,

$$\begin{aligned} f_E(q,n)= & {} 2\left( {\begin{array}{c}n\\ 2q\end{array}}\right) . \end{aligned}$$
(26)

Proof

For \(1\le q \le \lfloor n/2 \rfloor \) condition, equations are determined by Lemma 12 and for the initial subgroup, we have \(q=0, f_E(0,n)=\left( {\begin{array}{c}n\\ 0\end{array}}\right) +\left( {\begin{array}{c}n\\ n\end{array}}\right) =2\left( {\begin{array}{c}n\\ 0\end{array}}\right) \).

Corollary 9

For \(n\equiv 0\mod 2,0\le q \le n/2\), there are a pair of symmetric functions

$$\begin{aligned} f_E(q,n)= & {} f_E(n/2-q,n). \end{aligned}$$
(27)

Proof

Under \(n\equiv 0\mod 2\) condition,

$$\begin{aligned} f_E(q,n)= & {} 2\left( {\begin{array}{c}n\\ 2q\end{array}}\right) \\= & {} 2\left( {\begin{array}{c}n\\ n-2q\end{array}}\right) = 2\left( {\begin{array}{c}n\\ 2(n/2-q)\end{array}}\right) \\= & {} f_E(n/2-q , n). \end{aligned}$$

Corollary 10

For \(n\equiv 0\mod 4, q =n/4\), \(f_E(n/4,n)\) has the maximal value

$$\begin{aligned} f_E(n/4,n)> & {} f_E(q,n), q \ne n/4. \end{aligned}$$
(28)

Proof

Under \(n\equiv 0\,\mod 4\) condition,

$$\begin{aligned} f_E(q,n)= & {} 2\left( {\begin{array}{c}n\\ 2q\end{array}}\right) < 2\left( {\begin{array}{c}n\\ n/2\end{array}}\right) =2\left( {\begin{array}{c}n\\ 2n/4\end{array}}\right) =f_E(n/4,n) . \end{aligned}$$

Corollary 11

The sum of all possible \(\{f_E(q,n)\}_{0\le q \le \lfloor \frac{n}{2} \rfloor }\) is equal to \(f_{\varOmega }(n)\),

$$\begin{aligned} \sum _{q=0}^{\lfloor \frac{n}{2} \rfloor } f_E(q,n)= & {} f_{\varOmega }(n) = 2^n. \end{aligned}$$
(29)

Proof

Collecting all possible numbers, we have the following equations:

$$\begin{aligned} \sum _{q=0}^{\lfloor \frac{n}{2} \rfloor } f_E(q,n)= & {} \sum _{q=0}^{\lfloor \frac{n}{2} \rfloor } 2 \left( {\begin{array}{c}n\\ 2q\end{array}}\right) \\= & {} 2 \sum _{q=0}^{\lfloor \frac{n}{2} \rfloor } \left( {\begin{array}{c}n\\ 2q\end{array}}\right) , \quad \sum _{k \ge 0}\left( {\begin{array}{c}n\\ 2k\end{array}}\right) = \sum _{k \ge 0}\left( {\begin{array}{c}n\\ 2k+1\end{array}}\right) = 2^{n-1} \\= & {} 2\times 2^{n-1} \\= & {} 2^n \\= & {} f_{\varOmega }(n).\\ \end{aligned}$$

3.4 Relationships of Four Symmetric Clusters

Theorem 4

For any \(n>0\), the sum of all possible functions on \(\{f(q,p,n\}_{\forall p, \forall q}\) or \(\{f_E(q,n)\}_{0\le q \le \lfloor \frac{n}{2} \rfloor }\) or \(\{f_L(p,n)\}_{p=0}^{n}\) or \(\{f_G(m,n)\}, 1\le m \le C_G(n)\) is equal to \(f_{\varOmega }(n)\)

$$\begin{aligned} f_{\varOmega }(n)= & {} \sum _{\forall p}\sum _{\forall q}f(q,p,n) = \sum _{q=0}^{\lfloor \frac{n}{2} \rfloor } f_E(q,n) = \sum _{p=0}^n f_L(p,n)\nonumber \\= & {} \sum _{m=1}^{C_G(n)}f_G(m,n) \nonumber \\= & {} 2^n. \end{aligned}$$
(30)

Proof

From the results of Corollaries 4, 8 and 11, four schemes provide various partitions to the same set of vectors on \(\varOmega (n)\) completely.

Corollary 12

Numbers of four symmetric clusters can be expressed by

$$\begin{aligned} C_E(n)= & {} \lfloor \frac{n}{2} \rfloor +1; \\ C_L(n)= & {} n+1 ;\\ C_V(n)= & {} {\left\{ \begin{array}{ll} n^2/4 + 2,&{} n\equiv 0 \text { mod 2}\\ (n^2 -1)/4 + 2, &{} n\equiv 1 \text { mod 2} \end{array}\right. } ;\\ C_G(n)= & {} \frac{1}{n}\sum _{k|n}\phi (k)2^{\frac{n}{k}}. \end{aligned}$$

Proof

Due to Lemmas 4, 6, 8 and Theorem 1, four equations for numbers of various symmetric clusters are listed.

In convenient for comparison, their values on \(1\le n \le 16\) are listed in Table 8, respectively.

Table 8 Numbers of four symmetric clusters in \(1\le n \le 16\)

Checking real clusters in four schemes, the following corollaries can be provided.

Corollary 13

When \(n=\{1,2,3\}\), three cluster schemes \(C_L(n), C_V(n), C_G(n)\) provide the same partitions of clusters.

Proof

Checking the three schemes, we have \(C_L(1)=C_V(1)=C_G(1)=2\), \(C_L(2)=C_V(2)=C_G(2)=3\), \(C_L(3)=C_V(3)=C_G(3)=4\). Relevant cluster contains the same set of vectors.

Corollary 14

When \(n=\{1,2,3,4,5\}\), two cluster schemes \(C_V(n), C_G(n)\) provide the same partitions of clusters.

Proof

Due to Corollary 13, we need to check \(n=\{4,5\}\) cases. For the two schemes, we have \((C_L(4)=5)\ne (C_V(4)=C_G(4)=6)\), \((C_L(5)=6)\ne (C_V(5)=C_G(5)=8)\). Relevant cluster contains the same set of vectors.

Corollary 15

When \(n\ge 6\), four cluster schemes \(C_E(n), C_L(n), C_V(n), C_G(n)\) provide different partitions on their clusters.

Proof

Due to Corollaries 13 and 14, we need to check \(n=\{6,\cdots \}\) cases. For the four schemes, \(C_E(6)=4, C_L(6)=7, C_V(6)=11, C_G(6)=14\). Only a few clusters can contain the same set of vectors.

Corollary 16

When \(n\ge 6\), three cluster schemes: combinatorial, crossing and variant \(\{C_E(n),C_L(n),C_V(n)\}\) may contain more symmetric properties than rotation clusters on \(C_G(n)\).

Proof

Considering a special case on \(\{n=6,p=3,q=2\}\), \(V(2,3,6)=\{001101, 011010, 110100, 101001, 010011,100110,011001,110010,100101,001011,010110,101100\}\); this cluster contains two cycles: \(\{001101, 011010, 110100, 101001, 010011,100110\}\) and \(\{011001,110010,100101,001011,010110,101100\}\) with six vectors, respectively. Both cycles have rotation symmetries only without reflection symmetries. It is possible to use reflection symmetric operators to distinct two relative cycles to form a pure rotation symmetric structure. However, other clusters may contain more cycles such as L(3, 6) with four cycles and E(2, 6) with six cycles, respectively. It is necessary to apply other symmetric operators different from rotation for further separations.

4 Four Number Sets of Symmetric Clusters

4.1 Four Approximates on Numbers of Clusters

Using the four numeric equations, relevant approximates can be expressed as follows.

Lemma 13

Four approximates can be expressed as

$$\begin{aligned} C_E(n)\approx & {} O\left( \frac{n}{2}\right) ;\end{aligned}$$
(31)
$$\begin{aligned} C_L(n)\approx & {} O\left( n\right) ;\end{aligned}$$
(32)
$$\begin{aligned} C_V(n)\approx & {} O\left( \frac{n^2}{4}\right) ; \end{aligned}$$
(33)
$$\begin{aligned} C_G(n)\approx & {} O\left( \frac{2^n}{n}\right) . \end{aligned}$$
(34)

Proof

Using the four equations, the following approximates can be expressed:

$$\begin{aligned} C_E(n)= & {} \lfloor \frac{n}{2} \rfloor +1 \approx O\left( \frac{n}{2}\right) ; \\ C_L(n)= & {} n+1 \approx O\left( n\right) ; \\ C_V(n)= & {} {\left\{ \begin{array}{ll} n^2/4 + 2,&{} n\equiv 0 \text { mod 2}\\ (n^2 -1)/4 + 2, &{} n\equiv 1 \text { mod 2} \end{array}\right. } \approx O\left( \frac{n^2}{4}\right) ;\\ C_G(n)= & {} \frac{1}{n}\sum _{k|n}\phi (k)2^{\frac{n}{k}} \approx O\left( \frac{2^n}{n}\right) . \end{aligned}$$

4.2 Four Approximates on Numbers of Vectors

Definition 22

Let \(f_X(n), X\in \{L,E,V,G\}\) denote an approximate number of vectors in X cluster.

Lemma 14

Four approximates can be expressed as

$$\begin{aligned} f_E(n)\approx & {} O\left( \frac{2^{n+1}}{n}\right) ;\end{aligned}$$
(35)
$$\begin{aligned} f_L(n)\approx & {} O\left( \frac{2^{n}}{n}\right) ;\end{aligned}$$
(36)
$$\begin{aligned} f_V(n)\approx & {} O\left( \frac{2^{n+2}}{n^2}\right) ; \end{aligned}$$
(37)
$$\begin{aligned} f_G(n)\approx & {} O\left( n\right) . \end{aligned}$$
(38)

Proof

Since all clusters partition the same phase space \(\varOmega (n)\) with \(2^n\) vectors, their approximates for vectors in a cluster can be evaluated,

$$\begin{aligned} f_E(n)= & {} \frac{2^n}{O\left( \frac{n}{2}\right) } \approx O\left( \frac{2^{n+1}}{n}\right) ; \\ f_L(n)= & {} \frac{2^n}{O\left( n\right) } \approx O\left( \frac{2^{n}}{n}\right) ; \\ f_V(n)= & {} \frac{2^n}{O\left( \frac{n^2}{4}\right) } \approx O\left( \frac{2^{n+2}}{n^2}\right) ; \\ f_G(n)= & {} \frac{2^n}{O\left( \frac{2^n}{n}\right) } \approx O\left( n\right) . \end{aligned}$$

It is convenient to list approximate numbers on clusters, vectors and dimension of measuring phase spaces in Table 9.

Table 9 Four approximate numbers on both clusters and vectors

5 Symmetric Boolean Functions for Selected Clusters

5.1 Four Numbers on Symmetric Boolean Functions

Definition 23

Let \(SF_X(n)\) denote a number of Symmetric Boolean Functions (SBF) in \(\{X(.)\}, X\in \{E,L,V,G\}\).

Theorem 5

(Four types of symmetric Boolean functions) Total numbers of four types of symmetric Boolean functions \(SF_X(n), X\in \{E,L,V,G\}\) are

$$\begin{aligned} SF_E(n)= & {} 2^{C_E(n)} = 2^{\lfloor \frac{n}{2}\rfloor +1};\end{aligned}$$
(39)
$$\begin{aligned} SF_L(n)= & {} 2^{C_L(n)} = 2^{n+1};\end{aligned}$$
(40)
$$\begin{aligned} SF_V(n)= & {} 2^{C_V(n)} = {\left\{ \begin{array}{ll} 2^{n^2/4 + 2},&{} n\equiv 0 \text { mod 2}\\ 2^{(n^2 -1)/4 + 2}, &{} n\equiv 1 \text { mod 2} \end{array}\right. } ;\end{aligned}$$
(41)
$$\begin{aligned} SF_G(n)= & {} 2^{C_G(n)} = O\left( 2^{\frac{2^n}{n}}\right) . \end{aligned}$$
(42)

Proof

For any selected cluster, there are two selections for its symmetric Boolean functions.

5.2 Four Numbers of Balanced Symmetric Clusters

Definition 24

Let \(SF_{Xb}(n)\) be a maximal number of balanced \(SBF_X\) in \(\{X(.)\}, X\in \{L,V,G\}\), \(n=0\) mod 2.

Definition 25

Let \(SF_{Eb}(n)\) be a maximal number of balanced \(SBF_E\) in \(\exists q, \{E(q,n)\}\), \(n=0\) mod 4.

Lemma 15

Four selected numbers \(\{C_{Xb}(n)\}, X\in \{E,L,V,G\}\) for balanced symmetric clusters are

$$\begin{aligned} C_{Eb}(n)= & {} {\left\{ \begin{array}{ll} 1,&{} n\equiv 0 \mod 4\\ 0,&{} n \ne 0 \mod 4 \end{array}\right. };\end{aligned}$$
(43)
$$\begin{aligned} C_{Lb}(n)= & {} 1;\end{aligned}$$
(44)
$$\begin{aligned} C_{Vb}(n)= & {} \frac{n}{2}; \end{aligned}$$
(45)
$$\begin{aligned} C_{Gb}(n)= & {} O\left( \frac{1}{n}\left( {\begin{array}{c}n\\ n/2\end{array}}\right) \right) . \end{aligned}$$
(46)

Proof

From Corollary 10 for Eb groups \(n \equiv 0 \mod 4\) cases, \(q = n/4\) provides a cluster with a maximal number of vectors in a balanced condition and other cases cannot satisfy balanced conditions; for Lb groups \(n \equiv 0 \mod 2\) cases, \(p = n/2\) provides a cluster with a maximal number of vectors in a balanced condition; for Vb groups \(n \equiv 0 \mod 2\) cases, \(p = n/2, 1\le q \le n/2\), there are n / 2 clusters involved in a balanced condition; for Gb groups \(n \equiv 0 \mod 2\) cases, \(p = n/2\), a total of rotation symmetric clusters \(O\left( \frac{1}{n}\left( {\begin{array}{c}n\\ n/2\end{array}}\right) \right) \) could be involved in a balanced condition.

5.3 Four Numbers of Balanced Symmetric Boolean Functions

Theorem 6

(Four balanced SYMMETRIC Boolean functions) Total numbers of four balanced symmetric Boolean functions \(\{SF_Xb(n)\}, X\in \{E,L,V,G\}\) are

$$\begin{aligned} SF_{Eb}(n)= & {} 2^{C_{Eb}(n)} = {\left\{ \begin{array}{ll} 2,&{} n\equiv 0 \mod 4\\ 1, &{} n \ne 0 \mod 4 \end{array}\right. };\end{aligned}$$
(47)
$$\begin{aligned} SF_Lb(n)= & {} 2^{C_{Lb}(n)} = 2;\end{aligned}$$
(48)
$$\begin{aligned} SF_Vb(n)= & {} 2^{C_{Vb}(n)} = 2^{\frac{n}{2}}; \end{aligned}$$
(49)
$$\begin{aligned} SF_Gb(n)= & {} 2^{C_{Gb}(n)} = O\left( 2^{\frac{1}{n}\left( {\begin{array}{c}n\\ n/2\end{array}}\right) }\right) . \end{aligned}$$
(50)

Proof

Each number of clusters in a selected scheme has been determined in Lemma 15. For any selected cluster in the scheme, there are two selections to form relevant symmetric Boolean functions.

In convenient for comparison, four types of \(SBF_{Xb}\) numbers on \(2\le n \le 20\) are listed in Table 10, respectively.

Table 10 Numbers of four balanced symmetric functions in \(2\le n \le 20\)

6 Cryptographic Properties of Symmetric Boolean Functions in Hierarchy

Boolean functions are of great importance in the design of random number generators for stream ciphers [25] that are widely used in modern network environment.

Due to cryptographically secure consideration, the sequence produced by the random number generator must satisfy the various properties [6, 8]: the longer period, the period complexity and good statistical distributions. There exists a huge theoretical knowledge of such combining generators [25].

A symmetric Boolean function must fulfil different necessary criteria to yield a cryptographically secure scheme, at least to resist known attacks [11]. In this direction, various measuring parameters play an important role such as balanced, support set, hamming weight, hamming distance, balanced function, non-linearity, correlation immunity, etc. [6, 8].

In relation to balanced properties, when n is even, the functions of highest non-linearity are the bent functions, and it is well known that the bent functions cannot be the balanced functions [28, 33]. From a structural viewpoint, the balanced functions having the highest possible non-linearity need to be considered. However, finding such functions is a very difficult problem [29, 31, 33]. When n is odd, exhibiting functions of the highest non-linearity is a hard problem in itself. Among the available candidates, balanced ones exist [16, 33].

To explore optimal functions in rotation symmetric Boolean function sets, many researchers are faced extremely difficulties on computational complexity even for \(n>10\) symmetric Boolean functions [29]. Exponentially increasing complexity makes a complex exhaustive search be quickly impossible. Compared with both variant and rotation schemes listed in Table 10, it is interesting to notice that the variant scheme takes a numeric complexity on \(n=20\) as same as the rotation symmetric scheme on \(n=10\). Much faster computation on optimal functions could be feasibly explored.

From a meta analytic viewpoint, measuring phase spaces provide multiple levels of construction in a hierarchy linked to various symmetric Boolean functions. They support an n tuple 0–1 vector construction as a word-based 0–1 vector to satisfy various design and analysis purposes. The variant PRNG construction [38, 43] is a similar approach to RC4 and HC128 stream ciphers [25] in their meta phase spaces using the word-oriented vector structure with the higher speed and efficiency. Measuring phase spaces could support advanced cryptographic applications on the direction.

Due to significant differences between measuring phase spaces proposed and algebraic normal forms classically formulated, in addition to initial balanced symmetric properties discussed in the chapter, other advanced comparison mechanisms need to be established for all interesting cryptographic properties to satisfy practical and optimal requirements for stream ciphers. Further detailed researches and explorations are required.

7 Conclusion

Symmetric clusters in a hierarchy provide the additional information to organize various symmetric Boolean functions into hierarchical constructions as multiple meta levels of structures efficiently. The variant symmetric functions proposed in this chapter provide a meta construction on a 2D measuring phase space to contribute richer capacities compared with the three classical schemes (combinatorial, crossing and rotation) on 1D measuring phase spaces.

From a measuring viewpoint, three schemes (combinatorial, variant and rotation) in Tables 8, 9 and 10 have similar values in \(n=\{1,2,3\}\) and \(\{4,5\}\) or different values in \(n\ge 6\) conditions. The variant scheme provides a 2D intermediate structure different from other two schemes in 1D structure. From an approximate viewpoint, both combinatorial and rotation schemes are shown in stronger similar properties. Their approximate number of clusters and number of vectors in a cluster can be exchanged in Table 9. From an abstract system viewpoint, this pair of exchangeable measurements may provide approximate symmetric properties for both combinatorial and rotation schemes.

From a clustering viewpoint, the most important results are summarized in Theorem 4 to show that the four symmetric cluster schemes are different partition schemes on the same 0–1 vector set.

From a balanced analysis viewpoint, the key results of balanced symmetric Boolean functions are summarized in Theorem 6 and Table 10. This set of results provides a basic measurement to illustrate relevant computational difficulties to explore further optimal properties in balanced symmetric conditions. Different from other three schemes (combinatorial, crossing and rotation) in either very simpler or extremely complex associated with n increasing, balanced variant symmetric Boolean functions present very interesting patterns to support even \(n\ge 20\) cases for future explorations.

Many advanced properties are existed to use a meta hierarchical construction to manage relevant measuring phase spaces into multilevels of a hierarchical structure. Various measuring parameters can be used as control parameters in detailed cases. Refined design and analysis can be performed under this meta hierarchy to provide powerful models and tools on design and optimization for future generations of stream ciphers.