def planned_parallel_status

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

import bendtorch-core@0.1.0.0/src/tensor/matmul_PROOF.bend as MatmulPROOF
import Base
import bendtorch-core@0.1.0.0/src/shape/core.bend as Shape
import bendtorch-core@0.1.0.0/src/tensor/core.bend as Core
import bendtorch-core@0.1.0.0/src/tensor/matmul.bend as Matrix
import bendtorch-core@0.1.0.0/src/tensor/math_totality.bend as Totality
import bendtorch-core@0.1.0.0/src/storage/arith.bend as Arith

1663def planned_parallel_status(+left: Shape.Shape, +right: Shape.Shape, result: Result<&2, &2, Matrix.Error, Matrix.Plan<left, right>>,
1664  a: Core.Tensor<left>, b: Core.Tensor<right>, -status: PlanStatus<left, right, result>) ->
1665  Totality.Status<Matrix.Error, Core.Dynamic & Core.Dynamic & Core.Dynamic, Matrix.parallel_planned(left, right, a, b, result)>:
1666  match result:
1667    case Fail{error}:
1668      Totality.Status{{\{PlanStatus: successful => Empty.absurd({False{} == True{} : Bool}, Arith.clash(successful))} :
1669        PlanStatus<left, right, Fail{error}> -> {False{} == True{} : Bool}}(status)}
1670    case Done{+plan}:
1671      multiply_parallel_status(left, right, plan, a, b)

Uses (14)

Used by (1)