def stride_value

stelliferous@0.0.2.0 · proofs/tensor_cursor_witness.bend:22

import stelliferous@0.0.2.0/proofs/tensor_cursor_witness.bend as TensorCursorWitness
import Base
import stelliferous@0.0.2.0/tensor_cursor.bend as Cursor
import stelliferous@0.0.2.0/proofs/storage_witness.bend as Witness
import stelliferous@0.0.2.0/proofs/traversal_visit_witness.bend as VisitWitness

22def stride_value(~Element: Data,address: U32,+stride: U32,-storage: Array<Element>,-result: Array<Element> & Element,
23  observed: Witness.Read<Element,storage,result>) ->
24  VisitWitness.Sample<Array<Element>,Element,Cursor.Stride,storage,Cursor.stride_value(~Element,address,stride,result)>:
25  match observed:
26    case Witness.Read{value,equation}:
27      %Equal.sym(Array<Element> & Element,result,(storage,value),equation) :
28        VisitWitness.Sample<Array<Element>,Element,Cursor.Stride,storage,Cursor.stride_value(~Element,address,stride,_)>
29      VisitWitness.Sample{Cursor.Stride{(address + stride : U32),stride},value,{==}}

Uses (10)

Used by (1)