As explained by egreg in his first comment, \min
et. al. have the correct spacing when followed by a delimiter, because by intention, they operate on a set of values (over which to take the minimum). As you use it,
\min_u G(u) + F(Ku)
the expression is itself ambiguous, and the natural parsing as "minimum of G(u)
, plus...oh wait" causes some dissonance halfway through. So the real answer is not to do this, and write
\min_u \{ G(u) + F(Ku) \}
instead. As a bonus, you can drop the subscript and add some more lengthy conditions that would look bad in small print, like
\min_u \{ G(u) + F(Ku) \mid u \in X, Au = b \}
which has the advantage over your second snippet,
\min_{u \in X}\, G(u)+F(Ku) \quad\text{subject to}\quad Au=b
of not incorrectly making an external reference to the "bound variable" u
outside its scope.
I realize that you may believe you are following some kind of convention in your field by omitting the delimiters. However, unless you have given the matter specific thought and developed a strong opinion, you should consider changing your style here, since it has both typographic issues (as you observed) as well as mathematical ones.
P.S. If you really must do it this way, probably the easiest workaround is to use an argument rather than a subscript. For instance,
\newcommand*\mymin[1][]{\min_{#1}\,}
See this minimal document comparing it with the "standard":
\documentclass{article}
\newcommand*\mymin[1][]{\min_{#1}\,}
\begin{document}
$\min A \quad \min_u A$
$\mymin A \quad \mymin[u] A$
\[ \min A \quad \min_u A\]
\[ \mymin A \quad \mymin[u] A\]
\end{document}

Why not use the subscript character directly? First, because parsing it is a pain, as it does not "collect" its argument conveniently as macros do, and therefore, it makes moving that argument difficult. And second, from a programming standpoint, there is only one thing you want to do with \min
, which is subscript it, so it is more logical to associate it with an abstract "do this" operation. The abstraction has the nice side effect of enabling an abstract implementation, namely, to place a space afterwards.
\min
and\max
add a thin space after them if the following item is not a delimiter (parenthesis, square bracket,\lvert
and so on). This is what the standard typesetting rules prescribe. Can you make an example of what you mean?\thinmuskip
value which controls the spacing around (for instance) operators. You can change it with\thinmuskip=2\thinmuskip
or whatever value. However, I'm not sure why would you that… What is so bad? You can't spot the space that is already inserted?