def ap.mx
bend-osdev-aes@0.1.0.0 · PROOF.bend:1793
import bend-osdev-aes@0.1.0.0/PROOF.bend as PROOF
import Base
import bend-osdev-gf@0.1.1.0/gf.bend as G
import bend-osdev-gf@0.1.1.0/LAWS.bend as GL
1793def ap.mx(+k: U32, +u: U32, +v: U32) -> {G.Gf8.mul(G.Gf8.aes(), k, U32.xor(u, v)) == G.Gf8.add(G.Gf8.mul(G.Gf8.aes(), k, u), G.Gf8.mul(G.Gf8.aes(), k, v)) : U32}:
1794 %Equal.sym(U32, G.Gf8.mul(G.Gf8.aes(), k, U32.xor(u, v)), G.Gf8.mul(G.Gf8.aes(), k, G.Gf8.add(u, v)), ap.gx(k, u, v)) : {_ == G.Gf8.add(G.Gf8.mul(G.Gf8.aes(), k, u), G.Gf8.mul(G.Gf8.aes(), k, v)) : U32}
1795 GL.mul_distrib(G.Gf8.aes(), k, u, v)