anchor.diff:              let inline dfTensorRevCT(a,b) = DivTConstT0(a,b)
               Tensor.OpBinary(a, b, fRaw, fTensor, dfTensorFwdTT, dfTensorFwdTC, dfTensorFwdCT, dfTensorRevTT, dfTensorRevTC, dfTensorRevCT)
           else failwithf "Cannot divide Tensors with shapes %A, %A" a.Shape b.Shape
  -    static member (/) (a:Tensor, b) = a / a.Create(b)
  -    static member (/) (a, b:Tensor) = b.Create(a) / b
  +    static member (/) (a:Tensor, b) = a / a.CreateLike(b)
  +    static member (/) (a, b:Tensor) = b.CreateLike(a) / b
       member t1.Div(t2:Tensor) = t1 / t2
  -    member t1.Div(t2) = t1 / t1.Create(t2)
  +    member t1.Div(t2) = t1 / t1.CreateLike(t2)
   
       static member Pow (a:Tensor, b:Tensor) =
           if a.Shape = b.Shape then
  
positive.code:             let inline dfTensorRevCT(a,b) = SubTConstT0(b)
              Tensor.OpBinary(a, b, fRaw, fTensor, dfTensorFwdTT, dfTensorFwdTC, dfTensorFwdCT, dfTensorRevTT, dfTensorRevTC, dfTensorRevCT)
          else failwithf "Cannot subtract Tensors with shapes %A, %A" a.Shape b.Shape
      static member (-) (a:Tensor, b) = a - a.Create(b)
      static member (-) (a, b:Tensor) = b.Create(a) - b
      member t1.Sub(t2:Tensor) = t1 - t2
      member t1.Sub(t2) = t1 - t1.Create(t2)
  
      static member (*) (a:Tensor, b:Tensor) =
          if a.Shape = b.Shape then
  
negative.code:             let inline dfTensorRevCT(a,b) = PowTConstT0(a,b)
              Tensor.OpBinary(a, b, fRaw, fTensor, dfTensorFwdTT, dfTensorFwdTC, dfTensorFwdCT, dfTensorRevTT, dfTensorRevTC, dfTensorRevCT)
          else failwithf "Cannot exponentiate Tensors with shapes %A, %A" a.Shape b.Shape
      static member Pow (a:Tensor, b) = a ** a.CreateLike(b)
      static member Pow (a, b:Tensor) = b.CreateLike(a) ** b
      member t1.Pow(t2:Tensor) = t1 ** t2
      member t1.Pow(t2) = t1 ** t1.CreateLike(t2)
  
      static member MatMul (a:Tensor, b:Tensor) =
          if a.Dim <> 2 || b.Dim <> 2 then failwithf "Expecting two 2d Tensors, received Tensors with shapes %A, %A" a.Shape b.Shape
  