def mul_inv_aes.lift
bend-osdev-gf@0.1.1.0 · PROOF.bend:3010
import bend-osdev-gf@0.1.1.0/PROOF.bend as PROOF
import Base
import bend-osdev-gf@0.1.1.0/gf.bend as G
3010def mul_inv_aes.lift(+a: U32, +nz: {G.Gf8.is_zero(a) == False{} : Bool}) -> {G.Gf8.mul(G.Gf8.aes(), G.Gf8.elt(a), G.Gf8.inv(G.Gf8.aes(), G.Gf8.elt(a))) == 1 : U32}:
3011 %fix_nz(a, nz) : {G.Gf8.mul(G.Gf8.aes(), _, G.Gf8.inv(G.Gf8.aes(), G.Gf8.elt(a))) == 1 : U32}
3012 %fix_nz(a, nz) : {G.Gf8.mul(G.Gf8.aes(), fixz(G.Gf8.elt(a)), G.Gf8.inv(G.Gf8.aes(), _)) == 1 : U32}
3013 mul_inv_aes.core(a)