# How to prove that ((~A->~(A->B)))->A is a theorem in Sentential Derivation

I've been banging my head against this question (HW) for the last few hours, and I'm not able to answer it.

This is based upon the Logic Book 6th Edition

I've been using negation elimination, in order to prove it, and I'm stuck trying to prove (A->B) after I proved ~(A->B), but I can't.

If you are trying to prove a conditional, a good strategy is to assume the antecedent, prove the consequent, then discharge the assumption by the rule of conditional proof. So, you want to assume ¬A → ¬(A → B) then prove A. Since ¬A → ¬(A → B) itself is a conditional, you can then assume ¬A and prove ¬(A → B).

Which rules you are allowed to use depends on the text you are following, but the proof might look something like this:

``````1. ¬A → ¬(A → B)            Assumption
2. ¬A                       Assumption
3. ¬(A → B)                 1,2 MP
4. A ∧ ¬B                   3, Impl
5. A                        4, ∧-E
6. A ∧ ¬A                   2,5 ∧-I
7. ⊥                        6, ⊥-I
8. ¬A → ⊥                   7,2 CP, discharging assumption 2
9. ¬¬A                      8, RAC
10. A                       9, DNE
11. (¬A → ¬(A → B)) → A     1,10 CP, discharging assumption 1
``````