law sv
lawful-bytes@0.1.1.0 · proof_shift.bend:381
import lawful-bytes@0.1.1.0/proof_shift.bend as ProofShift
import Base
import lawful-bytes@0.1.1.0/defs.bend as D
import lawful-bytes@0.1.1.0/proof_core.bend as C
import lawful-arrays@0.1.0.0/proof_tree.bend as P
381law sv:
382 for +m: Nat
383 for +len: U32
384 for +t: P.Tree<U32>
385 for +d: Nat
386 for +k: U32
387 for +tb: P.Tree<U32>
388 for +j: U32
389 for +p: U32
390 for +h0: {D.ok(C.BT(len, t), d) == True{} : Bool}
391 for +hb: {D.ok(C.BT(len, tb), d) == True{} : Bool}
392 for +hp: {U32.to_nat(p) == Nat.add(U32.to_nat(j), U32.to_nat(k)) : Nat}
393 for +hm: {Nat.add(Nat.add(U32.to_nat(j), U32.to_nat(k)), m) == U32.to_nat(len) : Nat}
394 for +hv: {D.view(C.BT(len, tb)) == SV(D.view(C.BT(len, t)), U32.to_nat(k), U32.to_nat(j)) : List<&2, U32>}
395 {D.view(C.BT(len, SGT(len, m, tb, j, p, k))) == SF(D.view(C.BT(len, t)), U32.to_nat(k), U32.to_nat(len)) : List<&2, U32>}