Let X, f, g and f' be given.
We prove the intermediate
claim Lf'1:
∀m, nat_p m → f' m ⊆ X ∧ infinite (f' m).
rewrite the current goal using Hf'0 (from left to right).
An exact proof term for the current goal is Hf1 X (λu H ⇒ H) HX.
Let m be given.
Assume Hm.
Assume IHm.
Apply IHm to the current goal.
rewrite the current goal using Hf'S m Hm (from left to right).
Apply Hf1 (f' m) IHm1 IHm2 to the current goal.
Apply andI to the current goal.
Apply Subq_tra (f (f' m)) (f' m) X H3 to the current goal.
An exact proof term for the current goal is IHm1.
An exact proof term for the current goal is H4.
We prove the intermediate
claim Lgf'mm'addSubq:
∀m ∈ ω, ∀m', nat_p m' → f' (m + m') ⊆ f' m.
Let m be given.
Assume Hm.
We will
prove f' (m + 0) ⊆ f' m.
rewrite the current goal using
add_nat_0R m (from left to right).
An
exact proof term for the current goal is
Subq_ref (f' m).
Let m' be given.
Assume Hm'.
rewrite the current goal using
add_nat_SR m m' Hm' (from left to right).
rewrite the current goal using
Hf'S (m + m') (add_nat_p m (omega_nat_p m Hm) m' Hm') (from left to right).
We will
prove f (f' (m + m')) ⊆ f' m.
Apply Subq_tra (f (f' (m + m'))) (f' (m + m')) (f' m) to the current goal.
Apply Hf1 (f' (m + m')) Hfmm'X Hfmm'inf to the current goal.
Assume _.
An exact proof term for the current goal is H3.
An exact proof term for the current goal is IHm'.
We prove the intermediate
claim Lgf'mm'Subq:
∀m m' ∈ ω, m ⊆ m' → f' m' ⊆ f' m.
Let m be given.
Let m' be given.
Let k be given.
Assume H.
Apply H to the current goal.
We will
prove f' m' ⊆ f' m.
rewrite the current goal using Hm'km (from left to right).
We will
prove f' (k + m) ⊆ f' m.
We will
prove f' (m + k) ⊆ f' m.
An exact proof term for the current goal is Lgf'mm'addSubq m Hm k Hk.
We prove the intermediate
claim Lgf'injlem:
∀m ∈ ω, ∀m' ∈ m, g (f' m') ≠ g (f' m).
Let m be given.
Let m' be given.
We prove the intermediate
claim LmN:
nat_p m.
An exact proof term for the current goal is Hm.
We prove the intermediate
claim Lmo:
ordinal m.
An exact proof term for the current goal is LmN.
We prove the intermediate
claim Lm'N:
nat_p m'.
We prove the intermediate
claim Lf'mff'm':
f' m ⊆ f (f' m').
Apply Hf'S m' Lm'N (λu _ ⇒ f' m ⊆ u) to the current goal.
Apply Hg1 (f' m) H4 H5 to the current goal.
Assume _.
Apply Lf'1 m' Lm'N to the current goal.
Apply Hg1 (f' m') H7 H8 to the current goal.
Assume _.
Apply H9 to the current goal.
We will
prove g (f' m') ∈ f (f' m').
rewrite the current goal using H3 (from left to right).
We will
prove g (f' m) ∈ f (f' m').
An exact proof term for the current goal is Lf'mff'm' (g (f' m)) H6.
Apply and3I to the current goal.
An exact proof term for the current goal is Lf'1.
An exact proof term for the current goal is Lgf'mm'Subq.
Let m be given.
Let m' be given.
Apply Lgf'injlem m' Hm' m Hmm' to the current goal.
We will
prove g (f' m) = g (f' m').
An exact proof term for the current goal is Hgf'mm'.
An exact proof term for the current goal is Hmm'.
Apply Lgf'injlem m Hm m' Hm'm to the current goal.
We will
prove g (f' m') = g (f' m).
Use symmetry.
An exact proof term for the current goal is Hgf'mm'.
∎