def mul_inv_aes.s10001

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

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

2319def mul_inv_aes.s10001(+b5: Bool, +b6: Bool, +b7: Bool) -> {G.Gf8.mul(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, False{}, False{}, False{}, True{}, b5, b6, b7})), G.Gf8.inv(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, False{}, False{}, False{}, True{}, b5, b6, b7})))) == 1 : U32}:
2320  match b5:
2321    case True{}:
2322      match b6:
2323        case True{}:
2324          match b7:
2325            case True{}:
2326              {==}
2327            case False{}:
2328              {==}
2329        case False{}:
2330          match b7:
2331            case True{}:
2332              {==}
2333            case False{}:
2334              {==}
2335    case False{}:
2336      match b6:
2337        case True{}:
2338          match b7:
2339            case True{}:
2340              {==}
2341            case False{}:
2342              {==}
2343        case False{}:
2344          match b7:
2345            case True{}:
2346              {==}
2347            case False{}:
2348              {==}

Uses (8)

Used by (1)