217
Logic Programming and Artificial Neural Networks
a multiplication unit MU in the following way. For each element c of the
product, where c is represented by the n units c 1 , c 2 , . . . , c n , the unit c j is
connected, with weight 1, to the c j -unit in the input layer of MU and is also
connected, with weight 1, to any unit c k in the input layer of MU for which
c j < × c k . For a negated element d = ¬c in the product, we connect, with
weight 1, c j to the unit representing ¬c j in the input layer of MU and also,
with weight 1, to any unit c k in the input layer of MU for which ¬c j < × c k .
7.6.7 Proposition A multiplication or conjunction unit MU computes the
value of a product of l elements of C when it is connected to an input layer
as just described.
7.6.8 Example Consider again C = FOU R, and input the two elements
u and b to a multiplication unit MU, where l = 2. It is readily checked
that the potentials of the units u, t, and b in the input layer of MU are,
respectively, −0.5, −1.5, and −0.5; their outputs are all equal to 0; and the
outputs of the units u, t, and b in the output layer of MU are also all equal
to 0. On the other hand, the f -unit in the input layer of MU has potential
1 × 1 + 1 × 0 + 1 × 0 + 1 × 0 + 1 × 0 + 1 × 0 + 1 × 0 + 1 × 1 − 1.5 = 0.5, and
therefore the output of this unit is H(0.5) = 1. Furthermore, the input to the
f -unit in the output layer of MU is −1 × 0 + 1 × 1 − 1 × 0 − 1 × 0 = 1. Hence,
the output of this unit is H(1 − 0.5) = 1, and so MU outputs 0100 or f , and
this indeed is the value of u ∧ b, as required.
The ideas behind multiplication units work, with minor changes, for addition or disjunction, and we obtain addition (+) or disjunction (∨) units AU
which compute the sum or disjunction of k, say, elements of C.
We are now in a position to state the main theorem of this section, where
we take the set C to be a logic T endowed with the operations of disjunction
(∨) and conjunction (∧).
7.6.9 Theorem Suppose that both operations of disjunction and conjunction
in T are finitely determined and that P is a propositional logic program
defined over T . Then we can construct a 3-layer feedforward neural network
F which contains multiplication units in its middle layer and addition units
in its output layer such that F computes F P .
In closing this section, we mention that there is yet another class of logic
programs one can consider in our present context of extending Theorem 7.4.1,
namely, the class of propositional annotated (bi)lattice-based logic programs.
This class is also a very general class of programs capable of handling uncertainty, in this case using lattices and bilattices to model belief estimates for
and against a proposition. However, its study would take us too far from our
current goal, and instead we refer the reader to [Komendantskaya et al., 2007]
again for full details.
Précédent

- 248/305

Suivant