A Tutorial Exposition of Semi-Tensor Products of Matrices ...

28
JKAU: Comp. Sci., Vol. 5, pp: 3 - 30 (2016 A.D./ 1437 A.H.) DOI: 10.4197 / Comp. 5 - 1 3 A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb Department of Electrical and Computer Engineering, Faculty of Engineering, King Abdulaziz University, Jeddah, Saudi Arabia [email protected] Abstract. This paper is a detailed tutorial exposition of a novel and highly-useful product of matrices called the semi-tensor product (STP). This new product allows the multiplication of two matrices and that do not satisfy the conformity condition required in a conventional matrix product (CMP), namely, that the column dimension n of the first matrix be equal to the row dimension p of the second matrix B. The STP inherits almost all of the properties of the CMP, and reduces to it when n = p. The basic concepts, properties, manipulations of the STP are presented, and demonstrated via tutorial illustrative examples. Applications of the STP include multi-linear and non-linear control problems, theoretical analysis of mathematical problems, and derivation of mathematical proofs. We emphasize the STP use in the matrix expression of Boolean (Switching or logical) functions. We achieve a better understanding of this use by translating the STP terminology to conventional or more familiar representations of Boolean functions, and by explicitly identifying the bases on which the matrix expressions of the Boolean function are constructed. We compare the STP representation of Boolean functions with other well known representations such as the Variable-Entered Karnaugh Maps (VEKMs) and the Reduced Ordered Binary Decision Diagrams (ROBDDs). We show that while these latter representations are complete multi-level ones, the STP representation is a single leaf-level representation. In essence, the STP representation is a truth-table expression of both the function and its complement, and hence it involves unnecessary duplication. The readability of the STP representation of a Boolean function is hindered by its implicit reverse ordering starting at 1 rather than at 0. The STP representation is suitable for the larger class of pseudo-Boolean functions, and hence it is somewhat loose for the restricted class of Boolean functions. For example, it uses the very general and costly operation of real addition to implement the OR operation of Boolean algebra. Such an inefficient implementation cannot be tolerated when the intended applications are among the most intractable problems. Despite the aforementioned negative aspects, the utility of the STP in a variety of applications and even in handling Boolean functions is undeniable. In fact, the STP is computationally successful in handling medium-sized problems in areas ranging from Boolean synchronous networks to logic deduction. The STP is an effective tool for mathematical proofs and derivations over the Boolean domain. We demonstrate this point by using mathematical induction in a novel STP derivation of the Preparata Transformation which relates the truth-table representation of a two-valued Boolean function to its linear (Reed-Müller) one.

Transcript of A Tutorial Exposition of Semi-Tensor Products of Matrices ...

Page 1: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

JKAU: Comp. Sci., Vol. 5, pp: 3 - 30 (2016 A.D./ 1437 A.H.)

DOI: 10.4197 / Comp. 5 - 1

3

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions

Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

Department of Electrical and Computer Engineering, Faculty of Engineering, King Abdulaziz University, Jeddah, Saudi Arabia

[email protected]

Abstract. This paper is a detailed tutorial exposition of a novel and highly-useful product of matrices called the semi-tensor product (STP). This new product allows the multiplication of two matrices

and that do not satisfy the conformity condition required in a conventional matrix product (CMP), namely, that the column dimension n of the first matrix be equal to the row dimension p of the second matrix B. The STP inherits almost all of the properties of the CMP, and reduces to it when n = p. The basic concepts, properties, manipulations of the STP are presented, and demonstrated via tutorial illustrative examples. Applications of the STP include multi-linear and non-linear control problems, theoretical analysis of mathematical problems, and derivation of mathematical proofs. We emphasize the STP use in the matrix expression of Boolean (Switching or logical) functions. We achieve a better understanding of this use by translating the STP terminology to conventional or more familiar representations of Boolean functions, and by explicitly identifying the bases on which the matrix expressions of the Boolean function are constructed. We compare the STP representation of Boolean functions with other well known representations such as the Variable-Entered Karnaugh Maps (VEKMs) and the Reduced Ordered Binary Decision Diagrams (ROBDDs). We show that while these latter representations are complete multi-level ones, the STP representation is a single leaf-level representation. In essence, the STP representation is a truth-table expression of both the function and its complement, and hence it involves unnecessary duplication. The readability of the STP representation of a Boolean function is hindered by its implicit reverse ordering starting at 1 rather than at 0. The STP representation is suitable for the larger class of pseudo-Boolean functions, and hence it is somewhat loose for the restricted class of Boolean functions. For example, it uses the very general and costly operation of real addition to implement the OR operation of Boolean algebra. Such an inefficient implementation cannot be tolerated when the intended applications are among the most intractable problems. Despite the aforementioned negative aspects, the utility of the STP in a variety of applications and even in handling Boolean functions is undeniable. In fact, the STP is computationally successful in handling medium-sized problems in areas ranging from Boolean synchronous networks to logic deduction. The STP is an effective tool for mathematical proofs and derivations over the Boolean domain. We demonstrate this point by using mathematical induction in a novel STP derivation of the Preparata Transformation which relates the truth-table representation of a two-valued Boolean function to its linear (Reed-Müller) one.

Page 2: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

4 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

Keywords: Matrices, Semi-Tensor Products, Non-Conformity, Multiple-dimension Case, Property Inheritance, Boolean Functions, Pseudo-Boolean Functions, Variable-entered Karnaugh maps, Reduced Ordered Binary Decision Diagrams, Preparata Transformation, Real versus GF(2) computations, Intractability.

1. Introduction

Matrices have grown over the years to become an integral part of the mathematical background necessary for the diverse fields of science and engineering. In the past, many educators were so sensitive to the conceptual difficulties posed by matrices to the extent of avoiding them altogether. In a rather contemporary MIT text on circuit analysis[1] the authors admitted that their non-use of matrices made their equations rather bulky. They said that "they debated for some time whether they should use matrices in their book or not, until one day they read Max Jammer’s "The Conceptual Development of Quantum Mechanics" in which he described how Heisenberg felt rather uneasy with matrices when he first learned them from Jordan." The moral of this story in our opinion is that: Since the usefulness of matrices definitely outweighs their difficulty, no effort should be spared to make their topics easily accessible to those who need to utilize them. It is in this spirit that we write this paper to popularize a long-awaited novel kind of matrix products.

The literature has many kinds of matrix products. The conventional matrix product (CMP), which is a famous tool in scientific applications, is a matrix itself and is obtained subject to the conformity condition that the column dimension of the first matrix be equal to the row dimension of the second matrix. Other prominent kinds of matrix products, which are matrices themselves, include: (a) the Kronecker (tensor) product of two matrices with arbitrary dimensions[2, 3], and (b) the Hadmard product of two matrices of identical dimensions, also known as the entry-wise product or Shur product, and distinguished by being commutative[2,4]. Another famous product of two matrices is the Frobenius product, which is itself a scalar obtained as

the inner product of the two matrices as though they were vectors.

Several Chinese Researchers led by Prof. D. Cheng and his coworkers[2, 5-18] started more than one decade ago to extend the conventional matrix product (CMP) by introducing the concept of Semi-Tensor Product (STP) for which the conformity condition needed in the CMP can be dispensed with. They presented many surveys of this new product and demonstrated its utility in a variety of applications. There is some difficulty in following these surveys due to the use of unfamiliar or unexplained notation, reliance on implicit assumptions, and occasionally the noise caused by typographical errors. In many cases, only a particular definition of a special kind of STP (tailored to the application at hand) is given. Moreover, it seems that some of best written surveys (e.g., [6, 10, 17]) are available only in Chinese.

Cheng and his associates [2, 5-11, 14-17] opted to name their novel product a semi-tensor product because of the partial similarities it has with the tensor (Kronecker) product. However, the term "semi-tensor" had been in use in various mathematical circles for several decades. For example, it appears in the description of several mathematical entities such as semi-tensor algebras, Hopf algebras, Koszal algebras, and semi-vector spaces[19-27]. In this paper, we use the term "semi-tensor product" in the specific context when it is applied to two matrices. Recently, some Chinese authors started to name STP products as Cheng products [see, e.g.,[18]). It is still too early to guess whether such a new name will prevail or not. Anyhow, we note that though the STP was initially proposed by Prof. Cheng, he himself admits that the STP was not introduced solely by him single-handed, but it was developed in collaboration with many colleagues and Ph.D. students (see, e.g.,[2, 11]).

Page 3: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 5

The beginning sections of this paper are a review on the subject of STP of two matrices. We hope to further popularize this subject by familiarizing a wide spectrum of readers with its properties and utility. We strive to give a complete picture of the various special cases of STP and related products. We adhere to the typical scientific practice of subscripting a matrix with its row and column dimensions. This practice facilitates the readability of many of the equations used. We make our exposition more reader-friendly by explaining and annotating mathematical terminology and equations via simple and clear English, and also by presenting many demonstrative examples that are hopefully error-free.

Though we give a brief sketch of general STP applications, we concentrate only on the STP application to Boolean functions. We review, explain, assess, and extend the use of STP in defining and manipulating Boolean functions. We achieve a better understanding of this use by translating the STP terminology to conventional or more familiar representations of Boolean functions, and by explicitly identifying the bases on which the matrix expressions of the Boolean function are constructed. We compare the STP representation of Boolean functions with other well known representations such as the Variable-Entered Karnaugh Maps (VEKMs) [28-33] and the Reduced Ordered Binary Decision Diagrams (ROBDDs)[34-35]. We show that while these latter representations are complete multi-level ones, the STP representation is a single leaf-level representation. In essence, the STP representation is a truth-table expression of both the function and its complement, and hence it involves unnecessary duplication. The readability of the STP representation of a Boolean function is hindered by its implicit reverse ordering starting at 1(the familiar starting index of matrices) rather than at 0 (the familiar starting value in a truth table). The STP representation is suitable for the larger class of pseudo-Boolean functions, and hence

it is somewhat loose for the restricted class of Boolean functions.

The STP Boolean methodology is not competitive to the VEKM methodology for manual solutions of small problems, where the VEKM methodology has the definite advantage of conceptual simplicity and pictorial insight. The VEKM methodology, however, is not intended for larger problems where manual solutions are not feasible and automated solutions are needed. Here, both the STP and ROBDD methodologies can be used.

Our most serious reservation against the STP applications to problems involving Boolean functions is that the STP methodology uses the very general and costly operation of real addition to implement the OR operation of Boolean algebra. In comparison, the ROBDD methodology has an intrinsic and deliberate care for efficiency (see, e.g.,[35]), and hence is expected to have much faster algorithms. Moreover, inefficiency in STP implementations cannot be tolerated when the intended applications are among the most intractable problems. Therefore, the STP Boolean applications are essentially limited to where they have already demonstrated their success, i.e. to small and medium-sized problems.

To balance the aforementioned criticism, we also highlight and demonstrate certain strengths of the STP Boolean methodology. We note that the STP is an effective tool for mathematical proofs and derivations over the Boolean domain. We demonstrate this point by using mathematical induction in a novel STP derivation of the Preparata Transformation which relates the truth-table basis for the representation of a two-valued Boolean function to its linear (Reed-Müller) one (see, e.g.,[35-44]).

The remainder of this paper is organized as follows. Section 2 reviews important basic definitions. It starts by introducing the Kronecker (tensor) product of two matrices

Page 4: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

6 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb and listing its important properties. Then, it defines the semi-tensor product (STP) of two general matrices. It explains that there are two kinds of STP, namely left STP (LSTP) and right STP (RSTP), of which the LSTP has superior properties, and hence is typically taken as the default STP (i.e., the term STP is usually meant to indicate LSTP only). The final part of Section 2 defines the LSTP of a row vector and a column vector in the general case and specializes this definition to the multiple-dimension condition for which the dimension of one of these vectors is a factor (divisor) of that of the other vector. Subsequently, an alternative definition for the LSTP of two matrices is given, again for the “multiple-dimension condition”, in which the column dimension n of the first matrix A is either a factor (divisor) or a multiple of the row dimension p of the second matrix B. This alternative definition is easier to grasp and facilitates manipulations in a manner reminiscent of the simplification of the CMP via matrix partitioning. Section 3 lists properties of the LSTP, while Section 4 briefly surveys diverse scientific applications of the STP, with a deliberate attempt to scrutinize and even criticize them. Essentially all these applications require the multiple-dimension case, and hence there is so far no significant utility of the most general form of the STP. Most applications proved to be of significant utility and high efficiency. One notable exception was the STP application to Boolean functions, discussed in Section 5, which was noted in Section 6 not be competitive with some other techniques, despite its conceptual utility and computational success. Section 7 comments on the STP application to pseudo-Boolean functions, while Section 8 presents an STP derivation of the Preparata transformation using mathematical induction. We conclude the paper with some reflections and comments in Section 9.

2. Basic Definitions

2.1. The Kronecker Product (KP)

The Kronecker product of matrices is also called the tensor product of matrices. The reason for this alternative name is that the general tensor product is applicable in different contexts to many mathematical entities, including matrices. This product is applicable to any two matrices regardless of their dimensions[3, 45, 46].

Definition.1. Let × = {aij}, (1 ≤ i ≤, 1 ≤ j ≤ ) be a matrix of m rows and n columns and × be a matrix of p rows and q columns. The Kronecker product (KP) of A and B is denoted by the operator "⨂", and is defined as[3, 45, 46]. ( ⨂ ) × =a a … aa a … a⋮ ⋮ ⋮ ⋮a a … a ,

Example 1

Let × = 11 12 13 14 1521 22 23 24 2531 32 33 34 35 , and

× = 12

( ⨂ ) × =11 12 12 12 13 12 14 12 15 1221 12 22 12 23 12 24 12 25 1231 12 32 12 33 12 34 12 35 12 =

11 12 13 14 1522 24 26 28 3021 22 23 24 2542 44 46 48 5031 32 33 34 3562 64 66 68 70

( )

Page 5: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 7

The Kronecker product can be shown[3, 45,

46] to enjoy the following properties: 1. Non-Commutativity(ingeneral)

( ⨂ ) ≠ ( ⨂ ) 2. Commutativitywithscalarmultiplication( )⨂( ) = ( ⨂ ) 3. Associativity⨂( ⨂ ) = ( ⨂ )⨂ 4. Generalizeddistributivityw.r.tmatrixaddition( + )⨂ = ( ⨂ ) + ( ⨂ ), , ∈ ℝ

⨂( + ) = ( ⨂ ) + ( ⨂ ), , ∈ ℝ 5. Productcommutativitywithtransposition ( ⨂ ) = ⨂

6. Rankofproductisproductofranksrank( ⨂ ) = rank( )rank( ) Forthesquarematricesand ,thefollowingrelationsareadded: 7. Productcommutativitywithinversion(wheninversesA andB exist)( ⨂ ) = ⨂ 8. Traceofproductisproductoftracestr( ⨂ ) = tr( )tr( )

9. Determinantofproductisproductofdeterminantsraisedtothepoweroftheirdimensionsdet( ⨂ ) = (det( )) (det( ))

For the matrices × , × , × , × , CMPs can be formed by A and C, by

B and D, and by ( ⨂ ) and ( ⨂ ), and these products are related by

( ⨂ ) × ( ⨂ ) × = ( ) × ⨂( ) ×

In (12), if we set q = p, r = n, B = , C = (where and areidentitymatrices of

dimensions p and n, respectively), then AC = A and BD = D and we obtain:

( ⨂ ) × ( ⨂ ) × =( ⨂ ) × ,

which can be used for defining the Kronecker product of two arbitrary matrices × , × in terms of their right and left Kronecker products with identity matrices. This relation is different (and should not be confused) with our forthcoming definition of a semi-tensor product (STP) of two general matrices, which involves only right Kronecker products (KP) of identity matrices. In passing, we stress that in properties 7 and 9, the two matrices do not reverse their order in a way similar to that of the CMP {( ) = , ( ) =}.

2.2. The STP of Two General Matrices

Figure 1 shows various classes of general semi-tensor products (STP). There are two main classes of the STP, namely, the left semi-tensor product (LSTP), denoted by the operator " ⋉ ", and the right semi-tensor

( ) ( ) ( ) ( )

( )

( )

( )

( )

( )

( )

( )

( )

Page 6: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

8 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

Fig. 1. Classes of general semi-tensor products (STPs).

products (RSTP), denoted by the operator " ⋊ ", out of which the RSTP is inferior to the LSTP, since the former does not satisfy a rule for block multiplication[11], and hence does not allow a row-column definition of the product. Therefore, literature on STP uses LSTP as the default STP[2,11]. Moreover, there are no significant applications of STP for arbitrary matrices, but most applications deal with the multiple-dimension case in which the column

dimension of the first matrix in the product is a multiple or a divisor of the row dimension of the second matrix. Therefore, most literature on STP concentrates on this multiple-dimension case[2, 11]. An important sub-case of this case is when the aforementioned two dimensions match exactly. In such a case, the STP reduces to the conventional matrix product (CMP). We will now concentrate on the LSTP, and refer to it simply as STP since

Right Semi-Tensor Product Left Semi-Tensor Product

Multiple-Dimension Condition Multiple-Dimension Condition

× = × ⋊ × =

( ⨂ × ) × ( ⨂ × ) ×

× = × ⋉ × = ( × ⨂ ) × ( × ⨂ ) ×

= ( ℎ ) − Conformity condition satisfied

Page 7: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 9 it is the default STP. We reproduce its definition from Fig. 1 as

× = × ⋉ × =( × ⨂ ) × ( × ⨂ ) × ,

where the integer c is the least common multiple (lcm) of the integers n and p, expressed in terms of their greatest common divisor (gcd) as:

= ( , ) = ( )/(gcd( , )).

Note that the STP definition involves two right Kronecker products of the given matrices with identity matrices. These two Kronecker products (KP) are then conventionally multiplied to produce the required STP (they satisfy the conformity condition for forming a CMP, namely that the column dimension of the first KP and the row dimension of the second KP are both equal to the integer c. Note that if n is equal to p (dimension-matching case), then c is equal to both of them, both and reduce to the scalar

multiplication identity, i.e., to the integer 1, and hence ( × ⨂ ) and ( × ⨂ ) are

replaced by × and × , respectively, so that the STP in (15 ) reduces to a conventional matrix product (CMP).

An important special case of the STP of two matrices arises when the first matrix is a row vector and the second matrix is a column vector. Let × be replaced by a row vector × and × be replaced by a column vector × , then the semi-tensor product of X and Y is × = × ⋉ × =( × ⨂ ) × ( × ⨂ ) × .

Example 2

The matrices A and B of example 1, have the dimensions m = 3, n = 5, p = 2, q = 1, and hence = (5,2) = 10. Hence = , = , and

⋉ = ( ⨂ )( ⨂ ),

where ( ⨂ ) × = 11 12 13 14 1521 22 23 24 2531 32 33 34 35 ⨂ 1 00 1 =

11 0 12 0 13 0 14 0 15 00 11 0 12 0 13 0 14 0 1521 0 22 0 23 0 24 0 25 00 21 0 22 0 23 0 24 0 2531 0 32 0 33 0 34 0 35 00 31 0 32 0 33 0 34 0 35

( ⨂ ) × = 12 ⨂ 1 0 0 0 00 1 0 0 00 0 1 0 00 0 0 1 00 0 0 0 1 =

1 0 0 0 00 1 0 0 00 0 1 0 00 0 0 1 00 0 0 0 12 0 0 0 00 2 0 0 00 0 2 0 00 0 0 2 00 0 0 0 2,

( ⋉ ) × = ( ⨂ ) × ( ⨂ ) ×=

11 28 12 30 1326 11 28 12 3021 48 22 50 2346 21 48 22 5031 68 32 70 3366 31 68 32 70

Example 3

Consider the matrices

( )

( )

( )

( )

Page 8: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

10 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

× = 11 12 13 1421 22 23 2431 32 33 34 , and × =12 , for which n = 4 is a multiple of p = 2, and

hence c = n = 4. × = ( × ⨂ ) × ( × ⨂ ) ×= × ( × ⨂ ) × =11 12 13 1421 22 23 2431 32 33 34 12 ⨂ 1 00 1 =11 12 13 1421 22 23 2431 32 33 34

1 00 12 00 2 = 37 4067 7097 100 .

Example 4

Let A be the same as in Example 3, and change B to be [1 2 3 4 5 6 7 8] . Here p = 8 is a multiple of n = 4, and c = p = 8. × = ( × ⨂ ) × ( × ⨂ ) × = ( × ⨂ ) × ×

=

11 0 12 0 13 0 14 00 11 0 12 0 13 0 1421 0 22 0 23 0 24 00 21 0 22 0 23 0 2431 0 32 0 33 0 34 00 31 0 32 0 33 0 34

12345678

(1)(11) + (3)(12) + (5)(13) + (7)(14)(2)(11) + (4)(12) + (6)(13) + (8)(14)(1)(21) + (3)(22) + (5)(23) + (7)(24)(2)(21) + (4)(22) + (6)(23) + (8)(24)(1)(31) + (3)(32) + (5)(33) + (7)(34)(2)(31) + (4)(32) + (6)(33) + (8)(34) =

210260370460530660

2.3. The Multiple-Dimension Condition

There are two cases for the multiple dimension condition. In case 1, the column dimension n of the first matrix (X or A) is a multiple of the row dimension p of the second matrix (Y or B), and hence c = lmc (n, p) = n. In case 1, the column dimension n of the first matrix (X or A) is a factor or divisor of the row dimension p of the second matrix (Y or B), and hence c = lmc (n, p) = p.

2.3.1. Case 1 for the STP of a row vector and a column vector

Here m = q = 1, and = ,and the STP becomes the row vector × = ⋉ = ( × ⨂ ) ( × ⨂ ) × = × ( × ⨂ ) ×

= × [y y …y ] .

Now, split × into p row blocks , , … , of equal sizes (1 × ), to obtain

× = ∑ = ∑ .

Example 5

Consider × = [123456], and × = 12 ,

( )

( )

Page 9: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 11

then = [123], = [4 5 6], and ( × ⋉ × ) × = + = [1 2 3](1) + [4 5 6](2) = [9 12 15] 2.3.2. Case 1 for the STP of two general

matrices

When c = n, the STP of two general matrices is

× = ( × ⨂ ) × ( × ⨂ ) ×= × ( × ⨂ ) ×= ⋯⋯⋮ ⋮ ⋯ ⋮⋯

The matrix × consists of row blocks (1 ≤ i ≤ , 1 ≤ j ≤ ) of equal sizes (1 × ), where = ⋉ ,1 ≤ i ≤ , 1 ≤ j ≤ ,

where is the ith row of A and is the jth column of B.

Example 3 (revisited)

× = ( × ⋉ × ) = , where

= ⋉ = [11 12 13 14] ⋉ 12= [11 12](1) + [13 14](2)= [3740] = ⋉ = [21 22 23 24] ⋉ 12= [21 22](1) + [23 24](2)= [6770] = ⋉ = [31 32 33 34] ⋉ 12= [31 32](1) + [33 34](2)= [97100]

The STP of A and B is

× = 37 4067 7097 100 ,

which is the same answer obtained earlier. The earlier solution might be appealing to many readers because it goes as quickly as possible to the familiar territory of the CMP. However, the current solution is shorter and avoids the inclusion of (and multiplication by) extraneous zeroes.

2.3.3. Case 2 for the STP of a row vector and a column vector

When c = p, the STP is given by the column vector

× = ∑ , where the column vector × is split into column blocks , , … , of equal sizes ( × 1).

Example 6

Consider × = [1 2], × =[1 2 3 4 5 6] , then = 123 , = 456 , and

× = × ⋉ × = (1) 123 + (2) 456 = 91215 .

Note that the result obtained herein is the transpose of that in example 5, since = , = . This result is in agreement with the forthcoming property (27).

2.3.4. Case 2 for the STP of two general matrices

When c = p, the STP of two general matrices is

( ) ( )

Page 10: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

12 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb × = ( ⨂ ) × ( × ⨂ ) × = ……⋮ ⋮ ⋮ ⋮…

where S is split into column blocks (1 ≤≤ , 1 ≤ ≤ ) of equal sizes ( × 1), where = ⋉ ,1 ≤ ≤ , 1 ≤ ≤ ,

where is the row of and is the column of .

Example 4 (revisited)

× = ××× ,

where × = ⋉ = [11 12 13 14] ⋉[1 2 3 4 5 6 7 8]

= (11) 12 + (12) 34 + (13) 56 +(14) 78 = 210260

× = ⋉ = [21 22 23 24] ⋉[1 2 3 4 5 6 7 8]

= (21) 12 + (22) 34 + (23) 56 +(24) 78 = 370460

× = ⋉ = [31 32 33 34] ⋉[1 2 3 4 5 6 7 8]

= (31) 12 + (32) 34 + (33) 56 +(34) 78 = 530660

which combine to give the same answer previously obtained for × .

3. STP Properties

The left semi-tensor products satisfy almost all the properties enjoyed by the CMPs. In fact, they have the following properties[2, 11,

14]:

1. Non-Commutativity (in general ) ( ⋉ ) ≠ ( ⋉ ),

2. Commutativity with scalar multiplication ( ) ⋉ ( ) = ( ⋉ ),

3. Associativity ⋉ ( ⋉ ) = ( ⋉ ) ⋉ , 4. Generalized distributivity w.r.t. matrix

addition ( + ) ⋉ = ( ⋉ ) + ( ⋉ ),, ∈ ℝ, ⋉ ( + ) = ( ⋉ ) + ( ⋉ ),, ∈ ℝ, 5. Product commutativity with

transposition (with reverse order) ( ⋉ ) = ⋉ , For square matrices and , the

following relations are added.

( ) ( ) ( ) ( )

( )

( ) ( )

Page 11: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 13

6. Product commutativity with inversion (with reverse order) if inverses A-1 and B-1 exist ( ⋉ ) = ⋉ ,

7. The characteristic function of the STP is invariant to swapping the two matrices. This means that the two square matrices ( ⋉ ) × , and ( ⋉ ) × have the same trace, determinant, eigenvalues , and eigenvectors. The common determinant is given for c = lmc (m, p) by det( ⋉ ) =(det(A))c/m (det(B))c/p,

If / = = , ℎ det( ⋉ ) = (det( )) det( ), If instead / = = , ℎ det( ⋉ ) = det( ) (det( )) .

4. A Sketch of Some Prominent STP Applications

4.1. Convenience and consistency in matrix and vector manipulations

The STP is a handy tool in certain matrix and vector manipulations. Utilizing the concept of a swap matrix in[3], which is a special kind of a permutation matrix, Cheng, et al. [2, 11, 14] used the STP to implement certain “swap” or “interchange” functions, in particular between vectors. Swap matrices are also utilized to demonstrate certain pseudo-commutative properties of the STP[14]. Moreover, the STP can be used to streamline certain matrix computations. Cheng et al. [2, 11,

14] cite the example of four n-dimensional vectors X, Y, Z, and W. Here, a CMP of the form depicts a scalar, while one of the form is an n × n square matrix. An n × n square matrix can be constructed as

( ) × ( ) × = × ( ) × ×

=( ) × × × =× ( × × ) × ,

where the last step is flawed (and actually not permissible) as it produces a meaningless expression of two jaxtapositioned column vectors ( × × ). However, if CMPs in (32) are replaced by STPs, no inconsistency arises. The convenience in STP handling vectors and matrices leads to many useful applications in differential geometry[2, 11]. In particular, the STP might be effective in treating problems involving the classical differential operators of the gradient of a scalar, or the divergence or curl of a vector.

4.2. Treatment of any finite-dimensional data

Unlike the conventional matrix product, which can generally treat only one- or two-dimensional data, the semi-tensor product of matrices can be used to deal with any finite-dimensional data. In fact, the STP can perform any multi-linear multiplication and is more convenient than the cubic product used in statistics for three-linear multiplications[11].

4.3. STP Applications to physics

The STP has many significant applications to physics[47], including (a) the Carleman linearization of some dynamic physical systems, (b) solving the problem of invariants of planar polynomial systems through the solution of a set of algebraic equations, and (c) proving the general contraction of a simple field.

4.4. STP Applications to Multi-Dimensional, and Linear Control Problems

The STP has many applications in algebra[48], and this fact is perhaps the single most important reason for innovating the STP concept. The STP is used to express various

( )

( ) ( ) ( )

( )

Page 12: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

14 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb types of polynomials[2], and this is a key issue in its utility in non-linear computations, in addition to its use in linear computations. There is an extensive number of STP applications to many difficult problems in the analysis of conventional control systems[2, 5-9,

11, 17, 49-53]. These STP applications are extended to cover Boolean control networks, which are used to model many biological systems. The dynamics of a Boolean control network, as represented by its transition or structure matrix, are successfully analyzed via STP algebraic methodology in[2, 11, 14-18, 54-65].

In passing, we note that one of the earliest STP control problems appears in the seminal paper[5], which handled the Morgan’s problem for control systems. This paper alerted the scientific community to the utility of STP products in treating multi-dimensional data and in treating nonlinear problems in a linear way.

4.5. STP Applications to Mathematical Derivations and Proofs

An area of STP applications, which might have come as a surprise to many scholars, is the area of mathematical derivations and proofs. In the following subsections, we describe two cases in which STP concepts are used to construct mathematical proofs. In the first case, the STP tools pioneered novel ideas in an unexplored domain. By contrast, the STP concepts came as an afterthought in the second case, but they added the beautiful elegance of succinctness and brevity.

4.5.1. Fixed points in Boolean transformations

Li, et al.[66] used the techniques of semi-tensor products to determine all the transformations :{0,1} ⟶ {0, 1} , which have exactly two fixed points. Their work opened new avenues for immediate further development as it alerted the great mathematician Sergiu Rudeanu[67] (viewed by many as the father of Boolean equations and transformations[68-69]) to explore the topic via

his conventional algebraic techniques[70-71]. He managed to obtain two important generalizations of the STP result in[66], namely, (a) he found the fixed points of a Boolean transformation : ⟶ , where is an arbitrary Boolean algebra, and (b) he described explicitly the form of the transformations :{0,1} ⟶ {0, 1} having exactly k fixed points, for k = 0, 1, 2, 3, and 4. Here, we have a wonderful interplay between STP and conventional algebraic methods that led to a very quick advancement of the state of the art in an important field.

4.5.2. Preparata Transformation

In a now classical paper, Preparata[72] used an involuntary (self inverse) binary matrix to transform the basis of the truth table representation of a two-valued Boolean function into that of its linear (Reed-Müller) representation. Recently, Cheng, et al. rediscovered (in an unpublished manuscript [16]) the transformation of Preparata (without identifying it as such), and sketched a proof for it using the STP methodology. In Section 8, we contribute a clearer, more rigorous, and complete STP proof of the Preparata Transformation using mathematical induction. Here, the role of the STP methodology was not to innovate a new concept, but just to impart elegance and succinctness to an existing one.

4.6. STP Applications to the Matrix Expression of Logics

The concepts and operations of STP have a great utility in the matrix expression of many logics, including the conventional two-valued propositional logic, many-valued logics, and fuzzy logic[73-76]. The STP proved useful not only for Boolean functions[16] but also for pseudo-Boolean functions[77-78] which are real-valued functions over the Boolean domain[79-

84]. The STP was also successfully utilized in solving deduction problems over propositional logic. We anticipate a better utility for the STP in solving these deduction problems, if it is

Page 13: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 15 used in conjunction with the Modern Syllogistic Method (MSM)[85-89], which is a method that ferrets out (from any set of premises) all that can be concluded in the most compact form. We devote the next few sections to STP applications to Boolean and pseudo-Boolean functions.

5. STP Application to Boolean Functions

A Boolean function is a function is ( ): ⟶ , where = {0,1} is the bivalent, two-valued or switching carrier [70, 71, 85, 90], usually referred to as D in the STP literature (see, e.g., [14]). Cheng, et al.,[14, 73-78] proposes that a two-valued Boolean variable be represented as a matrix ~ .

Note that the matrix expression is redundant since it has both the un-complemented literal and the complemented literal . An arbitrary choice is made in (33) to take (and not ) as the first element of . Corresponding to the definition (33), the Boolean constants 1 and 0 are given by 1~ = 10 , 0~ = 01 .

Here, the mutation denotes the jth column of the × identity matrix Boolean operators are defined as matrices, called structure matrices. The unary NOT operation (¬) is expressed as

¬ = [2 1] = 0 11 0 ,

So that

¬ ⋉ = 0 11 0 ⋉ = 0 11 0 = ∼ .

Before introducing binary operators, we must see first how a set X of two variables and are expressed: ∼ ⋉ = ⨂ ⨂ = = 00 00 = .

The vector X constitutes the basis on which binary operators are constructed. As a result of the choice made in (33), it appears in a reverse order of what is used conventionally in truth tables in classical textbooks on logic design or Boolean algebra (see, e.g,[85, 90]). Now, the binary OR operation is given by

∨ = [1112] = 1 1 1 00 0 0 1 , Implementation of OR operation has the

STP interpretation ∨ ∼ ∨ ⋉ =1 1 1 00 0 0 1 =+ + = ∨¬( ∨ ) . Again the matrix expression for ( ∨ )

gives both its value and its complement. The plus sign (+) in (40) depicts real addition, but since both and ∈ , the expression ( + + ) evaluates to ( ∨ ) for the four possible combinations of and x . We made use of De Morgan’s theorem in going from to ¬( ∨ ). Table 1 summarizes vector representations of the six commutative binary Boolean operators in addition to the IMPLY operator. The STP representation of a n-variable switching function takes the form of a 2 × 1 matrix of the form

(33)

(35)

(40)

(34)

(36)

(37)

(38)

(39)

Page 14: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

16 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

Table 1. Structure matrices of seven binary Boolean operators.

ExpandedStructurematrixforthebasis:[ ]

Abbreviatedstructurematrix Symbol

( ) Operator + + [ , , , ] ∧ AND + +

[ , , , ] ∨ OR

+ + [ , , , ] ↑ NAND

+ + [ , , , ] ↓ NOR

++ [ , , , ] ⊕ XOR

++

[ , , , ]

⨀ XNOR ≡ Equivalence ↔ Bi-implication + + [ , , , ] → Implication

⋉ = ⋉ ⋉ ⋉⋯⋉ = = ( ⋉ ⋉⋯⋉ ), where X is a 2 × 1 vector of the minterms over the variables , , ⋯ , arranged in reverse order. For example, for n = 3, the vector X is given by

= ⋉ ⋉ = .

6. Comparison with other Representations of Boolean Functions

The key theorem used in representing a Boolean function ( ) is its Shannon expansion[90], more appropriately called the Boole-Shannon expansion[32, 85]

( ) = ∧ ( |0 ) ∨ ( ∧ ( |1 ), = ∧ ( |0 ) ⨁( ∧ ( |1 ), = ∨ ( |0 ) ∧ ( ∨ ( |1 ), = ∨ ( |0 ) ⨀( ∨ ( |1 ), where the operations (∨,⨁, ∧,⨀) are the (inclusive) OR, exclusive-OR, AND, and Equivalence (Coincidence or exclusive NOR) operations of Boolean algebra[85, 90] and ( |0 ) and ( |1 ) are called subfunctions[29, 91], restrictions[34], quotients or ratios [32, 85, 90, 92] of the function ( ) = ( , ,⋯ , , , , ⋯ , ), and are given by ( |0 ) = ( , ,⋯ , , 0, ,⋯ , ), ( |1 ) = ( , ,⋯ , , 1, ,⋯ , ).

(41)

(42)

(43a)

(43c)

(43d)

(44a)

(44b)

(44c)

Page 15: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 17

Each of the four versions of the Boole-Shannon expansion (43) can be proved by proving the equality of its two sides for the two possible values of ( = 0and = 1). Figure 2 is a graphical representation of each of the expansions (43) in terms of (a) a signal flow graph (SFG)[93-102] and (b) a variable-entered Karnough map (VEKM)[28-33].

Fig. 2. Graphical representations of the Boole-Shannon expansions (43) (a) as a signal flow graph (SFG), and (b) as a variable-entered Karnaugh map (VEKM).

Figure 3 shows the complete binary tree resulting from repeated application of the Boole-Shannon expansion (43) to the 2-out-of-3 function. ( , , ) = ∨ ∨ .

This tree is called a binary decision diagram (BDD) in the literature[103]. We have chosen to draw it in the form of a multi-level Signal Flow Graph (SFG)[93-102], where the

value of a node is the weighted ORing of the values incident on it. For example, there are two arrows emanating from nodes ( ) and ( ∨ ) at level 1, and these two arrows are incident on node f. The value of f is the logical sum (ORing) of the values of these two nodes weighted by the transmissions and written on the arrows, i.e., f is given by ( , , ) = ( )( ) ∨ ( )( ∨ )

For convenience, we color variable non-leaf nodes as grey, and use a black color for constant leaf nodes of value 1 and a white color for constant leaf nodes of value 0. This has been the practice in earlier work[93-99, 101-

102], and it enhances figure readability considerably. Our interpretation for the SFG in Fig. 3 is according to the most familiar version of the Boole-Shannon expansion, viz. version (43a), but Fig. 3 could have interpretations according to the other versions ((43b) – (43d)) as well.

The complete binary tree in Fig. 3. translates into a set of Variable-Entered Karnaugh Maps (VEKMs)[28-33] in Fig. 4. A VEKM of m map variables and (3-m) entered variables (0 ≤ ≤ 3) corresponds to the nodes representing the function at level m of the tree in Fig. 3. In particular, the VEKM corresponding to level 0 is a purely-algebraic expression, while the one for level 3 is a conventional Karnaugh map (CKM), which is a two-dimensional display of the truth table of the function that enjoys useful adjacency properties. The CKM or the truth table is a peripheral leaf-level representation that is typically abbreviated by a decimal notation of the form[90]. = ∑(3, 5, 6, 7) = ∏(0, 1, 2, 4), where the ∑ notation lists the function minterms or its true-vectors (the values of ( ) for the cells in which f = 1), while the dual ∏ notation lists the function maxterms or its false-vectors (the values of ( )

(47)

(45)

(46)

(a)

( |0 )

( |0 ) ( |1 )

(b)

( |1 )

( )

Page 16: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

18 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb for the cells in which f = 0). Note that the sets of numbers associated with ∑ and ∏ are complementary, and that one set only suffices to identify f.

The expansion tree in Fig. 3. suffers redundancy. For example, at level 2, there are two nodes labeled , which are identical (together with their subtrees). Also, leaf nodes of 0 or 1 might appear early in the tree and it is

pointless to expand them further. Figure 5 replaces the expansion tree by an acyclic graph that eliminates the aforementioned redundancy. This is a Reduced Ordered Binary Decision Diagram (ROBDD)[34-35], which is now the de facto data structure for representing and manipulating Boolean functions.

For comparison purposes we show in Fig. 6. various STP representations for the 2-out-of-3 function given by (45) and displayed in Figs. 3-5. The matrix representation is clearly a peripheral-level leaf representation like the CKM or truth table and not a multi-level one like the VEKMs or ROBDD. In fact, it is simply a truth table of both the function in ( ) and its complement in ( ). This kind of duplication is useful in situations when both and are needed,

but otherwise it is an unwarranted duplication and a source of computational inefficiency. The notion that = ( ) represents the truth table of is disguised by the fact that the STP uses a reverse ordering of minterms, and employs the matrix convention of starting counting at 1 (and not the truth table convention of starting counting at 0). The representation via ⋉ brings about another problem. The STP employs real addition to implement ORing.

1 1

1

0 0 0

2

3

1 0

= ∨ ∨ 0

1

Fig. 3. Complete-binary-tree expansion for the 2-out-of-3 function in (45).

Page 17: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 19

∨ ∨

0

0

1

0

0

1

1

1

Fig. 4. A set of Variable-Entered Karnaugh Maps representing the 2-out-of-3 function. The top VEKM has 0 map variables and is a purely-algebraic expression, while the bottom one has 0 entered variables and is a CKM.

Page 18: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

20 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

Fig. 5. The expansion tree in Fig. 3. replaced by an acyclic graph (Reduced Ordered Binary Decision Diagram (ROBDD)).

ROBDD

= [11121222] = 1 1 1 0 1 0 0 00 0 0 1 0 1 1 1 = = [1 1 1 0 1 0 0 0] ×

⋉ = 1 1 1 2 1 2 2 20 0 0 1 0 1 1 1 × ×

= + + + + + + × = = + + +

Fig. 6 . Four STP representations of the 2-out-of-3 function in (45).

1

= ∨ ∨

0

Page 19: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 21

Fig. 7. Complete binary tree expansion of the pseudo-Boolean function in (48).

The implementation works correctly because the set of admissible input combinations is restricted to contain only the three pairs (0,0), (0,1), and (1,0), while the pair (1,1) is prohibited. For this set, many types of arithmetical and logical additions are equivalent as shown in Table 2. Of course, real addition (that requires a few full adders) is costlier than ORing (that requires a single OR gate) (see, e.g.,[90]). Many problems that require the STP matrix expression of Boolean functions are hard or intractable problems. These include many problems involving the study of the dynamic behavior of synchronous Boolean networks. Zhao[104] showed that the two problems of (a) the determination of the number of fixed points (cycles of length 1) for monotone Boolean networks, and (b) the determination of the existence of fixed points for general Boolean networks are both strong NP-complete. These means that many of the

intended STP applications are among the most intractable problems[105], and hence an inefficient handling of them is certainly undesirable.

Table 2. Equivalence of four types of addition for admissible input combinations.

Admissible inputs

Arithmetical addition Logical additon Real

addition GF(2) or modulo-2

addition XORing ORing

+ ( + ) 2 ⊕ ∨ 0 0 0 0 0 0 0 1 1 1 1 1 1 0 1 1 1 1

7. STP Application to Pseudo-Boolean Functions

A Pseudo-Boolean Function (PBF) is a real-valued function with Boolean domain, i.e, it is function ( ): ⟶ , where is the set of real numbers. Pseudo-Boolean functions have diverse engineering applications such as integer programming, graph theory, game theory, and capacitated networks (see, e.g.,[79-

−0.3 −0.3 −0.3

−0.3

−0.3

1

0.9 0.5 0.2 0.9

0.5 − 0.3

0.5+0.4 − 0.3 + 0.3

0

0

2

3

−0.3 − 0.3 + 0.3

0.9

= 0.5 − 0.3 − 0.3 + 0.7 + 0.3

Page 20: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

22 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb 84]). Since a PBF has the same domain as a Boolean function, it can be handled in the same way or via the same tools. For example, consider the PBF studied by Zhao and Cheng[77]: ( , , ) = 0.5 + 0.7 −0.3( ∨ ) = 0.5 − 0.3 − 0.3 + 0.7 +0.3 .

Here, the OR function ( ∨ ) is replaced by its real equivalent ( + −). The function f has a Boole-Shannon expansion that leads to the complete binary tree representation in Fig. 7, or equivalently to the set of VEKM representations in Fig. 8. It is also possible to replace the tree in Fig. 7 by an ROBDD-like acyclic graph, but the gain in efficiency is typically not as significant as it is in the case of Boolean functions. The STP representation of ( , , ) is via the structure vector[77] =[0.9, 0.9, 0.2, 0.5, −0.3, −0.3, −0.3, 0.0].

Again, this structure vector is a peripheral level leaf representation like a CKM or a truth table, and not a multi-level one like an expansion tree or a set of VEKMs. The entries of this vector are the same as the leaf-level nodes in Fig. 7 but in a different order. The handling of PBFs via the STP methodology in[77-78] seems natural and efficient since it involves manipulation of real quantities via real operations.

8. Preparata transformation

In this subsection, we give a novel STP derivation of the Preparata transformation[36-44] between the bases of the truth-table/ Karnough map representations of a Boolean function, i.e., the bases of its minterm/ maxterm expression and its linear expression (its Reed-

Müller expression). The Preparata transformation, also known as the Reed-Müller transformation[42], requires the use of a set of binary matrices (of dimensions 2 × 2 ), which are defined recursively, in conjunction with the STP methodology by = [1],

= = ⨂ .

= 0 11 1 .

The Preparata transformation for n variables can take the following form, which we call T(n): = , ≥ 1, where the LHS of (51) constitutes a reverse-order truth table basis of the form

= ⋉ ⋉⋯⋉ =[ ⋯ … ⋯ … ] ,

while the STP of the RHS of (51) is a linear basis of the form = 1x ⋉ 1x ⋉ …⋉ 1x = [1 …… … ]

The vector expression of a Boolean variable is = = 1 + = 0 11 1 1x = 1,

An explicit expression of T(n) in (51) is ⋉ ⋉ ⋯⋉ = ⋉ 1 ⋉1 ⋉⋯⋉ 1 , ≥ 1.

(53)

(55)

(48)

(54)

(49)

(50a)

(50b)

(51)

(52)

Page 21: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 23 0.5 + 0.7 − 0.3( ∨ )

Fig. 8. A set of Variable-Entered Karnaugh Maps representing the pseudo-Boolean function in Figure. 7.

Now, we prove T(n) in (51) or (55) by mathematical induction. For this purpose, we need to prove

(a) the boundary case T(1), namely,

= 0 11 1 1 ,

(56)

Page 22: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

24 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

which is obviously true, since =1 + .

(b) the inductive case ( ) ⟶( + 1), for ≥ 1, . ., we assume the truth of T(k) and utilize this assumption in proving T(k+1).

The transformation T(k) is ⋉ ⋉ ⋯⋉ = ⋉ 1 ⋉1 ⋉⋯⋉ 1 , ≥ 1,

in which, the variables can be renamed by making ⟶ , ⟶ ,⋯ , ⟶, to obtain ⋉ ⋉ ⋯⋉ = ⋉1 ⋉ 1 ⋉⋯⋉ 1 , ≥ 1.

Now, we utilize (58) in proving T(k+1), which is of the form

⋉ ⋉ ⋯⋉ = ⋉1 ⋉ 1 ⋉⋯⋉ 1.

Comparison of (58) and (59) reveals that (59) is true if

⋉ = ⋉ 1.

Note that (60) coincides with (56) when k = 0. We now proceed to prove (60) for general k by evaluating its two sides as follows. Comparing the STP in the LHS of (60) with (14), we have m = 2, n = 1, p = q = 2k and c = 2k, and hence we obtain

= ⋉= ( ⨂ ) × ( ⨂ ) × = 1 21 2 2 +1×2 = = ⨂ .

Comparing the STP in the RHS of (60) with (14), we obtain = =2 , =2, = 1, = 2 , and hence we obtain = ⋉ 1 =( ⨂ ) × ( 11 ⨂ 2 )2 +1×2

= ( ) × =

= (1 + ) = × = ⨂ = LHS .

Since (60) is true, the required result T(k+1) in (59) is also true, and this completes the proof.

Several comments are in order. The reverse order associated with the STP inflicted some penalties on our derivation. Firstly, it necessitated the unusual renaming step in going from (57) to (58), which meant that the inductive step supported its case of (k+1) variables by the case of their last k variables and not that of their first k variables. Secondly, the self-inverse nature for the matrix Pk in (50) has been disguised. Comparatively, the corresponding matrix Sn in the original (forward-order) Preparata Transformation is a self-inverse (involutory) matrix given by = [1],

(57)

(62)

(63)

(64a)

(58)

(59)

(60)

(61)

Page 23: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 25 = , = 1 10 1 .

9. Conclusions

In this paper we presented a detailed tutorial exposition of semi-tensor products (STP), and clarified its relation to the conventional matrix products (CMP) and to the Kronecker products (KP). We reviewed the basic concepts, properties, manipulations, and several prominent applications of the STP.

Comparing the conventional matrix product, the tensor (Kronecker) product, and the semi-tensor product of matrices, it is easily seen that there are some similarities as well as some significant differences among them. The conventional matrix product is of an element-to-element nature, and the tensor product involves a product of one element by a whole matrix, while the semi-tensor product involves one element of a matrix times a block of another matrix. Cheng et al.[14] cite this as one prominent reason why their new product should be called a semi-tensor product.

Patel, et al.[106] has a serious observation about numerical algorithms, which they emphasize by calling it a "folk theorem." This so called "theorem" states that "if an algorithm is amenable to ‘easy’ hand calculation, it is probably a poor method if implemented in the finite floating-point arithmetic of a digital computer." The "converse of the folk theorem"states that"Many algorithms that are now considered fairly reliable in the context of finite arithmetic are not amenable to hand calculation." It seems that many STP algorithms can serve as pertinent examples that fully support the converse of the folk theorem. This explains why despite the extensive computational successes of the STP approach, it is still very slowly being accepted and assimilated by the scientific community. In particular, we observe that the STP concepts, techniques, and applications have

not found their way yet to popular textbooks, though we believe that they are guaranteed to do so sooner or later.

The past decade witnessed a surge in applications of the STP methodology. We reviewed many of these applications and cited representative samples of their references. We were very careful to observe any shortcomings that could possibly accompany a hasty advancement or a non-scrutinizing rush. We found that there exist many useful and powerful, flawless STP applications, and we anticipate that prospective innovative STP applications are still to come. We had only a minor reservation about the STP utility in representing Boolean functions. Though the STP methodology could contribute elegant proofs and derivations for Boolean functions and transformations, and though it was employed successfully as a computational tool for Boolean problems, it is not really the best or most efficient computational tool for these problems.

References

[ 1] Huang, T.S. and Parker, R.R., Network Theory: An Introductory Course, Addison Wesley, Reading, MA, USA, (1971).

[ 2] Cheng, D., Qi, H. and Xue, A., A survey of semi-tensor product of matrices, Journal of System Science and Complexity, 20: 304-322, (2007).

[ 3] Horn, R. A. and Johnson, C. R., Topics in Matrix Analysis, Vol. 1, Cambridge Press, New York, NY, USA, (1991).

[ 4] Horn, R. A. and Johnson, C. R., Topics in Matrix Analysis, Vol. 2, Cambridge Press, New York, NY, USA, (1991).

[ 5] Cheng, D., Semi-tensor product of matrices and its application to Morgan’s problem, Science in China Series F: Information Sciences, 44, (3): 195-212, (2001).

[ 6] Cheng, D., Matrix and Polynomial Approach to Dynamic Control Systems, Science Press, Nanjing, China (2002), (in Chinese).

[ 7] Cheng, D. and Zhang L., On semi-tensor product of matrices and its applications, Acta Mathematicae Applicatae Sinica (English Series), 19, (2): 219-228, (2003).

[ 8] Cheng, D., Semi-tensor product of matrices and its applications to dynamic systems. In: Dayawansa, W., Lindquist A. and Zhou Y., (Editors), New Directions and Applications in Control Theory, Lecture Notes in Control and Information Science, Springer, Berlin, Germany, pp: 61-79, (2005).

(64b)

Page 24: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

26 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

[ 9] Cheng, D., Semi-tensor product of matrices and its applications to dynamic systems, New Directions and Applications in Control Theory, 321: 61-79, (2005).

[ 10] Cheng, D. and Qi, H., Semi-Tensor Product of Matrices: Theory and Applications, Science press, Beijing, China, (2007), (in Chinese).

[ 11] Cheng, D., Semi-tensor product of matrices and its applications: A survey, Proceeding of the 6th ICCM’ 07, Zhejiang, China, 3: 641-668, ( 2007).

[ 12] Cong-Hui, L., Zhao, J. and Song, C., Some properties and a theorem of the left-semi-tensor product of matrices, Journal of Dezhou University, 24, (2): 12-14, (2008).

[ 13] Wang, H., On the positive definiteness of the left semi-tensor product of matrices, Journal of Liaocheng University, 22(1): 1-3, (2009).

[ 14] Cheng, D., Qi, H. and Li, Z., Analysis and Control of Boolean Networks: A Semi-Tensor Product Approach, Springer-Verlag, London, UK, (2010).

[ 15] Cheng, D., Zhao, Y. and Xu, X., Matrix approach to Boolean calculus, in the Proceeding of the 50th IEEE Conference on Decision and Control and European Control Conference (CDC/ECC), pp. 6950-6955, (2011).

[ 16] Zhoa, Y., Gao, X. and Cheng, D., Semi-tensor product approach to Boolean functions, 1-9, Unpublished Preprint, Available at http://lsc.amss.ac.cn/~dcheng/preprint/ bf01.pdf

[ 17] Cheng, D. and Zhao, Y., Semi-tensor product of matrices: A convenient new tool, Chinese Scientific Bulletin (Chinese Version), 56 (32): 2664-2674, (2011) (in Chinese).

[ 18] Chen, H. and Sun, J., A new calculation for Boolean derivative using Cheng product, Journal of Applied Mathematics, 2012:1-11, (2012).

[ 19] William, S. and Franklin, P., The cohomology structure of certain fibre spaces- I, Topology, 4 (1): 47-65, (1965).

[ 20] Barcus, W., On a theorem of Massey and Peterson, The Quarterly Journal of Mathematics, 19 (1):33-41, (1968).

[ 21] Smith, L., Split extensions of Hopf algebras and semi-tensor products, Mathematica Sinica, 26: 17-41, (1970).

[ 22] Anick, D., Non-commutative graded algebras and their Hilbert series, Journal of Algebra, 78 (1): 120-140, (1982).

[ 23] Anick, D., A counterexample to a conjecture of Serre, Annals of Mathematics, 115 (1): 1-33, (1982).

[ 24] Anick, D., A loop space whose homology has torsion of all orders, Pacific Journal of Mathematics, 123 (2): 257-262, (1986).

[ 25] Jianlong, C., Group inverse and Drazin inverse of matrices over rings, Acta Mathematica Sinica, 37 (3): 373-380, (1994).

[ 26] Piontkovskii, D. I., Koszul algebras and their ideals, Functional Analysis and Its Applications, 39 (2): 120-130, (2005).

[ 27] Janyška, J., Marco, M. and Raffaele V.,An algebraic approach to physical scales, Acta Applicandae Mathematicae, 110 (3): 1249-1276, (2010).

[ 28] Rushdi, A. M., Map derivation of the minimal sum of a switching function from that of its complement, Microelectronics and Reliability, 25 (6): 1055-1065, (1985).

[ 29] Rushdi, A. M., Improved variable-entered Karnaugh map procedures, Computers and Electrical Engineering, 13 (1): 41-52, (1987).

[ 30] Rushdi A. M., Karnaugh map, Encyclopedia of Mathematics, Supplement Volume I: pp. 327-328, Hazewinkel, M. (Ed.) Kluwer Academic publishers, Boston, USA, (1996).Available at: www.encyclope diaofmath.orge/index.php/Karnaugh_map.

[ 31] Rushdi, A. M. and Al-Yahya, H. A., A Boolean minimization procedure using the variable-entered Karnaugh map and the generalized consensus concept, International Journal of Electronics, 87, (7): 769-794, (2000).

[ 32] Rushdi, A. M. and Al-Yahya, H. A., Derivation of the complete sum of a switching function with the aid of the variable-entered Karnaugh map, Journal of King Saud University: Engineering Sciences, 13 (2): 239-269, (2001).

[ 33] Rushdi, A. M. and Al-Yahya, H. A., Further improved variable-entered Karnaugh map procedures or obtaining the irredundant forms of an incompletely-specified switching function, Journal of King Abdulaziz University, Engineering Sciences, 13 (1): 111-152, (2001).

[ 34] Bryant, R., Graph-Based Algorithms for Boolean Function Manipulation, IEEE Transactions on Computers, 35 (8): 677-691, (1986).

[ 35] Brace, S. K., Ruudell, R. L. and Bryant, R. M. E., Efficient Implementation of a BDD Pakage, Design Automation Conference, pp: 40-45, (1990).

[ 36] Preparata, F. P., State-logic relations for autonomous sequential networks, Electronic Computers, IEEE Transactions on, 5: 542-548, (1964).

[ 37] Saluja, Kewal K. and Ong. E. H., Minimization of Reed–Müller canonic expansion, Computers, IEEE Transactions on, 100 (7): 535-537, (1979).

[ 38] Green, D. H., Dual forms of Reed-Müller expansions. Computers and Digital Techniques, IEE Proceedings, 141, (3): 184-192, (1994).

[ 39] Stankovic, R., S., Sasao, T. and Moraga, C., Spectral transform decision diagram, in Representations of Discrete Functions, T. Sasao, and M. Fujita, eds., pp. 55-92, Kluwer Academic, Norwell, MA, USA, (1996).

[ 40] Kim, S., W., Shin, B., S., Kim, J. H. and Kim, H. S., A method to generate generalized Reed-Müller coefficients over GF(2) using decision Diagrams, Proceedings of the IEEE Region 10 Conference (TENCON 99), 1: 379-382, (1999).

[ 41] Quintana, J., M. and Avedillo, M., J., Reed-Müller Descriptions of Symmetric Functions, Proceeding of the 2001 IEEE International Symposium on Circuit and System (ISCAS 2001), 4: 682-685, (2001).

[ 42] Sasao, T. and Butler, J., T., The eigenfunction of the Reed-Müller transformation, Proceedings of the Workshop on Applications of the Reed Muller Expansion in Circuit Design, and Representation and Methodology of Future Computing Technology. RM-2007, Oslo, Norway, May 16, (2007).

[ 43] Singh, J. and Shikha G., Eigen Decomposition of Reed Muller Transform using Kronecker Method., International Journal of Computer Applications, 1, (10): 1-7, (2010).

[ 44] Brewer, J., Kronecker products and matrix calculus in system theory, Circuits and Systems, IEEE Transactions on, 25 (9): 772-781, corrections: ibid, vol. CAS-26, No. 5, May 1979, p. 360, 1978.

[ 45] Bourbaki, N., Elements of mathematics, Algebra I, Springer-Verlag, New York, USA,(1989).

Page 25: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 27

[ 46] Michiel, H., Gubareni, N. M., Nadiya, G. and Vladimir, K., Algebras rings and modules, Vol. 1, Springer, New York, USA, (2004).

[ 47] Cheng, D. and Yali, D., Semi-tensor product of matrices and its applications to physics, Methods and Applications of Analysis, 10 (4): 565-588, (2003).

[ 48] Cheng, D., Some applications of semi—tensor products of matrices in algebra, The International Journal of Computers & Mathematics with Applications, 52 (3): 1045-1066, (2006).

[ 49] Cheng, D. and Jin M., Calculation of stability region, Proceedings of the 42nd IEEE Conference on Decision and Control, 6: 5615-5620, (2003).

[ 50] Cheng, D. and Hu, X., Non-regular feedback linearization of nonlinear systems via a normal form algorithm, Automatica, 40, (3): 439 – 447, (2004).

[ 51] Cheng , D., Polynomial approximations for the stable and unstable manifolds of the hyperbolic equilibrium point using semi-tensor product, International Journal of Innovative Computing, Information and Control, 2 (3): 593-608, (2006).

[ 52] Cheng, D., Guowu, Y. and Zairong, X., Nonlinear systems possessing linear symmetry, International Journal of Robust and Nonlinear Control, 17, (1): 51-81, (2007).

[ 53] Cheng, D. and Yuqian, G., Stabilization of nonlinear systems via the center manifold approach, Systems & Control Letters, 57 (6):511-518, (2008).

[ 54] Cheng, D., Zhiqiang, L. and Qi, H., Canalizing Boolean mapping and its application to disturbance decoupling of Boolean control networks, IEEE International Conference on Control and Automation, pp: 7-12, IEEE, (2009).

[ 55] Cheng, D. and Qi, H., Controllability and observability of Boolean control networks, Automatica, 45 (7): 1659-1667, (2009).

[ 56] Li, Z., Yin, Z. and. Cheng, D., Structure of higher order Boolean networks, Preprint, 28 (4):431-447, (2010).

[ 57] Zhao, Y., Qi, H. and Cheng, D., Input-state incidence matrix of Boolean control networks and its applications, Systems & Control Letters, 59 (12): 767-774, (2010).

[ 58] Cheng, D. and Qi, H., A linear representation of dynamics of Boolean networks, IEEE Transactions on Automatic Control, 55 (10): 2251-2258, (2010).

[ 59] Cheng, D., Qi, H. and Zhiqiang, L., Model construction of Boolean network via observed data, IEEE Transactions on Neural Networks, 22 (4): 525-536, (2011).

[ 60] Fangfei, L. and Sun, J., Controllability of Boolean control networks with time delays in states, Automatica, 47, (3): 603-607, (2011).

[ 61] Cheng, D., Disturbance decoupling of Boolean control networks, IEEE Transactions on Automatic Control, 56 (1): 2-10, (2011).

[ 62] Cheng, D. and Yin Z., Identification of Boolean control networks, Automatica, 47 (4): 702-710, (2011).

[ 63] Yin, Z., Li, Z. and Cheng, D., Optimal control of logical control networks, IEEE Transactions on Automatic Control, 56, (8): 1766-1776, (2011).

[ 64] Haitao, L. and Yuzhen, W., Boolean derivative calculation with application to fault detection of combinational circuits via the semi-tensor product method, Automatica, 48, (4):688-693, (2012).

[ 65] Xiangru, X., Hong, Y. and Lin, H., Matrix approach to simulation and bisimulation analysis of finite automata,

Proceedings of the 10th World Congress on Intelligent Control and Automation, pp. 2716-2721, (2012).

[ 66] Li, H., Wang, Y. and Liu, Z., Existence and number of fixed points of Boolean transformations via the semi-tensor product method, Applied Mathematical Letters, 25: 1142-1147, (2012).

[ 67] Rudeanu, S., On the number of fixed points of a Boolean transformation, Annals of the University of Craiova, Mathematics and Computer Science Series, 39 (2): 125-131, (2012).

[ 68] Rushdi, A. M. and Amashah, M. H., Purely-algebraic versus VEKM methods for solving big Boolean equations, Journal of King Abdulaziz University: Engineering Sciences, 23 (2): 75-85, (2012).

[ 69] Rushdi, A. M., A comparison of algebraic and map methods for solving general Boolean equations, Journal of Qassim University: Engineering and Computer Sciences, 5 (2): 147-173, (2012).

[ 70] Rudeanu, S., Boolean Functions and Equations, North-Holland Publishing Company & American Elsevier, Amsterdam, the Netherlands (1974).

[ 71] Rudeanu, S., Lattice Functions and Equations, Springer Verlag, London, UK (2001).

[ 72] Preparata, F. P., State-logic relations for autonomous sequential networks, IEEE Transactions an Electronic Computers, EC-13, (5): 542-548, (1964).

[ 73] Cheng, D. and Qi, H., Logic and logic-based control, Journal of Control Theory and Applications, 6 (1): 26-36, (2012).

[ 74] Cheng, D. and Qi, H., Matrix expression of logic and fuzzy control," Proceedings of the 44th IEEE Conference on Decision and Control and the European Control Conference, (CDC-ECC): 3273-3278, (2005).

[ 75] Cheng, D. and Li, Z., Solving logic equation via matrix expression, Frontiers of Electrical and Electronic Engineering in China, 4 (3): 259-269, (2009).

[ 76] Cheng, D., Yin, Z. and Xiangru, X., Matrix approach to Boolean calculus, Proceedings of the 50th IEEE Conference on Decision and Control and the European Control Conference (CDC-ECC): 6950-6955, (2011).

[ 77] Zhao, Y. and Cheng, D., Calculus of Pseudo-Boolean functions, Proceedings of the 31st Chinese Control Conference, Heifei, China: 267-272, (2012).

[ 78] Li, Z., Song, J. and Xiao, H., Algebraic method to pseudo-Boolean function and its application in pseudo-Boolean optimization, Proceedings of the 10th World Congress on Intelligent Control and Automation, Beijing, China: 2468-2472, (2012).

[ 79] Hammer, P. L. and Rudeanu, S., Boolean Methods in Operations Research and Related Areas, Springer, Berlin, Germany, (1968).

[ 80] Rushdi, A. M., Probabilistic performance indices of power generation and transmission systems, King Abdulaziz University Journal: Engineering Sciences, 1 (1): 1-23 (1987). (In Arabic, with an English abstract).

[ 81] Rushdi, A. M., Capacity-function-preserving star-delta transformations in flow networks, Reliability Engineering, 19, (1): 49-58, (1987).

[ 82] Rushdi, A. M., Performance indexes of a telecommunication network, IEEE Transactions on Reliability, R-37, (1): 57-64, (1988).

Page 26: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

28 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

[ 83] Rushdi, A. M., Star-delta transformations of bidirectional branches in probabilistic flow networks, Microelectronics and Reliability, 30, (3): 525-535, (1990).

[ 84] Bernasconi, A., Ciriani, V., Luccio, F. and Pagli, L., Fun at a department store: Data mining meets switching theory, FUN 2010, LNCS 6099, Springer-Verlag, Berlin-Heidelberg, Germany, (2010).

[ 85] Brown, F. M., Boolean Reasoning: The logic of Boolean equations, Kluwer Academic Publishers, Boston, MA, USA, 1990, 2nd Ed. By Dover Publications, Mineola, NY, USA, 2003.

[ 86] Rushdi, A. M. and Al-Shehri, A. S., Logical reasoning and its supporting role in the service of security and justice, Journal of Security Studies, 11, (22): 115-153, (2002), (In Arabic with an English abstract).

[ 87] Rushdi, A. M. and Ba-Rukab, O. M. Some Engineering Applications of the modern syllogistic method, SEC7 Paper 226, Proceedings of the 7th Saudi Engineering Conference (SEC7), Riyadh, Saudi Arabia, 4: 389-401, (Also p.201 in Abstracts Volume).

[ 88] Rushdi, A. M. and Ba-Rukab, O. M., Powerful features of the modern syllogistic method of propositional logic, Journal of Mathematics and Statistics, 4, (3): 186-193, (2008).

[ 89] Rushdi, A. M. and Ba-Rukab, O. M., An exposition of the modern syllogistic method of propositional logic, Umm Al-Qura University Journal: Engineering and Architecture, 1 (1): 17-49, (2009).

[ 90] Muroga, S., Logic Design and Switching Theory, Wiley, New York, NY, USA, (1979).

[ 91] Rudeanu, S., Lattice Functions and Equations, Springer Verlag, London, UK, (2001).

[ 92] Culter, R. B., Kinoshita, K. and Muroga, S., Exposition of Tison’s Method to Derive all Prime Implicants and all Irredundant Disjunctive Forms for a Given Switching Function. Report No. UIUCDCS-R-79-993. Department of Computer Science, University of llinois, Urbana, llinois, USA, (1979).

[ 93] Rushdi, A. M., Utilization of symmetric switching functions in the computation of k-out-of-n system reliability, Microelectronics and Reliability, 26 (5): 973-987, (1986).

[ 94] Rushdi, A. M., Efficient Computation of k-to-ℓ-out-of-n system reliability, Reliability Engineering, 17: 157 -163, (1987), Erratum : ibid, Vol. 19, p. 321, (1987).

[ 95] Rushdi, A. M. and Dehlawi, F. M.-A., Optimal Computation of k-to-ℓ-out-of-n System Reliability, Microelectronics and Reliability, 27: 875-896, (1987), Erratum : ibid, Vol. 28, p. 671, (1988).

[ 96] Rushdi, A. M., Threshold Systems and Their Reliability, Microelectronics and Reliability, 30 (2): 299-312, (1990).

[ 97] Rushdi, A. M. and Al-Thubaity, A. O., Efficient Computation of the Sensitivity of k-out-of-n System Reliability, Microelectronics and Reliability, 33: 1963-1979, (1993).

[ 98] Rushdi, A. M., Reliability of k-out-of-n Systems, Chapter 5 in Misra, K. B. (Editor), New Trends in System Reliability Evaluation, Vol. 16, Fundamental Studies in Engineering, Elsevier Science Publishers, Amsterdam, The Netherlands, pp. 185-227, (1993).

[ 99] Rushdi, A. M. and Al-Qasimi, A. M., Efficient Computation of the PMF and the CDF of the Generalized Binomial Distribution, Microelectronics and Reliability, 34: 1489-1499, (1994).

[ 100] Kuo, W. and Zuo, M. J., The k-out-of-n System Model, Chapter 7 in Optimal Reliability Modelling: Principles and Applications, Wiley, New York, NY, USA, pp. 231-280, (2003).

[ 101] Al-Qasimi, A. M. and Rushdi, A. M., A Tutorial on How to Efficiently Calculate and Format Tables of the Binomial Distribution, Journal of King Abdulaziz University: Engineering Sciences, 19, (1): 3-17, (2008).

[ 102] Rushdi, A. M., Partially-redundant systems: Examples, reliability, and life expectancy, International Magazine on Advances in Computer Science and Telecommuni-cations, 1, (1): 1-13, (2010).

[ 103] Akers, S. B., Binary Decision Diagrams, IEEE Transactions on Computers, C-27, (6): 509-516, (1978).

[ 104] Zhoa, Q., A Remark on “Scalar Equations for Synchronous Boolean Networks with Biological Applications,” IEEE Transactions on Neural Network., 16 (6): 1715-1716 (2005).

[ 105] Garey, M. R. and Johnson, D. S., Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman, New York, NY, USA (1979).

[ 106] Patel, R. V., Laub, A. J. and Van Doreen, P. M, (Editors), Numerical Linear Algebra Techniques for Systems and Control, IEEE Press, New York, NY, USA, (1994).

Page 27: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

A Tutorial Exposition of Semi-Tensor Products of Matrices with a Stress on Their Representation of Boolean Functions 29

مع التأكيد على تمثيلها للدوال البولانيةشرح تعليمي للمضروبات شبه المنظومية للمصفوفات

فارس أحمد محمد غالب رشدي و علي محمد علي

اسبات، كلية الهندسة،قسم الهندسة الكهربائية وهندسة الح ، المملكة العربية السعوديةجدة, جامعة الملك عبدالعزيز

[email protected]

إن ورقــة البحــث هــذه هــي شــرح تعليمــي مفصــل لنــوع جديــد عظــيم النفــع مــن مضــروبات .المســتخلصيســــــمح هــــــذا المضــــــروب بضــــــرب ). ض ش ن( المصــــــفوفات يســــــمى المضــــــروب شــــــبه المنظــــــومي

لا تحققــان شــرط التــواؤم الــذي يتطلبــه المضــروب الاصــطلاحي لمصــفوفتين ف كو ب م ن مصــفوفتين أوهـــو تســـاوي بعـــد الأعمـــدة ن للمصـــفوفة الأولـــى أ مـــع بعـــد الصـــفوف ف للمصـــفوفة )ض ص ص(

ــــة ب ــــ. الثاني ــــرث تقريب ا كــــل خصــــائص المضــــروب الاصــــطلاحي إن المضــــروب شــــبه المنظــــومي ييــتم تقــديم المفــاهيم والخصــائص والمعالجــات . }ف = ن{لمصــفوفتين، كمــا أنــه يــؤول إليــه فــي حالــة

، كمــــا يجــــري شــــرحها بالتفصــــيل مــــن خــــلال أمثلــــة تعليميــــة يــــةللمضــــروبات شــــبه المنظوم الأساســــيةتشــتمل تطبيقــات المضــروب شــبه المنظــومي علــى مســائل الــتحكم عديــدة الخطيــة أو غيــر . توضــيحية

نؤكــد هنــا علــى اســتعمال .الخطيــة، والتحليــل النظــري للمســائل الرياضــية، واشــتقاق البــراهين الرياضــيةنحقـق ). التبديليـة أو المنطقيـة(صفوفي عـن الـدوال البولانيـة في التعبير الم المضروب شبه المنظومي

ا أفضــل لهــذا الاســتخدام بترجمــة مصــطلحات المضــروب شــبه المنظــومي إلــى التمثــيلات التقليديــة فهمـــــدوال ـــر المصـــفوفي لل ـــد الصـــريح للقواعـــد التـــي يســـتند إليهـــا التعبي ـــة، وبالتحدي ـــدوال البولاني المألوفـــة لل

ل الـــدوال البولانيـــة بواســـطة المضـــروب شـــبه المنظـــومي مـــع تمثيلاتهـــا المعروفـــة نقـــارن تمثيـــ. البولانيـــةومخططـات القـرار الثنـائي المرتبـة ) خ ك غ ح(الأخرى مثل تمثيلها بخرائط كارنوه متغيرة المحتويات

ـــة ـــين الأخيـــرينلا). خ ق ث ر خ(المختزل ـــد كـــاملا ن تمثـــيلا حـــظ أنـــه بينمـــا يعـــد كـــل مـــن التمثيل عدي. ، فـــإن التمثيـــل بالمضـــروب شـــبه المنظــــومي هـــو تمثيـــل أحـــادي للمســـتوى الطرفـــي فقــــطالمســـتويات

والخلاصــة أن التمثيــل بالمضــروب شــبه المنظــومي هــو تمثيــل لجــدول الصــدق للدالــة البولانيــة المعنيــة ل إن قابليــــة التمثيــــ. ا للدالــــة المكملــــة لهــــا، ومــــن ثــــم فإنــــه يتضــــمن ازدواجيــــة لا ضــــرورة لهــــاوأيضــــ

علـى ترتيـب معكـوس ا أن هـذا التمثيـل مبنـي ضـمني ،والفهم يعوقهـا بالمضروب شبه المنظومي للقراءةالمألوفــة كقيمــة ( الصــفر قيمــةولــيس ) المصــفوفات المألوفــة كقيمــة بدايــة فــي( ويبــدأ عنــد قيمــة الواحــدئفـة الأوسـع إن التمثيل بالمضروب شـبه المنظـومي يعـد أكثـر ملاءمـة للطا). بداية في جداول الصدق

Page 28: A Tutorial Exposition of Semi-Tensor Products of Matrices ...

30 Ali Muhammad Ali Rushdi and Fares Ahmad Muhammad Ghaleb

وعلــى . ا للطائفــة الأضــيق مــن الــدوال البولانيــةمــن الــدوال شــبه البولانيــة، ومــن ثــم فإنــه يبــدو فضفاضــســبيل المثــال، فمنهجيــة المضــروب شــبه المنظــومي تســتعمل عمليــة الجمــع الحقيقــي الأكثــر عموميــة

لتنفيـذ غيـر الكـفء أمـر لا ومثـل هـذا ا. التي يحتاجهـا الجبـر البـولاني" أو"والأعلى تكلفة لتنفيذ عملية وبــرغم . أقلهـا قابليـة للتتبـعت المسـتهدفة ضـمن أصـعب المســائل و يمكـن احتمالـه عنـدما تكـون التطبيقــا

هـــذه الجوانـــب ســـالفة الـــذكر، لا يســـعنا إنكـــار جـــدوى ونفـــع منهجيـــة المضـــروب شـــبه المنظـــومي فـــي ي حققــت نجاحــات حســابية فــي والواقــع أن منهجيــة المضــروب شــبه المنظــوم. معالجــة الــدوال البولانيــة

معالجــة مســائل متوســطة الحجــم فــي مجــالات عديــدة تتــراوح بــين مجــال الشــبكات البولانيــة المتزامنــة عــن ذلــك، تعــد منهجيــة المضــروب شــبه المنظــومي أداة فعالــة وفضــلا . ومجــال الاســتنباط المنطقــي

النقطـــة باســـتعمال الاســـتقراء نبـــرهن علـــى هـــذه. للبـــراهين والاشـــتقاقات الرياضـــية فـــي المجـــال البـــولانيالرياضـــي فـــي برهـــان مبتكـــر بمنهجيـــة المضـــروب شـــبه المنظـــومي نعيـــد فيـــه اشـــتقاق تحويـــل بريبارتـــا الشـــهير الـــذي يـــربط تمثيـــل دالـــة بولانيـــة ثنائيـــة القيمـــة باســـتعمال جـــدول الصـــدق مـــع تمثيلهـــا الخطـــي

. موللر-المعروف باسم تمثيل ريد

حالة البعد المضاعف، وراثة عدم التواؤم، ،لمضروبات شبه المنظوميةالمصفوفات، ا :الكلمات الدالة، خــرائط كــارنوه متغيــرة المحتويــات، ، الــدوال شــبه البولانيــةالخصــائص، الــدوال البولانيــة

مخططات القرار الثنائي المرتبة المختزلة، تحويـل بريباراتـا، الحسـابات الحقيقيـة مقابـل .التتبعالحسابات فوق الحقل الثنائي، عدم