return -l.elem();
typename BinaryReturn<IScalar<T1>, ILattice<T2,N>, OpSubtract>::Type_t  d;  for(int i=0; i < N; ++i) d.elem(i) = l.elem() - r.elem(i); return d;
operator-(const IScalar<T1>& l){  return -l.elem();}