def get_set_other.go

lawful-arrays@0.1.0.0 · PROOF.bend:125

import lawful-arrays@0.1.0.0/PROOF.bend as PROOF
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
import lawful-arrays@0.1.0.0/proof_index.bend as I

125def get_set_other.go(-T: Data, -a: Array<T>, +d: Nat, +i: U32, +j: U32, +v: T,
126  hf: {D.full(T, a, d) == True{} : Bool}, +hd: {Nat.is_lt(d, 32n) == True{} : Bool},
127  +hij: {Nat.is_eq(D.slot(i, d), D.slot(j, d)) == False{} : Bool}, m: P.Mirror(T, a)) ->
128  {Pair.snd(Array<T>, T, Array.get(T, Array.set(T, a, i, v), j)) == Pair.snd(Array<T>, T, Array.get(T, a, j)) : T}:
129  (t, +e) = m
130  %e : {Pair.snd(Array<T>, T, Array.get(T, Array.set(T, _, i, v), j)) == Pair.snd(Array<T>, T, Array.get(T, _, j)) : T}
131  I.get_set_other_t(T, t, d, i, j, v, full_t(T, a, t, d, e, hf), hd, hij)

Uses (15)

Used by (1)