law backward_accepts_bound_operands
import bendtorch-core@0.1.0.0/src/autograd/backward_LAWS.bend as BackwardLAWSimport Base
import bendtorch-core@0.1.0.0/src/autograd/backward.bend as Backward
412# A tape whose every operand is bound is accepted for every output it holds.
413law backward_accepts_bound_operands:
414 for +entries: List<&2, Backward.Entry>
415 for +output: Nat
416 for inside: {Nat.is_lt(output, List.length(&2, Backward.Entry, entries)) == True{} : Bool}
417 for bound: {well_formed(Backward.nodes(entries)) == True{} : Bool}
418 {Backward.backward(Backward.Tape{entries}, output) ==
419 Done{Backward.Tape{Backward.merge(entries, Backward.pass(Backward.nodes(entries), List.length(&2, Backward.Entry, entries), output))}} :
420 Result<&2, &2, Backward.Error, Backward.Tape>}
Uses (18)
Used by (0)
No other definition uses this definition.