type CellAt

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

import bendtorch-core@0.1.0.0/src/tensor/matmul_parallel_proof.bend as MatmulParallelProof
import Base
import bendtorch-core@0.1.0.0/src/tensor/matmul.bend as Matrix
import bendtorch-core@0.1.0.0/src/tensor/dot_fold.bend as DotFold

153# What output cell `position` holds: +0.0 at or above `count`; below it, a
154# word that folds the factor pairs of row `position / columns` and column
155# `position % columns`, in increasing k from +0.0.
156type CellAt<-dl: Nat, -dr: Nat, -A: Array<F32>, -B: Array<F32>, -inner: Nat, -columns: Nat, -position: Nat,
157  -value: Maybe<&2, F32>> is Data:
158  CellAt{-word: F32, -observed: {value == Some{word} : Maybe<&2, F32>}, -values: List<&2, DotFold.Factors>,
159    -logical: LogicalArr(inner, dl, dr, A, B, inner, columns, Matrix.row_of(columns, position), Matrix.column_of(columns, position), 0n, values),
160    -fold: {word == DotFold.dot_fold(values, 0.0) : F32}}

Uses (10)

Used by (4)