I'm trying to prove
$$(a \Rightarrow b) \Rightarrow (\lnot b \Rightarrow \lnot a)$$
A seemingly natural way to start is by assuming the left side, as well as assuming a. This ends up proving what I want but I can't eliminate my assumption of a.
Any insight beyond a strictly mechanical derivation are appreciated.
I think everything is clear up to step 5; beyond that you need a clear grasp of the notion of conditional proof. (You also need to remember that $\lnot x$ is an abbreviation for $x \to \bot$.)