law ol_go_view
lawful-bytes@0.1.1.0 · proof_grow.bend:139
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
139law ol_go_view:
140 for +xs: List<&2, U32>
141 for +len: U32
142 for +t: P.Tree<U32>
143 for +d: Nat
144 for +h: {D.ok(C.BT(len, t), d) == True{} : Bool}
145 for +hb: {D.all_bytes(xs) == True{} : Bool}
146 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}
147 {D.view(B.of_list.go(xs, C.BT(len, t))) == List.append(&2, U32, D.view(C.BT(len, t)), xs) : List<&2, U32>}