law ok_mk

lawful-bytes@0.1.1.0 · proof_core.bend:272

import lawful-bytes@0.1.1.0/proof_core.bend as ProofCore
import Base
import lawful-bytes@0.1.1.0/defs.bend as D
import lawful-arrays@0.1.0.0/defs.bend as A
import lawful-arrays@0.1.0.0/proof_tree.bend as P

272# ok from its three parts.
273law ok_mk:
274  for +len: U32
275  for +t: P.Tree<U32>
276  for +d: Nat
277  for +hf: {A.full(U32, P.fromT(U32, t), d) == True{} : Bool}
278  for +hd: {Nat.is_le(d, 29n) == True{} : Bool}
279  for +hl: {Nat.is_le(U32.to_nat(len), Nat.mul(4n, Nat.pow(2n, d))) == True{} : Bool}
280  {D.ok(BT(len, t), d) == True{} : Bool}

Uses (14)

Used by (8)