def h.wf_put.br
bend-kit-collections@0.1.4.1 · PROOF.bend:3770
import bend-kit-collections@0.1.4.1/PROOF.bend as PROOF
import Base
import bend-mathlib@0.7.4.0/bool.bend as MBool
import bend-kit-collections@0.1.4.1/hmap.bend as M
3770def h.wf_put.br(
3771 ~K: Data, ~V: Data, ~hash: K -> U32, ~eq: K -> K -> Bool, +p: Nat, +mask: U32, +lo: M.HMap<K, V>,
3772 +hi: M.HMap<K, V>, +hk: U32, +k: K, +v: V, b: Bool,
3773 wl: {h.WF(~K, ~V, ~hash, ~eq, p, lo) == True{} : Bool},
3774 wh: {h.WF(~K, ~V, ~hash, ~eq, p, hi) == True{} : Bool},
3775 il: {h.WF(~K, ~V, ~hash, ~eq, p, h.P(~K, ~V, ~eq, p, (mask << 1n : U32), lo, hk, k, v)) == True{} : Bool},
3776 ih: {h.WF(~K, ~V, ~hash, ~eq, p, h.P(~K, ~V, ~eq, p, (mask << 1n : U32), hi, hk, k, v)) == True{} : Bool}
3777) -> {h.WF(~K, ~V, ~hash, ~eq, 1n+p, h.pb(~K, ~V, ~eq, b, p, mask, lo, hi, hk, k, v)) == True{} : Bool}:
3778 match b:
3779 case True{}:
3780 MBool.and_eq_true(h.WF(~K, ~V, ~hash, ~eq, p, h.P(~K, ~V, ~eq, p, (mask << 1n : U32), lo, hk, k, v)), h.WF(~K, ~V, ~hash, ~eq, p, hi), il, wh)
3781 case False{}:
3782 MBool.and_eq_true(h.WF(~K, ~V, ~hash, ~eq, p, lo), h.WF(~K, ~V, ~hash, ~eq, p, h.P(~K, ~V, ~eq, p, (mask << 1n : U32), hi, hk, k, v)), wl, ih)