IEEE Computer Society Style Guide

Math Guidelines

Variables, constants, matrices, vectors, units, acronyms in disguise, and control-flow diagrams

When should you italicize, when should you use bold, and when should you do neither? If you edit Computer Society articles, you need to have a good handle on the answers to these questions. The detailed answers below are meant to help you see the logic behind these answers, so that you will be able to consistently make the right decisions when confronted with a math-heavy article.

• A constant is a letter that represents one distinct value that never changes, no matter what. Don't italicize constants. For example, the letter k is often used to represent Boltzmann's constant, which is always equal to 1.380622 × 10-23 Joules/Kelvin. We use the letter k to avoid having to write out this long number in our equations, but it's not a variable, because its value can never change; it remains constant. In most cases, the author will identify the letter as a constant. If he or she doesn't, you can probably assume it's not a constant. The only exception I can think of is the speed of light (2.997925 × 108 m/s), a constant typically represented by the letter c. Authors probably wouldn't explicitly refer to it as "a constant," but it is, and you should not italicize it. By the way, this is the same c that appears in Einstein's most famous equation, E = mc2. Written properly, the E (energy) and m (mass) should be italicized (because they're variables), but the c (the speed of light) should not be italicized.
• A variable, unlike a constant, is a letter that can represent more than one possible value. Italicize all such letters (except uppercase Greek). For example, we could represent time by the letter t, a variable. Time can be 3, 4, 5, ... seconds. Time is a variable. Even when we are referring to one instance (for example, t = 4), or even if the author says something like "we are keeping the time constant," we should still italicize t because it is possible in another situation that t would not be kept constant at 4 ms or whatever. Time is not a constant that is universally always equal to 4. The speed of light, on the other hand, never changes, no matter what. Boltzmann's constant never changes either. That is, it is impossible for a constant to be anything except the value it equals. If you can't make this statement, then you're not looking at a constant.
• Matrices represent an array of numbers (columns and rows), like the desks in a classroom. Make them bold and italic. An exception to this is a matrix that acts like a constant: either the identity matrix (which is always represented by I) or a matrix that the author clearly says acts like a constant. If you have one of these exceptions, then you should make the matrix only bold (not bold and italic). Other than identity matrix I, unless the author says the matrix acts like a constant, you should assume that it is variable in nature and, therefore, should be bold and italic. However, the individual elements should be listed as italic (not bold), because they are actually variables. For example, imagine you are in classroom A, a matrix. The person in the 1st row, 1st column is element a11. Second row, first column is element a21. If you sit in the 2nd row from the front, 3rd column from the left, you are element a23. Note that rows go across the classroom (side to side), while columns go from front to back (even though, for some reason, in school people call "rows" what are actually columns). Now, the person behind you (3rd row, 3rd column) is element a33. The person to your right (second row, fourth column) is element a24, and so on.
• Vectors are, in a way, special variables that also have a direction associated with them. However, do not italicize vectors. Instead, make vectors bold—for example, the vector v. We typically represent vectors by lowercase letters, whereas we represent matrices by uppercase letters. However, we often represent the elements in a matrix by lowercase letters (but I think I've seen capital letters used for matrix elements as well).
• Units are letters that actually stand for words, not numbers. Do not italicize them. For example, when s means second, we should not italicize it. The same goes for Greek letters. We italicize lowercase Greek variables, but we do not italicize lowercase Greek units, such as the µ in µs (meaning microseconds).
• Beware of acronyms disguised as variables! Don't italicize them. Innocent editors can fall prey to mistakenly italicizing a subscript or superscript that looks like a variable but actually isn't. For example, in VDD, the letter V is a variable and should be italicized, but DD are neither variables nor constants. They are more akin to acronyms. They don't stand for numbers; they stand for words. That's the test. If you can't put a number in for a letter, then don't italicize it, because it's not a variable. In this case, the DD tells us that this is the drain voltage in a transistor. Now, let's consider VT. This T probably refers to "temperature," and so is not a variable. You'll have to look at the context surrounding it. However, usually these subscripts are not variables. A common exception is n or i (or even t), when indicating a series of numbers such as V1, V2, ..., Vn . In this case, a number can indeed be inserted in place of n, so we should italicize it. Another example of an acronym in disguise, but one that is not a subscript, is in the following sentence from an article I edited by Sachdev: "The NMOS transistor's source (n+), bulk (p–), and drain (n+) terminals form an npn bipolar transistor." In this case, the n and p are neither variables nor constants. They are, once again, more akin to acronyms but typically appear in lowercase. You cannot substitute a number for either of these.
• Letters in control-flow diagrams represent steps, not numbers. Don't italicize them. Once again, a variable is a letter that represents a number. If you can't substitute a number for a letter, then that letter is not a variable and thus should not be italicized. For an example of a control-flow diagram, see Figures 1 and 2 in "Intra-Task Voltage Scheduling for Low-Energy, Hard, Real-Time Applications" (Dongkun Shin, Jihong Kim, and Seongsoo Lee, IEEE Design & Test, Mar.-Apr. 2001, pp. 20-30).

Coding math

Always code math from your keyboard or the insert/symbol/Symbol font menu rather than from other menus (such as normal type, Euclid Math, and so on). Hard-coding the symbols using the numeric keypad is also acceptable (for example, you can use Alt 0150 to insert a minus sign); but don't forget to turn NumLock on.

When to use or not use MathType

The general rule of thumb is to resist using MathType. MathType is difficult to set when it is inline—embedded in the text—because the artist must make a small picture box sit inline with the text. Stand-alone display—when a MathType equation sits on a line of its own—also takes more processing by the production artist.

Unavoidable MathType

A few situations always require the use of MathType. If you really think you need to use Math Type but the situation isn't listed here, you might consider getting a second opinion from someone familiar with math.

Stacked equations.
In these equations, one string of mathematical operations sits above another:

Always consider whether these can be converted to a single line (using a slash to represent the fraction bar instead of a horizontal line).
Equations that use the square root symbol.
An example is . Try instead (if the author doesn't object) raising the number to the 1/2 power (Tbe = Tx1/2), which is the same as taking the square root.
Characters with overbars.
If possible, consider whether the author can make some substitution. Some production artists actually throw out our carefully coded Math Type overbar characters and draw a bar over the letter in Quark. But you still may need to code MathType for SGML.
An exponent of an exponent.
An example of this would be en¼. Unfortunately, there's not much we can do to change this one.
A superscript of a superscript or a subscript of a subscript:
For the latter case, consider asking the author to use, for example, at4, which can be coded without Math Type. For the former (a super of a sub), use MathType.

Common ways to avoid MathType

• A character that has both a superscript and a subscript—for example, GPA—does not require MathType. Simply code the p as a subscript and code the A as a superscript.
• Change a stacked equation, such as

into a single-line equation: Tbe = To/(PwPs). Note the necessary use of parentheses in this case.