Let y be given.
Let x be given.
We prove the intermediate
claim Hpreprop:
pre y ∈ X ∧ y = F (pre y).
An
exact proof term for the current goal is
(Eps_i_ax (λx0 ⇒ x0 ∈ X ∧ y = F x0) x (andI (x ∈ X) (y = F x) HxX HyFx)).
We prove the intermediate
claim HpreX:
pre y ∈ X.
An
exact proof term for the current goal is
(andEL (pre y ∈ X) (y = F (pre y)) Hpreprop).
We prove the intermediate
claim Hhmap:
∀u ∈ X, h u ∈ ω.
An
exact proof term for the current goal is
(andEL (∀u ∈ X, h u ∈ ω) (∀u v ∈ X, h u = h v → u = v) Hh).
We prove the intermediate
claim Hgy:
g y = h (pre y).
rewrite the current goal using Hgy (from left to right).
An exact proof term for the current goal is (Hhmap (pre y) HpreX).
Let y1 be given.
Let y2 be given.
We prove the intermediate
claim Hhinj:
∀u v ∈ X, h u = h v → u = v.
An
exact proof term for the current goal is
(andER (∀u ∈ X, h u ∈ ω) (∀u v ∈ X, h u = h v → u = v) Hh).
Let x1 be given.
Let x2 be given.
We prove the intermediate
claim Hpre1:
pre y1 ∈ X ∧ y1 = F (pre y1).
An
exact proof term for the current goal is
(Eps_i_ax (λx0 ⇒ x0 ∈ X ∧ y1 = F x0) x1 (andI (x1 ∈ X) (y1 = F x1) Hx1X Hy1Fx1)).
We prove the intermediate
claim Hpre2:
pre y2 ∈ X ∧ y2 = F (pre y2).
An
exact proof term for the current goal is
(Eps_i_ax (λx0 ⇒ x0 ∈ X ∧ y2 = F x0) x2 (andI (x2 ∈ X) (y2 = F x2) Hx2X Hy2Fx2)).
We prove the intermediate
claim Hpre1X:
pre y1 ∈ X.
An
exact proof term for the current goal is
(andEL (pre y1 ∈ X) (y1 = F (pre y1)) Hpre1).
We prove the intermediate
claim Hpre2X:
pre y2 ∈ X.
An
exact proof term for the current goal is
(andEL (pre y2 ∈ X) (y2 = F (pre y2)) Hpre2).
We prove the intermediate
claim Hg1:
g y1 = h (pre y1).
We prove the intermediate
claim Hg2:
g y2 = h (pre y2).
We prove the intermediate
claim Heqh:
h (pre y1) = h (pre y2).
rewrite the current goal using Hg1 (from right to left).
rewrite the current goal using Hg2 (from right to left).
An exact proof term for the current goal is Hg.
We prove the intermediate
claim Heqpre:
pre y1 = pre y2.
An exact proof term for the current goal is (Hhinj (pre y1) Hpre1X (pre y2) Hpre2X Heqh).
We prove the intermediate
claim Hy1pre:
y1 = F (pre y1).
An
exact proof term for the current goal is
(andER (pre y1 ∈ X) (y1 = F (pre y1)) Hpre1).
We prove the intermediate
claim Hy2pre:
y2 = F (pre y2).
An
exact proof term for the current goal is
(andER (pre y2 ∈ X) (y2 = F (pre y2)) Hpre2).
rewrite the current goal using Hy1pre (from left to right).
rewrite the current goal using Hy2pre (from left to right).
rewrite the current goal using Heqpre (from left to right).
Use reflexivity.
∎