2

The following lemma states that if we can prove negation of a Well Formed Formula (WFF) $\alpha$ by assuming the formula itself, then we can do it without such an assumption.

Lemma. Let $\Sigma$ be a set of WFFs and $\alpha$ a WFF. If $\Sigma \cup \{\alpha\} \vdash (\neg \alpha)$, then $\Sigma \vdash (\neg \alpha)$.

Proof. Suppose that we have shown that $\vdash ((\alpha \to (\neg \alpha)) \to (\neg \alpha))$. By the deduction theorem, $\Sigma \cup \{\alpha\} \vdash (\neg \alpha)$ implies that $\Sigma \vdash (\alpha \to (\neg \alpha))$. By monotonicity, we also have $\Sigma \vdash ((\alpha \to (\neg \alpha)) \to (\neg \alpha))$. Now, applying Modus Ponens (MP), we can conclude that $\Sigma \vdash (\neg \alpha)$.

As you can see, the proof relies on showing that $\vdash ((\alpha \to (\neg \alpha)) \to (\neg \alpha))$. Here is a list of tools that I can use for proving this.

Hilbert Axioms. Any WFF of the the following forms is considered as an axiom.

  • $(\alpha \to (\beta \to \alpha))$.
  • $\big((\alpha \to (\beta \to \gamma)) \to ((\alpha \to \beta) \to (\alpha \to \gamma))\big)$.
  • $\big(((\neg \beta) \to (\neg \alpha)) \to (\alpha \to \beta)\big)$.

Also, by using Hilbert axioms, I have proved the followings.

  • $\vdash (\alpha \to \alpha)$.
  • $\vdash \big((\neg(\neg \alpha)) \to \alpha\big)$.
  • $\vdash \big(\alpha \to (\neg(\neg \alpha))\big)$.

One last thing that I can use is transitivity, which I proved by using the deduction theorem.

  • $\{\alpha \to \beta, \, \beta \to \gamma\} \vdash (\alpha \to \gamma)$.

Question. How can I show that $\vdash ((\alpha \to (\neg \alpha)) \to (\neg \alpha))$? It would be nice to let me know your line of thought for tackling this problem.

  • Hint: if we define $\neg \alpha$ as $\alpha \to \bot$, then the proof is just contraction: $\alpha, \alpha \vdash \bot$ implies $\alpha \vdash \bot$. (In $\lambda$-calculus: $\lambda f a. f a a$) – Naïm Camille Favier Jul 12 '24 at 11:24
  • @NaïmFavier: What is $\bot$? – Hosein Rahnama Jul 12 '24 at 11:26
  • Falsehood. The negation of $\top$. – Naïm Camille Favier Jul 12 '24 at 11:30
  • @NaïmFavier: I am not familiar with these symbols and I do not have them in my formal language. Can you give a hint without these? – Hosein Rahnama Jul 12 '24 at 11:35
  • So what is your introduction rule for $\neg$? – Naïm Camille Favier Jul 12 '24 at 11:37
  • 1
    @NaïmFavier: As far as we are in the syntax realm, no meaning is attached to these symbols. The notion of a formal proof is purely syntactic. So $\neg$ is just a symbol and we are just playing a game with symbols. – Hosein Rahnama Jul 12 '24 at 11:39
  • I mean, symbols usually have an intended meaning. If your system really only consists of those three axioms and modus ponens, then it's an easy induction to show that any formula ending in $\neg a$ is unprovable (if you don't already have a negation in the assumptions). You need at least a rule that tells you how to prove something of the form $\neg a$. – Naïm Camille Favier Jul 12 '24 at 11:44
  • You say you proved $a \to \neg\neg a$, could you share that proof? Surely you have used an introduction rule for $\neg$ in there without noticing. – Naïm Camille Favier Jul 12 '24 at 11:45
  • @NaïmFavier: As an example, see this proof in wikipedia. – Hosein Rahnama Jul 12 '24 at 11:47
  • Okay, looks like I was wrong! What a strange way to do logic... – Naïm Camille Favier Jul 12 '24 at 11:53
  • Anyway, my hint still applies: define $\top$ to be some tautology like $q \to q$, define $\bot = \neg \top$, then prove that $(a \to \bot) \to \neg a$ and $\neg a \to a \to \bot$, and use this to mimic the $\lambda$-calculus proof (your first two axioms are the $K$ and $S$ combinators so you can apply abstraction elimination). – Naïm Camille Favier Jul 12 '24 at 12:01
  • Why are Hilbert's Axioms still used? It is much easier to prove $(A\implies \neg A)\implies \neg A$ with a straightforward, 6-line proof using a form of natural deduction. – Dan Christensen Jul 13 '24 at 04:10
  • @DanChristensen: Probably, this way, one will appreciate natural deduction more. I would be immensely grateful, if you add an answer by natural deduction. – Hosein Rahnama Jul 13 '24 at 08:30
  • I've hinted at such a thing in my first comment. If you use $\lambda$-calculus to write natural deduction proofs, the proof is not 6 lines, it is 6 letters. – Naïm Camille Favier Jul 13 '24 at 09:05
  • @NaïmFavier: I did not get the $\lambda$-calculus part as don't know anything about it. Could you write a detailed answer based on this? – Hosein Rahnama Jul 13 '24 at 09:37
  • @NaïmFavier Further to your request for proof that $A \implies \neg\neg A$, here is a much simpler proof using natural deduction: 1. $A$ (Premise) 2. $\neg A$ (Premise) 3. $A \land \neg A~~$ (Join, 1, 2) 4. $\neg \neg A $ (Conclusion, 2) 5. $A \implies \neg \neg A$(Conclusion, 1). – Dan Christensen Jul 14 '24 at 17:46
  • I didn't ask for a proof in natural deduction... I can prove it in a single character if you'd like: & (understood as the usual Haskell operator). – Naïm Camille Favier Jul 14 '24 at 18:05
  • @NaïmFavier A proof that is a single character, "&"??? Hmmm... Anyway, 2 days ago, you wrote: "You say you proved a→¬¬a, could you share that proof?" Well, I shared my proof. Not even a thanks? – Dan Christensen Jul 14 '24 at 19:04
  • But I wasn't talking to you..? – Naïm Camille Favier Jul 14 '24 at 19:15

3 Answers3

2

IMO the "trick" in similar cases of long derivations in Hilbert-style, is to use some intermediate result as Lemma.

Having Ax.3 and the Doble Negation laws, you can prove all Contraposition laws (various combinations).

In addition, it is useful to have an intermediate result: call it

Lemma 1: $(A \to \lnot A) \to (B \to \lnot A)$.

Poof:

  1. $(A \to (\lnot A \to \lnot B))$ --- easily proved using Ax.1, Contraposition and Transitivity

  2. $(A \to (\lnot A \to \lnot B)) \to ((A \to \lnot A) \to (A \to \lnot B))$ --- Ax.2

  3. $((A \to \lnot A) \to (A \to \lnot B))$ --- from 1) and 2) by MP

  4. $(A \to \lnot B) \to (B \to \lnot A)$ --- Contraposition

  5. $(A \to \lnot A) \to (B \to \lnot A)$ --- from 3) and 4) by Transitivity.

Now for the main result:

  1. $(A \to \lnot A) \to ((A \to \lnot A) \to \lnot A)$ --- Lemma 1

  2. $[(A \to \lnot A) \to ((A \to \lnot A) \to \lnot A)] \to [((A \to \lnot A) \to (A \to \lnot A)) \to ((A \to \lnot A) \to \lnot A)]$ --- Ax.2

  3. $[((A \to \lnot A) \to (A \to \lnot A)) \to ((A \to \lnot A) \to \lnot A) ]$ --- from 1) and 2) by MP

  4. $((A \to \lnot A) \to (A \to \lnot A))$ --- from $(\alpha \to \alpha)$

  1. $(A \to \lnot A) \to \lnot A$ --- from 3) and 4) by MP.
0

Expanding on my hint in the comments: define $\top = q \to r \to q$ (where $q, r$ are fresh variables), so that $\top$ is provable by axiom 1. Define $\bot = \neg \top$. Prove $\neg\bot$ using $\top$ and $a \to\neg\neg a$. Prove $\bot \to x$ using axioms 3, 1, MP and $\neg\bot$. Prove $\neg a \to a \to \bot$ using axioms 3 and 1. Prove $(a \to b) \to \neg b \to \neg a$ using axiom 3 and $a \leftrightarrow \neg\neg a$. Prove $(a \to \bot) \to \neg a$ using the previous theorem and $\neg\bot$. Prove $(a \to a \to \bot) \to a \to \bot$ using axioms 1 and 2. Prove the claim using the previous results.

There is most likely a more direct way but I can't be bothered to find it. If you want an elegant proof, stop using Hilbert-style systems.

-1

As you requested...

Screenshot:

enter image description here

Note: Consistent with other infix binary operators in the system used here, '=>' is left-associative.

Text version:

1   A => ~A
    Premise
2   A
    Premise

3   ~A
    Detach, 1, 2

4   A & ~A
    Join, 2, 3

5 ~A Conclusion, 2

6 A => ~A => ~A Conclusion, 1

  • That should be (A => ~A) => ~A. Implication is right-associative by convention. – Naïm Camille Favier Jul 13 '24 at 15:50
  • I forgot to mention that '=>' is left associative in the system I use, as with other binary logical connectives. It seemed more... natural. – Dan Christensen Jul 13 '24 at 15:56
  • One appealing reason for having $\to$ right-associative is currying: $A \times B \to C \simeq A \to B \to C$. So you can write down curried multiple-argument functions (or multiple-premise theorems) without drowning in parentheses. On the other hand it is rare to encounter deeply left-nested arrows, except when messing with continuation-passing stuff. – Naïm Camille Favier Jul 13 '24 at 16:02
  • @NaïmFavier It seemed an unnecessary exception to the rule used for other binary logical connectives. – Dan Christensen Jul 13 '24 at 16:22
  • What other connectives? $\land$ and $\lor$ are associative, so it doesn't matter which way you associate them... – Naïm Camille Favier Jul 13 '24 at 17:06
  • @NaïmFavier Other binary operators <=>, +, -, *, /, ^ are also left associative. There was no good reason to make an exception for '=>'. Only unary operators are right associative in this system. – Dan Christensen Jul 13 '24 at 17:51
  • ... Also, the associativity of $\land$ and $\lor$ is not built-in. It must be proven. You would have to prove, for example, that $(A\land B)\land C ~\equiv ~ A\land (B\land C)$. – Dan Christensen Jul 13 '24 at 19:19
  • Duh. The point is that the arbitrary choice of left/right associativity you made for $\land$ and $\lor$ is irrelevant to the mathematics and certainly should not inform your choice for $\to$, because it is not associative (and there is already a well-established convention). And "unary operators are right associative" doesn't make sense; you probably just mean that they're prefix. – Naïm Camille Favier Jul 13 '24 at 20:00
  • Actually, the fact that $-$, $/$ and $^$ are left-associative is another argument for making $\to$ right-associative, since $A \to B$ can be thought of as $B - A$ (compare evaluation $A × (A \to B) \to B$ and $A + (B - A) = B$ and $A \times (B / A) = B$). (and $B^A$ is another notation for $A \to B$ in the context of category theory) – Naïm Camille Favier Jul 13 '24 at 20:03
  • (The unifying theme here is the concept of the counit of an adjunction.) – Naïm Camille Favier Jul 13 '24 at 20:09
  • @NaïmFavier Also, since we read from left to right, it is more user-friendly or "natural" to have any binary operators being consistently left-associative in a formal syntax. – Dan Christensen Jul 13 '24 at 20:35
  • No it's not. Stop making things up. – Naïm Camille Favier Jul 13 '24 at 21:02
  • Some may not agree, but IMHO the best designs are consistent and user-friendly. – Dan Christensen Jul 14 '24 at 00:32