The system L0 is defined as follows:
Axioms: A1 (α → (β → α))
A2 2. (α → (β → γ) → ((α → β) → (α → γ))
A3 ((¬β → ¬α) → ((¬β → α) → β))
In one of my problem sheets, I am told that I am allowed to use the following theorem: if
⊢ (α → α)
⊢ (α → α) → (α → α)
My attempt to solve/prove the second one ⊢ (α → α) → (α → α) choose 2 axioms which match.
α →α
β→α
γ→α
(α → (α → α) → ((α → α) → (α → α))
I'm struggling to see an obvious way of proving the theorem.
Is it provable? And if so, can you point me in the right direction?
Thanks a lot!
Here is a proof of $\alpha \to \alpha$:
\begin{array}{lll} 1 & (\alpha \to ((\alpha \to \alpha) \to \alpha) \to ((\alpha \to (\alpha \to \alpha)) \to (\alpha \to \alpha)) &A2\\ 2 & \alpha \to ((\alpha \to \alpha) \to \alpha & A1\\ 3 & (\alpha \to (\alpha \to \alpha)) \to (\alpha \to \alpha)& MP \ 1,2\\ 4 & \alpha \to (\alpha \to \alpha) & A1\\ 5 & \alpha \to \alpha & MP \ 3,4\\ \end{array}
To get a proof of $(\alpha \to \alpha) \to (\alpha \to \alpha)$, simply substitute $\alpha \to \alpha$ for $\alpha$ in the previous proof:
\begin{array}{lll} 1 & ((\alpha \to \alpha) \to (((\alpha \to \alpha) \to (\alpha \to \alpha)) \to (\alpha \to \alpha)) \to (((\alpha \to \alpha) \to ((\alpha \to \alpha) \to (\alpha \to \alpha))) \to ((\alpha \to \alpha) \to (\alpha \to \alpha))) &A2\\ 2 & (\alpha \to \alpha) \to (((\alpha \to \alpha) \to (\alpha \to \alpha)) \to (\alpha \to \alpha) & A1\\ 3 & ((\alpha \to \alpha) \to ((\alpha \to \alpha) \to (\alpha \to \alpha))) \to ((\alpha \to \alpha) \to (\alpha \to \alpha))& MP \ 1,2\\ 4 & (\alpha \to \alpha) \to ((\alpha \to \alpha) \to (\alpha \to \alpha)) & A1\\ 5 & (\alpha \to \alpha) \to (\alpha \to \alpha) & MP \ 3,4\\ \end{array}
Notice how you can always do this substitution trick: once you have proving something using some statements variables, you can always substitute any complex statement for those variables. That is, once you have proven that $\vdash \alpha \to \alpha$, then you can immediately conclude that $\vdash (\alpha \to \alpha) \to (\alpha \to \alpha)$ without having to write out an actual derivation.