Nah, it's not really correct.
There are plenty of functions that are not specific to an instance of an object, and that don't require state. For example consider 'Math' functions.
Almost all languages have something like:
y = Math.round(x);
So the 'round' function is static. You could, if you were crazy, argue for something like (C#):
class RoundFunction<T> : GeneralMathFunction<T>
{
public override T Operate (params object[] variables) {
..
}
}
But, IMHO, you'd be a little weird to do so.
Certainly there is a time when too many static functions are a sign of something gone wrong, but, within reason, it is not 'bad'.