0

In Book of Proof by Richard Hammack, part of a proof that divides into cases is written as such:

Case 1. Suppose $m$ is even and $n$ is odd. Thus $m=2a$ and $n=2b+1$ for some integers $a$ and $b$. Therefore $m+n=2a+2b+1=2(a+b)+1$, which is odd (by Definition 4.2).

Case 2. Suppose $m$ is odd and $n$ is even. Thus $m=2a+1$ and $n=2b$ for some integers $a$ and $b$. Therefore $m+n=2a+1+2b=2(a+b)+1$, which is odd (by Definition 4.2).

In this proof, the author reuses/redefines the symbols $a$ and $b$ in both cases. I understand that reusing symbols is acceptable so long as they are encapsulated in different proofs, but I am not sure whether this applies to proving different cases, especially since the cases are encapsulated in the same overall proof. Is there a hard and fast rule to this as it pertains to proof by cases? Could such a proof be reasonably marked wrong by a teacher?

Cynicrom
  • 316
  • Note that it says "for some integers $a$ and $b$." They could be different. – Sean Roberson Aug 09 '23 at 00:49
  • 2
    Are you are all familiar with the notion of variable "scope", in the context of programming? – Xander Henderson Aug 09 '23 at 00:50
  • @XanderHenderson Very. But I am not 100% sure if the separate cases have independent scopes, and I could not find any sources that mentions this, which is why I am asking. Personally, I avoid reusing variables in the same proof, and I've always thought cases to be part of the same proof by cases. – Cynicrom Aug 09 '23 at 01:19
  • @Cynicrom Scope, in mathematics, is much more informal than in programming. In the language of programming, the variables $a$ and $b$ are instantiated at the beginning of each case, and are scoped only to that case. Not that a mathematician would generally bother to think of it with this level of formality. – Xander Henderson Aug 09 '23 at 01:20

1 Answers1

3

The basic principle of mathematical exposition (i.e. mathematical writing) is that it should clearly and unambiguously convey the reasoning of the author. If the reuse of a label for a variable is likely to cause confusion, then it should be avoided; but if such reuse is unlikely to cause confusion, then there is no problem.

In this case, there are at least two relevant things to keep in mind:

  1. When programming a computer, variables have a scope. Roughly speaking, the scope of a variable is the part of the program in which that variable exists. For example, consider the code

    int main() {
    

    for(int i=1, i<10, i++) { // the variable i exists here, and can be part of formulae, // or passed to other functions }

    // but as soon as the loop ends, the variable i ceases to exist

    Generally speaking, when a new variable is created in some part of a program, that variable is only visible to the particular function which created that variable (and, perhaps, to sub-functions called by that function, depending on language). So, for example, the variable i might get used again and again as an index for a loop. Every new loop creates a new variable called i, but this causes no problems, because each instance of the variable has a different scope.

    Something similar is happening in Hammock's proof. In Case 1, Hammock creates new variables, $a$ and $b$, which are scoped only to that case. He does something with those variables, arrives at some result, and resolves the case. As soon as Hammock concludes the argument in Case 1, those variables have served their purpose, and cease to exist. Hammock then begins Case 2 by creating two new variables, which are also called $a$ and $b$, but which are scoped to the second case alone. In short, the cases have independent scopes.

    In programming languages, the scope of a variable is rigorously defined, and it is up to the interpreter or compiler to work out the scope of a variable, based on the specific implementation of the language. In mathematical writing, it is up to the author and reader to figure out the scope of variables—the rules are far less formal, but our usual instincts with respect to the plain use of language are generally correct.

  2. There are certain labels which mathematicians have generally agreed are relatively "disposable", and can safely be used repeatedly to mean lots of different things throughout an argument (again, so long as scope is respected). For example

    • $a$, $b$, and $c$ (possibly with subscripts) are often used to represent constants; indeed, Hammock has used $a$ and $b$ to represent constants in the proof presented above;
    • $m$ and $n$ (again, possibly with subscripts) are often used to represent integers or natural numbers, and will very likely show up as indices for sequences (or as a maximum index for a tuple, e.g. $(a_j)_{j=1}^{n}$ is the tuple $(a_1, a_2, \dotsb, a_n)$;
    • $i$, $j$, and $k$ are often used as indices, particularly when using "big" symbols for repeated summation, multiplication, etc.; e.g. $\sum_{i=1}^{n}$, $\bigotimes_{j=1}^{n}$, $\prod_{k=1}^{n}$, and so on;
    • $x$, $y$, and $z$ (again, with possible subscripts) are often used for generic variables, particularly when working with real (or complex) numbers, general vectors, etc.

    When an author uses a generic label, it is often a sign that the particular variable or quantity being discussed is a "dummy", or is relatively disposable. It should not be surprising if such a label is reused throughout an argument—that said, most mathematicians will try not to use the same label to mean multiple things within a single scope (a big exception being constants of integration—the value of $C$ might change every line).

The take home here is that, yes, Hammock has used the same labels for distinct variables in the two different cases. However, to most readers, this should pose no problem, as (a) the scope of each case is different, and (b) the particular labels chosen are "disposable", and should not be expected to persist.