You are on page 1of 49

1

Classification and Properties of


Logical Functions

Monotonic functions
Self-dual functions
Symmetric functions
Linear functions
Post theorem - Functional completeness

Shannon expansion theorem
Reed-Muller expressions
Kronecker expressions
Walsh transform
2

Boolean function is isotonic in respect to variable x
if from , it follows , or
1 2
2 1 2 1 3
1 1 3
1 3
1 3
( , ) ( ) ( )
( ) ( ) = ( ) ( )
( , ) ( ) ( ( ) ( ))
= + ( ) ( ) =
= ( ) ( ).
F x Y xf Y xf Y
f Y f Y f (Y) f Y f Y
F x Y xf Y x f Y f Y
(x x)f Y xf Y
f Y xf Y
= +
> +
= + + =
+
+
) , ( Y x F
2 1
x x >
) , ( ) , (
2 1
Y x F Y x F > (1, ) (0, ). F Y F Y >
Monotonic Functions
Lemma: If a Boolean function is isotonic in x then
Proof:
( , ) ( ) ( ) F x Y a Y xb Y = +
3
Boolean function
is antitonic in respect to variable x,

it follows that:
1 2
1 2 1 2 3
2 3 2
2 3
2 3
( , ) ( ) ( )
( ) ( ) = ( ) ( )
( , ) ( ( ) ( )) ( )
= + ( ) ( ) =
= ( ) ( ).
F x Y xf Y xf Y
f Y f Y f (Y) f Y f Y
F x Y x f Y f Y xf Y
(x x)f Y xf Y
f Y xf Y
= +
> +
= + + =
+
+
) Y , x ( F
) , ( ) , (
2 1
Y x F Y x F s , or
) , 0 ( ) , 1 ( Y F Y F s
2 1
x x >
if from
Monotonic Functions (cont)
Lemma: If a Boolean function is antitonic in x then
Proof:
( , ) ( ) ( ) F x Y a Y xb Y = +
4
Boolean function
) Y , x ( F
is monotonic in respect to variable x
if this function is isotonic or antitonic in respect to this variable.

Boolean function is isotonic if this function is isotonic in respect to
all variables.

Boolean function is antitonic if this function is an titonic in respect
to all variables.

Boolean function is monotonic if this function is monotonic in
respect of all variables (is isotonic in respect to some part of
variables and antitonic in respect to another part).

Monotonic Functions (cont)
5
2 0 1 0 2 1 0
x x x x ) x , x , x ( F + =

Function is:
isotonic in respect of x
1

antitonic in respect of x
2
;
non-monotonic in respect of x
0
.




Function is isotonic
x
2
x
1
x
0
6
Monotonic functions on Hasse diagram
(0,1,1,0) (1,0,0,1) (0,1,0,1) (1,0,1,0)
(0,1,0,0) (0,0,1,0)
(1,1,0,1) (1,0,1,1)
(0,0,0,0)
(1,1,1,1)
(0,1,1,1) (1,1,1,0)
(1,0,0,0) (0,0,0,1)
(0,0,1,1) (1,1,0,0)
3 2 1 0
( , , , ) f x x x x
7
Monotonic function as a star
Monotonic function is monotonic in respect to star vertex.
Isotonic function is isotonic in respect to vertex 2
n
-1.
Antitonic function is antitonic in respect to vertex 0.



1 2 0 2 1 0
) , , ( x x x x x x F + =
Function is monotonic in respect to vertex 5.

5
0
8
Generating Monotone (isotonic) Boolean
Functions

To find the isotonic Boolean functions of n variables, we consider each
n-1-variable isotonic function X and adjoin to it any other n-1-variable
isotonic function Y such that X U Y = Y.

n=1 n=2 n=3
00
01
11
0000
0001
0011
0101
0111
1111
00000000
00000001
00000011
:
:
01111111
11111111

9
Dual and Self-Dual Functions

) ( X F The function is called dual to function if
) ( X
) ( ) ( X X F =
) ( X ) (X
) ( ) ( X X F =
10
. ) , , (
; ) , , (
2 1 0 2 1 0 2
2 1 2 0 1 0 2 1 0 1
x x x x x x F
x x x x x x x x x F
=
+ + =
) ( ) ( X F X F =
The function F(X) is called self-dual function if:
There are no self-dual functions of 2 variables.
There are two NPN classes of self-dual functions of 3 variables:
Dual and Self-Dual Functions

11
Self-dual function has opposite value on any two
vertexes belonged opposite ends of each biggest
diagonal of the n-cube.
So, self-dual function has the value 1 (or 0) on half of vertexes of
the n-cube.
If some function is self-dual, all representatives of its NPN class
are self-dual.
Dual and Self-Dual Functions

12
100
101
110
111
000
001
010
011
xyz
) , , ( z y x f ) , , ( z y x f ) , , ( z y x f
0
f
1
f
2
f
3
f
6
f
5
f
7
f
0
f
1
f
2
f
3
f
4
f
6
f
5
f
7
f
6
f
5
f
4
f
4
f
3
f
2
f
7
f
1
f
0
f
Dual and Self-Dual Functions (cont)

13
variables. n dual functions of - There are different self : 1 Theorem

variables, and n dual function of - be a self f Let : 2 Theorem
let be the number of inputs a for which
then


function is the function such that dual - anti - self A : Definition



For example, is a self-anti-dual function, since
1
2
2
n
f
1 ) ( = a f
. 2
1
=
n
f
). ,..., , ( ) ,..., , (
2 1 2 1 n n
x x x f x x x f =
y x y x f = ) , (
). , ( ) 1 ( ) 1 ( y x f y x y x f = = =
Dual and Self-Dual Functions

14
. ) , , , (
; ) ( ) , , , (
; ) , , , (
); ( ) , , , (
4
3
2
1
t z y x zt x t z x t xz xyz t z y x F
t z x y x t z y x xyzt t z y x F
yt x t y x z y x xyz t z y x F
z y x t xyz t z y x F
+ + + + =
+ + + =
+ + + =
+ + + =
Dual and Self-Dual Functions

Examples:
15
Properties of Dual Functions

Let and be a pair of monotone
Boolean dual functions given by their irredundant disjunctive normal
forms


where are the sets variables of the corresponding prime
implicants of f and g respectively.
Then,
( ) , ( )
i j
i I j J
f X P g X P
e e
= =

1
( ,... )
n
g x x
1
( ,... )
n
f x x
'
i j
SP SP
) , , '
) : '
i j
i i j
a i I j J SP SP
b x SP j J x SP SP
| e e =
e - e e
Theorem:
16
Properties of Dual Functions (cont)

) , '
1, 0 , ' .
( ) 1 ( ) 1 ( )
) : ' ,
( 0, ) ( 1, ),
( 0, ) ( 1, )
i j
i j i i j j
i j
a If i I j J such that SP SP
then set x x x SP x SP
we have f X and g X f X
contradiction
b If x SP such that j J x SP
Y such that f x Y f x Y
but g x Y g x Y
contradiction
|
|
- e e =
= = e e
= = =

- e e =
- = = =
= = =

Proof:
17
Two-terminal switching network implementation
Properties of Dual Functions (cont)
18
Properties of Dual Functions (cont)
Four-terminal switching network implementation
19
Example
Four-terminal switching network implementation using
dual-functions
20

Theorem: From each non-self-dual function of n variables f(Y) it is
possible to design self-dual function of n+1 variables.
Let function be a self-dual function. Then,






So, if f(Y) is not SD, then is self-dual.
if f(Y) is self-dual then

.
d d d d d d
d d d d
d d
F(x,Y) F(x,Y) xf(Y) x (Y) (x f(Y) )(x (Y) )
(x f (Y))(x + (Y))= x (Y)+xf (Y) f (Y) (Y)
x (Y)+xf (Y) f (Y) (Y)(x x )
x (Y) x f (Y)


= = + = + + =
= + + =
= + + =
= +
( ) ( ) ( ) ( ) and = ( )
d d d
xf Y x Y x Y xf Y f(Y) Y + = +
) ( ) ( ) , ( Y f x Y xf Y x F
d
+ =
) ( ) ( ) ( ) , ( Y f Y f x Y xf Y x F = + =
( , ) ( ) ( ) F x Y xf Y x Y = +
Dual and Self-Dual Functions

21
Self-Dual Classification
Consider the self-dual function
F(x,Y)=x f
1
(Y)+x f
0
(Y).
The non-self-dual functions f
1
(Y), f
0
(Y) are called
nonself-dualized functions of F(x)

Switching functions that become identical by self-
dualization, nonself-dualization, negation of variables
or the function, or a permutation of the variables are
called SD-equivalent.


22
Self-dual equivalence - Example
1 1 2 3 1 2 3
2 1 2 3 1 2 3
1 1 2 3 4 4 1 2 3 4 1 2 3
4 1 2 3 1 2 3
2 1 2 3 4 1 4 2 3 4 2 3
1 4 4 4
( , , )
( , , ) ( )
( , , , ) ( ) ( )
( )
( , , , ) ( )
sd
sd
f x x x x x x
f x x x x x x
f x x x x x x x x x x x x
x x x x x x x
f x x x x x x x x x x x
after permutations x x and x x it follows
that the functions ar
= + +
= +
= + + + + +
= + + +
= + + +

e SD equivalent
The following functions are not of the same NPN class
23
; ) , , , (
; ) 1 , , , (
; ) , 1 , , (
; ) , , 1 , (
; ) , , , 1 (
4
4
4
4
4
zt xt xz zt x t z x t xz xz t z x x F
z x z x xy z x z x xyz z y x F
t x t x xy t y x F
t z x zt xt xz t z x zt x t z x t xz xz t z x F
t z t z yz t z y F
+ + = + + + =
+ + = + + =
+ + =
+ + + = + + + + =
+ + =
) , , , (
4
t z y x F
Self-dual equivalence

The self-dual function
is a SD-representative for functions of 3 variables.
For example,
24
Symmetric functions
Function F(X) is symmetric if for any two variables x
i

and x
j

F( x
i
, x
j
,Y) = F( x
j
,x
i
,Y)
Example: xy+xz+yz = yx+yz+xz - symmetric;
xz + y yz + x - non-symmetric.
25
Elementary Symmetric Functions

A function is symmetric if any permutations of variables dont
change the function.

The function depends only on the number of ones in the input
vector on which the function is equal to one but not on the
configuration of ones and zeros in the vector.

The number of ones in the input vector on which the function
value is equal to one is called work number of the elementary
symmetric function.

For functions of n variables there are n+1 different work numbers
(0,1,...., n-1, n).

26
; ;
; ;
3
3
3
2
3
1
3
0
xyz S yz x z y x z xy S
z y x z y x z y x S z y x S
= + + =
+ + = =
27
Example:

=
=
m
j
n
k
n
k k k
j m
S S
1
,..., ,
2 1
xyz z y x z y x z y x S S S + + + = + =
3
3
3
1
3
3 , 1
+ =
Arbitrary symmetric function is defined by the set of work
numbers:
Symmetric Functions (cont)
28
B
4

(0,1,1,0) (1,0,0,1) (0,1,0,1) (1,0,1,0)
(0,1,0,0) (0,0,1,0)
(1,1,0,1) (1,0,1,1)
(0,0,0,0)
(1,1,1,1)
(0,1,1,1) (1,1,1,0)
(1,0,0,0) (0,0,0,1)
(0,0,1,1) (1,1,0,0)
29
Example:
An isotonic symmetric function is defined
by one work number:

=
=
n
k j
n
j
n
k
S M
yz xz xy S S M + + = + =
3
3
3
2
3
2
+ =
Isotonic Symmetric Functions (cont)
30
From the other hand:

n
k
n
k
n
k
M M S
1
&
+
=
Example:

) )( (
) ( &
3
3
3
2
3
2
yz x z y x z xy
z y x yz xz xy
xyz yz xz xy M M S
+ + =
= + + + + =
= + + = =
& =
31
Each elementary symmetric function of n variables can be
represented as a composition of elementary symmetric
functions of m and n-m variables:

=
=

k
j
m n
j k
m
j
n
k
S S S
0
&
Example:
zt y x t z t z y x y x t z xy
S S S S S S S
+ + + + =
= + + =
) )( (
& & &
2
2
2
0
2
1
2
1
2
0
2
2
4
2
Symmetric Functions (cont)
32
Each isotonic symmetric function of n variables
can be represented as a composition of elementary isotonic
symmetrical functions of m and n-m variables:

=
=

k
j
m n
j k
m
j
n
k
M M M
0
&

Example:

zt t z y x xy
M M M M M M M
+ + + + =
= + + =
) )( (
& & &
2
2
2
0
2
1
2
1
2
0
2
2
4
2
Symmetric Functions (cont)
33
( ) ( ) ( ) ( ) ( ) abcd bcd acd abd abc cd bd bc ad ac ab d c b a y + + + + + + + + + + + =
1
1
1
1
0
M M M
0
0
0
0
1
M M M M M M M y
4
3
4
2
4
1
4
3
4
2
4
1
4
4
4
3
4
2
4
1
= = =
d c b a
0
1
0
1
0
1
1
0
1
0
0
1
1
1
1
0
0
1
0
1
0
1
1
1
1
1
1
1
0
1
0
0
1
1
1
M
1
1
1
0
1
M M
0
0
0
1
0
M M
1
1
1
1
0
0
0
0
1
1
M M
4
1
4
2
4
1
4
2
4
1
4
2
4
1
= = = = = = = = & & &
Symmetric Functions (cont)
34

is represented as f : If a logic function Definition


where or 1, then f is a linear function.


Let x and y be Boolean vectors, and a be a constant
Then , the linear function in ordinary mathematics, satisfies the
following:




Let . Then, the linear functions satisfy the above conditions.

, ...
2 2 1 1 0 n n
x a x a x a a f =
0 =
i
a
{ }). 1 , 0 ( e a
), ( ) ( ) ( y f x f y x f =
( ) ( ). f ax af x =
0
0
= a
Linear functions
35




variables. n : There are linear functions of Theorem

There are 8 linear functions f(x,y) on two variables.

If and , then f is a parity function of n
variables.

A parity function decides whether the number of 1s in the inputs is
an even number or an odd number.
1
2
+ n
1 ...
2 1
= = = =
n
a a a
0
0 a =
Linear functions (cont)
36
: The function that is obtained by assigning a linear function Theorem
to an arbitrary variable of a linear function is also a linear function.

(Proof) Let f and g be linear functions as follows:



Then, we have




Note that this expression does not contain the products whose degrees are greater than
one. Thus, is also a linear function.

0 1 1 2 2 0 1 1 2 2
, .
n n m m
f a a x a x a x g b b y b y b y = =
. ) (
) , , , , , , , (
2 1 1 0 2 2 1 1 0
1 1 2 1 0 1
n n m m i
n i i
x a y b y b y b b a x a x a a
x x g x x x f f
=
=
+


1
f
Linear functions (cont)
37

dual function or a - : A linear function is either a self Theorem
self-anti-dual function.

(Proof) Since, we have





Thus, if then
so f is self-dual.

On the other hand, if then

so, f is self-anti-dual.
,
1
i
i x x =
). (
) 1 ( ) 1 ( ) 1 ( ) , , , (
2 1 2 2 1 1 0
2 2 1 1 0
2 1
n n n
n n
n
a a a x a x a x a a
x a x a x a a x x x f
=
=


1 2
1,
n
a a a =
1 2
0
n
a a a =
), , , , ( 1 ) , , , ( ) , , , (
2 1 2 1
2 1
n n
n x x x f x x x f x x x f = =
) , , , ( ) , , , (
2 1
2 1
n
n
x x x f x x x f =
Linear functions (cont)
38
Let be a set of logic : Definition
functions. If an arbitrary logic function is realized by a loop-
free combinational network using the logic elements that
realize function then F is universal.


Both and are universal. : Example
is not universal.


{ } xy
{ } x xy y x , , v
{ } xy y x , v
), ,..., 2 , 1 ( m i f
i
=
{ }
m
f f f F ,..., ,
2 1
=
Universal set of logic functions
39




preserving function. - 0 : A function such that is a Definition
A function such that is a 1-preserving function.


: Post Theorem
Let,

be the set of 0-preserving functions,
be the set of 1-preserving functions,
be the set of self-dual functions,
be the set of isotonic functions, and
be the set of linear functions.

Then, the set of functions F is universal iff

0
M
1
M
2
M
3
M
4
M

F
/
_ M
i
(i = 0,1, 2,3,4).

f (0,0,...,0) = 0

f (1,1,...,1) = 1
Universal set of logic functions
40
CLASSES OF LOGIC FUNCTIONS
Table showing functional properties.

41
Post Theorem -Proof of the sufficiency
First we prove that if we are given five (2-valued) truth
functions which do not fall into the defined categories,
we can generate all truth functions.
Let
f
1
(x
1
,... ,x
i
) which is not 1-preserving
f
2
( x
1
, . . . ,x
j
) which is not 0-preserving
f
3
(X
1
,... ,x
k
) which is not monotonic
f
4
(X
1
,... ,x
m
) which is not linear
f
5
(x
1
,... x
n
) which is not self-dual.

These functions may be of the same or different number
of variables, and may even be the same functions.
Define f*
i
(p)=f
i
(p,p,..p)

FRANCIS JEFFRY PELLETIER and NORMAN M. MARTIN, Post's Functional Completeness
Theorem, Notre Dame Journal of Formal Logic Volume 31, Number 2, Spring 1990

42
Post Theorem -Proof of the sufficiency (cont)
Lemma 1: Given f
1
, f
2
, and f
3
we can define negation.

Proof:
f
1
*(1)=0 if f
1
*(0)=1 then we have negation,
and if f
1
*(0)=0 we have the constant 0
f
2
*(0)=1 if f
2
*(1)=0 then we have negation,
and if f
2
*(1)=1 we have the constant 1
f
3
is not isotonic there is a Y such that
f
3
(0,Y)=1 and f
3
(1,Y)=0 and we have
a negation

f
1
not 1-preserving, f
2
not 0-preserving, f
3
not monotonic, f
4
not linear,f
5
not SD.
43
Post Theorem -Proof of the sufficiency (cont)
Lemma 2: Given f
1
, f
2
, f
3
and f
5
we can define the
constants

Proof: Given f
1
, f
2
, and f
3
we have negation
f
5
is not self-dual there exists a Y s.t. f
5
(Y)=f
5
(Y)

Define f
5
(p)=f
5
(p
1
,..,p
n

) where p
i
=p if y
i
=1 and p
i
=p if
y
i
=0.
Since f
5
(p)= f
5
(p) we have a constant.
f
1
not 1-preserving, f
2
not 0-preserving, f
3
not monotonic, f
4
not linear,f
5
not SD.
44
Post Theorem -Proof of the sufficiency (cont)
Lemma 3: Given f
1
, f
2
, f
3
, f
4
and f
5
we can define two-place
function with an odd number of 1s in its truth table

Proof: Given f
1
, f
2
, f
3
and f
5
we have negation and constants
f
4
is not linear there exists a Y s.t. f
5
(x,Y)=f
5
(~x,Y)
there exists a Z s.t. f
5
(x,Z)=~f
5
(~x,Z)
Define p
k
as follows:
If z
k
=y
k
set p
k
=z
k
If z
k
=0, y
k
=1 set p
k
=p,
If z
k
=1, y
k
=0 set p
k
=~p

The function f
4
*(q,p)=f
4
(q,p
1
,..,p
n-1
) has odd number of 1s.
f
1
not 1-preserving, f
2
not 0-preserving, f
3
not monotonic, f
4
not linear,f
5
not SD.
45
Post Theorem - Proof of the sufficiency (cont)
Theorem : Given f
1
, f
2
, f
3
, f
4
and f
5
all (2-valued) truth functions
can be generated

Proof:
There are four NPN classes
Class 1: constants (Lemma 2)
Class 2: Single variable
Class 3: functions of odd number of 0s (Lemma3)
Class 4: linear functions that can be constructed by
using functions from the first three classes


f
1
not 1-preserving, f
2
not 0-preserving, f
3
not monotonic, f
4
not linear,f
5
not SD.
46
Post Theorem -Proof of the necessity
Each of the five properties "inherits upwards" in the sense that if all
available connectives have that property then any compound made up
from them must have it also.

Definition: depth of embedding of the number of truth functions within
a given truth function:

A simple sentence letter has depth of embedding 0;
The function f(g
1
(x
1
,..x
i
),, g
n
(x
1
,..x
k
) ) has depth of embedding

(1 + max(depth of embedding of g
j
)).
47
Lemma 4 Being closed under T (1-preserving ) is upwards inherited.

Proof by induction:
Let { f
i
} a class of functions all of whose members are closed under T.

For induction, assume that every function made from this class with depth of
embedding <n will yield a 1-preserving function.

We prove that any function from this class with depth of embedding n will also
yield a 1-preserving function.

Any function f with depth of embedding n will look like f(g
1
(x
1
,..x
i
),, g
n
(x
1
,..x
k
) )
where the greatest depth of embedding of any of the g 's is (n-1).

Therefore, by the inductive hypothesis, each g
i
yields T if all the sentence
parameters are T. But since/ itself is closed under T, then it too must yield T in
this circumstance.

Lemma 5 Being closed under F (0-preserving ) is upwards inherited.

Post Theorem -Proof of the necessity (cont)
48
Post Theorem -Proof of the necessity (cont)
Lemma 6: Being monotonic is upwards inherited.

Proof by induction:
Suppose we are given a class of truth functions all of whose members are
monotonic.
For induction assume that every function g
i
with depth of embedding <n made
from this class has the property: if Y<Z then g
i
(Y) g
i
(Z)

We prove that this holds of all functions from this class with depth of
embedding n.
Any function f with depth of embedding n looks like f(g
1
(x
1
,..x
i
),, g
n
(x
1
,..x
k
) )
where the greatest depth of embedding of any g
i
, is n-1

Suppose there are q distinct variables in this function, and that we have two
rows of a truth table Y=(y
1
,y
2
,,y
q
) and Z=(z
1
,z
2
,,z
q
) such that Y<Z. Then,

f(Y) = f(g
1
(Y),, g
n
(Y) ) f(g
1
(Z),, g
n
(Z) ) f(Z)
s
s
s
49
Post Theorem -Proof of the necessity (cont)
Lemma 7: Being self dual is upwards inherited.
Lemma 8: Being linear is upwards inherited.

Lemma 9: Let be a set of
functions, then the function cannot be realized by F.


Proof is by upwards inherited properties. Notice that
( )
' f xy =
( 1, 2, 3, 4, 5)
i
F M i _ =
( 1, 2, 3, 4, 5)
i
f M i e =

You might also like