The truth table of p → (q → p)
truth-table is one function. Everything below came out of it during this
build, at parameters taken from the essays rather than invented for this page — so a figure
here is the same figure a reader meets in an essay, and if the generator changes, this page
changes with it.
With nothing chosen
(p ∨ q) ∧ ¬r, drawn on the cube of 8 assignments
Weighted votes: two functions with a cut, and parity without one
Weighted votes among all functions: 4, 14, 104, 1,882
The perceptron rule on majority and on parity
The twenty monotone functions of three letters
What it checks while it draws
Collected by running the family and recording what it asserted, not written here. The count is how many separate times the claim was put to the test while these drawings were made.
- 222 classes, sizes dividing 768, adding to all 65,536 tables ×1
- a restriction shrinks the formula by at least the share of letters it frees ×1
- all 256 counted ×1
- and 114 functions of four letters need sixteen ×1
- and at three letters the construction is the true minimum, 10 ×1
- and neither does its best value over subsets ×1
- and no formula for it has fewer ×1
- and only parity and its negation need ten ×1
- as it is at four, 16 ×1
- at powers of two the construction meets it ×1
- Burnside's count matches the known number of classes ×1
- direct enumeration and Burnside's lemma agree ×1
- every corner meets one edge per variable, each edge counted once ×1
- every function of three letters has a circuit of at most four gates ×1
- every leaf of the formula is a variable ×1
- every one of parity's twelve edges joins a true corner to a false one ×1
- every opening bracket in the formula is closed ×1
- every set of more than half the corners has a corner of degree at least √n ×1
- exactly 56 three-letter functions express everything alone, the same 56 Post's criterion picks out ×1
- exactly one true needs exactly 4 gates ×1
- fixing the best letter always leaves at most (3/4)^(3/2) of the formula ×1
- for parity the bound is 16 ×1
- if a then b else c needs exactly 3 gates ×1
- Khrapchenko's quantity never exceeds the true formula size ×1
- leaves of the parity formula ×1
- leaves surviving the restriction x3 = 0, x4 = 1 ×1
- majority of p, q, r is a weighted vote ×1
- majority of three needs exactly 4 gates ×1
- majority's middle levels give ((n + 1)/2)² for odd n ×1
- no choice of corners can pass n², since each corner has at most n edges ×1
- no construction beats the count ×1
- no function has degree above its sensitivity squared ×1
- no function shrinks more slowly than the share of letters freed ×1
- odd number true needs exactly 2 gates ×1
- on majority the rule stops making mistakes ×1
- on parity it never does ×1
- one to four named functions ×1
- only nand and nor express everything alone ×1
- p, or both q and r is a weighted vote ×1
- parity is sensitive to every letter everywhere ×1
- parity needs the most letters of any function ×1
- parity of four letters needs exactly sixteen ×1
- parity of three letters needs exactly ten ×1
- parity reaches n² exactly ×1
- parity: an odd number of p, q, r is not a weighted vote ×1
- Post's criterion agrees with the closure ×1
- Post's criterion agrees with the closure on every pair ×1
- relabelling, negating letters or negating the answer keeps the count at four ×1
- the bound never exceeds the true size ×1
- the circuit drawn for exactly one true computes it ×1
- the circuit drawn for if a then b else c computes it ×1
- the circuit drawn for majority of three computes it ×1
- the circuit drawn for odd number true computes it ×1
- the constants and the parity of four letters each form a class of two ×1
- the construction never beats Khrapchenko's bound ×1
- the count lands within a small factor of 2ⁿ/n ×1
- the counts are 4, 14, 104 and 1,882 ×1
- the cube is drawn for two, three or four variables ×1
- the fixed tables add up to fourteen times the group's 96 elements ×1
- the formula and its disjunctive normal form agree on every row ×1
- the formula has between one and five variables ×1
- the formula is a non-empty string ×1
- the function is one this figure knows ×1
- the highlighted rows are the true ones, the false ones, or neither ×1
- the kinds account for every function that needs four gates ×1
- the matrix squared is n times the identity ×1
- the measure of how many tables have no symmetry climbs towards one ×1
- the nonzero entries are the cube's edges ×1
- the number of letters is a whole number between 2 and 4 ×1
- the option is one this view reads ×1
- the search is over the 3-cube or the 4-cube ×1
- the search reaches every function ×1
- the signed matrix is drawn for one to four letters ×1
- the table has one row per assignment ×1
- the table-and-selector construction is within a constant factor of the count ×1
- the top corner and its neighbours prove n for all true ×1
- the tree computes the parity of four letters ×1
- the two ends of an edge differ in exactly one variable ×1
- the two formulas hold ×1
- the value Andreev's function reads in the drawn instance ×1
- the view is one of cube, threshold, thresholdcount, perceptron, sensitivity, huang, signed, degree, circuits, costs, shannon, build, explicit, hardest, khrapcube, formulahist, khrapscatter, paritytree, paritygrowth, khrapfamilies ×1
- the weights account for all 7,581 functions ×1
- the weights and the cut give the function ×1
- the whole formula is consumed by the parser ×1
- three letters give fourteen classes up to permuting, negating letters and negating the output ×1
- twenty pairs f ≤ g among the six functions of two letters ×1
- with sixteen letters at its leaves ×1
Where it is called
Every figure on this list is drawn by the same rule, so a change to the rule changes all of them at once. That is why the list is published.
A formula is a corner of a cube
A formula about three letters is a set of eight rows. Written as a table that is a list; drawn on a cube it is a shape — and the shape is what almost every later question in this field turns out to be about.
LogicA plane through the cube
Some truth functions are weighted votes: give each letter a weight, add the weights of the true letters, and say yes when the total passes a threshold. On the cube of assignments, such a function is a plane cutting the true corners from the false. Majority is one. Exclusive-or is not, and never can be — and of the 65,536 functions of four letters, only 1,882 are. The ones that are are exactly what a single artificial neuron can compute.
LogicA proof with one rule
Two clauses that disagree about exactly one variable can be combined into a third that forgets it; repeat, and if the clauses cannot all be true the empty clause eventually appears — a complete proof system with a single move.
LogicFunctions that only go up
Of the 256 logical functions of three letters, only twenty never turn off when a letter is turned on. Dedekind asked in 1897 how many such monotone functions there are for n letters. Computing the count is hard enough that the answer has advanced one letter every twenty-five years or so, and the ninth arrived in 2023, from two groups in the same month, at forty-two digits. Almost everything about the number comes from a single layer of the cube.
LogicHalf the cube and √n neighbours
Choose more than half the corners of an n-dimensional cube, any way at all, and some chosen corner has at least √n chosen neighbours. That statement about a cube settled a thirty-year question about how sensitive a truth function must be to its inputs, and its proof is a matrix of plus and minus ones whose square is n times the identity. A search over every choice for the 4-cube finds the bound exactly: nine corners, and some corner always has two chosen neighbours.
LogicHow many gates a truth table needs
Every truth function can be built from gates, and the natural measure of a function is the fewest gates that build it. For three letters the whole answer can be computed: no function needs more than four. For n letters, a count shows that almost every function needs about 2ⁿ/n gates, and a construction shows that none needs more. And for any function anyone can actually write down, the best proof in fifty years says it needs 3.1n.
LogicOne connective is enough
Of the sixteen ways to combine two truth values, exactly two can build all the others by themselves. Which two is not obvious, and the reason turns out to be five properties that a connective either has or escapes.
LogicThe formula that cannot share
A circuit computes the parity of n letters with a chain of n − 1 exclusive-or gates. A formula in and, or and not, which may use each result only once, needs n² letters at least — a bound Khrapchenko proved by counting the cube's edges between true and false — and exhaustive search over every formula of four letters finds parity sitting exactly on it.
LogicThe map that puts neighbours side by side
Reorder the rows of a truth table so that neighbouring squares differ in one letter, and finding a short formula stops being algebra and becomes the problem of covering a shape with rectangles.
LogicThe middle that is not excluded
Either it is raining or it is not. Drop that as an axiom and what is left is still a logic — one with models made of open sets and of stages of knowledge, in which a set and its negation between them miss the boundary.
LogicThe order of the questions
Decide a Boolean function by asking about its variables one at a time, and share every state that behaves alike. For a₁b₁ + a₂b₂ + … the result has 2n + 2 nodes if partners are asked together and 2ⁿ⁺¹ if they are apart. All 40,320 orders of eight variables give anything from 10 to 32 nodes, while multiplication's middle bit grows fast in the best order of all.
LogicThe sentence that says it has no proof
Number every sentence and every proof, and a formal system can talk about itself. Then the diagonal is available one more time, and what it builds is a sentence that is true exactly when it is unprovable.
LogicThe tree that closes
To prove a formula, assume it false and take it apart. Every branch ends in a contradiction, or one of them describes exactly how it could have been false — and either way the tree is the answer, drawn.
LogicTruth tables up to renaming
There are 256 truth functions of three letters, but many differ only in which letter is called what, or whether a letter or the answer is negated. Counted up to such renamings there are fourteen. For four letters there are 222, for five 616,126 — and almost every function of many letters is changed by every renaming, so the count settles into a simple division.
LogicWhat a formula keeps when letters are fixed
Fix half the letters of a formula at random and most of its leaves become irrelevant: on the sixteen-leaf formula for the parity of four letters, two fixings leave four. How fast formulas shrink under random fixings is the whole engine behind the best lower bounds anyone has proved for formula size — Subbotovskaya's 3/2 in 1961, Håstad's 2 in 1998 — and the reason that engine stops at n³.
LogicWhat an incomplete set of connectives can say
Nand alone can express every truth function, and Post's five properties say exactly which sets of connectives can. That answers the question at the top. Below it lies a whole landscape: and alone expresses 7 of the 256 functions of three letters, xor 8, implication 38, and the sixty-four sets that can be drawn from and, or, not, xor and the two constants fall into just 22 different classes of expressible functions. The classes fit together into Emil Post's lattice of 1941 — countably infinite, completely described, and on three letters small enough to draw.