def cbit

bend-collections-laws-crypto@1.0.0.0 · proofs/crypto/secp256k1/bitsv.bend:136

import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/secp256k1/bitsv.bend as Bitsv
import Base
import bend-collections-laws-crypto@1.0.0.0/proofs/lib/nat.bend as N

136def cbit(b: Nat, +hb: {Nat.is_lt(b, 2n) == True{} : Bool}) -> {Nat.add(Nat.sub(1n, b), b) == 1n : Nat}:
137  match b:
138    case 0n:
139      {==}
140    case 1n:
141      {==}
142    case 2n+ +k:
143      Empty.absurd({Nat.add(Nat.sub(1n, 2n+k), 2n+k) == 1n : Nat}, N.lt_zero_absurd(k, hb))

Uses (7)

Used by (1)