def bs.none1

bend-osdev-algo@0.1.0.0 · PROOF.bend:1193

import bend-osdev-algo@0.1.0.0/PROOF.bend as PROOF
import Base
import bend-osdev-algo@0.1.0.0/bsearch.bend as S

1193def bs.none1(c: Bool, +x0: U32, +x: U32, +key: U32, ec: {U32.is_lt(x0, key) == c : Bool}, +t: List<&2, U32>, +r: Nat, e: {S.bsearch.find.check(S.bsearch.below.step(c, r), List.get(&2, U32, Con{x0, t}, S.bsearch.below.step(c, r)), key) == None{} : Maybe<&2, Nat>}, ih: {S.bsearch.find.check(r, List.get(&2, U32, t, r), key) == None{} : Maybe<&2, Nat>} -> {U32.is_eq(x, key) == False{} : Bool}, h: {U32.is_le(x0, x) == True{} : Bool}) -> {U32.is_eq(x, key) == False{} : Bool}:
1194  match c:
1195    case True{}:
1196      ih(bs.check_shift(List.get(&2, U32, t, r), r, key, e))
1197    case False{}:
1198      u32.gt_le_ne(x0, x, key, ec, bs.hit_none(U32.is_eq(x0, key), 0n, e), h)

Uses (14)

Used by (1)