That isn't at all obvious. Matrix.times() can and should check for a sparse through the normal vector ops. If it doesn't, that really is a bug.
Sent from my iPhone On Jul 27, 2013, at 6:10, Dmitriy Lyubimov <[email protected]> wrote: > A %*% diagonal === A.times(diagonal) > > And > > A %*%: diagonal === diagonal.timesLeft(A). > > Obviously the latter is n flops and the former is n squared.
