FREE HISTORICAL FIGURES OF COMPUTING PROFILE
Bertrand Russell
1872–1970 · Logician & philosopher
Bertrand Russell
Logician and philosopher · 1872–1970 · United Kingdom
Russell's work makes two different demands on a formal language. Its formation rules must prevent inconsistent constructions, and its semantics must distinguish claims that ordinary language easily confuses. His paradox and theory of descriptions provide concrete ways to practice both tasks.
Life and published work
Russell was born on 18 May 1872 at Trellech in Wales and entered Trinity College, Cambridge, in 1890, where he met Alfred North Whitehead. He studied mathematics and then philosophy. His encounter with Giuseppe Peano in Paris in 1900 helped redirect his logical work. He discovered his paradox in 1901 and wrote to Frege about it in June 1902. The Principles of Mathematics appeared in 1903, “On Denoting” in 1905, and the three Principia Mathematica volumes with Whitehead in 1910, 1912 and 1913. Scholarly chronology.
He also wrote extensively on philosophy and public affairs. Anti-war activity led to dismissal from Trinity in 1916 and imprisonment in 1918. He received the Nobel Prize in Literature in 1950 and remained involved in nuclear-disarmament campaigns late in life. He died on 2 February 1970, aged 97. These facts do not justify inventing a direct causal link between his private relationships and a mathematical discovery. Biographical account.
The exact contradiction
Suppose unrestricted comprehension says that every condition P(x) determines a set of all objects satisfying it. Apply it to the condition “x is a set and x is not a member of itself.” Call the resulting supposed set R. Its defining property gives:
R ∈ R if and only if R ∉ R
If R belongs to itself, its defining property says that it does not. If it does not, it satisfies the condition for belonging. The contradiction refutes the unrestricted formation principle in this setting. It does not show that every use of the word “self” is inconsistent.
In modern axiomatic set theory, separation starts from an already available set A and produces R_A = {x in A : x not in x}. This is permitted. The same reasoning establishes R_A is not a member of A; it does not yield a universal contradictory set. The domain restriction is doing essential work. Russell's own discussion of classes is available in his accessible exposition. Introduction to Mathematical Philosophy, chapter XVII.
The contradiction also applies to Frege's system through the interaction of its extension principle with its logical resources. “Frege's entire life's work was destroyed” is inaccurate: much of his logical apparatus remained influential, and the inconsistent system can be analyzed to isolate usable fragments.
Types are one response, not a ban on recursion
In a simple hierarchy, members of a class have a lower type than that class. Self-membership is then ill formed. Principia used a more elaborate ramified theory, distinguishing types from orders of quantification, and depended on additional assumptions such as reducibility. A diagram of nested sets is an introductory model, not the whole historical system. Technical account.
Modern programming types use several different principles and permit many recursive definitions. A linked list containing a reference to another list, a recursive function or a cyclic graph is not automatically a Russell paradox. One must ask what the language allows, how evaluation works, and whether its proof interpretation requires termination. Checking that a value has a declared type alone does not prove every program correct.
Worked mechanism: what does “the administrator” assert?
This is an original finite-model example using Russell's analysis in modern notation. Let A(x) mean “x is an administrator” and S(x) mean “x has signed the release.” Interpret “The administrator has signed” as:
D = exists x [A(x) and S(x) and
for every y (A(y) implies y = x)]
The expression imposes existence, uniqueness and the signing property. It is stronger than saying that some administrator signed, and it does not select an arbitrary administrator when several exist. The analysis of descriptions is developed in chapter XVI of Russell's book. Primary exposition.
Evaluate four cases:
| Administrators | Signatures | D |
|---|---|---|
| None | Any pattern | False: no witness exists |
| Ada only | Ada signed | True |
| Ada only | Ada did not sign | False: signing fails |
| Ada and Ben | Both signed | False: uniqueness fails |
Now distinguish two negations. “It is not the case that the administrator has signed” is not-D. “There is exactly one administrator, and that person has not signed” is:
N = exists x [A(x) and not S(x) and
for every y (A(y) implies y = x)]
If there are no administrators, not-D is true while N is false. If there are two administrators who both signed, not-D is again true while N is false. If Ada is the sole administrator and has not signed, both not-D and N are true. Moving negation changes the truth conditions because it changes whether existence and uniqueness are asserted.
For a release tool, the policy must state what to do when the administrator set is empty or nonunique. An implementation that fetches the first matching row silently chooses different semantics from D. This is a transfer exercise in specification; Russell did not propose this software system.
A further qualification matters: Russell's analysis is a philosophical account of descriptions, not the only possible theory of ordinary-language meaning. A specification can deliberately choose its semantics, but an empirical claim about how all speakers understand a sentence needs additional argument.
What the large formal project established
Principia demonstrated extensive formal development while exposing difficult foundational choices. Its familiar 1 + 1 = 2 result is theorem 110.643 in Volume II. The often-cited Volume I passage is a preliminary result, not the final arithmetic theorem. Page counts vary with edition and are a poor substitute for identifying the actual proposition. Contents and theorem analysis.
Gödel later proved limits for consistent, effectively axiomatized theories with sufficient arithmetic. Unprovability is relative to a specified theory. The results neither make all mathematics unreliable nor settle every philosophical version of logicism. Conditions and implications.
Exercises
- A system has two administrators, Ada and Ben. Only Ada signed. Evaluate D, not-D, N, and “at least one administrator signed.” Explain why these answers differ.
- Define R_A = {x in A : x not in x}. Prove R_A is not a member of A, without assuming that no set can be a member of itself. Identify the assumption that would recreate the contradiction.
- A tutorial states: “A typed program cannot refer to itself; therefore type checking prevents infinite recursion.” Assess both steps. Propose a more precise specification for a function that repeatedly follows links until it reaches an end marker.
Compare your reasoning with the worked solutions
- D is false because uniqueness fails even though Ada signed. Therefore not-D is true. N is false because it also requires exactly one administrator; Ben's failure to sign does not repair uniqueness. The existential statement is true, with Ada as its witness. A release policy using the existential statement accepts a state rejected by D. This is an observable behavior difference, not merely different wording.
- Assume for contradiction that R_A belongs to A. Its definition then yields R_A belongs to R_A exactly when R_A does not belong to R_A, which is impossible. Therefore R_A is not in A. The construction itself remains legitimate: it has simply produced a subset of A that is not an element of A. Assuming a universal set A containing every set would force R_A into A and recreate the contradiction. Confusing subset with member would obscure this distinction.
- Many typed languages admit recursive functions and self-referential data. Thus the first claim fails, and type checking by itself gives no general termination guarantee. A suitable contract can require a finite acyclic chain, valid links and a reachable end marker. A termination argument assigns each node the number of remaining links and shows that every step decreases this nonnegative measure. Alternatively the implementation can detect cycles and report them. Either approach states an actual operational guarantee rather than appealing vaguely to types.
Sources and further study
- Russell, Introduction to Mathematical Philosophy, 1919; linked second edition, 1920, especially chapters XIII, XVI and XVII.
- Stanford Encyclopedia of Philosophy, Bertrand Russell and Principia Mathematica.
- Stanford Encyclopedia of Philosophy, Gödel's incompleteness theorems.