def mul_inv_aes.s11010

bend-osdev-gf@0.1.1.0 · PROOF.bend:2040

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

2040def mul_inv_aes.s11010(+b5: Bool, +b6: Bool, +b7: Bool) -> {G.Gf8.mul(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, True{}, False{}, True{}, False{}, b5, b6, b7})), G.Gf8.inv(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, True{}, False{}, True{}, False{}, b5, b6, b7})))) == 1 : U32}:
2041  match b5:
2042    case True{}:
2043      match b6:
2044        case True{}:
2045          match b7:
2046            case True{}:
2047              {==}
2048            case False{}:
2049              {==}
2050        case False{}:
2051          match b7:
2052            case True{}:
2053              {==}
2054            case False{}:
2055              {==}
2056    case False{}:
2057      match b6:
2058        case True{}:
2059          match b7:
2060            case True{}:
2061              {==}
2062            case False{}:
2063              {==}
2064        case False{}:
2065          match b7:
2066            case True{}:
2067              {==}
2068            case False{}:
2069              {==}

Uses (8)

Used by (1)