def owned_observation_model

bendtorch-core@0.1.0.0 · src/tensor/core.bend:161

import bendtorch-core@0.1.0.0/src/tensor/core.bend as Core
import Base
import bendtorch-core@0.1.0.0/src/shape/core.bend as Shape
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/tensor/lifecycle.bend as Lifecycle

161def owned_observation_model(-shape: Shape.Shape, +depth: Nat, +length: Nat, -array: Array<F32>, +index: U32,
162  -balanced: Model.Balanced(F32, depth, array), -valid: {Storage.bounds(depth, length) == True{} : Bool},
163  -exact: {length == Shape.logical_numel(Shape.dimensions(shape)) : Nat},
164  -checked: {Storage.index_matches(depth, length, index) == True{} : Bool},
165  certificate: Lifecycle.ArrayObservationModel<depth, length, array, index, checked>) ->
166  ObservationModel<shape, TTensor{Storage.Owned{depth, length, array, balanced, valid}, exact}, index, checked>:
167  Lifecycle.ArrayObservationModel{equal} = certificate
168  ObservationModel{equal}

Uses (15)

Used by (1)