def factors_snoc
bendtorch-core@0.1.0.0 · src/autograd/tensor_vjp_PROOF.bend:289
import bendtorch-core@0.1.0.0/src/autograd/tensor_vjp_PROOF.bend as TensorVjpPROOF
import Base
import bendtorch-core@0.1.0.0/src/tensor/dot_fold.bend as DotFold
289def factors_snoc(+before: List<&2, DotFold.Factors>, +after: List<&2, DotFold.Factors>, +x: F32, +y: F32, +u: F32, +v: F32,
290 rest: {before == after : List<&2, DotFold.Factors>}, xu: {x == u : F32}, yv: {y == v : F32}) ->
291 {List.append(&2, DotFold.Factors, before, [DotFold.Factors{x, y}]) ==
292 List.append(&2, DotFold.Factors, after, [DotFold.Factors{u, v}]) : List<&2, DotFold.Factors>}:
293 %rest : {List.append(&2, DotFold.Factors, before, [DotFold.Factors{x, y}]) ==
294 List.append(&2, DotFold.Factors, _, [DotFold.Factors{u, v}]) : List<&2, DotFold.Factors>}
295 %xu : {List.append(&2, DotFold.Factors, before, [DotFold.Factors{x, y}]) ==
296 List.append(&2, DotFold.Factors, before, [DotFold.Factors{_, v}]) : List<&2, DotFold.Factors>}
297 %yv : {List.append(&2, DotFold.Factors, before, [DotFold.Factors{x, y}]) ==
298 List.append(&2, DotFold.Factors, before, [DotFold.Factors{x, _}]) : List<&2, DotFold.Factors>}
299 {==}