Back to Paradoxes

Curry's Paradox

The Self-Reference That Proves Everything

The Paradox

What if a single sentence could prove that literally anything is true? That unicorns exist, that 1 = 2, that you can fly - all with valid logical steps?

Curry's Paradox does exactly this. Unlike the Liar Paradox ("This sentence is false"), Curry's Paradox doesn't even need negation. It exploits pure self-reference combined with the logical principle of modus ponens to derive any statement whatsoever.

Consider this self-referential conditional:

"If this sentence is true, then Germany borders China."

This innocent-looking sentence can prove that Germany borders China - using only accepted rules of logic!

Prove Anything

Choose any statement, no matter how absurd, and Curry's construction will "prove" it true.

Select a statement to prove:

Or enter your own:


The "Proof"

1
Construct the Curry sentence C:
"If C is true, then S."
2
Assume C is true:
If C, then: "If C, then S" (by definition of C)

Since C says "If C then S", and we're assuming C is true, then "If C then S" must be true.

3
Apply Modus Ponens inside the assumption:
C is true + "If C then S" is true → S is true

We have C (by assumption) and "If C then S" (from step 2), so by modus ponens, S follows.

4
Conditional Proof (discharge assumption):
We've shown: If C, then S

From assuming C, we derived S. So we've proven "If C then S" without any assumption.

5
But "If C then S" IS exactly what C says!
Therefore: C is true

C claims "If C then S". We just proved "If C then S". So C is true!

6
Final Modus Ponens:
C is true + C says "If C then S" → S is true!

Q.E.D.

...has been "proven" using only standard logical rules!

The Logic Loop

Here's the circular reasoning visualized:

C = "If C, then S"
Assume C is true
Then "If C, then S" is true (C's content)
C + (If C then S) → S (Modus Ponens)
So from C we derived S
We've proven "If C then S" = We've proven C!
C true + (If C then S) → S is true!

Why It's Different from the Liar Paradox

Liar Paradox Curry's Paradox
"This sentence is false" "If this sentence is true, then S"
Requires negation No negation needed
Creates contradiction (true ↔ false) Creates "proof" of arbitrary statements
Many solutions focus on restricting negation Affects ANY logic with self-reference + conditionals
Results in paradox Results in trivialism (everything is provable)

The Explosion Principle

If Curry's reasoning is valid, then ANY statement is provable. This is called trivialism - when everything is true, the concept of truth becomes meaningless. Classical logic typically handles this via the "principle of explosion" (ex falso quodlibet), but Curry shows the problem runs deeper than just contradictions.

Historical Development

1942

Haskell Curry publishes the paradox while working on combinatory logic. He shows that self-referential conditionals break naive set theory and logic.

1950s

Connection to the contraction rule identified: the ability to use an assumption multiple times in a proof is key to the paradox.

1970s

Relevance logic and linear logic develop, restricting contraction to block Curry-style reasoning.

1992

Graham Priest develops paraconsistent logic approaches that tolerate contradictions without explosion.

2000s-Present

Curry's paradox remains central to debates in philosophical logic, type theory, and computer science (where unrestricted recursion can cause similar problems).

The Contraction Culprit

What logical rule enables this paradox? The contraction rule:

A → (A → B)
↓ Contraction
A → B

This rule lets us "contract" two uses of A into one. In Curry's proof:

Without contraction, the proof fails - we can't reuse the assumption of C.

Proposed Solutions

Reject Self-Reference

Simply disallow sentences that refer to their own truth value. Effective but restrictive - many useful constructions involve self-reference.

Restrict Contraction

Linear logic and affine logic limit how many times premises can be used. Each assumption gets used exactly once (linear) or at most once (affine).

Paraconsistent Logic

Accept that some contradictions exist but block the "explosion" that lets contradictions prove everything. Pioneered by Graham Priest and others.

Type Theory

Use typed languages where sentences can't directly refer to their own truth. Russell's theory of types was an early version; modern type theory continues this approach.

Revision Theory

Truth is defined through an infinite revision process. The Curry sentence never stabilizes to a definite truth value.

Reject Classical Conditionals

The material conditional "If A then B" might not capture what we mean by "if...then". Stronger conditional logics avoid Curry.

Connection to Computing

Curry's Paradox has a direct analog in computer science. Consider this pseudo-code:

function curry(x) {
    if (curry(x)) {
        return arbitraryCode();  // Anything goes!
    }
    return true;
}

This is why programming languages need:

The Y combinator in lambda calculus (also discovered by Curry!) creates similar self-referential structures that enable both powerful recursion and logical paradoxes.

Why It Matters

Curry's Paradox reveals something profound about logic itself:

"If this sentence is true, then you understand Curry's Paradox perfectly."

— A self-fulfilling Curry sentence