Professional Documents
Culture Documents
df f (x + ∆x) − f (x)
= lim .
dx ∆x→0 ∆x
f (x1,..., xn) ¶f
>0
Dxi ¶xi
¶f
<0
¶xi
Df
xi
235
236 FUNDAMENTALS OF SWITCHING THEORY AND LOGIC DESIGN
1. Boolean difference
Switching (Boolean) functions are defined as mappings f : {0, 1}n →
{0, 1} and, therefore, the smallest change in the argument and the func-
tion is equal to 1. Since the addition and subtraction modulo 2, which
are used for switching functions coincide, and are viewed as logic EXOR,
the definition of a differential operator for switching functions with re-
spect to the variable xi is
δf
= f (x1 , . . . , xi , . . . , xn ) ⊕ f (x1 , . . . , xi , . . . , xn ).
δxi
It is clear that due to the properties of EXOR, the Boolean difference
cannot distinguish between the change of a function value from 0 to 1 or
vice versa, since 1+0 = 0+1 = 1. Thus defined operator expresses some
of the properties of the classical Newton-Leibniz derivative, and is called
the Boolean derivative [185]. However, to emphasize that it is defined
on finite and discrete structures and is applied to discrete functions, the
term Boolean difference is also used.
Since xi ⊕ 1 = xi , the definition of the Boolean difference can be
written as
δf
= f (x1 , . . . xi , . . . , xn ) ⊕ f (x1 , . . . , xi , . . . , xn )
δxi
δf
It is obvious that δx i
= 1 iff f (x1 , . . . , xi , . . . , xn)=f (x1 , . . . , xi , . . . , xn ).
This property of the Boolean difference is used to check if a variable is
an essential variable in a Boolean function f .
Example 11.1 Fig. 11.2 shows a Boolean cube specifying the function
f (x1 , x2 , x3 ) whose truth-vector is F = [0, 0, 0, 0, 0, 1, 1, 1]T . In this figure
the dark and white nodes correspond to the values 1, and 0, respectively.
To calculate the value of the Boolean difference with respect to a vari-
able xi , i = 1, 2, 3, at a particular point x1 , x2 , x3 ), we move along the
edge connecting nodes where xi = 0 and xi = 1, for the given assign-
ment of other variables. If the values at the both ends of this edge are
different, the value of the Boolean difference is 1, otherwise it is 0. In
δf
this figure, are shown the values of the Boolean differences δx 1
(000) = 0,
δf δf
δx2 (101) = 0, and δx3 (100) = 1.