law get_set_other_t

lawful-arrays@0.1.0.0 · proof_index.bend:626

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

626law get_set_other_t:
627  for -T: Data
628  for +t: P.Tree<T>
629  for +d: Nat
630  for +i: U32
631  for +j: U32
632  for +v: T
633  for +hf: {D.full(T, P.fromT(T, t), d) == True{} : Bool}
634  for +hd: {Nat.is_lt(d, 32n) == True{} : Bool}
635  for +hij: {Nat.is_eq(D.slot(i, d), D.slot(j, d)) == False{} : Bool}
636  {Pair.snd(Array<T>, T, Array.get(T, Array.set(T, P.fromT(T, t), i, v), j))
637    == Pair.snd(Array<T>, T, Array.get(T, P.fromT(T, t), j)) : T}

Uses (29)

Used by (1)