Hi Paul,
I suppose that this is a numerical effect. The elements of u are not exact numbers. It is easy to see as:
u = N[Log[k]/Log[3], 10] - {6, 5, 3, 0}
gives
{0.*10^-10, 0.*10^-10, 0.*10^-10, 0}
So the first entries are not exactly zero. This leads to the symptom that the small deviation is treated by Mathematica as if it was a small negative number. So that the displayed 6.00000000 you see is actually like a 5.999999999999999999999999....
that means that a tiny little number is subtracted from 6 so that the fractional part is nearly (and up to the precision you use) one.
You see that when you calculate:
FractionalPart[0. - N[Log[k]/Log[3], 10]]
(*{0., 0., 0., 0.}*)
and then (without the "." for the 0)
FractionalPart[0 - N[Log[k]/Log[3], 10]]
{-1.000000000, -1.000000000, -1.000000000, 0}
Another way of looking at your problem is to directly use the Logarithm to the right basis:
FractionalPart[N[Log[3, k], 10]]
which gives numerical zeros:
{0.*10^-10, 0.*10^-10, 0.*10^-10, 0}
I don't think that I explained this very well, but I hope you understand what I wanted to say.
Cheers,
M.