def finish_read_observe
bendtorch-core@0.1.0.0 · src/tensor/lifecycle.bend:243
import bendtorch-core@0.1.0.0/src/tensor/lifecycle.bend as Lifecycle
import Base
import bendtorch-core@0.1.0.0/src/storage/main.bend as Storage
import bendtorch-core@0.1.0.0/src/storage/model.bend as Model
import bendtorch-core@0.1.0.0/src/storage/refinement.bend as Refinement
243def finish_read_observe(+depth: Nat, +length: Nat, -original: Array<F32>, -index: U32, +other: U32,
244 pair: Array<F32> & F32, -exact: {pair == Array.get(F32, original, index) : Array<F32> & F32},
245 -balanced: Model.Balanced(F32, depth, original), -valid: {Storage.bounds(depth, length) == True{} : Bool}) ->
246 {retained_observe(Storage.finish_read(depth, length, original, index, pair, exact, balanced, valid), other) ==
247 checked_observe_array(depth, length, Refinement.first(F32, pair), other) : Maybe<&2, F32>}:
248 (array, value) = pair
249 {==}