def agreed_success

bendtorch-core@0.1.0.0 · src/autograd/gradient_PROOF.bend:755

import bendtorch-core@0.1.0.0/src/autograd/gradient_PROOF.bend as GradientPROOF
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/elementwise_totality.bend as Totality
import bendtorch-core@0.1.0.0/src/autograd/gradient.bend as Gradient
import bendtorch-core@0.1.0.0/src/autograd/gradient_LAWS.bend as Laws

755def agreed_success(+shape: Shape.Shape, slot: Gradient.Slot, contribution: Core.Dynamic,
756  -fits: Laws.Fits(shape, slot),
757  -agrees: {Totality.dimensions(contribution) == Shape.dimensions(shape) : List<&2, U32>}) ->
758  Laws.Success<Gradient.agreed(shape, slot, contribution)>:
759  match slot:
760    case Gradient.Unset{}:
761      Laws.Success{{==}}
762    case Gradient.Held{gradient}:
763      held_success(shape, contribution, gradient, fits, agrees)

Uses (11)

Used by (1)