7

How do you prove $\neg\neg(\neg\neg P \rightarrow P)$ in intuitionistic logic?

I know this statement to be intuitionistically provable because of Glivenko's theorem. However, I wish to prove it intuitionistically.

The relevant axioms I happen to be using are: (1) $\neg P = P\rightarrow\bot$ and (2) $\bot \rightarrow P$.

Hans Brende
  • 514
  • 2
  • 16

2 Answers2

10

The first thing to notice is that $$(\lnot(\lnot\lnot P \to P)) \to \lnot P\qquad(\star)$$ Indeed, suppose $\lnot(\lnot\lnot P \to P)$ and $P$ ; we want to show $\bot$.

By modus ponens, it suffices to prove $\lnot\lnot P \to P$, but as you supposed $P$, the implication is clearly true.

Now, for the main result, suppose $\lnot(\lnot\lnot P \to P)$ ; you want to show $\bot$. By modus ponens, it suffices to show $\lnot\lnot P \to P$. Suppose now $\lnot\lnot P$. By $(\star)$, you also have $\lnot P$, and you know that $\lnot\lnot P \land \lnot P \to \bot$. Thus you have $\bot$, thus $P$, and the result is proved.

Edit : This proof is, on some points, similar to the proof of $\lnot\lnot(P\lor\lnot P)$, delightly explained by Phil Wadler in section 4 of http://homepages.inf.ed.ac.uk/wadler/papers/dual/dual.pdf

Kevin Quirin
  • 1,435
0

A formal natural deduction proof (equivalent to Kevin Quirin's) looks like this: (I've treated $\lnot a$ and $a\to\bot$ as interchangeable.)

\begin{array}{lll} 1& \text{Assume $(\lnot\lnot p\to p)\to\bot$}\\ 2a& \quad\text{Assume $p$}\\ 2b& \quad \lnot\lnot p\to p & \text{$2a$, $K$} \\ 2c& \quad \bot & \text{$1, 2b$, mp} \\ 3& \lnot p & \text{$2a$–$2c$, $\lnot$-introduction} \\ 4a& \quad\text{Assume $\lnot p\to \bot$}\\ 4b& \quad \bot & \text{$3, 4a$, mp} \\ 4c& \quad p & \text{$\bot$-elimination} \\ 5& (\lnot p\to \bot)\to p & \text{$4a$–$4c$} \\ 5'& \lnot\lnot p\to p & \text{(definition)} \\ 6& \bot & \text{$1, 5'$, mp} \\ \hline 7& ((\lnot\lnot p\to p)\to\bot)\to\bot & \text{$1$–$6$} \\ 7'& \lnot\lnot(\lnot\lnot p\to p)& \text{(definition)} \\ \end{array}

A little explanation of step $2b$ might be needed here because I used a not-quite-elementary deduction rule I've labeled '$K$'. The principle is just that if we have already deduced $a$ then we can deduce $b\to a$ for any $b$, simply by

\begin{array}{lll} &\vdots \\ 1& a & \text{previous deduction} \\ 2a& \quad\text{Assume b} \\ 2b& \quad a & \text{$1$} \\ 3 & b\to a & \text {$2a$–$2b$} \\ \end{array}

This is the deduction that Kevin Quirin described as “clearly true”. In $\lambda$ calculus it corresponds to taking $a$ and constructing the constant function $K a = \lambda b. a$.

The $\lambda$-calculus term corresponding to the proof is

$$ λf. f(λq. q(λp. f(λq. p))))$$

where $p$ has type $p$, $q$ has type $\lnot\lnot p$, and $f$ has type $(q\to p)\to\bot$. The innermost $\lambda q.p$ corresponds to the $K$ step.

MJD
  • 67,568
  • 43
  • 308
  • 617