law sgd_empty_slot_kept

bendtorch-core@0.1.0.0 · src/autograd/sgd_LAWS.bend:23

import bendtorch-core@0.1.0.0/src/autograd/sgd_LAWS.bend as SgdLAWS
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/autograd/gradient.bend as Gradient
import bendtorch-core@0.1.0.0/src/autograd/tensor_backward.bend as Backward
import bendtorch-core@0.1.0.0/src/autograd/sgd.bend as Sgd

23# A parameter whose slot is empty, PyTorch's p.grad is None, is left as it
24# was.
25law sgd_empty_slot_kept:
26  for +lr: F32
27  for node: Backward.Node
28  for +shape: Shape.Shape
29  for value: Core.Dynamic
30  for saved: Backward.Saved
31  {Sgd.descend(lr, Backward.Entry{node, shape, value, saved, Gradient.Unset{}}) ==
32    (Backward.Entry{node, shape, value, saved, Gradient.Unset{}}, Done{Unit{}}) : Backward.Entry & Result<&2, &2, Sgd.Error, Unit>}

Uses (13)

Used by (0)

No other definition uses this definition.