law swap_old_t

lawful-arrays@0.1.0.0 · proof_index.bend:478

import lawful-arrays@0.1.0.0/proof_index.bend as ProofIndex
import Base
import lawful-arrays@0.1.0.0/defs.bend as D
import lawful-arrays@0.1.0.0/proof_tree.bend as P

478law swap_old_t:
479  for -T: Data
480  for +t: P.Tree<T>
481  for +d: Nat
482  for +i: U32
483  for +v: T
484  for +hf: {D.full(T, P.fromT(T, t), d) == True{} : Bool}
485  for +hd: {Nat.is_lt(d, 32n) == True{} : Bool}
486  {Some{Pair.snd(Array<T>, T, Array.swap(T, P.fromT(T, t), i, v))}
487    == List.get(&2, T, D.view(T, P.fromT(T, t)), D.slot(i, d)) : Maybe<&2, T>}

Uses (30)

Used by (1)