law ol_go_ok

lawful-bytes@0.1.1.0 · proof_grow.bend:178

import lawful-bytes@0.1.1.0/proof_grow.bend as ProofGrow
import Base
import lawful-bytes@0.1.1.0/defs.bend as D
import lawful-bytes@0.1.1.0/bytes.bend as B
import lawful-bytes@0.1.1.0/proof_core.bend as C
import lawful-arrays@0.1.0.0/proof_tree.bend as P

178law ol_go_ok:
179  for +xs: List<&2, U32>
180  for +len: U32
181  for +t: P.Tree<U32>
182  for +d: Nat
183  for +h: {D.ok(C.BT(len, t), d) == True{} : Bool}
184  for +hn: {Nat.is_le(Nat.add(U32.to_nat(len), List.length(&2, U32, xs)), Nat.mul(4n, Nat.pow(2n, d))) == True{} : Bool}
185  {D.ok(B.of_list.go(xs, C.BT(len, t)), d) == True{} : Bool}

Uses (32)

Used by (2)