def ba.hs
bend-osdev-algo@0.1.0.0 · PROOF.bend:1380
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
import bend-osdev-array@0.1.0.0/array.bend as AR
import bend-osdev-array@0.1.0.0/LAWS.bend as AL
import bend-osdev-algo@0.1.0.0/proof_bsearch.bend as Q
1380
1381def ba.hs(+d: Nat, -a: Array<U32>, +l: List<&2, U32>, +n: U32, e1: {AR.Arrays.of_list(U32, d, l, 0) == a : Array<U32>}, +hl: {List.length(&2, U32, l) == AR.Arrays.slots(d) : Nat}, hs: {S.bsearch.sorted(List.take(&2, U32, AR.Arrays.leaves(U32, a), U32.to_nat(n))) == True{} : Bool}) -> {S.bsearch.sorted(Q.bq.pre(l, n)) == True{} : Bool}:
1382 %AL.of_list_leaves(U32, d, l, 0, hl) : {S.bsearch.sorted(List.take(&2, U32, _, U32.to_nat(n))) == True{} : Bool}
1383 %Equal.sym(Array<U32>, AR.Arrays.of_list(U32, d, l, 0), a, e1) : {S.bsearch.sorted(List.take(&2, U32, AR.Arrays.leaves(U32, _), U32.to_nat(n))) == True{} : Bool}
1384 hs