def pm.fin.wb

bend-kit-collections@0.1.4.1 · PROOF.bend:1621

import bend-kit-collections@0.1.4.1/PROOF.bend as PROOF
import Base
import bend-kit-collections@0.1.4.1/LAWS.bend as Laws
import bend-kit-collections@0.1.4.1/omap.bend as O

1621# Workaround for https://github.com/bendlang/bend/issues/1077: bind the tuple without +.
1622def pm.fin.wb(
1623  -K: Data, -V: Data, r: K & V & O.OMap<K, V>, +k: K, +v: V,
1624  +lo: O.OMap<K, V>, +hi: O.OMap<K, V>,
1625  ok: {Laws.weight_ok(W(K, V, lo), W(K, V, hi)) == True{} : Bool},
1626  wbh: {WB(K, V, hi) == True{} : Bool},
1627  ih: {PMW(K, V, W(K, V, lo), r) == True{} : Bool}
1628) -> {PMW(K, V, Nat.add(W(K, V, lo), W(K, V, hi)), Laws.g_pop_min.fin(K, V, k, v, hi, r)) == True{} : Bool}:
1629  (mk, rest) = r
1630  (mv, t) = rest
1631  pm.fin.wb.go(K, V, mk, mv, t, k, v, lo, hi, ok, wbh, ih)

Uses (11)

Used by (1)