Math terminology: What are rules regarding hyphens? (Nonzero vs. non-zero)

This question is geared toward clarifying terminology in writing math.

Which terms are correct and why?

  1. A set $E$ is non-empty.
  2. A set $E$ is nonempty.

  1. The number $x$ is non-negative.
  2. The number $x$ is nonnegative.

  1. The number $y$ is non-positive.
  2. The number $y$ is nonpositive.

  1. The number $z$ is non-zero.
  2. The number $z$ is nonzero.

As a personal preference, I like the way nonzero looks but I prefer to use non-empty so I don't know what the consistency with hyphens is when prefixing "non". I also like the way nonnegative reads but I feel like non-positive looks better than without a hyphen. I don't have any rhyme or reason why I have these preferences and that's why I'm curious to learn if there is a correct version of each term listed above.


Solution 1:

Since many (or a nonnegligible amount) of authors just do not care, I guess it's up to personal preference. However, there is a semantic code, like pointed out here. Thereafter, the prefix non is not hyphenated. And I really think this should be consistent. I had nonzero, nonempty and nonholonomic occuring in my thesis and it was "corrected" by different supervisors into different versions, mostly where non-holonomic was hyphenated and the rest not. I really think this is bad practice, since consistency is lost by this "to highlight" mentality. If on tries to highlight something, why not explain it and treat it consistently in semantics.

To underline my point consider using $X$ for vectors in one direction. For some other vector, to hightlight that it's not in this direction you use $\alpha$. But why not $Y$ with an explanation?! Therefore, semantics is consistent and the highlights are where they belong, in the "comments".

What got me to enforce this was that every title I cited contained the nonhyphenated versions of all those words. Thus, (from a far too small sample, but of good works) I conclude that this is common practice in this field (between robotics and automation).

Oxford Dictionary also advises to use hyphens for prefixes, which lead to vowel collisions, like pre-advised, although nothing further is stated there.

Solution 2:

Donald Knuth says we should drop the hyphens.

Here is the link to his post in which he says so:

https://cs.stanford.edu/~knuth/email.html