27

I'm currently writing my thesis in computer science. My work contains a large amount of equations to do with linear algebra, data transformations and calculus. On receiving feedback on my first draft from my supervisor, he has told me that I am reusing symbols all over the place. So I am going back over things, but I'm finding that I'm running out of both English and Greek characters and I'm having to constantly search back through the text to see if the symbol I want to use has already been defined. For example:

Take two vectors X and Y with lengths m and n respectively.

All of these symbols have previously been used. So my question is, once a symbol has been defined once, can it not be reused for the whole thesis, and how then should I deal with this problem.

Thanks.

  • 2
    The question is probably not a good fit here; but using a fresh symbol everytime you need a symbol is terrible advice. Same things should be named the same, similar things with similar names. Don't you have to further transform X and Y? – choener Jan 31 '15 at 12:13
  • 11
    @choener It is a perfect fit here, it is a question about writing academic papers and spans pretty much all STEM fields. – WetlabStudent Feb 1 '15 at 6:22
  • 2
    On top of all the advice given below, hats, tildes, bars, primes, arrows etc. can be placed on top of any symbol to great a new one. – WetlabStudent Feb 1 '15 at 6:26
  • 3
    You may want to clarify matters with your supervisor: is he really objecting to any symbol being reused anywhere in the thesis (an unreasonable objection, in my opinion) or only with some specific instances in which you've reused a symbol in a context which could actually be ambiguous or confusing (reasonable)? Maybe it's not as big a deal as you think. – Nate Eldredge Feb 1 '15 at 15:01
  • 3
    I have actually heard of the Cyrillic alphabet being used facetiously абвгґдеєжзиіїйклмнопрстуфхцчшщюяь, but I wouldn't advise it, as there are only a few letters that would certainly not be confused with Latin small-caps, lower- or upper-case letters, namely гґдєжзилпфцчшщюяь. Even so, two pairs of Cyrillic letters differ only by a hook: гґ and шщ. (Also, this is Ukrainian, for Russian it's slightly different) – Iwillnotexist Idonotexist Feb 1 '15 at 16:17
30

Running out of symbols is a fairly common scenario, and it is usually caused by assigning symbols too early without due consideration to the amount of work yet to come. As such, the main thing to do is to

Restructure

Think about the entire set of symbols you're using.

  • For which ones is the specific symbol in use crucial for the clarity of the text? There will usually be a core of symbols that you really don't want to reassign, but this is probably smaller than you think. Earmark those symbols for these concepts, and disregard other occurrences (even if they happen earlier in the text).

  • Keep this core small. Use variations on the symbols (upper/lower case, primes, subscripts) to fit as many variations of the concepts into the key symbols.

  • Serialize. If you have some sequence of objects which you initially called a, b, c, d, ..., use an appropriate subscript or parenthesis notation to collapse them into a single symbol. Over-expansive naming of sequences of this sort is probably the number-one reason for running out of symbols in the first place.

The other thing you should do is

Encapsulate

It is perfectly OK to have the same symbol appear twice, with different meanings, in the same extended piece of work, as long as there is no confusion between them. This is particularly easy to do if the symbols appear, for example, inside the proof of a theorem. Thus, if at some point you use the symbol x in a context like

Proof. Let x be ... ... ... . ▮

then it is probably OK to re-use the same symbol in a similar encapsulated environment, as long as (i) you clearly define the symbol on its first appearance in each environment, and (ii) you don't (excessively) reference the symbol once you're outside of the encapsulated environments.

Similarly, it is usually OK to reuse symbols in different chapters as long as the topic of the two chapters is sufficiently different compared to the similarity of the symbols and the amount of weight you put into the choice of symbol. This is a very common practice: look at any linear algebra textbook and you'll see the symbol v used a number of times, to refer to vectors that are not necessarily compatible. The techniques they use to avoid confusion are forms of encapsulation.

From the phrasing of your question, it seems that this is partly the problem with your supervisor. One way to go about this is to step up the encapsulation, either by being more clear with the text, by introducing formal environments, or even using graphical means like boxes around examples to make it clear that the symbol choice is local to that environment.

If all else fails

Some amount of creativity is OK

This includes things like multi-letter symbols for important context, though you should be careful with how you typeset them (usually in upright script). However, you should avoid using letters from non-standard alphabets, as they will only further the confusion: few of your readers will know how to pronounce them (which then extends into how they internally vocalize them while reading, and makes it harder for your readers to discuss the paper with each other), and it makes it harder for others to adapt and extend your notation.

  • Multi-letter symbols in LaTeX should usually be defined through \DeclareMathOperator, which takes care of the correct formatting and spacing. – bodo Aug 3 '15 at 10:31
  • @canaaerus Not necessarily. SO(3) is probably best displayed using \mathrm. – E.P. Aug 3 '15 at 10:55
  • I don't see why. Could you give an example illustrating it? – bodo Aug 3 '15 at 11:07
  • I don't really see the need. \DeclareMathOperator is useful but it is one among a toolbox. Can you prove it is the mandatory choice for all multi-letter symbols? In any case, I don't see the particular importance of this for the matter at hand. – E.P. Aug 3 '15 at 11:41
  • 1
    Most symbols are (generally) not operators. The OP is already going into the highly questionable ground of using multi-letter symbols for ordinary variables based on some hunch that their supervisor won't like symbol reuse. I seriously don't see the need to quibble over arcane TeX details. – E.P. Aug 3 '15 at 12:06
20

First of all, consider using indices for related objects. E.g., in your example:

Take two vectors X_1 and X_2 with lengths m_1 and m_2 respectively.

(I use _ to indicate a subscript as in TeX).

On a related note, you can employ boldface and italics to distinguish among the symbols for different objects.

Also, as you are in computer science and probably use some flavor of TeX or LaTeX for writing your thesis you can use nonstandard alphabets and symbols it permits (see e.g. this list or this one).

Second, in the unlikely case the above advice does not completely solve your problem, you fairly safely can redefine the meaning of a symbol once you begin a new chapter (assuming that your average chapter is more than just a few pages).

Third, as a truly last resort, you can use nonstandard alphabets like Hebrew or Cyrillic.

7

A symbol used before can certainly be reused, in particular when it's meant to represent something very generic. For example, a length n on page 15 and a length n on page 21 may both refer to an arbitrary length, without any implied or otherwise statement that both lengths are the same.

The issue in your case is: Your supervisor doesn't like this.

There are, however, ways around this. A common way is to distinguish your symbols by subscript texts:

  • For generic symbols, you can use running indices, e.g. n1, n2, etc.
  • Alternatively, as that might mean quite high (and arbitrary-seeming) numbers in later pages (x34 = y198 * z12 might look a bit weird), you can add something specific to the chapter, the formula, or the figure (whatever the maximum scope of the symbols is supposed to be), and just a running number within that context. This would mean that symbols based on n in chapter 3.4 are named something like n3.4,1, n3.4,2, etc.
  • As soon as your symbols are not meant to be entirely generic, but have a certain particular meaning or significance, a good way to name them is to use explicit indices that state the purpose of the symbol. So, you start working with nMethodX-input, nJohnDoesCoefficient and nresult(algorithm1).

Depending on future plans for your text, you may even want to consider preferring such subscripts over any Greek characters or formatting variations (cursive, ...) in the first place, as the subscript variant can be flawlessly transformed/represented in contexts where little or no formatting is available (plain text files, unformatted e-mails, instant messages, hand-written paper or boardwriting, ...), and possibly (depending lastly on how you name your symbols) even with only ASCII characters that can be processed and recognized almost everywhere.

3

My supervisor says not only that I do not must repeat two time the same symbol, but also that I can not use a symbol like AB because someone could read it like A \cdot B.

In my last paper, for example, I have used P_{P_E}.

So, in my opinion, when you define an object with a name (e.g. x, y, z) you can not reuse this name for any other parameter.


EDIT

The code, of course, is TeX. ;-)

  • 5
    The rule against re-using a symbol seems excessive, but I agree that AB is a terrible name for a variable if your paper also contains variables A and B. – Tom Church Feb 1 '15 at 20:31
  • In mathematics, AB means A times B ... of course in a computer language that is not true. So, which are you writing: mathematics or a computer language? A computer science thesis could be doing either one, but make up your mind... do not mix the two. – GEdgar Jun 5 '18 at 0:32
1

I am surprised that no one mentioned the keyword "scope" here, especially since there is some connection to computer science. Nor "global variables", nor "name spaces"...!?! It is true that some effort is required to be clear about scope of variable names, and that there are local and global namespaces, and that sometimes it's not clear, which is a bad thing.

I'd think that all variables (=variable names) should be local by default, rather than global, and to re-use something say "as earlier in section XX" rather than having an implicit global namespace. That makes everything easier to read, in any case.

Yes, there are strong arguments in favor of have a few global names, especially if those are standard conventional names anyway. And try to avoid global names that are violently contrary to standard conventions...

Very possibly the issue is not really about symbols per se, but about ambiguities in references/namespaces, so revision of the writing itself (to make such things clearer) is the problem. But, by accident, a critical appraisal may sound like a literal objection to the ambiguous use of symbols, while that's merely a symptom, not the whole problem.

  • 2
    On the contrary, the accepted answer does mention what you call 'scope'. You'll find it under 'Encapsulate'. Name spaces as a technical concept are pretty much confined to computer science while the audience of this question is much broader than that. Most answers are pitched at a level appropriate to that audience and do not use that technical concept, which makes them more useful. – E.P. Aug 3 '15 at 13:41
  • 3
    @E.P., maybe you're right that people don't know about "namespaces", but this mildly surprises me, given the utility of the concept. (I'm a mathematician, not a computer scientist or programmer...) The sense of "encapsulate" that appears in "Object Oriented Programming" is also broadly useful, ... but/and it is odd to read "encapsulate" in place of "scope", and such. Perhaps my capacity to gauge the audience is ever-declining... :) – paul garrett Aug 3 '15 at 13:54
-6

You are writing a thesis in computer science.

I can use my own personal experience as a guide in answering your question. Rarely, if ever, have I seen symbol repetition in a single college textbook on anything science/math related. However, across different subject matter and their associated different textbooks we do see symbol repetition. A college textbook on calculus might very well use similar symbols as a college textbook on physics.

Your thesis will get confusing if you use X for this and X for that in a single thesis. In my estimation, you have to come up with a way to clearly convey the differences to the readers. You shouldn't confuse the readers in your thesis. It's counter to conveying the fact that you have a mastery of your subject matter. All that being said, I don't think it will be difficult to differentiate all of your symbols. There are many different combinations you can use to convey differences consistently through your thesis.


This may be a longshot suggestion, but perhaps you could start incorporating symbols from your computer's "Character Map" GUI. For example: Ǟ ź Ǥ

Those three are all from the Arial selection from "Character Map". There are many others.


I don't see any problem whatsoever with re-using a symbol that represents the same thing throughout your thesis. That is done everywhere and in every college textbook I've ever seen. For example, if "D" means density throughout the thesis then you should be able to use it whenever density is discussed.

  • 9
    I don't really think this is good advice. Whether it's OK to reuse a symbol, even for a different quantity, depends on whether there's a chance of confusion or not, and this is context-dependent. If you critically examine any given textbook in math or related sciences, you'll likely find some reuse of symbols. On the other hand, using non-standard symbols like "Ǥ" is something I would strongly advise against. It confuses the reader, will not necessarily display correctly on all viewing devices, and makes it harder to quote the work. – E.P. Jan 31 '15 at 19:29
  • 1
    @E.P. At the end of the day, it doesn't matter what you and I think. All that matters is what his supervisor demands. – Inquisitive Jan 31 '15 at 19:32
  • 7
    @Inquisitive In my experience, most supervisors are rather more reasonable than you imply, except when faced with the most recalcitrant of students. – jakebeal Jan 31 '15 at 20:05
  • 1
    What is the difference between Ǥ and G? Sure, I can see it when put side to side, but I won't if they are in a single formula. The same goes for Ǟ and Ä (slight displacement of the dots). Also, I wouldn't get new symbols adding typographical elements because these usually indicate transformations; for example, a single dot on top for time derivatives. – Davidmh Mar 8 '15 at 9:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.