Does this proof look fine or contain gaps? Do you have suggestions? Many thanks for your dedicated help!
My attempt:
Lemma: Let $I_n=\{i\in\mathbb N\mid 1\leq i\leq n\},\emptyset\neq A\subseteq I_n$. Then $A$ has a greatest element.
Let $U=\{u\in\Bbb N\mid a\leq u\space\forall a\in A\}$ and $u'$ be the least element of $U$. If $u'=1$, then $A=\{1\}$, and therefore $1$ is the greatest element of $A$. If $u'>1$, then $u'=c+1$ for some $c\in\Bbb N$. Suppose that $u'\notin A$, then $u'>a\space\forall a\in A\implies c+1>a\space\forall a\in A\implies c\geq a\space\forall a\in A\implies c\in U$ (this contradicts the minimality of $u'$). Thus $u'\in A$, and consequently $u'$ is the greatest element of $A$.$\blacksquare$
Theorem: Let $I_n=\{p\in\mathbb N\mid 1\leq p\leq n\},\emptyset\neq A\subseteq I_n$. Then $A$ is finite, $|A|\leq n$, with equality if and only if $A=I_n$.
We will prove this theorem by induction on $n$. It's trivial that the theorem is true for $n=1$. Assume that the theorem is true for all $n\leq k$. For $\emptyset\neq A\subseteq I_{k+1}$ and by Lemma, let $a'$ be the greatest element of $A$. There are two possible cases in total.
$A$ is a singleton. Then $A=\{1\}\implies |A|=1\leq n$ and $A$ is finite.
$A$ is not a singleton. Let $B=A-\{a'\}$, then $\emptyset\neq B\subseteq I_k\implies B$ is finite and $|B|\leq k\implies$ there exists a bijection $f:I_t\to B$ where $|B|=t\leq k$. We define a bijection $g:A\to I_{t+1}$ as follows: $g(a)=f(a)\space\forall a\in B$ and $g(a')=t+1$. Thus $A$ is finite and $|A|=t+1\leq k+1$.
$|A|=k+1\Leftrightarrow t=k\Leftrightarrow B=I_k\Leftrightarrow A=I_k\cup\{a'\}\Leftrightarrow A=I_{k+1}$.
By principle of strong induction, the theorem is proved.$\blacksquare$