Search for blocks/addresses/...

Proofgold Proof

pf
Let x0 of type ι be given.
Assume H0: struct_b_b_b x0.
Apply H0 with λ x1 . x1 = pack_b_b_b (ap x1 0) (decode_b (ap x1 1)) (decode_b (ap x1 2)) (decode_b (ap x1 3)).
Let x1 of type ι be given.
Let x2 of type ιιι be given.
Assume H1: ∀ x3 . x3x1∀ x4 . x4x1x2 x3 x4x1.
Let x3 of type ιιι be given.
Assume H2: ∀ x4 . x4x1∀ x5 . x5x1x3 x4 x5x1.
Let x4 of type ιιι be given.
Assume H3: ∀ x5 . x5x1∀ x6 . x6x1x4 x5 x6x1.
Apply pack_b_b_b_0_eq2 with x1, x2, x3, x4, λ x5 x6 . pack_b_b_b x1 x2 x3 x4 = pack_b_b_b x5 (decode_b (ap (pack_b_b_b x1 x2 x3 x4) 1)) (decode_b (ap (pack_b_b_b x1 x2 x3 x4) 2)) (decode_b (ap (pack_b_b_b x1 x2 x3 x4) 3)).
Apply pack_b_b_b_ext with x1, x2, decode_b (ap (pack_b_b_b x1 x2 x3 x4) 1), x3, decode_b (ap (pack_b_b_b x1 x2 x3 x4) 2), x4, decode_b (ap (pack_b_b_b x1 x2 x3 x4) 3) leaving 3 subgoals.
The subproof is completed by applying pack_b_b_b_1_eq2 with x1, x2, x3, x4.
The subproof is completed by applying pack_b_b_b_2_eq2 with x1, x2, x3, x4.
The subproof is completed by applying pack_b_b_b_3_eq2 with x1, x2, x3, x4.