def gc.rs.log.bits

bend-osdev-gf@0.1.1.0 · proof_tab_cases.bend:4190

import bend-osdev-gf@0.1.1.0/proof_tab_cases.bend as ProofTabCases
import Base
import bend-osdev-array@0.1.0.1/array.bend as A
import bend-osdev-gf@0.1.1.0/gf.bend as G

4190def gc.rs.log.bits(+b0: Bool, +b1: Bool, +b2: Bool, +b3: Bool, +b4: Bool, +b5: Bool, +b6: Bool, +b7: Bool) -> {A.Arrays.nth(U32, gc.rs.llist(), A.Arrays.index(8n, G.Gf8Bits.to(G.Gf8Bits{b0, b1, b2, b3, b4, b5, b6, b7})), 0) == U32.from_nat(G.Gf8.log(G.Gf8.rs(), G.Gf8Bits.to(G.Gf8Bits{b0, b1, b2, b3, b4, b5, b6, b7}))) : U32}:
4191  match b5 b6 b7:
4192    case True{} True{} True{}:
4193      gc.rs.log.bits.s111(b0, b1, b2, b3, b4)
4194    case True{} True{} False{}:
4195      gc.rs.log.bits.s011(b0, b1, b2, b3, b4)
4196    case True{} False{} True{}:
4197      gc.rs.log.bits.s101(b0, b1, b2, b3, b4)
4198    case True{} False{} False{}:
4199      gc.rs.log.bits.s001(b0, b1, b2, b3, b4)
4200    case False{} True{} True{}:
4201      gc.rs.log.bits.s110(b0, b1, b2, b3, b4)
4202    case False{} True{} False{}:
4203      gc.rs.log.bits.s010(b0, b1, b2, b3, b4)
4204    case False{} False{} True{}:
4205      gc.rs.log.bits.s100(b0, b1, b2, b3, b4)
4206    case False{} False{} False{}:
4207      gc.rs.log.bits.s000(b0, b1, b2, b3, b4)

Uses (18)

Used by (1)