def mul_inv_aes.s10100

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

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

2226def mul_inv_aes.s10100(+b5: Bool, +b6: Bool, +b7: Bool) -> {G.Gf8.mul(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, False{}, True{}, False{}, False{}, b5, b6, b7})), G.Gf8.inv(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, False{}, True{}, False{}, False{}, b5, b6, b7})))) == 1 : U32}:
2227  match b5:
2228    case True{}:
2229      match b6:
2230        case True{}:
2231          match b7:
2232            case True{}:
2233              {==}
2234            case False{}:
2235              {==}
2236        case False{}:
2237          match b7:
2238            case True{}:
2239              {==}
2240            case False{}:
2241              {==}
2242    case False{}:
2243      match b6:
2244        case True{}:
2245          match b7:
2246            case True{}:
2247              {==}
2248            case False{}:
2249              {==}
2250        case False{}:
2251          match b7:
2252            case True{}:
2253              {==}
2254            case False{}:
2255              {==}

Uses (8)

Used by (1)