One of the problems in my latest logic homework asks us to prove ⊢B→(A→B) using any of the many rules of natural deduction. I've been at it for several minutes yet can't seem to find a way to solve this... my answer always turns out to be dependent on assumptions I'm unable to eliminate. Is it actually even possible to provide proof when there are no premises? If so, how (in this particular case)?
-
Normally steps for implementing the required $f : A\rightarrow B$ would be to 1) ignore the $a : A$ parameter. 2) return b:B. – tp1 Nov 20 '17 at 15:29
-
See the post: can you derive $C \to A$ from $A$ alone – Mauro ALLEGRANZA Nov 20 '17 at 15:35
3 Answers
Yes, the homework is possible to solve.
A proof without premise is, by the completeness theorem (you might not have gotten to this yet in your class) always possible to compute iff the sentence you want to prove is a tautology. If you put up the truth diagram for $B\to(A\to B)$ you can clearly see that it is a tautology, thus a proof exist. However, at times the proof is quite hard to find.
Note that computing $\vdash B\to (A\to B)$ without premises does not say that we can not, as a part of the proof, use assumptions. For instance; if we want to prove $A\to B$ we assume that $A$ hold and, somehow, prove that B hold.
So in your case where you want to prove $B\to (A\to B)$ you need to assume $B$ as a premise and, somehow, prove $(A\to B)$. If you succeed with this, then you can use $\to-$introduction in order to deduce $B\to(A\to B)$ without any assumptions. Can you do this?

- 4,329
-
okay this is what I did: (1) B, assumption; (2) A, assumption; (3) A → B, 2,1→I; (4) B→(A→B), 1,3→I. Basically I assumed B. Then to prove (A → B) I needed to use the →-Introduction Rule... but to use that I also needed to assume A. Using those two assumptions (A and B) I used →I to prove (A→B). Then, again using →I I was able to prove B→(A→B). HOWEVER the problem with this is that my conclusion (4) is dependent on (1) and (2), which are both assumptions and neither can be eliminated. Even knowing that, I haven't been able to find an alternative solution... – Alex Portella Nov 20 '17 at 16:03
-
@AlexPortella - $\to$-intro allows you to discharge assumptions. If not so, we will never get proof of theorems not depending on assumptions (i.e. tautologies). – Mauro ALLEGRANZA Nov 20 '17 at 16:28
-
@MauroALLEGRANZA so even though all dependencies of (4) are assumptions I can still eliminate them both? like, doesn't (4) have to depend on something? – Alex Portella Nov 20 '17 at 16:32
-
@AlexPortella The nested conditional statement (4) has no dependencies precisely because you have discharged those assumptions needed to argue its innermost consequent. $\vdash X\to Y$ if $X\vdash Y$. $$\begin{split} B& \vdash B \ \hline A, B&\vdash B\ \hline B &\vdash A\to B\ \hline &\vdash B\to(A\to B)\end{split}$$ – Graham Kemp Nov 21 '17 at 02:57
I use a Fitch-style layout, where we indent when we start a subproof. But you can massage what follows into your preferred version of a natural deduction system, whatever it is!
One option is to produce a proof that looks like this:
$\quad\quad|\quad B \\ \quad\quad|\quad \vdots\\ \quad\quad|\quad \neg(A \land \neg B)\\ \quad\quad|\quad \vdots\\ \quad\quad|\quad (A \to B)\\ (B \to (A \to B))$
You should know how to fill in the dots -- as both the proof from $B$ to $\neg(A \land \neg B)$ and the proof from $\neg(A \land \neg B)$ to $(A \to B)$ are very elementary natural deduction exercises. Paste the proofs together and you have a proof from the temporary assumption $B$ to $(A \to B)$. So now discharge the temporary assumption, use conditional proof, and you are done!
But there is a much shorter proof available in standard systems. Simply this:
$\quad\quad|\quad B \quad\quad\quad\quad\ \text{temporary assumption}\\ \quad\quad|\quad \quad | \quad A\quad\quad\text{temporary assumption}\\ \quad\quad|\quad \quad | \quad B \quad\quad\text{by iteration}\\ \quad\quad|\quad (A \to B)\quad\quad\text{by conditional proof}\\ (B \to A \to B))\quad\quad\quad\text{by conditional proof}$
For most standard systems of natural deduction allow iteration, and allow 'vacuous discharge' (meaning that all that is required to establish $(A \to B)$ by conditional proof is a subproof starting $A$ and finishing $B$; so $B$ doesn't actually have to depend on $A$).
Of course the second proof looks a bit tricksy: that's why I started with the first one!

- 54,743
my answer always turns out to be dependent on assumptions I'm unable to eliminate.
Work backwards.
- Examine the destination $$\vdash B\to (A\to B)$$
- You would obtain that by using conditional elimination$$B\vdash A\to B$$
- You would obtain that by using conditional elimination$$A,B\vdash B$$
- So...
- Clearly $B$ is true under the assumption of $A$ and $B$
- Use two conditional introductions to discharge those two assuptions.
- Therefore proving the sequent you require with no undischarged assumptions (premises).
$$\begin{split}A,B&\vdash B\\ \hline B & \vdash A\to B\\ \hline &\vdash B\to(A\to B)\end{split}$$
Write that natural deduction proof in your prefered format.

- 129,094