Search for blocks/addresses/...

Proofgold Proof

pf
Let x0 of type ι be given.
Assume H0: struct_r_r_p x0.
Apply H0 with λ x1 . x1 = pack_r_r_p (ap x1 0) (decode_r (ap x1 1)) (decode_r (ap x1 2)) (decode_p (ap x1 3)).
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 pack_r_r_p_0_eq2 with x1, x2, x3, x4, λ x5 x6 . pack_r_r_p x1 x2 x3 x4 = pack_r_r_p x5 (decode_r (ap (pack_r_r_p x1 x2 x3 x4) 1)) (decode_r (ap (pack_r_r_p x1 x2 x3 x4) 2)) (decode_p (ap (pack_r_r_p x1 x2 x3 x4) 3)).
Apply pack_r_r_p_ext with x1, x2, decode_r (ap (pack_r_r_p x1 x2 x3 x4) 1), x3, decode_r (ap (pack_r_r_p x1 x2 x3 x4) 2), x4, decode_p (ap (pack_r_r_p x1 x2 x3 x4) 3) leaving 3 subgoals.
Let x5 of type ι be given.
Assume H1: x5x1.
Let x6 of type ι be given.
Assume H2: x6x1.
Apply pack_r_r_p_1_eq2 with x1, x2, x3, x4, x5, x6, λ x7 x8 : ο . iff (x2 x5 x6) x7 leaving 3 subgoals.
The subproof is completed by applying H1.
The subproof is completed by applying H2.
The subproof is completed by applying iff_refl with x2 x5 x6.
Let x5 of type ι be given.
Assume H1: x5x1.
Let x6 of type ι be given.
Assume H2: x6x1.
Apply pack_r_r_p_2_eq2 with x1, x2, x3, x4, x5, x6, λ x7 x8 : ο . iff (x3 x5 x6) x7 leaving 3 subgoals.
The subproof is completed by applying H1.
The subproof is completed by applying H2.
The subproof is completed by applying iff_refl with x3 x5 x6.
Let x5 of type ι be given.
Assume H1: x5x1.
Apply pack_r_r_p_3_eq2 with x1, x2, x3, x4, x5, λ x6 x7 : ο . iff (x4 x5) x6 leaving 2 subgoals.
The subproof is completed by applying H1.
The subproof is completed by applying iff_refl with x4 x5.