119 |
(BV.op_at, fn (y, [_, dv, sv], xs) => |
(BV.op_at, fn (y, [_, dv, sv], xs) => |
120 |
assign(y, Op.Probe(dimVarToTensor dv, shapeVarToTensor sv), xs)), |
assign(y, Op.Probe(dimVarToTensor dv, shapeVarToTensor sv), xs)), |
121 |
(BV.op_D, fn (y, _, xs) => assign(y, Op.DiffField, xs)), |
(BV.op_D, fn (y, _, xs) => assign(y, Op.DiffField, xs)), |
122 |
|
(BV.op_Dotimes, fn (y, _, xs) => assign(y, Op.DiffField, xs)), |
123 |
(BV.op_norm, fn (y, [sv], xs) => (case shapeVarToTensor sv |
(BV.op_norm, fn (y, [sv], xs) => (case shapeVarToTensor sv |
124 |
of DstTy.TensorTy[] => assign(y, Op.Abs DstTy.realTy, xs) |
of DstTy.TensorTy[] => assign(y, Op.Abs DstTy.realTy, xs) |
125 |
| ty => assign(y, Op.Norm ty, xs) |
| ty => assign(y, Op.Norm ty, xs) |