def shift_lt

bend-collections-laws-crypto@1.0.0.0 · proofs/math/typed/width.bend:423

import bend-collections-laws-crypto@1.0.0.0/proofs/math/typed/width.bend as Width
import Base
import bend-collections-laws-crypto@1.0.0.0/spec/lib/common.bend as C
import bend-collections-laws-crypto@1.0.0.0/proofs/lib/nat.bend as N

423def shift_lt(+k: Nat, +a: Nat, +b: Nat, +h: {Nat.is_lt(a, b) == True{} : Bool}) -> {Nat.is_lt(C.shift(k, a), C.shift(k, b)) == True{} : Bool}:
424  match k:
425    case 0n:
426      h
427    case 1n+ +p:
428      N.double_lt(C.shift(p, a), C.shift(p, b), shift_lt(p, a, b, h))

Uses (5)

Used by (5)