Claim L0:
∀ x0 x1 x2 . ∀ x3 x4 : ι → ο . (∀ x5 . x5 ∈ x2 ⟶ iff (x3 x5) (x4 x5)) ⟶ (λ x5 x6 x7 . λ x8 : ι → ο . pack_p {x9 ∈ x7|ap x5 x9 = ap x6 x9} x8) x0 x1 x2 x4 = (λ x5 x6 x7 . λ x8 : ι → ο . pack_p {x9 ∈ x7|ap x5 x9 = ap x6 x9} x8) x0 x1 x2 x3
Let x0 of type ι be given.
Let x1 of type ι be given.
Let x2 of type ι be given.
Let x3 of type ι → ο be given.
Let x4 of type ι → ο be given.
Assume H0:
∀ x5 . x5 ∈ x2 ⟶ iff (x3 x5) (x4 x5).
Apply pack_p_ext with
{x5 ∈ x2|ap x0 x5 = ap x1 x5},
x4,
x3.
Let x5 of type ι be given.
Assume H1:
x5 ∈ {x6 ∈ x2|ap x0 x6 = ap x1 x6}.
Apply H0 with
x5,
iff (x4 x5) (x3 x5) leaving 2 subgoals.
Apply SepE1 with
x2,
λ x6 . ap x0 x6 = ap x1 x6,
x5.
The subproof is completed by applying H1.
Assume H2: x3 x5 ⟶ x4 x5.
Assume H3: x4 x5 ⟶ x3 x5.
Apply iffI with
x4 x5,
x3 x5 leaving 2 subgoals.
The subproof is completed by applying H3.
The subproof is completed by applying H2.
Let x0 of type ι be given.
Let x1 of type ι → ο be given.
Let x2 of type ι be given.
Let x3 of type ι be given.
Let x4 of type ι be given.
Apply unpack_p_i_eq with
(λ x5 x6 x7 . λ x8 : ι → ο . pack_p {x9 ∈ x7|ap x5 x9 = ap x6 x9} x8) x3 x4,
x0,
x1.
The subproof is completed by applying L0 with x3, x4, x0, x1.