In logic and universal algebra, Post's lattice denotes the lattice of all clones on a two-element set {0, 1}, ordered by inclusion. It is named for Emil Post, who published a complete description of the lattice in 1941. [1] The relative simplicity of Post's lattice is in stark contrast to the lattice of clones on a three-element (or larger) set, which has the cardinality of the continuum, and a complicated inner structure. A modern exposition of Post's result can be found in Lau (2006). [2]
A Boolean function, or logical connective, is an n-ary operation f: 2n → 2 for some n ≥ 1, where 2 denotes the two-element set {0, 1}. Particular Boolean functions are the projections
and given an m-ary function f, and n-ary functions g1, ..., gm, we can construct another n-ary function
called their composition. A set of functions closed under composition, and containing all projections, is called a clone.
Let B be a set of connectives. The functions which can be defined by a formula using propositional variables and connectives from B form a clone [B], indeed it is the smallest clone which includes B. We call [B] the clone generated by B, and say that B is the basis of [B]. For example, [¬, ∧] are all Boolean functions, and [0, 1, ∧, ∨] are the monotone functions.
We use the operations ¬, Np, (negation), ∧, Kpq, (conjunction or meet), ∨, Apq, (disjunction or join), →, Cpq, (implication), ↔, Epq, (biconditional), +, Jpq (exclusive disjunction or Boolean ring addition), ↛, Lpq, [3] (nonimplication), ?: (the ternary conditional operator) and the constant unary functions 0 and 1. Moreover, we need the threshold functions
For example, thn
1 is the large disjunction of all the variables xi, and thn
n is the large conjunction. Of particular importance is the majority function
We denote elements of 2n (i.e., truth-assignments) as vectors: a = (a1, ..., an). The set 2n carries a natural product Boolean algebra structure. That is, ordering, meets, joins, and other operations on n-ary truth assignments are defined pointwise:
Intersection of an arbitrary number of clones is again a clone. It is convenient to denote intersection of clones by simple juxtaposition, i.e., the clone C1 ∩ C2 ∩ ... ∩ Ck is denoted by C1C2...Ck. Some special clones are introduced below:
The set of all clones is a closure system, hence it forms a complete lattice. The lattice is countably infinite, and all its members are finitely generated. All the clones are listed in the table below.
clone | one of its bases |
---|---|
⊤ | ∨, ¬ |
P0 | ∨, + |
P1 | ∧, → |
P | x ? y : z |
T0k, k ≥ 2 | thkk+1, ↛ |
T0∞ | ↛ |
PT0k, k ≥ 2 | thkk+1, x ∧ (y → z) |
PT0∞ | x ∧ (y → z) |
T1k, k ≥ 2 | th2k+1, → |
T1∞ | → |
PT1k, k ≥ 2 | th2k+1, x ∨ (y + z) |
PT1∞ | x ∨ (y + z) |
M | ∧, ∨, 0, 1 |
MP0 | ∧, ∨, 0 |
MP1 | ∧, ∨, 1 |
MP | ∧, ∨ |
MT0k, k ≥ 2 | thkk+1, 0 |
MT0∞ | x ∧ (y ∨ z), 0 |
MPT0k, k ≥ 2 | thkk+1 for k ≥ 3, maj, x ∧ (y ∨ z) for k = 2 |
MPT0∞ | x ∧ (y ∨ z) |
MT1k, k ≥ 2 | th2k+1, 1 |
MT1∞ | x ∨ (y ∧ z), 1 |
MPT1k, k ≥ 2 | th2k+1 for k ≥ 3, maj, x ∨ (y ∧ z) for k = 2 |
MPT1∞ | x ∨ (y ∧ z) |
Λ | ∧, 0, 1 |
ΛP0 | ∧, 0 |
ΛP1 | ∧, 1 |
ΛP | ∧ |
V | ∨, 0, 1 |
VP0 | ∨, 0 |
VP1 | ∨, 1 |
VP | ∨ |
D | maj, ¬ |
DP | maj, x + y + z |
DM | maj |
A | ↔, 0 |
AD | ¬, x + y + z |
AP0 | + |
AP1 | ↔ |
AP | x + y + z |
U | ¬, 0 |
UD | ¬ |
UM | 0, 1 |
UP0 | 0 |
UP1 | 1 |
⊥ |
The eight infinite families have actually also members with k = 1, but these appear separately in the table: T01 = P0, T11 = P1, PT01 = PT11 = P, MT01 = MP0, MT11 = MP1, MPT01 = MPT11 = MP.
The lattice has a natural symmetry mapping each clone C to its dual clone Cd = {fd|f ∈ C}, where fd(x1, ..., xn) = ¬f(¬x1, ..., ¬xn) is the de Morgan dual of a Boolean function f. For example, Λd = V, (T0k)d = T1k, and Md = M.
The complete classification of Boolean clones given by Post helps to resolve various questions about classes of Boolean functions. For example:
If one only considers clones that are required to contain the constant functions, the classification is much simpler: there are only 7 such clones: UM, Λ, V, U, A, M, and ⊤. While this can be derived from the full classification, there is a simpler proof, taking less than a page. [5]
Composition alone does not allow to generate a nullary function from the corresponding unary constant function, this is the technical reason why nullary functions are excluded from clones in Post's classification. If we lift the restriction, we get more clones. Namely, each clone C in Post's lattice which contains at least one constant function corresponds to two clones under the less restrictive definition: C, and C together with all nullary functions whose unary versions are in C.
Post originally did not work with the modern definition of clones, but with the so-called iterative systems, which are sets of operations closed under substitution
as well as permutation and identification of variables. The main difference is that iterative systems do not necessarily contain all projections. Every clone is an iterative system, and there are 20 non-empty iterative systems which are not clones. (Post also excluded the empty iterative system from the classification, hence his diagram has no least element and fails to be a lattice.) As another alternative, some authors work with the notion of a closed class, which is an iterative system closed under introduction of dummy variables. There are four closed classes which are not clones: the empty set, the set of constant 0 functions, the set of constant 1 functions, and the set of all constant functions.
First-order logic—also called predicate logic, predicate calculus, quantificational logic—is a collection of formal systems used in mathematics, philosophy, linguistics, and computer science. First-order logic uses quantified variables over non-logical objects, and allows the use of sentences that contain variables. Rather than propositions such as "all men are mortal", in first-order logic one can have expressions in the form "for all x, if x is a man, then x is mortal"; where "for all x" is a quantifier, x is a variable, and "... is a man" and "... is mortal" are predicates. This distinguishes it from propositional logic, which does not use quantifiers or relations; in this sense, propositional logic is the foundation of first-order logic.
In logic, a logical connective is a logical constant. Connectives can be used to connect logical formulas. For instance in the syntax of propositional logic, the binary connective can be used to join the two atomic formulas and , rendering the complex formula .
In Boolean logic, a formula is in conjunctive normal form (CNF) or clausal normal form if it is a conjunction of one or more clauses, where a clause is a disjunction of literals; otherwise put, it is a product of sums or an AND of ORs. As a canonical normal form, it is useful in automated theorem proving and circuit theory.
A mathematical symbol is a figure or a combination of figures that is used to represent a mathematical object, an action on mathematical objects, a relation between mathematical objects, or for structuring the other symbols that occur in a formula. As formulas are entirely constituted with symbols of various types, many symbols are needed for expressing all mathematics.
In mathematics, the Legendre transformation, first introduced by Adrien-Marie Legendre in 1787 when studying the minimal surface problem, is an involutive transformation on real-valued functions that are convex on a real variable. Specifically, if a real-valued multivariable function is convex on one of its independent real variables, then the Legendre transform with respect to this variable is applicable to the function.
In logic, a truth function is a function that accepts truth values as input and produces a unique truth value as output. In other words: the input and output of a truth function are all truth values; a truth function will always output exactly one truth value, and inputting the same truth value(s) will always output the same truth value. The typical example is in propositional logic, wherein a compound statement is constructed using individual statements connected by logical connectives; if the truth value of the compound statement is entirely determined by the truth value(s) of the constituent statement(s), the compound statement is called a truth function, and any logical connectives used are said to be truth functional.
In mathematical analysis, and applications in geometry, applied mathematics, engineering, and natural sciences, a function of a real variable is a function whose domain is the real numbers , or a subset of that contains an interval of positive length. Most real functions that are considered and studied are differentiable in some interval. The most widely considered such functions are the real functions, which are the real-valued functions of a real variable, that is, the functions of a real variable whose codomain is the set of real numbers.
In mathematical logic, Heyting arithmetic is an axiomatization of arithmetic in accordance with the philosophy of intuitionism. It is named after Arend Heyting, who first proposed it.
In universal algebra and in model theory, a structure consists of a set along with a collection of finitary operations and relations that are defined on it.
Axiomatic constructive set theory is an approach to mathematical constructivism following the program of axiomatic set theory. The same first-order language with "" and "" of classical set theory is usually used, so this is not to be confused with a constructive types approach. On the other hand, some constructive theories are indeed motivated by their interpretability in type theories.
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.
Boolean algebra is a mathematically rich branch of abstract algebra. Stanford Encyclopaedia of Philosophy defines Boolean algebra as 'the algebra of two-valued logic with only sentential connectives, or equivalently of algebras of sets under union and complementation.' Just as group theory deals with groups, and linear algebra with vector spaces, Boolean algebras are models of the equational theory of the two values 0 and 1. Common to Boolean algebras, groups, and vector spaces is the notion of an algebraic structure, a set closed under some operations satisfying certain equations.
In logic, a modal companion of a superintuitionistic (intermediate) logic L is a normal modal logic that interprets L by a certain canonical translation, described below. Modal companions share various properties of the original intermediate logic, which enables to study intermediate logics using tools developed for modal logic.
In cryptography, learning with errors (LWE) is a mathematical problem that is widely used to create secure encryption algorithms. It is based on the idea of representing secret information as a set of equations with errors. In other words, LWE is a way to hide the value of a secret by introducing noise to it. In more technical terms, it refers to the computational problem of inferring a linear -ary function over a finite ring from given samples some of which may be erroneous. The LWE problem is conjectured to be hard to solve, and thus to be useful in cryptography.
In mathematical logic, a term denotes a mathematical object while a formula denotes a mathematical fact. In particular, terms appear as components of a formula. This is analogous to natural language, where a noun phrase refers to an object and a whole sentence refers to a fact.
A truth table is a mathematical table used in logic—specifically in connection with Boolean algebra, Boolean functions, and propositional calculus—which sets out the functional values of logical expressions on each of their functional arguments, that is, for each combination of values taken by their logical variables. In particular, truth tables can be used to show whether a propositional expression is true for all legitimate input values, that is, logically valid.
Graph cut optimization is a combinatorial optimization method applicable to a family of functions of discrete variables, named after the concept of cut in the theory of flow networks. Thanks to the max-flow min-cut theorem, determining the minimum cut over a graph representing a flow network is equivalent to computing the maximum flow over the network. Given a pseudo-Boolean function , if it is possible to construct a flow network with positive weights such that
Tau functions are an important ingredient in the modern mathematical theory of integrable systems, and have numerous applications in a variety of other domains. They were originally introduced by Ryogo Hirota in his direct method approach to soliton equations, based on expressing them in an equivalent bilinear form.
In computational and mathematical biology, a biological lattice-gas cellular automaton (BIO-LGCA) is a discrete model for moving and interacting biological agents, a type of cellular automaton. The BIO-LGCA is based on the lattice-gas cellular automaton (LGCA) model used in fluid dynamics. A BIO-LGCA model describes cells and other motile biological agents as point particles moving on a discrete lattice, thereby interacting with nearby particles. Contrary to classic cellular automaton models, particles in BIO-LGCA are defined by their position and velocity. This allows to model and analyze active fluids and collective migration mediated primarily through changes in momentum, rather than density. BIO-LGCA applications include cancer invasion and cancer progression.