def conditional

stelliferous@0.0.2.0 · proofs/kernel_weights_witness.bend:8

import stelliferous@0.0.2.0/proofs/kernel_weights_witness.bend as KernelWeightsWitness
import Base
import stelliferous@0.0.2.0/storage_buffer.bend as Storage
import stelliferous@0.0.2.0/proofs/storage_witness.bend as Witness
import stelliferous@0.0.2.0/proofs/traversal_witness.bend as TraversalWitness

8# Missing rows are zero-filled without changing the source owner.
9def conditional(-input: Array<F32>,valid: Bool,+index: U32,evidence: Witness.ArrayWitness<F32,input>) ->
10  TraversalWitness.Sample<Array<F32>,F32,input,Storage.read_when(~F32,0.0,valid,input,index)>:
11  match valid:
12    case False{}: TraversalWitness.Sample{0.0,{==}}
13    case True{}: TraversalWitness.array_sample(~F32,input,Array.get(F32,input,index),Witness.observed(F32,input,index,evidence))

Uses (10)

Used by (8)