Vector logic is an algebraic model of elementary logic based on matrix algebra. Vector logic assumes that the truth values map on vectors, and that the monadic and dyadic operations are executed by matrix operators.
Contents
Overview
Classic binary logic is represented by a small set of mathematical functions depending on one (monadic ) or two (dyadic) variables. In the binary set, the value 1 corresponds to true and the value 0 to false. A two-valued vector logic requires a correspondence between the truth-values true (t) and false (f), and two q-dimensional normalized column vectors composed by real numbers s and n, hence:
(where
The operations of vector logic are based on the scalar product between q-dimensional column vectors:
Monadic operators
The monadic operators result from the application
Dyadic operators
The 16 two-valued dyadic operators correspond to functions of the type
Two properties of this product are essential for the formalism of vector logic:
Using these properties, expressions for dyadic logic functions can be obtained:
The matrices S and P correspond to the Sheffer (NAND) and the Peirce (NOR) operations, respectively:
De Morgan's law
In the two-valued logic, the conjunction and the disjunction operations satisfy the De Morgan's law: p∧q≡¬(¬p∨¬q), and its dual: p∨q≡¬(¬p∧¬q)). For the two-valued vector logic this Law is also verified:
The Kronecker product implies the following factorization:
Then it can be proved that in the two–dimensional vector logic the De Morgan's law is a law involving operators, and not only a law concerning operations:
Law of contraposition
In the classical propositional calculus, the Law of Contraposition p → q ≡ ¬q → ¬p is proved because the equivalence holds for all the possible combinations of truth-values of p and q. Instead, in vector logic, the law of contraposition emerges from a chain of equalities within the rules of matrix algebra and Kronecker products, as shown in what follows:
This result is based in the fact that D, the disjunction matrix, represents a commutative operation.
Many-valued two-dimensional logic
Many-valued logic was developed by many researchers, particularly by Jan Łukasiewicz and allows extending logical operations to truth-values that include uncertainties. In the case of two-valued vector logic, uncertainties in the truth values can be introduced using vectors with s and n weighted by probabilities.
Let
Scalar projections of vector outputs
The outputs of this many-valued logic can be projected on scalar functions and generate a particular class of probabilistic logic with similarities with the many-valued logic of Reichenbach. Given two vectors
Here are the main results of these projections:
The associated negations are:
If the scalar values belong to the set {0, ½, 1}, this many-valued scalar logic is for many of the operators almost identical to the 3-valued logic of Łukasiewicz. Also, it has been proved that when the monadic or dyadic operators act over probabilistic vectors belonging to this set, the output is also an element of this set.
History
The approach has been inspired in neural network models based on the use of high-dimensional matrices and vectors. Vector logic is a direct translation into a matrix-vector formalism of the classical Boolean polynomials. This kind of formalism has been applied to develop a fuzzy logic in terms of complex numbers. Other matrix and vector approaches to logical calculus have been developed in the framework of quantum physics, computer science and optics. Early attempts to use linear algebra to represent logic operations can be referred to Peirce and Copilowish. The Indian biophysicist G.N. Ramachandran developed a formalism using algebraic matrices and vectors to represent many operations of classical Jain Logic known as Syad and Saptbhangi. Indian logic. It requires independent affirmative evidence for each assertion in a proposition, and does not make the assumption for binary complementation.
Boolean polynomials
George Boole established the development of logical operations as polynomials. For the case of monadic operators (such as identity or negation), the Boolean polynomials look as follows:
The four different monadic operations result from the different binary values for the coefficients. Identity operation requires f(1) = 1 and f(0) = 0, and negation occurs if f(1) = 0 and f(0) = 1. For the 16 dyadic operators, the Boolean polynomials are of the form:
The dyadic operations can be translated to this polynomial format when the coefficients f take the values indicated in the respective truth tables. For instance: the NAND operation requires that:
These Boolean polynomials can be immediately extended to any number of variables, producing a large potential variety of logical operators. In vector logic, the matrix-vector structure of logical operators is an exact translation to the format of liner algebra of these Boolean polynomials, where the x and 1-x correspond to vectors s and n respectively (the same for y and 1-y). In the example of NAND, f(1,1)=n and f(1,0)=f(0,1)=f(0,0)=s and the matrix version becomes: