Search for blocks/addresses/...

Proofgold Proof

pf
Let x0 of type ι be given.
Let x1 of type ι be given.
Let x2 of type ιιι be given.
Let x3 of type ιιι be given.
Assume H0: pack_b x0 x2 = pack_b x1 x3.
Claim L1: x1 = ap (pack_b x0 x2) 0
Apply pack_b_0_eq with pack_b x0 x2, x1, x3.
The subproof is completed by applying H0.
Claim L2: x0 = x1
Apply L1 with λ x4 x5 . x0 = x5.
The subproof is completed by applying pack_b_0_eq2 with x0, x2.
Apply andI with x0 = x1, ∀ x4 . x4x0∀ x5 . x5x0x2 x4 x5 = x3 x4 x5 leaving 2 subgoals.
The subproof is completed by applying L2.
Let x4 of type ι be given.
Assume H3: x4x0.
Let x5 of type ι be given.
Assume H4: x5x0.
Claim L5: x4x1
Apply L2 with λ x6 x7 . x4x6.
The subproof is completed by applying H3.
Claim L6: x5x1
Apply L2 with λ x6 x7 . x5x6.
The subproof is completed by applying H4.
Apply pack_b_1_eq2 with x0, x2, x4, x5, λ x6 x7 . x7 = x3 x4 x5 leaving 3 subgoals.
The subproof is completed by applying H3.
The subproof is completed by applying H4.
Apply H0 with λ x6 x7 . decode_b (ap x7 1) x4 x5 = x3 x4 x5.
Let x6 of type ιιο be given.
Apply pack_b_1_eq2 with x1, x3, x4, x5, λ x7 x8 . x6 x8 x7 leaving 2 subgoals.
The subproof is completed by applying L5.
The subproof is completed by applying L6.