Let x0 of type ι be given.
Apply H0 with
λ x1 . x1 = pack_c_u_p_e (ap x1 0) (decode_c (ap x1 1)) (ap (ap x1 2)) (decode_p (ap x1 3)) (ap x1 4).
Let x1 of type ι be given.
Let x2 of type (ι → ο) → ο be given.
Let x3 of type ι → ι be given.
Assume H1: ∀ x4 . x4 ∈ x1 ⟶ x3 x4 ∈ x1.
Let x4 of type ι → ο be given.
Let x5 of type ι be given.
Assume H2: x5 ∈ x1.
Apply pack_c_u_p_e_0_eq2 with
x1,
x2,
x3,
x4,
x5,
λ x6 x7 . pack_c_u_p_e x1 x2 x3 x4 x5 = pack_c_u_p_e x6 (decode_c (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 1)) (ap (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 2)) (decode_p (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 3)) (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 4).
Apply pack_c_u_p_e_4_eq2 with
x1,
x2,
x3,
x4,
x5,
λ x6 x7 . pack_c_u_p_e x1 x2 x3 x4 x5 = pack_c_u_p_e x1 (decode_c (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 1)) (ap (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 2)) (decode_p (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 3)) x6.
Apply pack_c_u_p_e_ext with
x1,
x2,
decode_c (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 1),
x3,
ap (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 2),
x4,
decode_p (ap (pack_c_u_p_e x1 x2 x3 x4 x5) 3),
x5 leaving 3 subgoals.
Let x6 of type ι → ο be given.
Assume H3: ∀ x7 . x6 x7 ⟶ x7 ∈ x1.
Apply pack_c_u_p_e_1_eq2 with
x1,
x2,
x3,
x4,
x5,
x6,
λ x7 x8 : ο . iff (x2 x6) x7 leaving 2 subgoals.
The subproof is completed by applying H3.
The subproof is completed by applying iff_refl with x2 x6.
The subproof is completed by applying pack_c_u_p_e_2_eq2 with x1, x2, x3, x4, x5.
Let x6 of type ι be given.
Assume H3: x6 ∈ x1.
Apply pack_c_u_p_e_3_eq2 with
x1,
x2,
x3,
x4,
x5,
x6,
λ x7 x8 : ο . iff (x4 x6) x7 leaving 2 subgoals.
The subproof is completed by applying H3.
The subproof is completed by applying iff_refl with x4 x6.