def transpose_decided_failure

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

import bendtorch-core@0.1.0.0/src/tensor/transform_PROOF.bend as TransformPROOF
import Base
import bendtorch-core@0.1.0.0/src/shape/core.bend as Shape
import bendtorch-core@0.1.0.0/src/tensor/layout.bend as Layout
import bendtorch-core@0.1.0.0/src/tensor/core.bend as Core
import bendtorch-core@0.1.0.0/src/tensor/transforms.bend as Transforms
import bendtorch-core@0.1.0.0/src/tensor/lifecycle.bend as Lifecycle
import bendtorch-core@0.1.0.0/src/tensor/transpose_spec.bend as TransposeSpec

1651def transpose_decided_failure(+input: Shape.Shape, +a: U32, +b: U32,
1652  decision: Shape.BoolCase<TransposeSpec.valid(input, a, b)>, source: Core.Tensor<input>,
1653  -outside: {False{} == TransposeSpec.valid(input, a, b) : Bool}) ->
1654  TransposeDecidedFailure<input, source, a, b, decision>:
1655  match decision:
1656    case Shape.BFalse{equal}:
1657      TransposeDecidedFailure{{==}}
1658    case Shape.BTrue{equal}:
1659      TransposeDecidedFailure{Empty.absurd({Transforms.transpose_decided(input, source, a, b, Shape.BTrue{equal}) ==
1660        (source, Fail{Transforms.LayoutError{Layout.AxisOutOfBounds{}}}) : Core.Tensor<input> & Result<&2, &1, Transforms.Error, Core.Dynamic>},
1661          Lifecycle.false_true(Equal.trans(Bool, True{}, TransposeSpec.valid(input, a, b), False{}, equal,
1662            Equal.sym(Bool, False{}, TransposeSpec.valid(input, a, b), outside))))}

Uses (18)

Used by (1)