Apply Hex1 to the current goal.
Let p be given.
Assume Hp.
Apply Hex2 to the current goal.
Let q be given.
Assume Hq.
An exact proof term for the current goal is Hp.
An exact proof term for the current goal is Hp.
We prove the intermediate
claim Hp0:
apply_fun p 0 = x.
An exact proof term for the current goal is Hp.
We prove the intermediate
claim Hp1:
apply_fun p 1 = y.
An exact proof term for the current goal is Hp.
An exact proof term for the current goal is Hq.
An exact proof term for the current goal is Hq.
We prove the intermediate
claim Hq0:
apply_fun q 0 = y.
An exact proof term for the current goal is Hq.
We prove the intermediate
claim Hq1:
apply_fun q 1 = z.
An exact proof term for the current goal is Hq.
Let t be given.
We prove the intermediate
claim HtSing:
t ∈ {eps_ 1}.
An exact proof term for the current goal is Ht.
We prove the intermediate
claim Hteq:
t = eps_ 1.
An
exact proof term for the current goal is
(SingE (eps_ 1) t HtSing).
rewrite the current goal using Hteq (from left to right).
rewrite the current goal using Hpf (from left to right).
rewrite the current goal using Hqf (from left to right).
rewrite the current goal using Hp1 (from left to right).
rewrite the current goal using Hq0 (from left to right).
Use reflexivity.
Apply Hexh to the current goal.
Let h be given.
We use h to witness the existential quantifier.
Apply andI to the current goal.
Apply andI to the current goal.
Apply andI to the current goal.
rewrite the current goal using
(Hleft 0 H0left) (from left to right).
rewrite the current goal using Hpf0 (from left to right).
rewrite the current goal using Hp0 (from left to right).
Use reflexivity.
rewrite the current goal using
(Hright 1 H1right) (from left to right).
rewrite the current goal using Hqf1 (from left to right).
rewrite the current goal using Hq1 (from left to right).
Use reflexivity.
∎