def mul_inv_aes.s11011

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

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

2009def mul_inv_aes.s11011(+b5: Bool, +b6: Bool, +b7: Bool) -> {G.Gf8.mul(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, True{}, False{}, True{}, True{}, b5, b6, b7})), G.Gf8.inv(G.Gf8.aes(), fixz(G.Gf8Bits.to(G.Gf8Bits{True{}, True{}, False{}, True{}, True{}, b5, b6, b7})))) == 1 : U32}:
2010  match b5:
2011    case True{}:
2012      match b6:
2013        case True{}:
2014          match b7:
2015            case True{}:
2016              {==}
2017            case False{}:
2018              {==}
2019        case False{}:
2020          match b7:
2021            case True{}:
2022              {==}
2023            case False{}:
2024              {==}
2025    case False{}:
2026      match b6:
2027        case True{}:
2028          match b7:
2029            case True{}:
2030              {==}
2031            case False{}:
2032              {==}
2033        case False{}:
2034          match b7:
2035            case True{}:
2036              {==}
2037            case False{}:
2038              {==}

Uses (8)

Used by (1)