1. p Assumption
2. ~p => ~q Assumption
3. p Reiteration: 1
4. (~p => ~q) => p Implication Introduction: 2, 3
5. ~p => q Assumption
6. (~p => ~q) => p Reiteration: 4
7. (~p => q) => (~p => ~q) => p Implication Introduction: 5, 6
It does not work in this way. So, I suppose p is not the right assumption...
Could you please help me to define the initial assumption to proceed?
We seek to prove: $\vdash (\neg p\to q)\to((\neg p\to\neg q)\to p)$
A method to prove $\phi\to (\psi\to \chi)$, would be to assume $\phi$ and $\psi$ then make an argument to conclude $\chi$, then discharge the assumptions with conditional introduction.
So then, can you make an argument for $p$ made under an assumption of $\neg p\to q$ and $\neg p \to\neg q$ ?
$$\begin{array}{r|l:l} 1. & \quad \neg p\to q & \text{Assumption}\\ 2. & \qquad \neg p\to\neg q & \text{Assumption}\\ \vdots & \qquad\quad\vdots & \vdots \\ n. & \qquad p & \\ n+1. & \quad (\neg p\to\neg q)\to p&2,n,\text{Conditional Introduction}\\ n+2. & (\neg p\to q)\to((\neg p\to\neg q)\to p)&1,n+1,\text{Conditional Introduction}\\ \end{array}$$