def h.g_hi

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

import bend-kit-collections@0.1.4.1/PROOF.bend as PROOF
import Base
import bend-kit-collections@0.1.4.1/hmap.bend as M

2755def h.g_hi(
2756  ~K: Data, ~V: Data, ~eq: K -> K -> Bool, +p: Nat, +mask: U32, +lo: M.HMap<K, V>,
2757  +hi: M.HMap<K, V>, +hk: U32, +k: K, e: {U32.is_eq((hk .&. mask : U32), 0) == False{} : Bool}
2758) -> {h.G(~K, ~V, ~eq, p, (mask << 1n : U32), hi, hk, k)
2759      == h.G(~K, ~V, ~eq, 1n+p, mask, M.HBranch{lo, hi}, hk, k) : Maybe<&2, V>}:
2760  %h.sb(U32.is_eq((hk .&. mask : U32), 0), False{}, e)
2761    : {h.G(~K, ~V, ~eq, p, (mask << 1n : U32), hi, hk, k)
2762       == M.HMap.bool(Maybe<&2, V>, _, u => h.G(~K, ~V, ~eq, p, (mask << 1n : U32), lo, hk, k),
2763         u => h.G(~K, ~V, ~eq, p, (mask << 1n : U32), hi, hk, k)) : Maybe<&2, V>}
2764  {==}

Uses (11)

Used by (3)