Curry's paradox is a
paradox
A paradox is a logically self-contradictory statement or a statement that runs contrary to one's expectation. It is a statement that, despite apparently valid reasoning from true premises, leads to a seemingly self-contradictory or a logically u ...
in which an arbitrary claim ''F'' is proved from the mere existence of a sentence ''C'' that says of itself "If ''C'', then ''F''", requiring only a few apparently innocuous logical deduction rules. Since ''F'' is arbitrary, any logic having these rules allows one to prove everything. The paradox may be expressed in natural language and in various
logic
Logic is the study of correct reasoning. It includes both formal and informal logic. Formal logic is the science of deductively valid inferences or of logical truths. It is a formal science investigating how conclusions follow from premises ...
s, including certain forms of
set theory
Set theory is the branch of mathematical logic that studies sets, which can be informally described as collections of objects. Although objects of any kind can be collected into a set, set theory, as a branch of mathematics, is mostly conce ...
,
lambda calculus
Lambda calculus (also written as ''λ''-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation ...
, and
combinatory logic
Combinatory logic is a notation to eliminate the need for quantified variables in mathematical logic. It was introduced by Moses Schönfinkel and Haskell Curry, and has more recently been used in computer science as a theoretical model of comput ...
.
The paradox is named after the logician
Haskell Curry
Haskell Brooks Curry (; September 12, 1900 – September 1, 1982) was an American mathematician and logician. Curry is best known for his work in combinatory logic. While the initial concept of combinatory logic was based on a single paper by ...
. It has also been called Löb's paradox after
Martin Hugo Löb, due to its relationship to
Löb's theorem
In mathematical logic, Löb's theorem states that in Peano arithmetic (PA) (or any formal system including PA), for any formula ''P'', if it is provable in PA that "if ''P'' is provable in PA then ''P'' is true", then ''P'' is provable in PA. If Pr ...
.
In natural language
Claims of the form "if A, then B" are called
conditional claims. Curry's paradox uses a particular kind of self-referential conditional sentence, as demonstrated in this example:
Even though
Germany
Germany,, officially the Federal Republic of Germany, is a country in Central Europe. It is the second most populous country in Europe after Russia, and the most populous member state of the European Union. Germany is situated betwe ...
does not border
China
China, officially the People's Republic of China (PRC), is a country in East Asia. It is the world's most populous country, with a population exceeding 1.4 billion, slightly ahead of India. China spans the equivalent of five time zones and ...
, the example sentence certainly is a natural-language sentence, and so the truth of that sentence can be analyzed. The paradox follows from this analysis. The analysis consists of two steps.
# First, common natural-language proof techniques can be used to prove that the example sentence is true.
# Second, the truth of the example sentence can be used to prove that Germany borders China. Because Germany does not border China, this suggests that there has been an error in one of the proofs.
The claim "Germany borders China" could be replaced by any other claim, and the sentence would still be provable. Thus every sentence appears to be provable. Because the proof uses only well-accepted methods of deduction, and because none of these methods appears to be incorrect, this situation is paradoxical.
Informal proof
The standard method for proving
conditional sentence
Conditional sentences are natural language sentences that express that one thing is contingent on something else, e.g. "If it rains, the picnic will be cancelled." They are so called because the impact of the main clause of the sentence is ''cond ...
s (sentences of the form "if A, then B") is called a "
conditional proof
A conditional proof is a proof that takes the form of asserting a conditional, and proving that the antecedent of the conditional necessarily leads to the consequent.
Overview
The assumed antecedent of a conditional proof is called the conditio ...
". In this method, in order to prove "if A, then B", first A is assumed and then with that assumption B is shown to be true.
To produce Curry's paradox, as described in the two steps above, apply this method to the sentence "if this sentence is true, then Germany borders China". Here A, "this sentence is true", refers to the overall sentence, while B is "Germany borders China". So, assuming A is the same as assuming "If A, then B". Therefore, in assuming A, we have assumed both A and "If A, then B". Therefore, B is true, by
modus ponens
In propositional logic, ''modus ponens'' (; MP), also known as ''modus ponendo ponens'' (Latin for "method of putting by placing") or implication elimination or affirming the antecedent, is a deductive argument form and rule of inference. ...
, and we have proven "If this sentence is true, then 'Germany borders China' is true." in the usual way, by assuming the hypothesis and deriving the conclusion.
Now, because we have proved "If this sentence is true, then 'Germany borders China' is true", then
we can again apply modus ponens, because we know that the claim "this sentence is true" is correct. In this way, we can deduce that Germany borders China.
Formal proof
Sentential logic
The example in the previous section used unformalized, natural-language reasoning. Curry's paradox also occurs in some varieties of
formal logic
Logic is the study of correct reasoning. It includes both formal and informal logic. Formal logic is the science of deductively valid inferences or of logical truths. It is a formal science investigating how conclusions follow from premises ...
. In this context, it shows that if we assume there is a formal sentence (X → Y), where X itself is equivalent to (X → Y), then we can prove ''Y'' with a formal proof. One example of such a formal proof is as follows. For an explanation of the logic notation used in this section, refer to the
list of logic symbols
In logic, a set of symbols is commonly used to express logical representation. The following table lists many common symbols, together with their name, how they should be read out loud, and the related field of mathematics. Additionally, the subs ...
.
# X := (X → Y)
# X → X
# X → (X → Y)
# X → Y
# X
# Y
An alternative proof is via ''
Peirce's law
In logic, Peirce's law is named after the philosopher and logician Charles Sanders Peirce. It was taken as an axiom in his first axiomatisation of propositional logic. It can be thought of as the law of excluded middle written in a form that i ...
''. If X = X → Y then (X → Y) → X. This together with Peirce's law ((X → Y) → X) → X and ''
modus ponens
In propositional logic, ''modus ponens'' (; MP), also known as ''modus ponendo ponens'' (Latin for "method of putting by placing") or implication elimination or affirming the antecedent, is a deductive argument form and rule of inference. ...
'' implies X and subsequently Y (as in above proof).
Therefore, if Y is an unprovable statement in a formal system, there is no statement X in that system such that X is equivalent to the implication (X → Y). By contrast, the previous section shows that in natural (unformalized) language, for every natural language statement Y there is a natural language statement Z such that Z is equivalent to (Z → Y) in natural language. Namely, Z is "If this sentence is true then Y".
In specific cases where the classification of Y is already known, few steps are needed to reveal the contradiction. For example, when Y is "Germany borders China," it is known that Y is false.
# X = (X → Y)
# X = (X → false)
# X = (¬X ∨ false)
# X = ¬X
Naive set theory
Even if the underlying mathematical logic does not admit any self-referential sentences, certain forms of naive set theory are still vulnerable to Curry's paradox. In set theories that allow
unrestricted comprehension
In many popular versions of axiomatic set theory, the axiom schema of specification, also known as the axiom schema of separation, subset axiom scheme or axiom schema of restricted comprehension is an axiom schema. Essentially, it says that any ...
, we can nevertheless prove any logical statement ''Y'' by examining the set
Assuming that
takes precedence over both
and
, the proof proceeds as follows:
#
#
#
#
#
#
#
#
#
Step 4 is the only step invalid in a consistent set theory. In
Zermelo–Fraenkel set theory
In set theory, Zermelo–Fraenkel set theory, named after mathematicians Ernst Zermelo and Abraham Fraenkel, is an axiomatic system that was proposed in the early twentieth century in order to formulate a theory of sets free of paradoxes such as ...
, an extra hypothesis stating ''X'' is a set would be required, which is not provable in ZF or in its extension ZFC (with the
axiom of choice
In mathematics, the axiom of choice, or AC, is an axiom of set theory equivalent to the statement that ''a Cartesian product of a collection of non-empty sets is non-empty''. Informally put, the axiom of choice says that given any collectio ...
).
Therefore, in a consistent set theory, the set
does not exist for false ''Y''. This can be seen as a variant on
Russell's paradox
In mathematical logic, Russell's paradox (also known as Russell's antinomy) is a set-theoretic paradox discovered by the British philosopher and mathematician Bertrand Russell in 1901. Russell's paradox shows that every set theory that contains a ...
, but is not identical. Some proposals for set theory have attempted to deal with Russell's paradox not by restricting the rule of comprehension, but by restricting the rules of logic so that it tolerates the contradictory nature of the set of all sets that are not members of themselves. The existence of proofs like the one above shows that such a task is not so simple, because at least one of the deduction rules used in the proof above must be omitted or restricted.
Lambda calculus
Curry's paradox may be expressed in untyped
lambda calculus
Lambda calculus (also written as ''λ''-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation ...
, enriched by restricted
minimal logic
Minimal logic, or minimal calculus, is a symbolic logic system originally developed by Ingebrigt Johansson. It is an intuitionistic and paraconsistent logic, that rejects both the law of the excluded middle as well as the principle of explosion ...
.
To cope with the lambda calculus's syntactic restrictions,
shall denote the implication function taking two parameters, that is, the lambda term
shall be equivalent to the usual
infix notation
Infix notation is the notation commonly used in arithmetical and logical formulae and statements. It is characterized by the placement of operators between operands—" infixed operators"—such as the plus sign in .
Usage
Binary relations a ...
.
An arbitrary formula
can be proved by defining a lambda function
, and
, where
denotes Curry's
fixed-point combinator
In mathematics and computer science in general, a '' fixed point'' of a function is a value that is mapped to itself by the function.
In combinatory logic for computer science, a fixed-point combinator (or fixpoint combinator) is a higher-order fu ...
. Then
by definition of
and
, hence the
above sentential logic proof can be duplicated in the calculus:
In
simply typed lambda calculus
The simply typed lambda calculus (\lambda^\to), a form
of type theory, is a typed interpretation of the lambda calculus with only one type constructor (\to) that builds function types. It is the canonical and simplest example of a typed lambda cal ...
, fixed-point combinators cannot be typed and hence are not admitted.
Combinatory logic
Curry's paradox may also be expressed in
combinatory logic
Combinatory logic is a notation to eliminate the need for quantified variables in mathematical logic. It was introduced by Moses Schönfinkel and Haskell Curry, and has more recently been used in computer science as a theoretical model of comput ...
, which has equivalent expressive power to
lambda calculus
Lambda calculus (also written as ''λ''-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation ...
. Any lambda expression may be translated into combinatory logic, so a translation of the implementation of Curry's paradox in lambda calculus would suffice.
The above term
translates to
in combinatory logic, where
hence
Discussion
Curry's paradox can be formulated in any language supporting basic logic operations that also allows a self-recursive function to be constructed as an expression. Two mechanisms that support the construction of the paradox are self-reference (the ability to refer to "this sentence" from within a sentence) and
unrestricted comprehension
In many popular versions of axiomatic set theory, the axiom schema of specification, also known as the axiom schema of separation, subset axiom scheme or axiom schema of restricted comprehension is an axiom schema. Essentially, it says that any ...
in naive set theory. Natural languages nearly always contain many features that could be used to construct the paradox, as do many other languages. Usually the addition of meta programming capabilities to a language will add the features needed. Mathematical logic generally does not allow explicit reference to its own sentences. However the heart of
Gödel's incompleteness theorems
Gödel's incompleteness theorems are two theorems of mathematical logic
Mathematical logic is the study of logic, formal logic within mathematics. Major subareas include model theory, proof theory, set theory, and recursion theory. Research i ...
is the observation that a different form of self-reference can be added; see
Gödel number.
The axiom of unrestricted comprehension adds the ability to construct a recursive definition in set theory. This axiom is not supported by
modern set theory.
The logic rules used in the construction of the proof are the
rule of assumption for conditional proof, the rule of
contraction
Contraction may refer to:
Linguistics
* Contraction (grammar), a shortened word
* Poetic contraction, omission of letters for poetic reasons
* Elision, omission of sounds
** Syncope (phonology), omission of sounds in a word
* Synalepha, merged ...
, and
modus ponens
In propositional logic, ''modus ponens'' (; MP), also known as ''modus ponendo ponens'' (Latin for "method of putting by placing") or implication elimination or affirming the antecedent, is a deductive argument form and rule of inference. ...
. These are included in the most common logical systems, such as first-order logic.
Consequences for some formal logic
In the 1930s, Curry's paradox and the related
Kleene–Rosser paradox
In mathematics, the Kleene–Rosser paradox is a paradox that shows that certain systems of formal logic are inconsistent, in particular the version of Haskell Curry's combinatory logic introduced in 1930, and Alonzo Church's original lambda ca ...
played a major role in showing that formal logic systems based on self-recursive expressions are
inconsistent
In classical deductive logic, a consistent theory is one that does not lead to a logical contradiction. The lack of contradiction can be defined in either semantic or syntactic terms. The semantic definition states that a theory is consistent ...
.
These include some versions of
lambda calculus
Lambda calculus (also written as ''λ''-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation ...
and
combinatory logic
Combinatory logic is a notation to eliminate the need for quantified variables in mathematical logic. It was introduced by Moses Schönfinkel and Haskell Curry, and has more recently been used in computer science as a theoretical model of comput ...
.
Curry began with the Kleene–Rosser paradox and deduced that the core problem could be expressed in this simpler Curry's paradox. His conclusion may be stated as saying that combinatory logic and lambda calculus cannot be made consistent as deductive languages, while still allowing recursion.
In the study of illative (deductive)
combinatory logic
Combinatory logic is a notation to eliminate the need for quantified variables in mathematical logic. It was introduced by Moses Schönfinkel and Haskell Curry, and has more recently been used in computer science as a theoretical model of comput ...
, Curry in 1941 recognized the implication of the paradox as implying that, without restrictions, the following properties of a combinatory logic are incompatible:
# ''Combinatorial completeness''. This means that an abstraction operator is definable (or primitive) in the system, which is a requirement on the expressive power of the system.
# ''Deductive completeness''. This is a requirement on derivability, namely, the principle that in a formal system with material implication and modus ponens, if Y is provable from the hypothesis X, then there is also a proof of X → Y.
Resolution
Note that unlike the
liar paradox
In philosophy and logic, the classical liar paradox or liar's paradox or antinomy of the liar is the statement of a liar that they are lying: for instance, declaring that "I am lying". If the liar is indeed lying, then the liar is telling the truth ...
or Russell's paradox, Curry's paradox does not depend on what
model of negation is used, as it is completely negation-free. Thus
paraconsistent logics
A paraconsistent logic is an attempt at a logical system to deal with contradictions in a discriminating way. Alternatively, paraconsistent logic is the subfield of logic that is concerned with studying and developing "inconsistency-tolerant" syste ...
can still be vulnerable to this paradox, even if they are immune to the liar paradox.
No resolution in lambda calculus
The origin of
Alonzo Church
Alonzo Church (June 14, 1903 – August 11, 1995) was an American mathematician, computer scientist, logician, philosopher, professor and editor who made major contributions to mathematical logic and the foundations of theoretical computer scienc ...
's
lambda calculus
Lambda calculus (also written as ''λ''-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation ...
may have been, "How can you solve an equation, to provide a definition of a function?". This is expressed in this equivalence,
This definition is valid if there is one and only one function
that satisfies the equation
, but invalid otherwise. This is the core of the problem that
Stephen Cole Kleene
Stephen Cole Kleene ( ; January 5, 1909 – January 25, 1994) was an American mathematician. One of the students of Alonzo Church, Kleene, along with Rózsa Péter, Alan Turing, Emil Post, and others, is best known as a founder of the branch of ...
and then
Haskell Curry
Haskell Brooks Curry (; September 12, 1900 – September 1, 1982) was an American mathematician and logician. Curry is best known for his work in combinatory logic. While the initial concept of combinatory logic was based on a single paper by ...
discovered with combinatory logic and Lambda calculus.
The situation may be compared to defining
This definition is fine as long as only positive values are allowed for the square root. In mathematics an
existentially quantified variable may represent multiple values, but only one at a time. Existential quantification is the
disjunction
In logic, disjunction is a logical connective typically notated as \lor and read aloud as "or". For instance, the English language sentence "it is raining or it is snowing" can be represented in logic using the disjunctive formula R \lor S ...
of many instances of an equation. In each equation is one value for the variable.
However, in mathematics, an expression with no
free variables
In mathematics, and in other disciplines involving formal languages, including mathematical logic and computer science, a free variable is a notation (symbol) that specifies places in an expression where substitution may take place and is not ...
must have one and only one value. So
can only represent
. However, there is no convenient way to restrict the lambda abstraction to one value or to assure that there is a value.
Lambda calculus allows recursion by passing the same function that is called as a parameter. This allows situations where
has multiple or no solutions for
.
Lambda calculus may be considered as part of mathematics if only lambda abstractions that represent a single solution to an equation are allowed. Other lambda abstractions are incorrect in mathematics.
Curry's paradox and other paradoxes arise in Lambda calculus because of the inconsistency of Lambda calculus considered as a
deductive system
A formal system is an abstract structure used for inferring theorems from axioms according to a set of rules. These rules, which are used for carrying out the inference of theorems from axioms, are the logical calculus of the formal system.
A form ...
. See also
deductive lambda calculus Deductive lambda calculus considers what happens when lambda terms are regarded as mathematical expressions. One interpretation of the untyped lambda calculus is as a programming language where evaluation proceeds by performing reductions on an ex ...
.
Domain of lambda calculus terms
Lambda calculus is a consistent theory in its
own domain. However, it is not consistent to add the lambda abstraction definition to
general mathematics. Lambda terms describe values from the lambda calculus domain. Each lambda term has a value in that domain.
When translating expressions from mathematics to lambda calculus, the domain of lambda calculus terms is not always
isomorphic
In mathematics, an isomorphism is a structure-preserving mapping between two structures of the same type that can be reversed by an inverse mapping. Two mathematical structures are isomorphic if an isomorphism exists between them. The word is ...
to the domain of the mathematical expressions. This lack of isomorphism is the source of the apparent contradictions.
Resolution in unrestricted languages
There are many language constructs that implicitly invoke an equation that may have none or many solutions. The sound resolution to this problem is to syntactically link these expressions to an existentially quantified variable. The variable represents the multiple values in a way that is meaningful in common human reasoning, but is also valid in mathematics.
For example, a natural language that allows the ''Eval'' function is not mathematically consistent. But each call to ''Eval'' in that natural language may be translated into mathematics in a way that is consistent. The translation of ''Eval(s)'' into mathematics is
So where s = "Eval(s) → y",
If y is false, then the x = x → y is false, but this is a falsehood, not a paradox.
The existence of the variable x was implicit in the natural language. The variable x is created when the natural language is translated into mathematics. This allows us to use natural language, with natural semantics, while maintaining mathematical integrity.
Resolution in formal logic
The argument in formal logic starts with assuming the validity of naming (X → Y) as X. However, this is not a valid starting point. First we must deduce the validity of the naming. The following theorem is easily proved and represents such a naming:
In the above statement the formula A is named as X. Now attempt to
instantiate the formula with (X → Y) for A. However, this is not possible, as the scope of
is inside the scope of
. The order of the quantifiers may be reversed using
Skolemization
In mathematical logic, a formula of first-order logic is in Skolem normal form if it is in prenex normal form with only universal first-order quantifiers.
Every first-order formula may be converted into Skolem normal form while not changing it ...
:
However, now instantiation gives
which is not the starting point for the proof and does not lead to a contradiction. There are no other instantiations for A that lead to the starting point of the paradox.
Resolution in set theory
In
Zermelo–Fraenkel set theory
In set theory, Zermelo–Fraenkel set theory, named after mathematicians Ernst Zermelo and Abraham Fraenkel, is an axiomatic system that was proposed in the early twentieth century in order to formulate a theory of sets free of paradoxes such as ...
(ZFC), the
axiom of unrestricted comprehension is replaced with a group of axioms that allow construction of sets. So Curry's paradox cannot be stated in ZFC. ZFC evolved in response to Russell's paradox.
See also
*
Girard's paradox
In mathematical logic, System U and System U− are pure type systems, i.e. special forms of a typed lambda calculus with an arbitrary number of sorts, axioms and rules (or dependencies between the sorts). They were both proved inconsistent by Je ...
*
List of paradoxes
This list includes well known paradoxes, grouped thematically. The grouping is approximate, as paradoxes may fit into more than one category. This list collects only scenarios that have been called a paradox by at least one source and have their ...
*
Richard's paradox
In logic, Richard's paradox is a semantical antinomy of set theory and natural language first described by the French mathematician Jules Richard in 1905. The paradox is ordinarily used to motivate the importance of distinguishing carefully betwee ...
*
Zermelo–Fraenkel set theory
In set theory, Zermelo–Fraenkel set theory, named after mathematicians Ernst Zermelo and Abraham Fraenkel, is an axiomatic system that was proposed in the early twentieth century in order to formulate a theory of sets free of paradoxes such as ...
*
Fixed-point combinator
In mathematics and computer science in general, a '' fixed point'' of a function is a value that is mapped to itself by the function.
In combinatory logic for computer science, a fixed-point combinator (or fixpoint combinator) is a higher-order fu ...
*
Deductive lambda calculus Deductive lambda calculus considers what happens when lambda terms are regarded as mathematical expressions. One interpretation of the untyped lambda calculus is as a programming language where evaluation proceeds by performing reductions on an ex ...
*
Let expression
In computer science, a "let" expression associates a function definition with a restricted scope.
The "let" expression may also be defined in mathematics, where it associates a Boolean condition with a restricted scope.
The "let" expression may b ...
References
External links
*
*
Penguins Rule the Universe: A Proof that Penguins Rule the Universe a brief and entertaining discussion of Curry's paradox.
{{Paradoxes
Mathematical paradoxes
Mathematical logic
Paradoxes of naive set theory
Self-referential paradoxes