„Ich mag × nicht als Zeichen für die Multiplikation, weil es sich zu leicht mit x verwechseln lässt“ – so schrieb Leibniz 1698 an Johann Bernoulli. Wer in LaTeX zwischen \times und \cdot schwankt – beides binäre Operatoren, um die es auf dieser Seite geht –, bezieht damit Position in einem über dreihundert Jahre alten Streit. Das eigentliche Thema ist hier allerdings nicht die Glyphe. TeX ordnet jedes Zeichen einer Formel einer Klasse zu, und allein diese Klasse legt den Abstand ringsum fest. Deshalb wird das + in $+1$ anders breit gesetzt als das + in $a+1$, obwohl es dasselbe Zeichen ist. Diese Seite geht die Operatoren durch – \times, \div, \cdot, \pm, \oplus, \cup, \setminus und die übrigen –, nennt die auf amssymb angewiesenen und zeigt, wie sich TeX mit \mathbin überstimmen lässt, wenn die Einordnung danebengeht.
\cdot oder \times: welches Multiplikationszeichen
Die Voreinstellung heißt \cdot (⋅). Der zentrierte Punkt gilt für das Multiplizieren von Zahlen und Größen innerhalb einer Formel; \times (×) bleibt dem Kreuzprodukt, dem kartesischen Produkt, Dimensionsangaben (3 \times 3-Matrizen) und Zehnerpotenzen (6.02 \times 10^{23}) vorbehalten. Diese Arbeitsteilung geht unmittelbar auf Leibniz' Klage zurück. In Druck brachte das × William Oughtred in der 1631 in London erschienenen Clavis Mathematicae; in der Algebra war x aber zugleich der geläufigste Name für eine Unbekannte. Im Brief vom 29. Juli 1698 verwarf Leibniz deshalb das Kreuz und empfahl stattdessen einen dazwischengesetzten Punkt. Durchgesetzt hat sich seine Variante: Deshalb ist das Multiplikations-× aus der modernen mathematischen Literatur fast verschwunden.
Beim Divisionszeichen \div (÷) verhält es sich ähnlich. Das Zeichen heißt Obelus; als Erster verwendete es Johann Rahn 1659 in der Teutschen Algebra für die Division. Die Norm ISO 80000-2 für mathematische Zeichen in Naturwissenschaft und Technik schreibt dennoch den Schrägstrich / oder den Bruchstrich für die Division und den Doppelpunkt : für Verhältnisse vor und hält ausdrücklich fest, dass ÷ nicht verwendet werden sollte. Die praktische Folgerung ist schlicht: In Aufsätzen und technischen Dokumenten steht \frac{a}{b}, nicht \div. \div bleibt dem Grundschulunterricht und dem Taschenrechner vorbehalten. Eine weitere Falle: Ein Punkt statt \cdot, also a.b, funktioniert nicht. TeX behandelt den Punkt nicht als Operator und fügt deshalb keinen Abstand ein – in einem 10-pt-Dokument gemessen ergibt $a.b$ 12,36 pt gegenüber 16,80 pt für $a \cdot b$ –, und das Ergebnis liest sich als Dezimalpunkt, nicht als Produkt. Ein direkt getipptes * ist dagegen unbedenklich: Im Mathematikmodus ist * genau derselbe binäre Operator wie \ast und wird identisch gesetzt.
% \cdot for ordinary products; \times for cross products, dimensions, powers of ten
\[ 2 \cdot 3 = 6, \qquad \mathbf{u} \times \mathbf{v}, \qquad 6.02 \times 10^{23} \]
% a period is not a multiplication dot: it gets no operator spacing
\[ a.b \qquad a \cdot b \]
% in scientific writing prefer a fraction to the obelus
\[ \frac{a}{b} \qquad a \div b \]| Befehl | Glyphe | Bedeutung / Einsatz |
|---|---|---|
\pm | ± | Plusminus; x = a \pm b |
\mp | ∓ | Minusplus; umgekehrtes Vorzeichen zu \pm |
\times | × | Kreuzprodukt, kartesisches Produkt, Dimensionen, Zehnerpotenzen |
\div | ÷ | Obelus; im wissenschaftlichen Satz besser \frac |
\cdot | ⋅ | Standard-Multiplikationspunkt; Skalarmultiplikation und Skalarprodukt |
\ast | ∗ | Faltung und Ähnliches; identisch mit * im Mathematikmodus |
\star | ⋆ | fünfzackiger Stern; oft ein eigens definiertes Produkt |
\circ | ∘ | Komposition von Funktionen; g \circ f |
\bullet | ∙ | gefüllter Punkt; schwereres Gegenstück zu \circ |
\diamond | ⋄ | Rautenoperator |
Warum das + in $+1$ eng gesetzt wird
Ein binärer Operator verbindet das, was links und rechts von ihm steht; fehlt auf einer Seite etwas zu Verbindendes, schließt TeX daraus, dass es sich gar nicht um einen binären Operator handelt. Ein + am Anfang einer Formel wird zum bloßen Vorzeichen herabgestuft – unär – und erhält überhaupt keinen Abstand. Die Zahlen zeigen es deutlich: In einem 10-pt-Dokument misst $+1$ 12,78 pt; stellt man eine leere Gruppe davor und schreibt ${}+1$, bekommt das + einen linken Operanden, wird wieder zum echten binären Operator, und die Breite wächst auf 17,22 pt. Die Differenz von 4,44 pt entfällt zu je 2,22 pt auf beide Seiten. Diese 2,22 pt stammen vom Parameter \medmuskip (Vorgabe 4mu plus 2mu minus 4mu), der schmaler ausfällt als der für Relationen zuständige \thickmuskip (5mu plus 5mu, also 2,78 pt je Seite) – deshalb steht $a=b$ lockerer als $a+b$. Kein noch so großzügiger Leerraum in der Quelle ändert daran etwas. Über den Abstand entscheidet allein die Klasse.
Der Mechanismus kann sich auch gegen einen wenden, denn geschweifte Klammern zerstören die Klasse eines Zeichens. $a\times b$ misst 21,80 pt; schreibt man $a{\times}b$, schrumpft es auf 17,36 pt. Was in einer Gruppe steht, gilt als ein einziges gewöhnliches Zeichen (Klasse Ord) und vergisst, je ein binärer Operator gewesen zu sein. Wenn ein selbst geschriebenes Makro ein Zeichen erzeugt, dem auf rätselhafte Weise der Abstand fehlt, liegt fast immer das vor. Das Gegenmittel heißt \mathbin{...}: $a\mathbin{\times}b$ misst wieder 21,80 pt und stimmt damit exakt mit dem schlichten $a\times b$ überein. In die andere Richtung entfernt \mathord{...} den Abstand, und \mathrel{...} setzt das Zeichen als Relation – $a\mathrel{\times}b$ ergibt 22,91 pt, genau die Breite von $a=b$.
% a leading + has nothing to bind: TeX makes it a sign and sets it tight
% an empty group gives it a left operand and the medium space comes back
\[ +1 \qquad {}+1 \]
% braces strip the class; \mathbin puts it back, \mathrel makes it a relation
\[ a \times b \qquad a {\times} b \qquad a \mathbin{\times} b \qquad a \mathrel{\times} b \]
% always declare the class when you define an operator of your own
\newcommand{\op}{\mathbin{\triangle}}
\[ x \op y \]| Befehl | Erzwungene Klasse | Abstand je Seite (10-pt-Text) |
|---|---|---|
\mathbin | binärer Operator | 2,22 pt (\medmuskip = 4mu) |
\mathrel | Relation | 2,78 pt (\thickmuskip = 5mu) |
\mathord | gewöhnliches Zeichen (Ord) | keiner; dasselbe Ergebnis wie geschweifte Klammern |
Eingekreiste und gerahmte Operatoren: welche brauchen amssymb
Alle eingekreisten Operatoren gehören zum Standard-LaTeX, alle gerahmten verlangen amssymb – damit ist die Frage weitgehend beantwortet. Direkte Summe \oplus (⊕), Tensorprodukt \otimes (⊗), \odot (⊙) für das Hadamard-Produkt und Verwandtes sowie \ominus, \oslash und \bigcirc funktionieren ganz ohne geladenes Paket. Die gerahmte Familie – \boxplus (⊞), \boxminus (⊟), \boxtimes (⊠), \boxdot (⊡) – und die AMS-Zusätze zur eingekreisten Familie, \circledast (⊛) und \circledcirc (⊚), setzen dagegen \usepackage{amssymb} in der Präambel voraus. Fehlt es, bricht der Lauf mit ! Undefined control sequence. ab. Für die Wahl gilt eine Konvention: ⊕ für eine additive, ⊗ für eine multiplikative Operation. Kategorientheorie und Darstellungstheorie folgen dieser Lesart nahezu ausnahmslos.
| Befehl | Glyphe | Paket | Bedeutung / Verwendung |
|---|---|---|---|
\oplus | ⊕ | — | direkte Summe; additive Operationen |
\ominus | ⊖ | — | eingekreistes Minus |
\otimes | ⊗ | — | Tensorprodukt; multiplikative Operationen |
\oslash | ⊘ | — | eingekreister Schrägstrich; elementweise Division |
\odot | ⊙ | — | Hadamard- bzw. elementweises Produkt |
\bigcirc | ◯ | — | großer Kreis |
\circledast | ⊛ | amssymb | eingekreistes Sternchen |
\circledcirc | ⊚ | amssymb | eingekreister Ring |
\boxplus | ⊞ | amssymb | gerahmtes Plus |
\boxminus | ⊟ | amssymb | gerahmtes Minus |
\boxtimes | ⊠ | amssymb | gerahmtes Malzeichen |
\boxdot | ⊡ | amssymb | gerahmter Punkt |
% circled operators are standard; boxed ones come from amssymb
\usepackage{amssymb}
% ...
\[ V \oplus W, \qquad u \otimes v, \qquad A \boxplus B \]Die großen Varianten derselben Formen – \bigoplus (⨁), \bigotimes, \bigodot, \biguplus – sind keine binären Operatoren. Sie gehören mit \sum zur Klasse der großen Operatoren, nehmen also Grenzen über und unter sich auf und wechseln die Größe zwischen Text- und abgesetzter Formel. \oplus mit \Large oder Ähnlichem aufzublasen, verschiebt die Grenzen an die falsche Stelle; besser \bigoplus verwenden. Die eigene Seite zu Summen, Integralen und großen Operatoren geht darauf im Einzelnen ein.
Mengen- und Verbandsoperatoren: \cup, \cap, \setminus
Alles in diesem Abschnitt gehört zum Standard-LaTeX; kein Paket nötig. Durchschnitt \cap (∩), Vereinigung \cup (∪), Multimengensumme \uplus (⊎), Differenzmenge \setminus (∖). In Verbänden und geordneten Mengen kommen zusätzlich das eckige \sqcap (⊓) und \sqcup (⊔) vor, in der Logik \wedge (∧) und \vee (∨) mit den Aliasnamen \land und \lor. Die Glyphen sind identisch – der einzige Unterschied besteht darin, dass sich die logischen Namen im logischen Kontext besser lesen. Der häufigste Unfall an dieser Stelle ist eine Differenzmenge, die als \backslash geschrieben wird. Dieser Befehl ist ein gewöhnliches Zeichen (Klasse Ord) und erhält deshalb keinen Binäroperator-Abstand: Bei 10 pt gemessen ergibt $A \backslash B$ 20,59 pt gegenüber 25,03 pt für $A \setminus B$ – je Seite fehlen 2,22 pt. Für die Differenzmenge stets \setminus verwenden. Mit geladenem amssymb steht außerdem das schlankere \smallsetminus (∖) zur Wahl.
| Befehl | Glyphe | Paket | Bedeutung / Verwendung |
|---|---|---|---|
\cap | ∩ | — | Durchschnitt |
\cup | ∪ | — | Vereinigung |
\uplus | ⊎ | — | Multimengensumme; disjunkte Vereinigung |
\sqcap | ⊓ | — | Infimum im Verband |
\sqcup | ⊔ | — | Supremum im Verband |
\wedge | ∧ | — | logisches Und bzw. Infimum; Alias \land |
\vee | ∨ | — | logisches Oder bzw. Supremum; Alias \lor |
\setminus | ∖ | — | Differenzmenge; \backslash ist kein Ersatz |
\wr | ≀ | — | Kranzprodukt |
\smallsetminus | ∖ | amssymb | schlankere Differenzmenge |
\Cap | ⋒ | amssymb | doppelter Durchschnitt |
\Cup | ⋓ | amssymb | doppelte Vereinigung |
% a set difference needs \setminus, not \backslash
\[ A \setminus B \qquad A \cup (B \cap C) \]
% \land and \lor are aliases of \wedge and \vee
\[ p \wedge q \iff p \land q \]Die übrigen Operatoren und der Fehler \lhd not provided in base LaTeX2e
Der Rest ist eine bunte Sammlung, doch jedes Zeichen hat seinen Platz. Das Koprodukt bzw. die disjunkte Vereinigung \amalg (⨿), der Dolch \dagger (†) und der Doppeldolch \ddagger (‡) für Adjungierte und Duale sowie die Dreiecke \triangleleft (◁) und \triangleright (▷) für Normalteiler und Operationen gehören zum Standard-LaTeX. Hinzu kommen die Stammgäste aus amssymb: die semidirekten Produkte \ltimes (⋉) und \rtimes (⋊) der Gruppentheorie, \intercal (⊺) für die Transponierte, das gepunktete \dotplus (∔) und \divideontimes (⋇). In einem algebraischen Text wird früher oder später ein semidirektes Produkt gebraucht; \usepackage{amssymb} gleich in die Präambel zu setzen, ist deshalb der kürzere Weg.
| Befehl | Glyphe | Paket | Bedeutung / Verwendung |
|---|---|---|---|
\amalg | ⨿ | — | Koprodukt; disjunkte Vereinigung |
\dagger | † | — | Dolch; Adjungierte bzw. konjugiert Transponierte |
\ddagger | ‡ | — | Doppeldolch |
\triangleleft | ◁ | — | linkes Dreieck; Normalteiler u. a. |
\triangleright | ▷ | — | rechtes Dreieck; Gruppenoperationen u. a. |
\dotplus | ∔ | amssymb | Plus mit Punkt |
\intercal | ⊺ | amssymb | Kennzeichen der Transponierten im Exponenten |
\ltimes | ⋉ | amssymb | linkes semidirektes Produkt |
\rtimes | ⋊ | amssymb | rechtes semidirektes Produkt |
\divideontimes | ⋇ | amssymb | Malzeichen mit Punkten |
\lhd | ◁ | latexsym / amssymb | kräftigeres linkes Dreieck; im reinen LaTeX nicht verfügbar |
\rhd | ▷ | latexsym / amssymb | kräftigeres rechtes Dreieck |
Die letzten beiden Zeilen bergen eine Falle. Wer für einen kräftigeren Normalteiler \lhd eintippt, dessen Lauf bricht im reinen LaTeX mit ! LaTeX Error: Command \lhd not provided in base LaTeX2e. ab. Die Namen \lhd, \rhd, \unlhd und \unrhd sind im Kernel lediglich reserviert; die Zeichen selbst stecken in einem anderen Paket. Es genügt, entweder \usepackage{latexsym} oder \usepackage{amssymb} zu laden – dann funktionieren alle vier, und wer amssymb ohnehin verwendet, muss nichts ergänzen. Umgekehrt begegnet dieser Fehler gar nicht erst, wenn das standardmäßige \triangleleft (◁) ausreicht.
Wer einen eigenen Operator definiert, sollte an die Klassengeschichte vom Anfang dieser Seite denken. Wird die Klasse ausdrücklich angegeben, etwa mit \newcommand{\op}{\mathbin{\triangle}}, genügt fortan ein x \op y: Um den Abstand zu beiden Seiten kümmert sich TeX. Ein Makro, das seine Klasse vergisst, gilt als gewöhnliches Zeichen (Ord), und man streut bei jedem Gebrauch von Hand ein \, dazwischen. Die Klasse festlegen, bevor das Zeichen hinzukommt – dieser eine Schritt verhindert nahezu jeden Abstandsunfall rund um binäre Operatoren.