Produced by Charles Wells Revised 20170311 Introduction to this website website TOC website index blog back to languages of math head
Preconditions and Postconditions
Mathematical writing consists of a mixture of mathematical English and the symbolic language. Fragments of each language are embedded in each other and refer to each other. The relationship between the two languages can be subtle, and both languages contain explicit and implicit conventions concerning the words and notation used and also concerning the embeddings and references. This chapter shows you some of that behavior.
Spoken mathematics is not covered in abstractmath.org. It is usually a combination of spoken math English, pronouncing simple symbolic expressions and pointing at the blackboard to complicated expressions that are essentially impossible to pronounce in a comprehensible way.
Written and especially spoken language depends heavily on the context – the physical surroundings, the preceding conversation, and social and cultural assumptions. Mathematical assertions are produced in such contexts, too, but here I will discuss a special thing that happens in math conversation and writing that does not seem to happen much in other sorts of discourse:
The meanings of expressions
in both the symbolic language and math English
change from phrase to phrase
as the speaker or writer changes the constraints on them.
In a math text, before the occurrence of a phrase such as "Let $n=3$", $n$ may be known only as an integer variable. After the phrase, it means specifically $3$. So this phrase changes the meaning of $n$ by constraining $n$ to be $3$. We say the context of occurrences of "$n$" before the phrase requires only that $n$ be an integer, but after the occurrence of the phrase, the context requires $n=3$.
The context at a particular location in a mathematical discourse is the sum total of what the reader or listener can know about the symbols and names used in the discourse when they have read everything up to that location.
Here is a typical example of a theorem and its proof. It is printed twice, the second time with comments about the changes of context. This is the same proof that is already analyzed practically to death in the chapter on presentation of proofs.
Definition: Divides
Let $m$ and $n$ be integers with $m\ne 0$. Then $m$ divides $n$ if there is an integer $q$ for which $n=qm$.
Theorem
Let $m$, $n$ and $p$ be integers, with $m$ and $n$ nonzero, and suppose $m$ divides $n$ and $n$ divides $p$. Then $m$ divides $p$.
Proof
By definition of divides, there are integers $q$ and $q'$ for which $n=qm$ and $p=q'n$. We must prove that there is an integer $q''$ for which $p=q''m$. But $p=q'n=q'qm$, so let $q''=q'q$. Then $p=q''m$.
Definition: Divides 
Begins a definition. The word "divides" is the word being defined. The scope of the definition is the following paragraph. 
Let $m$ and $n$ be integers 
$m$ and $n$ are new symbols in this discourse, constrained to be integers. 
with $m\ne 0$ 
Another constraint on $m$. 
Then $m$ divides $n$ if 
This phrase means that what follows is the definition of the assertion "$m$ divides $n$." 
there is an integer $q$ 
"There is" signals that we are beginning an existence statement and that $q$ is the bound variable within the existence statement. 
for which $n=qm$ 
Now we know that "$m$ divides $n$" and "there is an integer $q$ for which $m=qn$" are equivalent assertions. After the conclusion of the definition, $m$, $n$ and $q$ are undefined variables. We do not know that $m$ divides $n$ or that $m=qn$, only that the two assertions are equivalent. The only effect a definition has on the meaning of words and symbols in the following discourse is the meaning of the word being defined. 
Theorem 
This announces that the next paragraph is an assertion that (in real time) has been proved. In terms of reading the text in order, it has not yet been proved. 
Let $m$, $n$ and $p$ be integers, with $m$ and $n$ nonzero, and suppose $m$ divides $n$ and $n$ divides $p$. 
"Let" tells us that this assertion puts new constraints on the symbols $m$, $n$ and $p$ and wipes out any previous constraints, if any. (In fact there are no previous constraints, because the preceding paragraph is a definition.) We are starting over with $m$ and $n$, and now know they have the properties given. 
Then $m$ divides $p$. 
This is a claim that $m$ divides $p$. It has a different status from the assumptions that $m$ divides $n$ and $n$ divides $p$. If we are going to follow the proof we have to treat $m$ and $n$ as if they divide $n$ and $p$ respectively. However, we can't treat $m$ as if it divides $p$. All we know is that the author is claiming that $m$ divides $p$, given the facts in the hypothesis. 
Proof 
An announcement that a proof is about to begin, meaning a chain of math reasoning. The fact that it is a proof of the Theorem just stated is not explicit. 
By definition of divides, there are integers $q$ and $q'$ for which $n=qm$ and $p=q'n$. 
The proof uses the direct method (rather than contradiction or induction or some other method) and begins by rewriting the hypothesis using the definition of "divides". The proof does not announce the use of these techniques, it just starts in doing it. So $q$ and $q'$ are new symbols that satisfy the equations $n=qm$ and $p=q'n$. The phrase "by definition of divides" justifies the introduction of $q$ and $q'$. $m$, $n$ and $p$ have already been introduced in the assertion of the Theorem. 
We must prove that there is an integer $q''$ for which $p=q''m$. 
Introduces a new variable $q''$, with constraint $p=q''m$. The assertion "we must prove" is justified (without saying so) by the definition of "divides". 
But $p=q'n=q'qm$, 
This is a claim about $p$, $q$, $q'$, $m$ and $n$. It is justified by certain preceding sentences but this justification is not made explicit. Note that "$p=q'n=q'qm$" pivots on $q'n$, in other words makes two claims about it. 
so let $q''=q'q$. 
The word "let" means that this is a definition of $q''$. The word "so" hints that the definition of $q''$ is motivated by the preceding step saying that $p=qq'm$, which suggests what $q''$ must be. Note that the author does not point this out to the reader. 
Then $p=q''m$ 
This is a claim about $p$, $q''$ and $n$, justified by the claim $p=q'n=q'qm$, although the use of associativity is not mentioned. Note that the definition of division says that $q''$ is also required to be an integer. In fact it is an integer because the product of integers is an integer, but again that is hidden. 

The proof is now complete, although no statement says it is. 
If you have some skill in reading proofs, all the stuff in the right hand column happens in your brain without, for the most part, your being conscious of it.
Thanks to Chris Smith for correcting errors.
Statements in mathematical English may contain embedded expressions in the symbolic language. The opposite can happen, too: sometimes a symbolic expression contains an embedded assertion in math English.
A symbolic expression may be written in line with the text it is embedded in, as in the two examples just above. It may also be displayed, as in this sentence:
"The inequality \[{{x}^{2}}\ge x1\] holds for all real numbers $x$"
The part of the sentence before the equation is displayed on one line, the equation is displayed (usually centered, as here) on the next line, and the rest of the sentence (if any) is in the line after the equation.
The examples of embedding just given are not hard to understand. However, some common practices by math writers (and speakers) can cause real problems for those new to a subject:
A symbol is pivoted if it is embedded just once in an expression that, when spelled out explicitly, requires it appear twice because it play two different roles in two different phrases or clauses.
The expression "$1\lt x\lt 2$" can be pronounced in either of these ways:
In both cases, $x$ appears just once in the expression "$1\lt x\lt 2$", but any reasonable rendering requires it to appear in two clauses. (The word "which" in the first assertion refers to $x$ according to the rules for anaphora in English, so "which" is a synonym for $x$ in the assertion.)
"This infinite series converges to $\zeta(2)=\frac{\pi^2}{6}\approx 1.65$."
This example can be read in two ways that are different in English grammar but have the same logical content:
As you can see, this example has two pivoted symbols in a row: $\zeta(2)$, the object of "converges to" and the subject of "$\ldots=\frac{\pi^2}{6}$", and $\frac{\pi^2}{6}$, which is the object of "$\zeta(2)=\ldots$" and the subject of "$\ldots\approx 1.65$".
Consider the assertion,
(PA) "For any $x\gt0$ there is a $y\gt0$ such that $x\gt y$."
This assertion can be pronounced like this: "For any $x$ that is greater than zero there is a $y$ that is greater than zero such that $x\gt y$."
That is parallel to the first way of pronouncing "$1\lt x\lt 2$" given above. But the assertion (PA) cannot be pronounced like (2) above: "For any $x$ and $x\gt 0$ there is..." The assertion "$x\gt 0$" is necessarily a subordinate clause. The occurrence of $x$ in PA belongs in the phrase "For any $x$..." and also belongs to the subordinate clause "that is greater than zero". The $x$ is pivoted as before. This special case of pivoting is called a parenthetic assertion, because it could be written like this: "For any $x$ (that is greater than zero)..."
"Let us return for a moment to the circle $S^1\subseteq \mathbb{C}=\mathbb{R}^2$." (Citation 426 in the Handbook of mathematical discourse.)
\[B(t):=\frac{1+t^2}{2+t^2}\in\mathbb{Q}(t)\] is a sum of $2n$th powers of elements in $\mathbb{Q}(t)$ for all $n$. (Citation 332 in the Handbook of mathematical discourse.)
A precondition is a preliminary assertion that puts a constraint on variables in the discussion that follows, and thus has a temporary effect on the context.
The following are two ways of asserting the same universal conditional assertion.
Notice that the word "all" does not appear anywhere in the second assertion.
A postcondition is a assertion after the end of a context that puts a constraint on the variables occurring earlier in the context, which are therefore retroactively constrained.
Postconditions in the symbolic language are not used in a consistent way. You frequently have to have considerable knowledge of the subject being discussed to understand what is meant.
\[{{x}^{2}}\ge x1\,\,\,\,\,\,(x\text{ real})\]
This means for all real $x$, not just for one value of $x$, so it has the same meaning as the example given under "Precondition".
By factoring, we see that \[\frac{{{x}^{2}}1}{x1}=x+1\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,(x\ne 1)\]
Again, this quantifies over all $x$: The equation holds for all $x$ except $1$.
By applying the Mean Value Theorem to $f$ on $[a,d]$ and $[d,b]$ respectively, we obtain\[f(d)f(a)=f'({{c}_{1}})(da),\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,{{c}_{1}}\in (a,d),\]\[f(b)f(d)=f'({{c}_{2}})(bd),\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,{{c}_{2}}\in (d,b).\]
This does not mean $f(d)f(a)=f'({{c}_{1}})(da)$ for all $\,\,{{c}_{1}}\in (a,d)$. It means there is a number $\,\,{{c}_{1}}\in (a,d)$ that makes the first equation true (similar remark for the second equation). Compare this to the occurrence of $x$'s in parentheses in the two preceding examples.
In my opinion, using postconditions in the form they occur in Examples (a), (b) and (c) should be deprecated. For example, it would be better to use "for all real $x$" in (a) and "for some $c_1\in(a,d)$" in the first line of (c).
More examples of preconditions and postconditions may be found under constraints, universally true assertions, conditional assertions and definitions.
Math notation may omit a parameter on which the meaning of the notation depends.
It is common practice that a group with underlying set $G$ and binary operation $*$ is also called $G$, so that the notation omits the binary operation.
Math authors often use the expression $\log x$
to refer to the logarithm function without naming the base, which is usually $10$ (high school), $e$ (college math) or $2$ (computing science).
You could argue that when you write "log $x$" and announce that the base for your logs is always e, then you have not suppressed any parameter because the way you defined it, "log" doesn’t have a parameter. But it is very common usage to write ${{\log }_{a}}x$ with the parameter explicit. You can change the way you define a symbol but you can’t change what the reader expects.
Synecdoche is naming something by naming a part of it. Referring to a car as "wheels" is an example of synecdoche.
Naming a mathematical structure by its underlying set, as in the case of a group mentioned above. This is also a case of suppression of parameters.
Naming a block of a partition by one of its elements is an example of synecdoche. For example, consider the partition $E:=\{\{1,2,3\},\{4,5\}\}$. Some texts would refer to the block $\{1,2,3\}$ as $[3]_E$. So the notation $[3]_E$ refers to $\{1,2,3\}$ by using the particular element $3$. Of course, $[2]_E$ is another name for the same block.
This is not an example of suppression of parameters.
Another notation is common for a partition that is the set of cosets of a normal subgroup of a group. For a group $G$ with normal subgroup $H$, the coset of an element $a\in G$ is the set $\{ahh\in H\}$. This is commonly denoted by $aH$. (Another element $b\in aH$ if and only if $b^{1}a\in H$.) So the notation "$\{ahh\in H\}$" determines the coset exactly, using an arbitrarily chosen element $a$ of the coset to name it.
A symbol or name for a function that takes on different meanings depending on which type of element it is evaluated at is said to be overloaded or polymorphic.
These examples have in common the fact that each one uses the same symbol in every model for a particular operation in an axiomatically defined mathematical structure. This usage does not usually cause problems for students.
In many computer languages, addition of integers is implemented differently from addition of floating point numbers, and the same goes for multiplication.
The symbol $\times $ is overloaded in college math courses.
This means the same symbol is used with different properties.
So you have to know the data type of your variables in order to know whether you can use commutativity or associativity.
A given discourse is redundant if it contains words and expressions that could be omitted without changing the meaning. Redundancy in some circumstances is annoying but in others it is helpful for understanding.
The counting function of primes defined by\[\pi (x):=\#\left\{ p\le xp\text{ is prime} \right\}\] satisfies the formula\[\pi (x)\approx{\ }\frac{x}{\log x}\]
The phrase 'the counting function of primes" is redundant, since the definition of $\pi$ just following that phrase says it is the counting function for primes. This is not bad writing: the redundancy adds much to the reader's understanding (for this reader, anyway).
Type labeling is a commonly occurring systematic form of redundancy. This is discussed in more detail in type of a variable.
Suppose a text defines $G$ to be a group on page 42 and defines a certain subgroup $H$ of $G$ on page 46. Then on page 48 it says "The subgroup $H$ of the group $G$ is normal in $G$". The phrases "the subgroup" and "the group" are redundant since $H$ and $G$ have already been defined to be groups. Nevertheless this redundancy can be very helpful to the reader since the sentence is separated by a couple of pages from the definitions.
I have heard mathematicians say that a definition is not a proper definition if it is redundant. In fact, definitions are very commonly redundant, including the usual definition of group (see the PlanetMath article).
A grasshopper is a reader who starts reading a book or article at the point where it discusses what she is interested in, then jumps back and forth through the text finding information about the ideas she meets. This is contrasted with someone who starts at the beginning and reads straight through.
The terminology is due to Steenrod, who calls the reader who starts at the beginning and reads straight through a normal reader, a name which this particular grasshopper resents. Since Steenrod also mentions the difficulty causes by "global" terminology, particularly terminology defined near the beginning of a book and used without comment in the rest of the text, I suspect him of having been a grasshopper himself.
My only reason for including this section is so that I can say: If you fit one of the definitions of "grasshopper" and "normal", try doing it the other way.
Experimenting with a new way of doing something
can sometimes pay off big.
This work is licensed under a Creative Commons AttributionShareAlike 2.5 License.