![Functional completeness](https://www.english.nina.az/image-resize/1600/900/web/wikipedia.jpg)
In logic, a functionally complete set of logical connectives or Boolean operators is one that can be used to express all possible truth tables by combining members of the set into a Boolean expression. A well-known complete set of connectives is { AND, NOT }. Each of the singleton sets { NAND } and { NOR } is functionally complete. However, the set { AND, OR } is incomplete, due to its inability to express NOT.
A gate (or set of gates) that is functionally complete can also be called a universal gate (or a universal set of gates).
In a context of propositional logic, functionally complete sets of connectives are also called (expressively) adequate.
From the point of view of digital electronics, functional completeness means that every possible logic gate can be realized as a network of gates of the types prescribed by the set. In particular, all logic gates can be assembled from either only binary NAND gates, or only binary NOR gates.
Introduction
Modern texts on logic typically take as primitive some subset of the connectives: conjunction (); disjunction (
); negation (
); material conditional (
); and possibly the biconditional (
). Further connectives can be defined, if so desired, by defining them in terms of these primitives. For example, NOR (the negation of the disjunction, sometimes denoted
) can be expressed as conjunction of two negations:
Similarly, the negation of the conjunction, NAND (sometimes denoted as ), can be defined in terms of disjunction and negation. Every binary connective can be defined in terms of
, which means that set is functionally complete. However, it contains redundancy: this set is not a minimal functionally complete set, because the conditional and biconditional can be defined in terms of the other connectives as
It follows that the smaller set is also functionally complete. (Its functional completeness is also proved by the Disjunctive Normal Form Theorem.) But this is still not minimal, as
can be defined as
Alternatively, may be defined in terms of
in a similar manner, or
may be defined in terms of
:
No further simplifications are possible. Hence, every two-element set of connectives containing and one of
is a minimal functionally complete subset of
.
Formal definition
Given the Boolean domain B = {0, 1}, a set F of Boolean functions fi : Bni → B is functionally complete if the clone on B generated by the basic functions fi contains all functions f : Bn → B, for all strictly positive integers n ≥ 1. In other words, the set is functionally complete if every Boolean function that takes at least one variable can be expressed in terms of the functions fi. Since every Boolean function of at least one variable can be expressed in terms of binary Boolean functions, F is functionally complete if and only if every binary Boolean function can be expressed in terms of the functions in F.
A more natural condition would be that the clone generated by F consist of all functions f : Bn → B, for all integers n ≥ 0. However, the examples given above are not functionally complete in this stronger sense because it is not possible to write a nullary function, i.e. a constant expression, in terms of F if F itself does not contain at least one nullary function. With this stronger definition, the smallest functionally complete sets would have 2 elements.
Another natural condition would be that the clone generated by F together with the two nullary constant functions be functionally complete or, equivalently, functionally complete in the strong sense of the previous paragraph. The example of the Boolean function given by S(x, y, z) = z if x = y and S(x, y, z) = x otherwise shows that this condition is strictly weaker than functional completeness.
Characterization of functional completeness
Emil Post proved that a set of logical connectives is functionally complete if and only if it is not a subset of any of the following sets of connectives:
- The monotonic connectives; changing the truth value of any connected variables from F to T without changing any from T to F never makes these connectives change their return value from T to F, e.g.
.
- The affine connectives, such that each connected variable either always or never affects the truth value these connectives return, e.g.
.
- The self-dual connectives, which are equal to their own de Morgan dual; if the truth values of all variables are reversed, so is the truth value these connectives return, e.g.
, maj(p, q, r).
- The truth-preserving connectives; they return the truth value T under any interpretation that assigns T to all variables, e.g.
.
- The falsity-preserving connectives; they return the truth value F under any interpretation that assigns F to all variables, e.g.
.
Post gave a complete description of the lattice of all clones (sets of operations closed under composition and containing all projections) on the two-element set {T, F}, nowadays called Post's lattice, which implies the above result as a simple corollary: the five mentioned sets of connectives are exactly the maximal nontrivial clones.
Minimal functionally complete operator sets
When a single logical connective or Boolean operator is functionally complete by itself, it is called a Sheffer function or sometimes a sole sufficient operator. There are no unary operators with this property. NAND and NOR, which are dual to each other, are the only two binary Sheffer functions. These were discovered, but not published, by Charles Sanders Peirce around 1880, and rediscovered independently and published by Henry M. Sheffer in 1913. In digital electronics terminology, the binary NAND gate (↑) and the binary NOR gate (↓) are the only binary universal logic gates.
The following are the minimal functionally complete sets of logical connectives with arity ≤ 2:
- One element
- {↑}, {↓}.
- Two elements
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
- Three elements
,
,
,
,
,
There are no minimal functionally complete sets of more than three at most binary logical connectives. In order to keep the lists above readable, operators that ignore one or more inputs have been omitted. For example, an operator that ignores the first input and outputs the negation of the second can be replaced by a unary negation.
Examples
- Examples of using the
NAND
(↑) completeness. As illustrated by,- ¬A ≡ A ↑ A
- A ∧ B ≡ ¬(A ↑ B) ≡ (A ↑ B) ↑ (A ↑ B)
- A ∨ B ≡ (¬A) ↑ (¬B) ≡ (A ↑ A) ↑ (B ↑ B)
- Examples of using the
NOR
(↓) completeness. As illustrated by,- ¬A ≡ A ↓ A
- A ∨ B ≡ ¬(A ↓ B) ≡ (A ↓ B) ↓ (A ↓ B)
- A ∧ B ≡ (¬A) ↓ (¬B) ≡ (A ↓ A) ↓ (B ↓ B)
Note that an electronic circuit or a software function can be optimized by reuse, to reduce the number of gates. For instance, the "A ∧ B" operation, when expressed by ↑ gates, is implemented with the reuse of "A ↑ B",
- X ≡ (A ↑ B); A ∧ B ≡ X ↑ X
In other domains
Apart from logical connectives (Boolean operators), functional completeness can be introduced in other domains. For example, a set of reversible gates is called functionally complete, if it can express every reversible operator.
The 3-input Fredkin gate is functionally complete reversible gate by itself – a sole sufficient operator. There are many other three-input universal logic gates, such as the Toffoli gate.
In quantum computing, the Hadamard gate and the T gate are universal, albeit with a slightly more restrictive definition than that of functional completeness.
Set theory
There is an isomorphism between the algebra of sets and the Boolean algebra, that is, they have the same structure. Then, if we map boolean operators into set operators, the "translated" above text are valid also for sets: there are many "minimal complete set of set-theory operators" that can generate any other set relations. The more popular "Minimal complete operator sets" are {¬, ∩} and {¬, ∪}. If the universal set is forbidden, set operators are restricted to being falsity (Ø) preserving, and cannot be equivalent to functionally complete Boolean algebra.
See also
- Algebra of sets – Identities and relationships involving sets
- Boolean algebra – Algebraic manipulation of "true" and "false"
- Completeness (logic) – Characteristic of some logical systems
- Conjunction/disjunction duality – Properties linking logical conjunction and disjunction
- List of Boolean algebra topics
- NAND logic – Logic constructed only from NAND gates
- NOR logic – Making other gates using just NOR gates
- One-instruction set computer – Abstract machine that uses only one instruction
References
- Enderton, Herbert (2001), A mathematical introduction to logic (2nd ed.), Boston, MA: Academic Press, ISBN 978-0-12-238452-3. ("Complete set of logical connectives").
- Nolt, John; Rohatyn, Dennis; Varzi, Achille (1998), Schaum's outline of theory and problems of logic (2nd ed.), New York: McGraw–Hill, ISBN 978-0-07-046649-4. ("[F]unctional completeness of [a] set of logical operators").
- Smith, Peter (2003), An introduction to formal logic, Cambridge University Press, ISBN 978-0-521-00804-4. (Defines "expressively adequate", shortened to "adequate set of connectives" in a section heading.)
- Howson, Colin (1997). Logic with trees: an introduction to symbolic logic. London; New York: Routledge. p. 41. ISBN 978-0-415-13342-5.
- Wesselkamper, T.C. (1975), "A sole sufficient operator", Notre Dame Journal of Formal Logic, 16: 86–88, doi:10.1305/ndjfl/1093891614
- Massey, G.J. (1975), "Concerning an alleged Sheffer function", Notre Dame Journal of Formal Logic, 16 (4): 549–550, doi:10.1305/ndjfl/1093891898
- Wesselkamper, T.C. (1975), "A Correction To My Paper" A. Sole Sufficient Operator", Notre Dame Journal of Formal Logic, 16 (4): 551, doi:10.1305/ndjfl/1093891899
- Emil Leon Post (1941). The Two-Valued Iterative Systems of Mathematical Logic. Annals of Mathematics studies. Vol. 5. Princeton: Princeton University Press. doi:10.1515/9781400882366. ISBN 9781400882366. See p.105 for the theorem, pp.53, 59, 69, 70, 131 for a definition of the classes A1, L1, C2, C3, D3, and pp.35, 43 for the definition of [A:a] condition and α, β, γ function.
- The term was originally restricted to binary operations, but since the end of the 20th century it is used more generally. Martin, N.M. (1989), Systems of logic, Cambridge University Press, p. 54, ISBN 978-0-521-36770-7.
- Scharle, T.W. (1965), "Axiomatization of propositional calculus with Sheffer functors", Notre Dame J. Formal Logic, 6 (3): 209–217, doi:10.1305/ndjfl/1093958259.
- Wernick, William (1942) "Complete Sets of Logical Functions," Transactions of the American Mathematical Society 51: 117–32. In his list on the last page of the article, Wernick does not distinguish between ← and →, or between
and
.
- "NAND Gate Operations" at http://hyperphysics.phy-astr.gsu.edu/hbase/electronic/nand.html
- "NOR Gate Operations" at http://hyperphysics.phy-astr.gsu.edu/hbase/electronic/nor.html
In logic a functionally complete set of logical connectives or Boolean operators is one that can be used to express all possible truth tables by combining members of the set into a Boolean expression A well known complete set of connectives is AND NOT Each of the singleton sets NAND and NOR is functionally complete However the set AND OR is incomplete due to its inability to express NOT A gate or set of gates that is functionally complete can also be called a universal gate or a universal set of gates In a context of propositional logic functionally complete sets of connectives are also called expressively adequate From the point of view of digital electronics functional completeness means that every possible logic gate can be realized as a network of gates of the types prescribed by the set In particular all logic gates can be assembled from either only binary NAND gates or only binary NOR gates IntroductionModern texts on logic typically take as primitive some subset of the connectives conjunction displaystyle land disjunction displaystyle lor negation displaystyle neg material conditional displaystyle to and possibly the biconditional displaystyle leftrightarrow Further connectives can be defined if so desired by defining them in terms of these primitives For example NOR the negation of the disjunction sometimes denoted displaystyle downarrow can be expressed as conjunction of two negations A B A B displaystyle A downarrow B neg A land neg B Similarly the negation of the conjunction NAND sometimes denoted as displaystyle uparrow can be defined in terms of disjunction and negation Every binary connective can be defined in terms of displaystyle neg land lor to leftrightarrow which means that set is functionally complete However it contains redundancy this set is not a minimal functionally complete set because the conditional and biconditional can be defined in terms of the other connectives as A B A BA B A B B A displaystyle begin aligned A to B amp neg A lor B A leftrightarrow B amp A to B land B to A end aligned It follows that the smaller set displaystyle neg land lor is also functionally complete Its functional completeness is also proved by the Disjunctive Normal Form Theorem But this is still not minimal as displaystyle lor can be defined as A B A B displaystyle A lor B neg neg A land neg B Alternatively displaystyle land may be defined in terms of displaystyle lor in a similar manner or displaystyle lor may be defined in terms of displaystyle rightarrow A B A B displaystyle A vee B neg A rightarrow B No further simplifications are possible Hence every two element set of connectives containing displaystyle neg and one of displaystyle land lor rightarrow is a minimal functionally complete subset of displaystyle neg land lor to leftrightarrow Formal definitionGiven the Boolean domain B 0 1 a set F of Boolean functions fi Bni B is functionally complete if the clone on B generated by the basic functions fi contains all functions f Bn B for all strictly positive integers n 1 In other words the set is functionally complete if every Boolean function that takes at least one variable can be expressed in terms of the functions fi Since every Boolean function of at least one variable can be expressed in terms of binary Boolean functions F is functionally complete if and only if every binary Boolean function can be expressed in terms of the functions in F A more natural condition would be that the clone generated by F consist of all functions f Bn B for all integers n 0 However the examples given above are not functionally complete in this stronger sense because it is not possible to write a nullary function i e a constant expression in terms of F if F itself does not contain at least one nullary function With this stronger definition the smallest functionally complete sets would have 2 elements Another natural condition would be that the clone generated by F together with the two nullary constant functions be functionally complete or equivalently functionally complete in the strong sense of the previous paragraph The example of the Boolean function given by S x y z z if x y and S x y z x otherwise shows that this condition is strictly weaker than functional completeness Characterization of functional completenessEmil Post proved that a set of logical connectives is functionally complete if and only if it is not a subset of any of the following sets of connectives The monotonic connectives changing the truth value of any connected variables from F to T without changing any from T to F never makes these connectives change their return value from T to F e g displaystyle vee wedge top bot The affine connectives such that each connected variable either always or never affects the truth value these connectives return e g displaystyle neg top bot leftrightarrow nleftrightarrow The self dual connectives which are equal to their own de Morgan dual if the truth values of all variables are reversed so is the truth value these connectives return e g displaystyle neg maj p q r The truth preserving connectives they return the truth value T under any interpretation that assigns T to all variables e g displaystyle vee wedge top rightarrow leftrightarrow The falsity preserving connectives they return the truth value F under any interpretation that assigns F to all variables e g displaystyle vee wedge bot nrightarrow nleftrightarrow Post gave a complete description of the lattice of all clones sets of operations closed under composition and containing all projections on the two element set T F nowadays called Post s lattice which implies the above result as a simple corollary the five mentioned sets of connectives are exactly the maximal nontrivial clones Minimal functionally complete operator setsWhen a single logical connective or Boolean operator is functionally complete by itself it is called a Sheffer function or sometimes a sole sufficient operator There are no unary operators with this property NAND and NOR which are dual to each other are the only two binary Sheffer functions These were discovered but not published by Charles Sanders Peirce around 1880 and rediscovered independently and published by Henry M Sheffer in 1913 In digital electronics terminology the binary NAND gate and the binary NOR gate are the only binary universal logic gates The following are the minimal functionally complete sets of logical connectives with arity 2 One element Two elements displaystyle vee neg displaystyle wedge neg displaystyle to neg displaystyle gets neg displaystyle to bot displaystyle gets bot displaystyle to nleftrightarrow displaystyle gets nleftrightarrow displaystyle to nrightarrow displaystyle to nleftarrow displaystyle gets nrightarrow displaystyle gets nleftarrow displaystyle nrightarrow neg displaystyle nleftarrow neg displaystyle nrightarrow top displaystyle nleftarrow top displaystyle nrightarrow leftrightarrow displaystyle nleftarrow leftrightarrow Three elements displaystyle lor leftrightarrow bot displaystyle lor leftrightarrow nleftrightarrow displaystyle lor nleftrightarrow top displaystyle land leftrightarrow bot displaystyle land leftrightarrow nleftrightarrow displaystyle land nleftrightarrow top There are no minimal functionally complete sets of more than three at most binary logical connectives In order to keep the lists above readable operators that ignore one or more inputs have been omitted For example an operator that ignores the first input and outputs the negation of the second can be replaced by a unary negation ExamplesExamples of using the NAND completeness As illustrated by A A A A B A B A B A B A B A B A A B B Examples of using the NOR completeness As illustrated by A A A A B A B A B A B A B A B A A B B Note that an electronic circuit or a software function can be optimized by reuse to reduce the number of gates For instance the A B operation when expressed by gates is implemented with the reuse of A B X A B A B X XIn other domainsApart from logical connectives Boolean operators functional completeness can be introduced in other domains For example a set of reversible gates is called functionally complete if it can express every reversible operator The 3 input Fredkin gate is functionally complete reversible gate by itself a sole sufficient operator There are many other three input universal logic gates such as the Toffoli gate In quantum computing the Hadamard gate and the T gate are universal albeit with a slightly more restrictive definition than that of functional completeness Set theoryThere is an isomorphism between the algebra of sets and the Boolean algebra that is they have the same structure Then if we map boolean operators into set operators the translated above text are valid also for sets there are many minimal complete set of set theory operators that can generate any other set relations The more popular Minimal complete operator sets are and If the universal set is forbidden set operators are restricted to being falsity O preserving and cannot be equivalent to functionally complete Boolean algebra See alsoAlgebra of sets Identities and relationships involving sets Boolean algebra Algebraic manipulation of true and false Completeness logic Characteristic of some logical systems Conjunction disjunction duality Properties linking logical conjunction and disjunction List of Boolean algebra topics NAND logic Logic constructed only from NAND gates NOR logic Making other gates using just NOR gates One instruction set computer Abstract machine that uses only one instructionReferencesEnderton Herbert 2001 A mathematical introduction to logic 2nd ed Boston MA Academic Press ISBN 978 0 12 238452 3 Complete set of logical connectives Nolt John Rohatyn Dennis Varzi Achille 1998 Schaum s outline of theory and problems of logic 2nd ed New York McGraw Hill ISBN 978 0 07 046649 4 F unctional completeness of a set of logical operators Smith Peter 2003 An introduction to formal logic Cambridge University Press ISBN 978 0 521 00804 4 Defines expressively adequate shortened to adequate set of connectives in a section heading Howson Colin 1997 Logic with trees an introduction to symbolic logic London New York Routledge p 41 ISBN 978 0 415 13342 5 Wesselkamper T C 1975 A sole sufficient operator Notre Dame Journal of Formal Logic 16 86 88 doi 10 1305 ndjfl 1093891614 Massey G J 1975 Concerning an alleged Sheffer function Notre Dame Journal of Formal Logic 16 4 549 550 doi 10 1305 ndjfl 1093891898 Wesselkamper T C 1975 A Correction To My Paper A Sole Sufficient Operator Notre Dame Journal of Formal Logic 16 4 551 doi 10 1305 ndjfl 1093891899 Emil Leon Post 1941 The Two Valued Iterative Systems of Mathematical Logic Annals of Mathematics studies Vol 5 Princeton Princeton University Press doi 10 1515 9781400882366 ISBN 9781400882366 See p 105 for the theorem pp 53 59 69 70 131 for a definition of the classes A1 L1 C2 C3 D3 and pp 35 43 for the definition of A a condition and a b g function The term was originally restricted to binary operations but since the end of the 20th century it is used more generally Martin N M 1989 Systems of logic Cambridge University Press p 54 ISBN 978 0 521 36770 7 Scharle T W 1965 Axiomatization of propositional calculus with Sheffer functors Notre Dame J Formal Logic 6 3 209 217 doi 10 1305 ndjfl 1093958259 Wernick William 1942 Complete Sets of Logical Functions Transactions of the American Mathematical Society 51 117 32 In his list on the last page of the article Wernick does not distinguish between and or between displaystyle nleftarrow and displaystyle nrightarrow NAND Gate Operations at http hyperphysics phy astr gsu edu hbase electronic nand html NOR Gate Operations at http hyperphysics phy astr gsu edu hbase electronic nor html