Functional completeness

Functional completeness

In logic, a functionally complete set of logical connectives or Boolean operators is one which can be used to express all possible truth tables by combining members of the set into a Boolean expression.[1][2] A well known complete set of connectives is { AND, OR, NOT }, consisting of binary conjunction, binary disjunction and negation. The sets consisting only of the binary operator NAND or NOR only are also functionally complete.

In a context of propositional logic, functionally complete sets of connectives are also called (expressively) adequate.[3]

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.

Contents

Formal definition

Given the Boolean domain B = {0,1}, a set F of Boolean functions ƒiBni → B is functionally complete if the clone on B generated by the basic functions ƒi contains all functions ƒ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 ƒi. 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 ƒ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(xyz) = z if x = y and S(xyz) = x otherwise shows that this condition is strictly weaker than functional completeness.[4][5][6]

Informal

Modern texts on logic typically take as primitive some subset of the connectives: conjunction (\land), or Kpq; disjunction (\lor), or Apq; negation (\neg), Np, or Fpq; or material conditional (\to), or Cpq; and possibly the biconditional (\leftrightarrow), or Epq. These connectives are functionally complete. However, they do not form a minimal functionally complete set, as the conditional and biconditional may be defined as:

\begin{align}
  A \to B &:= \neg A \lor B\\
  A \leftrightarrow B &:= (A \to B) \land (B \to A).
\end{align}

So \{\neg, \land, \lor\} is also functionally complete. But then, \lor can be defined as

A \lor B := \neg(\neg A \land \neg B).

\land can also be defined in terms of \lor in a similar manner.

It is also the case that  \vee can be defined in terms of  \rightarrow as follows:

 \ A \vee B := (A \rightarrow B) \rightarrow B.

No further simplifications are possible. Hence \neg and one of \{\land, \lor, \rightarrow\} are each minimal functionally complete subsets of \{\neg, \land, \lor, \to, \leftrightarrow\}.

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, e.g. \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. \neg, \top, \bot, \leftrightarrow, \not\leftrightarrow.
  • The self-dual connectives, which are equal to their own de Morgan dual, e.g. \neg, MAJ(p,q,r).
  • The truth-preserving connectives; they return the truth value T under any interpretation which assigns T to all variables, e.g. \vee, \wedge, \top, \rightarrow, \leftrightarrow.
  • The falsity-preserving connectives; they return the truth value F under any interpretation which assigns F to all variables, e.g. \vee, \wedge, \bot, \not\rightarrow, \not\leftrightarrow.

In fact, 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 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[7] or sometimes a sole sufficient operator. There are no unary operators with this property, and the only binary Sheffer functions are NAND and NOR, its dual. These were discovered but not published by Charles Sanders Peirce around 1880, and rediscovered independently and published by Henry M. Sheffer in 1913.[8] 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:[9]

One element
{NAND}, {NOR}.
Two elements
{\vee, ¬}, {\wedge, ¬}, {→, ¬}, {←, ¬}, {→, \bot}, {←, \bot}, {→, \not\leftrightarrow}, {←, \not\leftrightarrow}, {→, \not\to}, {→, \not\leftarrow}, {←, \not\to}, {←, \not\leftarrow}, {\not\to, ¬}, {\not\leftarrow, ¬}, {\not\to\top}, {\not\leftarrow\top}, {\not\to\leftrightarrow}, {\not\leftarrow\leftrightarrow}.
Three elements
{\lor, \leftrightarrow, \bot}, {\lor, \leftrightarrow, \not\leftrightarrow}, {\lor, \not\leftrightarrow, \top}, {\land, \leftrightarrow, \bot}, {\land, \leftrightarrow, \not\leftrightarrow}, {\land, \not\leftrightarrow, \top}.

There are no minimal functionally complete sets of more than three at most binary logical connectives.[9] Constant unary or binary connectives and binary connectives that depend only on one of the arguments have been suppressed to keep the list readable. E.g. the set consisting of binary \vee and the binary connective given by negation of the first argument (ignoring the second) is another minimal functionally complete set.

Other meanings

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.

References

  1. ^ 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").
  2. ^ 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").
  3. ^ 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.)
  4. ^ Wesselkamper, T.C. (1975), "A sole sufficient operator", Notre Dame Journal of Formal Logic 16: 86–88, doi:10.1305/ndjfl/1093891614, http://projecteuclid.org/euclid.ndjfl/1093891614 
  5. ^ Massey, G.J. (1975), "Concerning an alleged Sheffer function", Notre Dame Journal of Formal Logic 16: 549–550, doi:10.1305/ndjfl/1093891898, http://projecteuclid.org/euclid.ndjfl/1093891898 
  6. ^ Wesselkamper, T.C. (1975), "A Correction To My Paper" A. Sole Sufficient Operator", Notre Dame Journal of Formal Logic 16: 551, doi:10.1305/ndjfl/1093891899, http://projecteuclid.org/euclid.ndjfl/1093891899 
  7. ^ 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 9780521367707 .
  8. ^ Scharle, T.W. (1965), "Axiomatization of propositional calculus with Sheffer functors", Notre Dame J. Formal Logic 6: 209–217, doi:10.1305/ndjfl/1093958259, http://projecteuclid.org/euclid.ndjfl/1093958259 .
  9. ^ a b 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 \not\leftarrow and \not\rightarrow.
  • Wernick, William (1942) "Complete Sets of Logical Functions," Transactions of the American Mathematical Society 51: 117–32.

Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • functional completeness — funkcinis baigtumas statusas T sritis radioelektronika atitikmenys: angl. functional completeness vok. funktionnelle Vollständigkeit, f rus. функциональная завершённость, f pranc. complétude fonctionnelle, f …   Radioelektronikos terminų žodynas

  • Completeness — In general, an object is complete if nothing needs to be added to it. This notion is made more specific in various fields. Contents 1 Logical completeness 2 Mathematical completeness 3 Computing 4 …   Wikipedia

  • Turing completeness — For the usage of this term in the theory of relative computability by oracle machines, see Turing reduction. In computability theory, a system of data manipulation rules (such as an instruction set, a programming language, or a cellular… …   Wikipedia

  • Open mapping theorem (functional analysis) — In functional analysis, the open mapping theorem, also known as the Banach–Schauder theorem (named after Stefan Banach and Juliusz Schauder), is a fundamental result which states that if a continuous linear operator between Banach spaces is… …   Wikipedia

  • Original proof of Gödel's completeness theorem — The proof of Gödel s completeness theorem given by Kurt Gödel in his doctoral dissertation of 1929 (and a rewritten version of the dissertation, published as an article in 1930) is not easy to read today; it uses concepts and formalism that are… …   Wikipedia

  • Logical connective — This article is about connectives in classical logic. For connectors in natural languages, see discourse connective. For connectives and operators in other logics, see logical constant. For other logical symbols, see table of logic symbols. In… …   Wikipedia

  • List of philosophy topics (D-H) — DDaDai Zhen Pierre d Ailly Jean Le Rond d Alembert John Damascene Damascius John of Damascus Peter Damian Danish philosophy Dante Alighieri Arthur Danto Arthur C. Danto Arthur Coleman Danto dao Daodejing Daoism Daoist philosophy Charles Darwin… …   Wikipedia

  • Outline of logic — The following outline is provided as an overview of and topical guide to logic: Logic – formal science of using reason, considered a branch of both philosophy and mathematics. Logic investigates and classifies the structure of statements and… …   Wikipedia

  • Negated AND gate — This article is about NAND in the sense of an electronic logic gate. For NAND in the purely logical sense, see Sheffer stroke. For other uses of NAND or Nand, see Nand (disambiguation). INPUT A   B OUTPUT A NAND B 0 0 1 0 1 1 1 0 …   Wikipedia

  • List of mathematics articles (F) — NOTOC F F₄ F algebra F coalgebra F distribution F divergence Fσ set F space F test F theory F. and M. Riesz theorem F1 Score Faà di Bruno s formula Face (geometry) Face configuration Face diagonal Facet (mathematics) Facetting… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”