“It’s not difficult, Manuel. This is not a proposition from Wittgenstein.” –Basil Fawlty
“Yes, it is.” — Me
Introduction
As the odd book title suggests, Wittgenstein’s Tractatus Logico-Philosophicus is very intimidating. He did not write for a general audience. He wrote for a handful of fellow logicians who already knew and understood Boole, Frege and Russell. As a result his short declarative sentences are dropped in situ without much in the way of context or explanation.
What is at the heart of the book? Basically, Wittgenstein shows us exactly how to take all of the propositions of language and represent them with mathematical precision in logical space. The facts picture (or mirror) the reality that they model. Thus, the world is a totality of “facts” rather than “things” (1.1). Yet, he did not do this in order to take inventory of the empirical facts of the world. That didn’t interest him. He wanted to show the limits of what can be said precisely in order to clear space for what cannot be said. “The sense of the world must lie outside the world. In the world everything is as it is, and everything happens as it does happen; in it no value exists—and if it did exist, it would have no value” (6.41). For him, this value is a mystical feeling that cannot be put into words. Traditional philosophers go wrong, he thinks, the moment they speculate about anything beyond empirical facts. In doing so they sully something important that should be beyond words.
This article is not about metaphysics so I’m not going to dwell on the mystical. My intention is to focus on Wittgenstein’s logical system. Facts, objects, and states of affairs on the one hand, propositions, pictures, signs and symbols on the other. These technical details are what tripped me up as an undergrad when I first tried to read and understand the text. My goal is to unpack his logic and explain to the best of my ability how it works. It’s up to you what to do with it, whether to climb up the ladder and kick it away, or to get a solid understanding of his logic just for the sake of it.
Terms
Before diving in, I want to sketch out some of Wittgenstein’s technical terms. At the most basic level are objects. Wittgenstein doesn’t give examples. But they are the immutable “metaphysical atoms” that make up the substance of the world (2.021). Objects are the most simple and indivisible unit of reality. Whatever it is that cannot be reduced any further is an object.
Objects combine to create a state of affairs. A state of affairs is a configuration of objects that stand in a determinate relation with each other (2.031). For example, “the cat is on the mat” consists of two things (cat and mat) related by way of one being on the other. States of affairs can exist or not exist.
A fact is the existence of a state of affairs. A state of affairs is the combination of objects that represent a logical possibility (2.01-2.0123). If the cat is sitting on the mat then this is a fact. If the cat is sprawled out on the chair instead, then the state of affairs does not exist and there is no corresponding fact either. This is a negative fact.
Logical space is the total number of possible states of affairs—what could happen—states of affairs that exist as well as those that do not (2.013-4). Logical space is fixed in advance (or baked in the cake as it were). There can “never be surprises in logic” (6.1251).
The world is the totality of existing states of affairs (facts) (1.1 and 2.04).
Reality is both the existence and non-existence of states of affairs (2.06).
A picture is a model (like a sentence, a sketch, or a thought) that shares the logical form of a possible state of affairs (2.12). A picture is true if it corresponds to the state of affairs it models, or false if it does not.
A logical form is an abstract structural pattern—the shared “blueprint”—that a picture and reality have in common (2.15). Suppose I draw a sketch of a cat sleeping on a mat. My sketch shares a spatial form with the real cat on the mat. Then I turn to you and say “look at that cat sleeping on the mat.” My words reflect the same situation, and you can look and see for yourself. Sketches, sentences (spoken or written), thoughts about what I see, all of these share logical form with what they depict in reality.
A thought is a kind of picture that is in the mind (3.001).
Propositions
Going back to ancient creation stories, our default view of language is one in which a name maps onto an object. In the Hebrew version, Adam points to and names livestock, birds, and beasts. This name-object correspondence is the common sense view of how language works. The early Wittgenstein largely agrees with this view, although he advocates for a more logically precise use of language. A major theme of his book is the assertion that our statements in ordinary language “reach right out” and touch reality.
We use language automatically. When we speak, we intuitively know what others are saying and what their words mean. We possess “the ability to construct languages capable of expressing every sense” while taking for granted how our words take on meaning (4.002). Even so, the conventions we use to understand each other are “enormously complicated” (4.002). Wittgenstein believes this is because ordinary language “disguises thought.”
A proposition is a way to express names in a particular logical form. Recall the earlier sentence “the cat is on the mat.” In Frege’s logic, the simplest expression of this kind of name-object correspondence is aRb which symbolically means “a stands in relationship R to b.” The cat (a) is on top of (R) a mat (b). Wittgenstein thinks sentences like this which are arranged in logical space, mirror the logical form of the world. “A proposition is a picture of reality. [It] is a model of reality as we imagine it” (4.01).
This brings us to a crucial point: the only reason our sentences (our propositions) picture reality is because they are logically structured (4.03). We cannot think illogically. We think and see the world in a logically-structured way. Suppose I describe a cat to you. I say it is a big lazy fur-ball who does nothing but sprawl himself out on a soft mat all day. You understand me. How is this so? You’ve never seen my cat. It’s because my description communicates its meaning to you. You can picture it in your mind’s eye. In Wittgenstein’s terms, my sentence constructs a possible real-world picture of a state of affairs.
To illustrate this structural mirroring, Wittgenstein refers to an old Grimm’s fairy tale called The Gold-Children: “Like the two youths in the fairy-tale, their two horses, and their lilies. They are all in a certain sense one” (4.014). In the story, the twins, the horses, and the flowers all grow from the same magical golden source, sharing an identical internal pattern despite being two distinct entities. For Wittgenstein, this fable perfectly illustrates mathematical isomorphism—the mirroring of our propositions in language with the objects of reality. Language and the world share the same structure. The same logical form. They come at it from different directions, but like the two youths in the fairy tale they are flip sides of the same coin.
But a picture cannot stand completely alone. For it to mean anything, it has to connect to the actual world. It must touch reality. If you peel back the complex layers of a proposition, you eventually run into its absolute simplest level: an elementary proposition, or what Bertrand Russell calls an “atomic” proposition. An elementary proposition consists of names. It is a nexus, a web, of names (4.22). To see exactly what these linguistic names are pointing to (or picturing), let’s build a very small world of dice and colors.
Objects
Our small world contains just four objects. Tractarian objects are for Wittgenstein what the elements were to the ancient Greeks: basic “metaphysical atoms” of reality. He doesn’t provide examples. He does say objects are simple (2.02), indivisible, immutable (2.0271) and “make up the substance of the world” (2.021). He asserts that “there must be objects, if the world is to have an unalterable form” (2.026). In other words, because there is a reality with rocks, trees, cats, quarks and molecules, there must exist subsistent objects at the most basic level that make up the substance of that complex reality.
I am going to populate this world—this “mini-universe” of four objects—with two six-sided dice and two colors: red and green. A small caveat. Under Wittgenstein’s definition above, a die is too complex to qualify as a simple object. After all, plastic has resin, a base polymer, molecules, and subatomic particles; but let that one slide. For illustration purposes as we move forward let’s just say the two dice and the two colors are simple objects.
Objects have internal properties. Suppose I were to try to think about a six-sided die that can have a seventh face. It’s not possible for me to do so. But I can imagine the six faces. And I know by definition that it is cube-shaped. And that it has a total of 21 pips across all six of its faces (1 + 2 + 3 + 4 + 5 + 6 = 21). The die having six faces, being shaped like a cube, and totaling 21 pips across all six faces are its internal properties.
Objects have possibility (2.014) and logical form (2.0141) when they combine with each other. Suppose I roll two dice. The possibilities are already baked into the cake so to speak: the two dice will come to rest with a sum total between 2 and 12. It’s not possible for the total to be less than 2 or greater than 12. A Wittgensteinian logical form then is the structure of what can be actualized in physical space when objects combine (2.033).
States of Affairs and the World
Suppose the dice are rolled and one die shows a 3 and the other shows a 4, for a total of 7. This configuration of the two dice is what Wittgenstein calls a “state of affairs” (2.01). Out of the total possibilities between 2 and 12, the configuration of 7 is one particular state of affairs. “In a state of affairs objects stand in a determinate relation to one another” (2.031). Put in logical terms, the positive fact is the existence of the states of affairs (rolled 3 and 4), while the negative facts are the non-existence of the other possible (but non-actualized) states of affairs. The dice show a 7. So snake eyes (1,1) or every other combination other than (3,4) do not exist as states of affairs in the world although they could have.
Because we know all the possibilities in advance we know that some states of affairs will exist and others will not. For instance, if the dice total 7 then that state of affairs exists and all of the other possibilities, like 2, 5 or 12, do not exist. This is true for all objects in our shared reality.
For Wittgenstein the world is all that is the case (1) and consists of the “totality of facts” and not of things (1.1). This means that of all the objects in the universe that interact with each other in possible states of affairs, the world is specifically the subset of those states of affairs that actually exist (2.04). Reality is the broader logical space—the total number of existent as well as possible but non-existent states of affairs (2.06).
If you’ve followed along with me this far you can see that Wittgenstein’s ontology is very radical. He tells us right at the start that the world is a collection of facts rather than things. This bucks the trend of Western philosophy, going back to the ancient Greeks, where reality consists of things: people, horses, oxen, rocks, trees, and so on. We’re used to seeing our world the way we see our living rooms. There’s a sofa, a chair, rug, and so on. Wittgenstein wants us to stop looking at nouns and instead look at the logical configurations of facts.
Pictures and Thoughts
Now we can see exactly how the world of facts and the world of language fit together. “We picture facts to ourselves” (2.1). A picture is a model of reality” (2.12). Starting with section 2.1 Wittgenstein shifts from reality to focus on how we say things that represent reality. This is called his Picture Theory. The main idea is that we can model a state of affairs with a thought, a sentence, a quick sketch, or anything that corresponds to the “situation in logical space” (2.11).
For example, in the world what exists are two dice that show 3 and 4. And I want to tell you the result of the dice roll and the colors. I can say “the red die is a 3 and the green one is a 4.” Or I could draw a quick sketch on a cocktail napkin with two squares and label them “r3” and “g4” respectively. A sentence or a sketch is a picture. And the picture is a fact (2.141). But a word of caution. The dice aside, the picture is the fact. It is a real entity in the world because there really is a sketch on a napkin or a sentence I just uttered. But the picture-as-fact doesn’t necessarily agree with the dice-as-fact. I might be wrong. I might have sketched it incorrectly. But at this point the picture contains the possibility of an accurate arrangement with the dice in reality. This is what Wittgenstein calls its “pictorial form” (2.151). Another way to say this is that my sentence or my sketch has the capacity to represent reality. The spatial form displays this representation.
The picture is true if (and only if) the picture’s structure matches (or corresponds to) the actual state of affairs it depicts. “A picture agrees with reality or fails to agree; it is correct or incorrect, true or false” (2.21). There isn’t a third entity that brokers this agreement with reality. There isn’t an “R” (as in aRb) out there in the world that is a sort of “glue” holding together the cat and the mat. The picture itself mirrors the reality it seeks to represent. It “is laid against reality like a measure” (2.1512) and “reaches right out” to reality and touches it. How do we know if a picture is true? We “must compare it with reality” (2.223). We can’t tell whether the picture is true or false just by analyzing logic or language. There are no true pictures prior to an actual comparison with reality. On its own, the picture merely displays a truth-possibility, and the truth of the picture is confirmed by matching it to what it represents in reality.
I roll two dice and look at the results. I think to myself “7.” Just as the picture displays its representation of reality, so too does my thought contain the logical form that I can picture to myself (3.001). Whatever is thinkable is in theory possible. But I cannot think of something illogical. For example, I cannot roll the dice again and think that they turned up 13. If I cannot think illogical thoughts about objects in reality, then I certainly can’t represent them in language. (Of course, I can think of a chimera or Pegasus. But I cannot think of a 7-sided die that is both red and green all over.)
Wittgenstein makes a distinction between thoughts about reality and thoughts that are disconnected from reality. Suppose I have the thought “a six-sided die once rolled must come up with a number between 1 and 6.” This is necessarily true. But its truth is not due to some amazing predictive ability or prior knowledge on my part. It’s tautological—true by definition. My having this thought is empty because it says nothing about the world itself. However, if I roll the die, see the results, and then have the thought “The die shows a 3” then this is a genuine thought. It carries with it the possibility that I might be wrong. To determine if it’s true, I have to compare my thought to the physical die as it sits on the table (3.05).
A thought “finds an expression” (3.1). This is to say, when I have thoughts about the world around me, I project them outward to the possible states of affairs in the world. In logic and language, these expressions are typically written down. When we project signs to say something about the world this is a proposition (3.12).
Names and Propositional Signs
For the sake of discussion, let me label the two dice and the two colors from our universe: die 1 is a, die 2 is b, red is r, and green is g. These labels are what Wittgenstein calls “simple signs” or names (3.202).
When I arrange names together to say something I create propositional signs (3.11). For example, I might write a propositional sign that says “a is 1” or “b is g.” This can get very involved as in “a is 3 and b is g and both equal 9.”
Remember how I said a picture is a fact that has the possibility of being true or false? The same applies to propositional signs. My saying “a is 1” does not make the die result come up 1. A propositional sign “includes all that the projection includes, but not what is projected” (3.13). For Wittgenstein, “a propositional sign is a fact” (3.14) and not just “a blend of words” (3.141). They stand together in a “determinate relation to one another.” This means that “a is 1” is meaningful but contains nothing more than the logical possibility that a die can roll might be a 1. Logic alone can tell us nothing about the world. It can only frame the possibilities of how the world might be structured and actualized.
“In a proposition a thought can be expressed in such a way that elements of the propositional sign correspond to the objects of the thought” (3.2). There is a one-to-one mapping between the sign and the object it represents. For example, I write “a and b are 7.” The two names (a and b) mean the object to which they point (die 1 and 2). “In a proposition a name is the representative of an object” (3.22).
This dynamic highlights Wittgenstein’s context principle: “Only propositions have sense; only in the nexus of a proposition does a name have meaning” (3.3). What he means is names like a and b in isolation are just words. They have to be articulated in a proposition in order to make sense. Propositions then are expressions or symbols (3.31). For example, the two names a and b say nothing about the world. They just point to a pair of dice. But suppose I make a proposition like “Die a is red, die b is green, and both equal 7” (a is r and b is g and ab equals 7). The names now become logical symbols in the proposition.
Signs and Symbols
Wittgenstein calls attention to the way everyday language plays tricks on us. He introduces a distinction that is simple but easy to overlook: the difference between a sign and a symbol (3.323 through 3.325). The sign is merely the physical, visible ink on the page—the alphanumeric characters we write when we communicate. Or the sounds and noises we make when we talk. The symbol, however, is the actual logical meaning that the sign takes. Because ordinary language is incredibly flexible, we are able to reuse the exact same physical sign to represent completely different underlying symbols. Wittgenstein points out the ultimate culprit:
“In everyday language it very frequently happens that the same word has different modes of signification—and so belongs to different symbols…” (3.323).
Take the simple verb “to be” which has a long and sordid history in philosophy going back to the Presocratics. The verb can function as the copula (e.g., the die is red), as a sign for identity (e.g., Mark Twain is Samuel Clemens), or an expression of existence (e.g., that which is, and also cannot be that it is not).
Wittgenstein offers “Green is green.” Is it a mere tautology? Not if the first symbol is a proper name while the second is an adjective. Maybe Mr. Green is green with envy? Or take the title of the book by Lynne Truss: “Eats, Shoots and Leaves.” That sounds pretty bad doesn’t it? But she points out that if we’re talking about a panda’s diet—and the comma is omitted—then eats shoots and leaves takes on a completely different meaning. The physical signs on the page look identical, but the grammatical categories have completely flipped from verbs to nouns. “These words do not merely have different meanings: they are different symbols” (3.323). Philosophical errors are produced when the logic of language becomes confused (3.324).
Wittgenstein here foreshadows his later view that philosophical problems are the result of the “bewitchment of language.” However, at this stage of his thinking he wants us to formalize how we express ourselves, to use signs that are precise and avoid grammatical confusion. As it stands, problems arise when we look at the spoken word or the physical text (the sign), see that the words look identical, and all too often assume the underlying meaning (the symbol) is the same thing. Wittgenstein’s remedy is to express ourselves logically:
“In order to avoid such errors we must make use of a sign-language that excludes them by not using the same sign for different symbols and by not using in a superficially similar way signs that have different modes of signification: that is to say, a sign-language that is governed by logical grammar—by logical syntax” (3.325).
This is of course exactly what computer programmers do today when they write code that a machine can understand. The syntax—the human-readable code that gets compiled into machine language—is designed to be precise in order to prevent the writer from using the same word to mean two different things. If a function expects an integer and you mistakenly pass in a boolean, you have used two different types. The machine refuses to compile and run the code.
The Theory of Types
From his distinction between signs and symbols, Wittgenstein presents a proof that resolves a contradiction in naive set theory. To understand what he does, I first have to talk about the problem as Bertrand Russell saw it and what he did to try to solve it.
Around 1900, Russell had been working on logicism (the attempt to reduce mathematics to logic) when he discovered Gottlob Frege’s Grundgesetze der Arithmetik. In the book, Frege used “empty” functions as placeholders for any value. Today we would say his functions were untyped. For example, suppose I have a type-safe function F(x) where x accepts only an integer and returns true if it is an odd number. I can pass in x = 7 and F(7) returns true. I can pass in x = 8 and F(8) returns false. Russell noticed that Frege’s functions could be F(__) where the blank could be an integer, the word foobar, or even the function itself. There were no restrictions for Frege on the type of data that could be passed into his functions. Because Frege’s functions were untyped, you could theoretically pass a function into itself as its own argument, writing something like F(F). Russell wrote a letter to Frege in 1902 in which he describes the problem:
“You assert that a function could also constitute the indefinite element [an untyped value or “__” as above]. This is what I used to believe, but this view now seems to me dubious because of the following contradiction: Let w be the predicate of being a predicate which cannot be predicated of itself. Can w be predicated of itself? From either answer follows its contradictory. We must therefore conclude that w is not a predicate. Likewise, there is no class (as a whole) of those classes which, as wholes, are not members of themselves” [1].
Very complex when two logicians write to each other! This is known today as Russell’s Paradox. Let me use the barber analogy to explain it. There is a rule that the town barber is required to shave all (and only) those men who do not shave themselves. Does the barber then shave himself? If he does then he violates the rule by shaving someone who shaves himself. If he does not, then he violates the rule by failing to shave someone who does not shave himself. This is the paradox. Russell also calls this the “vicious circle fallacy.” It occurs because ordinary language allows for self-reference. Variations on this theme go back to antiquity with the famous Liar’s Paradox—this sentence is false—associated with Epimenides of Crete. If the sentence is true, then it is false; and if it is false then it is true. This was a huge blow to Frege’s logic. And Russell knew that he had to solve it if his own system was to avoid such contradictions.
Russell invents a type theory to solve paradoxes of self-reference. He starts by isolating individuals from functions. He assigns letters like a, b, c, x, y, z to the class of individuals, that is, to the set of all men in town who must be shaved. He then goes up one level for functions—what are called first-order functions. In the case of the town barber, we have the function F(x) which is the act of shaving an individual. Russell then asserts that F(x) can accept values only from individuals. So suppose Andy (a) and Bill (b) need to be shaved. I can pass in F(a) and F(b) in order to shave the two individuals. But I cannot pass in F(F) because this would be the wrong type at the wrong level. In computer programming we would say it fails to compile. In logic, it’s just nonsense.
Wittgenstein looks at Russell’s solution and agrees that an expression like F(F) is nonsense. But he thinks Russell’s fix, with its hierarchy of first- and higher-order functions, is convoluted and unnecessary. Russell takes the paradox seriously. He treats it like a “runtime error” and goes to great lengths to invent rules for types in order to prevent such expressions from happening. Wittgenstein sees this as a doomed effort:
“No proposition can make a statement about itself, because a propositional sign cannot be contained in itself” (3.332).
He then offers this proof in 3.333: Suppose a function F(x) could be its own argument, written as F(F(x)). The inner F has one logical form—let’s call it φ(x)—while the outer F has an entirely different logical form, which we can write as ψ(φ(x)). When you lay it out this way, it becomes clear that the outer F and the inner F must have completely different meanings. The letter “F” on its own signifies nothing. We confuse the visible sign with the underlying symbol, mistakenly thinking that because the two “F” signs look identical on the page, they must mean the exact same thing. But Wittgenstein shows that they do not. It is the logical form that determines meaning, not the visible sign.
To see what Wittgenstein is getting at here, suppose I have a function IsOdd(x) that takes any integer and returns true if the number is odd and false if the number is even. In a strongly-typed language, if I force a nested expression like IsOdd(IsOdd(7)) what happens? The inner IsOdd function evaluates 7 as an odd number and returns true. The outer IsOdd function expects an integer but would instead be forced to evaluate a boolean value. They share the same name but are two different logical entities. Wittgenstein argues that we don’t need Russell’s external rules to enforce type safety. The language’s own internal syntax prevents them from being treated identically. Thus, “the rules of logical syntax must go without saying, once we know how each individual sign signifies” (3.334). In effect, Wittgenstein has dissolved the problem by pointing out that the whole paradox is generated by a confusion between the meaning of signs.
Features of Propositions
“A proposition possesses essential and accidental features” (3.34). Wittgenstein does not mean “accidental” and “essential” in the ancient metaphysical (Aristotelian) sense. Instead he is looking at the structure of language. The accidental features of a proposition are the arbitrary choices we make when we write it down. Maybe we choose to type it out on the keyboard, or write it down with a pencil on the back of a napkin, speak in German, or pick particular symbols to express the proposition.
For example I roll a die and it shows 4 pips. I can express this fact in different ways:
-
- The die shows a four.
- Der Würfel zeigt eine Vier.
- D = 4
These are different accidental ways of expressing the result of the die roll. They reflect different languages, symbolic notations, and conventions. But what is essential to all three expressions is that they assert the exact same relationship between the object (the die) and a state of affairs (showing four pips). Thus “what is essential in a proposition is what all propositions that can express the same sense have in common” (3.341).
Given the essential features of a proposition, Wittgenstein goes on to argue that these features are logically equivalent. For instance, in our mini-universe, if I want to tell you that the red die is not showing a four, I can express this logical negation as ~p (not p). If I write ~~p (not-not-p), the two negative signs cancel each other out, taking us right back to p. The physical signs change, but the essential logical sense remains identical.
Similarly, I can express a complex scenario using logic operators like p ∧ q (p AND q) or p ∨ q (p OR q). The symbols we choose are just “the outward form of the clothing” (4.002); what matters is the underlying structural truth-possibility these signs represent.
Frege thought that logical constants were a component of reality. Take the proposition “the die is not red” (~aRr). If logic were a component of reality, then there would be three objects: the die (a), the color red (r), and a strange sort of entity called a negation (~). Wittgenstein rejects this strange entity. For him, logical constants (e.g., AND, NOT, OR, IMPLIES) are a part of language rather than physical reality. He calls this his fundamental idea: “My fundamental idea is that the ‘logical constants’ are not representatives; that there can be no representative of the logic of facts” (4.0312).
This all leads to Wittgenstein’s core idea about propositions: they are expressions of agreement and disagreement with the truth-possibilities of elementary propositions (4.4). Suppose we have these two elementary propositions in our world:
p: “The red die shows a four.”
q: “The green die shows a three.”
Every possible configuration in logical space for both true and false can be mapped out for p and q. How many possible configurations are there? “For n states of affairs, there are:
$$K_n = \sum_{v=0}^{n} {n \choose v}$$ possibilities of existence and non-existence” (4.27).
The total number of combinations K in the summation loop, where ν = 0 (lower bound) and n (upper bound) represent n states of affairs. The expression $${n \choose v}$$ is the binomial coefficient, which by the Binomial Theorem resolves simply to 2ⁿ. Wittgenstein could have just said 2ⁿ but perhaps he wanted to show his work. So if n = 2 (p and q above) then the binomial coefficient using the “n choose k” or C(n, k) combination formula for each is:
C(2, 0) + C(2, 1) + C(2, 2) = 1 + 2 + 1 = 4.
If I have 3 elementary propositions p, q, r where n = 3 then:
C(3, 0) + C(3, 1) + C(3, 2) + C(3, 3) = 1 + 3 + 3 + 1 = 8
If there were 4 elementary propositions (n = 4) then this would be 2⁴ or 16. And so on. Wittgenstein visualizes this by mapping these possibilities into a matrix (4.442). The matrix shows all agreements (T) and disagreements (F) alongside the combinations as a single structural unit or “truth table”. For any two elementary propositions p and q there are 4 rows (4 truth possibilities) in the truth table.
+---+---+ | p | q | +---+---+ | T | T | | T | F | | F | T | | F | F | +---+---+
Every possible truth-value configuration is represented in the rows:
Row 1: Both p and q are true.
Row 2: p is true but q is false.
Row 3: p is false but q is true.
Row 4: Both p and q are false.
For Wittgenstein the proposition is not a statement that just so happens to have a truth table. The entire table itself is an expression of the proposition. In other words, the proposition is the realization of these specific truth-conditions (4.45).
Think of truth-conditions as the specific real-world state of affairs that make a proposition true. Recall our proposition from above was: “the red die shows a four (p); and the green die shows a three (q)”. Only the first row shows that possibility (TT). Because the proposition is a conjunction (both must be true) the first row is its only truth-condition. If the dice roll were snake eyes, or double sixes, the result is one of the other three rows (false). Suppose the proposition were a logical OR instead? Take this proposition: “the red die shows a four or the green die shows a three.” Then you can see in the table above there are three truth-conditions (the first three rows).
Tautologies and Contradictions
Wittgenstein points out “two extreme cases” where a logical proposition is true for all truth-possibilities and another where it is false for all truth-possibilities (4.46). For example suppose I have an elementary proposition “the die is red or it is not red” (p ∨ ~p):
+---+--------+ | p | p ∨ ~p | +---+--------+ | T | T | | F | T | +---+--------+
This evaluates in the first row where p is true (T ∨ ~T) and in the second row where p is false (F ∨ ~F), making both rows trivially true. Since the proposition always evaluates to true, this makes it a tautology. And at the other extreme: “the die is red and it is not red” (p ∧ ~p):
+---+--------+ | p | p ∧ ~p | +---+--------+ | T | F | | F | F | +---+--------+
Here in both rows a value cannot be both true and false. It always evaluates to F (false). This is a contradiction. Wittgenstein writes “propositions show what they say: tautologies and contradictions show that they say nothing. A tautology has no truth-conditions, since it is unconditionally true: and a contradiction is true on no condition. I know nothing about the weather when I know that it is either raining or not raining” (4.461). What Wittgenstein means here is that propositions that cannot be false (or ones that cannot be true) are not empirical. They lack sense. Because they don’t represent any possible situations in the world they cannot be pictures of reality (4.462). In effect, both tautologies and contradictions represent logical states that cannot exist in reality (4.463).
Truth Operations
Earlier I mentioned that Wittgenstein’s “fundamental idea” was that logical constants are linguistic rather than mysterious entities in physical reality. Now I want to show how Wittgenstein gets rid of them altogether when evaluating truth-possibilities. He replaces them with the concept of a truth operation (5.21).
In mathematics, functions map inputs of one set to outputs of another set. For example, let’s define a function f(x) that takes an integer and returns a boolean. I’ll use my earlier example of a function IsOdd(x) that returns true if the input is an odd number and false if it is an even number:
IsOdd(x) = (x mod 2 ≠ 0)
I can plug in for x variously:
IsOdd(3) = true
IsOdd(8) = false
If I try to pass the output of an inner function as an input into an outer function, this becomes a type error or logical nonsense:
IsOdd(IsOdd(3))
Wittgenstein draws a sharp distinction between functions and operations (5.25). “A function cannot be its own argument, whereas an operation can take one of its own results as its base” (5.251). What he means here is a function is a part of a proposition’s meaning—it helps describe a state of affairs in the world. An operation, however, describes nothing. It merely shows how one proposition can result from another proposition (5.24). For example, we can apply the operation of negation (~) to the proposition p to get ~p, and then apply that same operation to the result to get ~~p. In this way operations can “vanish” because ~~p = p (5.254).
Earlier I showed a truth table with two elementary propositions p and q. Operations can be applied to each of them to produce an output. Let’s take a concrete example with our two dice a and b. Suppose we want to roll them and ask if either one of them shows a 1. Our two elementary propositions for the roll are:
p: “die a shows a 1”
q: “die b shows a 1”
If we apply logical disjunction to evaluate the truth of each die this is p ∨ q (p OR q).
Here is the truth table with both elementary propositions and the truth-possibilities. The third column with an apostrophe in the header is the output of the operation, or what Wittgenstein calls a “propositional sign” or just a proposition (4.442):
+---+---+---+----------------------+ | p | q | ‘ | | +---+---+---+----------------------+ | T | T | T | Snake eyes! Both = 1 | | T | F | T | p = 1 and q > 1 | | F | T | T | q = 1 and p > 1 | | F | F | F | Neither show 1 | +---+---+---+----------------------+
Why is the proposition represented by an apostrophe symbol? This gets back to Wittgenstein’s fundamental idea that logical constants do not exist in reality as Frege and the early Russell believed. He wants you to see the proposition as an output of an operation rather than a symbol of some Platonic object somewhere. “A proposition is the expression of its truth-conditions” (4.431). No more, no less.
A Wittgensteinian operation can feed its own output back into the same operation to infinity. In this way, he can dispense with quantifiers. Frege and Russell introduced quantifiers—the words “all” (∀x) or “some” (∃x)—in order to speak generally about certain sets of entities. It’s one thing to say “Socrates is mortal” but suppose I want to say “all Cretans are liars” or “some Greeks live in Athens.” This takes us from a statement about a single person to whole sets of people. Why would Wittgenstein object to quantifiers? He sees them as superfluous, “syntactic sugar” as we say in programming. He realized that with his truth tables and operations he could replace quantifiers with conjunctions:
“All Cretans are liars” => a ∧ b ∧ c ∧ d ∧ e (and so on)
“Some Greeks live in Athens” => a ∨ b ∨ c ∨ d ∨ e (and so on)
The “and so on” (5.2523) means that as long as we have clear operations that can call each other successively—feeding outputs of the first operation as inputs into the next—this can go on indefinitely for every element in the set without the need for logical constants like all or some.
Frank Ramsey objected to Wittgenstein’s use of conjunctions. He writes that “in the common sense material world” there are two domains for conjunctions. The first is a “limited region of space” such as when I say “all the citizens of Cambridge.” We might speak of the town or the college but it’s clear that the reference is to a certain finite number of people. But when we take a universal quantifier like “all” as an actual infinity this is a different animal altogether.
Among three objections that Ramsey lists, his first one is deceptively simple: “(x).ɸx [For all x, x has the property ɸ] differs from a conjunction because it cannot be written out as one” [2]. What he means is no matter how many Wittgensteinian operations we chain together (a ∧ b ∧ c…) we will never be able to reach the end because we don’t have a map of every object in the world. It’s like a computer program running a recursive function with no terminating condition. It will eventually run out of memory and crash. Ramsey is making a pragmatic point here. Like Yogi Berra’s humorous paradox, “nobody goes there anymore, it’s too crowded,” we routinely use quantifiers loosely in ordinary language. Our universal “all,” “some,” “none” statements are mostly hyperbole rather than expressions of actual infinity. Ramsey argues that “we cannot express [them] for lack of symbolic power… [and] what we can’t say we can’t say, and we can’t whistle it either” [3].
This little inside joke at Wittgenstein’s expense is now a tired cliché in the secondary literature, yet here I am repeating it diligently. A little known fact: Wittgenstein was renowned for being a very talented whistler with perfect pitch. He was able to whistle entire Beethoven symphonies from memory. But I digress. We move on now to Joint Denial.
Joint Denial (NOR Operation)
Wittgenstein successfully dispenses with logical constants and quantifiers in favor of operations. Now he goes one step further to reduce different operations down to a single “general propositional form” in which “every proposition is a result of successive applications to elementary propositions of the operation N(ξ). This is the “neither-nor” logic gate which is sometimes called the N-Operator. This single operation will do all of the heavy lifting in Wittgenstein’s logic. N(ξ) “is the negation of all the values of the propositional variable ξ” (5.502). Wittgenstein calls this the “general form of a truth-function” (6).
Wittgenstein realized that all of logical space—the totality of all possible states of affairs—can be evaluated with just a single, elegant operation that employs “neither-nor” negation (NOR). In doing so he claimed that hundreds of pages of axioms in the Principia and the Grundgesetze were now obsolete. A wild boast? Consider that silicon chips that power computers can be built using only NOR logic gates. The Apollo Guidance Computer was engineered with just NOR logic gates in a few thousand integrated circuits.
A NOR operator creates an output that is the negation of a logical OR. I can say: (p NOR q) which is to say “not p or q” ~(p ∨ q), which can be simplified to the Sheffer stroke: p | q. (I realize modern convention reserves the stroke for NAND and the down arrow for NOR. But for the sake of simplicity here, and in the code sample, I use Sheffer’s original symbol ‘|’ from his 1913 paper.) The truth table for a NOR operation on two elementary propositions is:
+---+---+-------+ | p | q | p | q | +---+---+-------+ | T | T | F | | F | T | F | | T | F | F | | F | F | T | +---+---+-------+
Let me grab a pair of dice again to show an example of a NOR operation. Our elementary propositions, as in the truth table above, will be:
Die a does not show a 4 (a ≠ 4).
Die b does not show a 4 (b ≠ 4).
I pass every truth-possibility into the NOR operation NOR(a, b) which means “neither a nor b” ~(a ∨ b).
I roll the dice. They come up 1 and 2 so both are true (≠ 4). These inputs are passed into NOR(a, b) and since “neither a nor b” is false, this evaluates to false (see row 1 above). Only the fourth possibility, when a = 4 and b = 4, does it evaluate to true.
Here is a functional program you can run yourself to see NOR logic in action:
This logic works perfectly if we have just a pair of dice or even a hundred dice. What if we only have a single die? Suppose we have just one proposition (a ≠ 4) for one die (a). Now let’s roll the die. It comes up 2. Our proposition says 2 does not equal 4 so a(2) = true. Now I pass that into the NOR operation as NOR(a, a) or NOR(true, true) which outputs false. In fact for any a(x) that is not 4 this operation will output to false. But if we roll a 4 then a(4) = false. And passing that input into NOR(false, false) evaluates to true! It’s hard to conceptualize just by reading my words. Play around with the Fiddle above and see it in action.
What about complex propositions with logical constants? They can be replaced with a single N(ξ) operation as in the following examples:
+----------+---------+--------------+ | Constant | Example | N-Operation | +----------+---------+--------------+ | NOT | ~a | a | N(a) | | AND | a ∧ b | N(N(a),N(b)) | | OR | a ∨ b | N(N(a,b)) | | IMPLIES | a ⊃ b | N(N(N(a),b)) | +----------+---------+--------------+
Note that comma delimiters can allow for any number of elementary propositions to be evaluated by the operation. For example, N(a,b,c,d) which would be neither a, nor b, nor c, nor d. Here is a second code sample to show how the truth tables are derived from the above complex propositions using a NOR operation:
Truth-Functions in Series
We’ve been playing around with dice in previous examples to illustrate how Wittgenstein’s logic is built. Now strip all of that down to its raw abstraction as in 5.101. For p ∧ q the only truth possibilities are (TFFF)(p, q). For p ∨ q they are (TTTF)(p, q). For material implication a ⊃ b they are (TFTT)(p, q). And finally, with neither p nor q (NOR) the only truth possibilities are (FFFT)(p, q).
+---------+--------+--------+--------+----------------+ | p q | p ∧ q | p ∨ q | a ⊃ b | ~p ∧ ~q (NOR) | +---------+--------+--------+--------+----------------+ | T T | T | T | T | F | | T F | F | T | F | F | | F T | F | T | T | F | | F F | F | F | T | T | | | (TFFF) | (TTTF) | (TFTT) | (FFFT) | +---------+--------+--------+--------+----------------+
If you’re a software developer does this look familiar? Wittgenstein is building bitwise operators. He rotates the truth table column horizontally to express the operation outcomes with the convention (—-)(x, y). Each sequence is not just a singular proposition, but a propositional form—a truth-function schema. “A proposition is a truth-function of elementary propositions” (5). All propositions that are the outcomes of all the elementary propositions “fixes their limits” and “comprise all that follows” (4.51 and 4.52). And because operations can pass their outputs as inputs into other operations, the world itself is the limited set of all propositions that are fixed and follow logically.
Pretty austere you say? Absolutely. For Wittgenstein, it is possible “to give in advance a description of all ‘true’ logical propositions” (6.125). “Hence there can never be surprises in logic” (6.1251, his emphasis). I roll two dice and I already know in advance that “snake eyes” is one possibility. It can never be that a number shows that is not between 2 and 12.
Causality
Causation in the ancient world was as likely as not to be attributed to a god taking action in the world. But with the rise of modernism in the 17th century, philosophical views of causation changed. Rationalist thinkers like Descartes, Leibniz, and others were trying to separate the material world of science from the spiritual world of God. They held that various metaphysical forces in the world were responsible for causation.
Consider Hume’s example of one billiard ball striking another. The rationalists saw cause and effect as a strict deductive inference: If ball A strikes ball B then B must be set into motion; Ball A strikes ball B; therefore, B must be set into motion.
On this view, if the cause occurs then the logical conclusion follows necessarily. This thinking is still quite common. We routinely believe, even if only implicitly, that such logical rules are baked right into the fabric of reality as laws of nature. But like Hume before him, Wittgenstein points out that necessity (the “must” of the inference above) is a feature of logical syntax rather than the physical world:
“There is no compulsion making one thing happen because another has happened. The only necessity that exists is logical necessity. The whole modern conception of the world is founded on the illusion that the so-called laws of nature are the explanations of natural phenomena” (6.37-6.371).
Wittgenstein argues that it’s a mistake to say that one event forces another. For him, “superstition is nothing but belief in the causal nexus” (5.1361). We do not see causes. We only see one billiard ball move, and then we see another one move. We infer causality based on the regularity of our experience with such phenomena. But nature is not obligated to follow our expectations or our laws. Another way to put this is there is no certainty in the world, there is only probability.
Our laws are forms that we overlay on the world in order to describe it’s regularity. Wittgenstein uses the analogy of nature as a “white surface with irregular black spots on it” (6.341). We can impose a law like Newtonian mechanics as a “unified form” on top of the surface. This unified form is like a “fine square mesh” or a net of some fine- or coarse-grained dimension that becomes our picture of the world. But this picture is not the world itself. This is why laws “like the law of causation, etc. are about the net and not about what the net describes” (6.35).
The Limits of Language
The main thrust of Wittgenstein’s arguments concerning logic is to show the limits of language, and therefore the limits of the world. However, this setting of limits is not just a dry math exercise. That is not Wittgenstein’s ultimate aim. If you read between the lines he’s getting at something far more radical. It’s just this: language shares a logical form with reality. We don’t just talk about the world from some subjective distance; our sentences literally picture reality because our language shares the same underlying structural configuration. In theory, every possible state of affairs is mirrored in these structural possibilities of logic, such that language “can represent the whole of reality” (4.116). Our actualized world is nothing more than the totality of these facts, which is to say, “all that is the case” (1).
But the point isn’t to know all these actualized possibilities. It’s to see that cumulatively they set limits. They clarify what can and cannot be expressed. Philosophy “sets limits to what can be thought; and, in doing so, to what cannot be thought. It must set limits to what cannot be thought by working outwards through what can be thought” (4.114). The limit is not set from without, as if from a God’s eye view of things. It is set from within, by what we can say.
For Wittgenstein, this limit serves two purposes. First, it is a guardrail against speculative metaphysics and pure nonsense. It also shows the border for something that he calls “the mystical.” The mystical is “feeling the world as a limited whole” (6.45). However, as humans we can’t help but push back against the idea of limits. The sum total of reality might be the finite set of truth-possibilities, but we still want to know what’s beyond that. That’s why most of philosophy is little more than clumsy attempts to say something meaningful about phantasms that are “outside” the world and outside of knowledge.
Wittgenstein’s answer to this metaphysical urge is “to say nothing except what can be said, i.e., the propositions of natural science” (6.53). We can speak only of the logical pictures that map directly to the world. Anything else we might say is nonsense. This leads to his famous abrupt conclusion in which “what we cannot speak about we must pass over in silence” (7).
Notes
[1] The Frege Reader, Michael Beaney (Ed.), Blackwell Publishing. 1997, p. 253.
[2] The Foundations of Mathematics, Frank Ramsey (R. B. Braithwaite, Ed.), Kegan Paul, Trench, Trubner & Co., Ltd (1931), p. 237.
[3] Ibid., p. 238.
In addition to the primary text, I benefited from reading Wittgenstein’s Notebooks (1914-1916), Wittgenstein and the Tractatus by Michael Morris, The Evolution of Modern Metaphysics by A.W. Moore, The Frege Reader edited by Michael Beaney, Principia Mathematica to *56 by Whitehead and Russell, The Foundations of Mathematics by Frank Ramsey (R.B. Braithwaite, Ed.), and “A Set of Five Independent Postulates for Boolean Algebras, With Application to Logical Constants” by Henry Maurice Sheffer (1913).
Also new for me, I made extensive use of Google Gemini for editorial assistance and proofreading. When I had a solid first draft, I asked it to critique my arguments and look for errors. Needless to say, it flagged several problems. In some cases, I threw away whole paragraphs and started over from scratch. The tool is indispensable if used wisely.
My blog software doesn’t support tables for some reason. Rather than hand code HTML tables, I used the excellent ASCII Table Generator to generate the truth tables. This gives the post an old-school nineties look and feel, but it gets the job done.