def mul_inv_aes.s10111

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

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

2133def mul_inv_aes.s10111(+b5: Bool, +b6: Bool, +b7: Bool) -> {G.Gf8.mul(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, False{}, True{}, True{}, True{}, b5, b6, b7})), G.Gf8.inv(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, False{}, True{}, True{}, True{}, b5, b6, b7})))) == 1 : U32}:
2134  match b5:
2135    case True{}:
2136      match b6:
2137        case True{}:
2138          match b7:
2139            case True{}:
2140              {==}
2141            case False{}:
2142              {==}
2143        case False{}:
2144          match b7:
2145            case True{}:
2146              {==}
2147            case False{}:
2148              {==}
2149    case False{}:
2150      match b6:
2151        case True{}:
2152          match b7:
2153            case True{}:
2154              {==}
2155            case False{}:
2156              {==}
2157        case False{}:
2158          match b7:
2159            case True{}:
2160              {==}
2161            case False{}:
2162              {==}

Uses (8)

Used by (1)