def mul_inv_aes.s01101

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

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

2443def mul_inv_aes.s01101(+b5: Bool, +b6: Bool, +b7: Bool) -> {G.Gf8.mul(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{False{}, True{}, True{}, False{}, True{}, b5, b6, b7})), G.Gf8.inv(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{False{}, True{}, True{}, False{}, True{}, b5, b6, b7})))) == 1 : U32}:
2444  match b5:
2445    case True{}:
2446      match b6:
2447        case True{}:
2448          match b7:
2449            case True{}:
2450              {==}
2451            case False{}:
2452              {==}
2453        case False{}:
2454          match b7:
2455            case True{}:
2456              {==}
2457            case False{}:
2458              {==}
2459    case False{}:
2460      match b6:
2461        case True{}:
2462          match b7:
2463            case True{}:
2464              {==}
2465            case False{}:
2466              {==}
2467        case False{}:
2468          match b7:
2469            case True{}:
2470              {==}
2471            case False{}:
2472              {==}

Uses (8)

Used by (1)