Mathematical and Other Notation

Mathematical Notation in Notebooks
If you use a textbased interface to the Wolfram Language, then the input you give must consist only of characters that you can type directly on your computer keyboard. But if you use a notebook interface then other kinds of input become possible.
There are palettes provided which operate like extensions of your keyboard, and which have buttons that you can click to enter particular forms. You can access standard palettes using the Palettes menu.
Clicking the π button in this palette will enter a pi into your notebook.


Clicking the first button in this palette will create an empty structure for entering a power. You can use the mouse to fill in the structure.


You can also give input by using special keys on your keyboard. Pressing one of these keys does not lead to an ordinary character being entered, but instead typically causes some action to occur or some structure to be created.
Esc p Esc
the symbol
Esc inf Esc
the symbol
Esc ee Esc
the symbol for the exponential constant (equivalent to E)
Esc ii Esc
the symbol for (equivalent to I)
Esc deg Esc
the symbol (equivalent to Degree)
Ctrl+^ or Ctrl+6
go to the superscript for a power
Ctrl + /
go to the denominator for a fraction
Ctrl+@ or Ctrl+2
go into a square root
Ctrl + Space
return from a superscript, denominator or square root
A few ways to enter special notations on a standard Englishlanguage keyboard.
Here is a computation entered using ordinary characters on a keyboard:
Here is the same computation entered using a palette or special keys:
Here is an actual sequence of keys that can be used to enter the input:
In a traditional computer language such as C, Fortran, Java, or Perl, the input you give must always consist of a string of ordinary characters that can be typed directly on a keyboard. But the Wolfram Language also allows you to give input that contains special characters, superscripts, builtup fractions, and so on.
The language incorporates many features of traditional mathematical notation. But you should realize that the goal of the language is to provide a precise and consistent way to specify computations. And as a result, it does not follow all of the somewhat haphazard details of traditional mathematical notation.
Nevertheless, as discussed in "Forms of Input and Output", it is always possible to get the Wolfram Language to produce output that imitates every aspect of traditional mathematical notation. And it is also possible for the Wolfram Language to import text that uses such notation, and to some extent to translate it into its own more precise language.
Special Characters: Mathematical and Other Notation
Built into the Wolfram Language are a large number of special characters intended for use in mathematical and other notation. "Listing of Named Characters" gives a complete listing.
Each special character is assigned a full name such as \[Infinity]. More common special characters are also assigned aliases, such as EscinfEsc. You can set up additional aliases using the InputAliases notebook option discussed in "Options for Expression Input and Output".
For special characters that are supported in standard dialects of TeX, the Wolfram Language also allows you to use aliases based on TeX names. Thus, for example, you can enter \[Infinity] using the alias Esc\inftyEsc. The Wolfram Language also supports aliases such as Esc∞Esc based on names used in SGML and HTML.
Standard system software on many computer systems also supports special key combinations for entering certain special characters. On a Macintosh, for example, Option+5 will produce in most fonts. With the notebook front end the Wolfram System automatically allows you to use special key combinations when these are available, and with a textbased interface you can get the Wolfram System to accept such key combinations if you set an appropriate value for $CharacterEncoding.
Use a full name such as \[Infinity]
Use an alias such as EscinfEsc
Use a TeX alias such as Esc\inftyEsc
Use an SGML or HTML alias such as Esc∞Esc
Click a button in a palette
Use a special key combination supported by your computer system
Ways to enter special characters.
In a Wolfram System notebook, you can use special characters just like you use standard keyboard characters. You can include special characters both in ordinary text and in input that you intend to give to the Wolfram System.
Some special characters are set up to have an immediate meaning to the Wolfram System. Thus, for example, is taken to be the symbol Pi. Similarly, is taken to be the operator >=, while is equivalent to the function Union.
and have immediate meanings in the Wolfram System:
or [Union] is immediately interpreted as the Union function:
or [SquareUnion] has no immediate meaning to the Wolfram System:
Among ordinary characters such as E and i, some have an immediate meaning to the Wolfram System, but most do not. And the same is true of special characters.
Thus, for example, while and have an immediate meaning to the Wolfram System, and do not.
This allows you to set up your own definitions for and .
has no immediate meaning in the Wolfram System:
This defines a meaning for :
Now the Wolfram System evaluates just as it would any other function:
Characters such as and are treated by the Wolfram System as lettersjust like ordinary keyboard letters like a or b.
But characters such as and are treated by the Wolfram System as operators. And although these particular characters are not assigned any builtin meaning by the Wolfram System, they are nevertheless required to follow a definite syntax.
is an infix operator:
The definition assigns a meaning to the operator:
Now can be evaluated by the Wolfram System:
The details of how input you give to the Wolfram System is interpreted depends on whether you are using StandardForm or TraditionalForm, and on what additional information you supply in InterpretationBox and similar constructs.
But unless you explicitly override its builtin rules by giving your own definitions for MakeExpression, the Wolfram System will always assign the same basic syntactic properties to any particular special character.
These properties not only affect the interpretation of the special characters in Wolfram System input, but also determine the structure of expressions built with these special characters. They also affect various aspects of formatting; operators, for example, have extra space left around them, while letters do not.
a, E, , , , etc.
Letterlike forms
, , , , etc.
, , , , etc.
Types of special characters.
In using special characters, it is important to make sure that you have the correct character for a particular purpose. There are quite a few examples of characters that look similar, yet are in fact quite different.
A common issue is operators whose forms are derived from letters. An example is or \[Sum], which looks very similar to or \[CapitalSigma].
As is typical, however, the operator form is slightly less elaborate and more stylized than the letter form . In addition, is an extensible character that grows depending on the summand, while has a size determined only by the current font.
Different characters that look similar.
In cases such as \[CapitalAlpha] versus A, both characters are letters. However, the Wolfram System treats these characters as different, and in some fonts, for example, they may look quite different.
The result contains four distinct characters:
Traditional mathematical notation occasionally uses ordinary letters as operators. An example is the d in a differential such as dx that appears in an integral.
To make the Wolfram System have a precise and consistent syntax, it is necessary at least in StandardForm to distinguish between an ordinary d and the used as a differential operator.
The way the Wolfram System does this is to use a special character or \[DifferentialD] as the differential operator. This special character can be entered using the alias EscddEsc.
The Wolfram System uses a special character for the differential operator, so there is no conflict with an ordinary d:
When letters and letterlike forms appear in Wolfram System input, they are typically treated as names of symbols. But when operators appear, functions must be constructed that correspond to these operators. In almost all cases, what the Wolfram System does is to create a function whose name is the full name of the special character that appears as the operator.
The Wolfram System constructs a CirclePlus function to correspond to the operator , whose full name is [CirclePlus]:
This constructs an And function, which happens to have builtin evaluation rules in the Wolfram System:
Following the correspondence between operator names and function names, special characters such as that represent builtin Wolfram System functions have names that correspond to those functions. Thus, for example, is named \[Divide] to correspond to the builtin Wolfram System function Divide, and is named \[Implies] to correspond to the builtin function Implies.
In general, however, special characters in the Wolfram Language are given names that are as generic as possible, so as not to prejudice different uses. Most often, characters are thus named mainly according to their appearance. The character is therefore named \[CirclePlus], rather than, say \[DirectSum], and is named \[TildeTilde] rather than, say, \[ApproximatelyEqual].
Different operator characters that look similar.
There are sometimes characters that look similar but that are used to represent different operators. An example is \[Times] and \[Cross]. \[Times] corresponds to the ordinary Times function for multiplication; \[Cross] corresponds to the Cross function for vector cross products. The for \[Cross] is drawn slightly smaller than for \[Times], corresponding to usual careful usage in mathematical typography.
The \[Times] operator represents ordinary multiplication:
The \[Cross] operator represents vector cross products:
The two operators display in a similar waywith \[Times] slightly larger than \[Cross]:
In the example of \[And] and \[Wedge], the \[And] operatorwhich happens to be drawn slightly largercorresponds to the builtin Wolfram System function And, while the \[Wedge] operator has a generic name based on the appearance of the character and has no builtin meaning.
You can mix [Wedge] and [And] operators. Each has a definite precedence:
Some of the special characters commonly used as operators in mathematical notation look similar to ordinary keyboard characters. Thus, for example, or [Wedge] looks similar to the ^ character on a standard keyboard.
The Wolfram System interprets a raw ^ as a power. But it interprets as a generic Wedge function. In cases such as this where there is a special character that looks similar to an ordinary keyboard character, the convention is to use the ordinary keyboard character as the alias for the special character. Thus, for example, Esc^Esc is the alias for \[Wedge].
The raw ^ is interpreted as a power, but the Esc^Esc is a generic wedge operator:
A related convention is that when a special character is used to represent an operator that can be typed using ordinary keyboard characters, those characters are used in the alias for the special character. Thus, for example, Esc->Esc is the alias for or \[Rule], while Esc&&Esc is the alias for or \[And].
Esc->Esc is the alias for \[Rule], and Esc&&Esc for \[And]:
The most extreme case of characters that look alike but work differently occurs with vertical bars.
character name
Different types of vertical bars.
Notice that the alias for \[VerticalBar] is Esc|Esc, while the alias for the somewhat more common \[VerticalSeparator] is Esc|Esc. The Wolfram Language often gives similarlooking characters similar aliases; it is a general convention that the aliases for the less commonly used characters are distinguished by having spaces at the beginning.
builtin alias for a common character
builtin alias for similar but less common character
alias globally defined in a Wolfram System session
alias defined in a specific notebook
Conventions for special character aliases.
The notebook front end for the Wolfram System often allows you to set up your own aliases for special characters. If you want to, you can overwrite the builtin aliases. But the convention is to use aliases that begin with a dot or comma.
Note that whatever aliases you may use to enter special characters, the full names of the characters will always be used when the characters are stored in files.
Names of Symbols and Mathematical Objects
The Wolfram Language by default interprets any sequence of letters or letterlike forms as the name of a symbol.
All these are treated by the Wolfram Language as symbols:
character name
Esc p Esc , Esc pi Esc
equivalent to Pi
Esc inf Esc
equivalent to Infinity
Esc ee Esc
equivalent to E
Esc ii Esc
equivalent to I
Esc jj Esc
equivalent to I
Symbols with builtin meanings whose names do not start with capital English letters.
Essentially all symbols with builtin meanings in the Wolfram Language have names that start with capital English letters. Among the exceptions are and , which correspond to E and I respectively.
Forms such as are used for both input and output in StandardForm:
In OutputForm is output as E:
In written material, it is standard to use very short namesoften single lettersfor most of the mathematical objects that one considers. But in the Wolfram Language, it is usually better to use longer and more explicit names.
In written material you can always explain that a particular singleletter name means one thing in one place and another in another place. But in the Wolfram Language, unless you use different contexts, a global symbol with a particular name will always be assumed to mean the same thing.
As a result, it is typically better to use longer names, which are more likely to be unique, and which describe more explicitly what they mean.
For variables to which no value will be assigned, or for local symbols, it is nevertheless convenient and appropriate to use short, often singleletter, names.
It is sensible to give the global function LagrangianL a long and explicit name. The local variables can be given short names:
x Ctrl+_ n Ctrl+Space
x Ctrl+_ + Ctrl+Space
x Ctrl+_ - Ctrl+Space
x Ctrl+_ * Ctrl+Space
x Ctrl+^ + Ctrl+Space
x Ctrl+^ - Ctrl+Space
x Ctrl+^ * Ctrl+Space
x Ctrl+^ EscdgEsc Ctrl+Space
x Ctrl+& _ Ctrl+Space
x Ctrl+& EscvecEsc Ctrl+Space
x Ctrl+& ~ Ctrl+Space
x Ctrl+& ^ Ctrl+Space
x Ctrl+& . Ctrl+Space
x Ctrl+$ _ Ctrl+Space
Creating objects with annotated names.
Note that with a notebook front end, you can change the style of text using menu items.
typical default value
whether to use italics for singleletter symbol names
whether to use italics for multi-letter symbol names
the style name or directives to use for single-letter symbol names
the style name or directives to use for multi-letter symbol names
Options for cells in a notebook.
It is conventional in traditional mathematical notation that names consisting of single ordinary English letters are normally shown in italics, while other names are not. If you use TraditionalForm, then the Wolfram Language will by default follow this convention. You can explicitly specify whether you want the convention followed by setting the SingleLetterItalics option for particular cells or cell styles. You can further specify styles for names using single English letters or multiple English letters by specifying values for the options SingleLetterStyle and MultiLetterStyle.
Letters and Letterlike Forms

Greek Letters

The complete collection of Greek letters in the Wolfram Language.
You can use Greek letters as the names of symbols. The only Greek letter with a builtin meaning in StandardForm is , which the Wolfram Language takes to stand for the symbol Pi.
Note that even though on its own is assigned a builtin meaning, combinations such as or have no builtin meanings.
The Greek letters and look very much like the operators for sum and product. But as discussed above, these operators are different characters, entered as [Sum] and [Product], respectively.
Similarly, is different from the operator [Element], and is different from or [Micro].
Some capital Greek letters such as [CapitalAlpha] look essentially the same as capital English letters. The Wolfram Language, however, treats them as different characters, and in TraditionalForm it uses [CapitalBeta], for example, to denote the builtin function Beta.
Following common convention, lowercase Greek letters are rendered slightly slanted in the standard fonts provided with the Wolfram System, while capital Greek letters are unslanted. On Greek systems, however, the Wolfram System will render all Greek letters unslanted so that standard Greek fonts can be used.
Almost all Greek letters that do not look similar to English letters are widely used in science and mathematics. The capital xi is rare, though it is used to denote the cascade hyperon particles, the grand canonical partition function, and regular language complexity. The capital upsilon is also rare, though it is used to denote particles, as well as the vernal equinox.
Curly Greek letters are often assumed to have different meanings from their ordinary counterparts. Indeed, in pure mathematics a single formula can sometimes contain both curly and ordinary forms of a particular letter. The curly pi is rare, except in astronomy.
The final sigma is used for sigmas that appear at the ends of words in written Greek; it is not commonly used in technical notation.
The digamma , koppa , stigma , and sampi are archaic Greek letters. These letters provide a convenient extension to the usual set of Greek letters. They are sometimes needed in making correspondences with English letters. The digamma corresponds to an English w, and koppa to an English q. Digamma is occasionally used to denote the digamma function PolyGamma[x].

Variants of English Letters

Some commonly used variants of English letters.
By using menu items in the notebook front end, you can make changes in the font and style of ordinary text. However, such changes are usually discarded whenever you send input to the Wolfram Language kernel.
Script, gothic, and doublestruck characters are, however, treated as fundamentally different from their ordinary forms. This means that even though a C that is italic or a different size will be considered equivalent to an ordinary C when fed to the kernel, a doublestruck will not.
Different styles and sizes of C are treated as the same by the kernel. But gothic and doublestruck characters are treated as different:
In standard mathematical notation, capital script and gothic letters are sometimes used interchangeably. The doublestruck letters, sometimes called blackboard or openface letters, are conventionally used to denote specific sets. Thus, for example, conventionally denotes the set of complex numbers, and the set of integers.
Dotless i and j are not usually taken to be different in meaning from ordinary i and j; they are simply used when overscripts are being placed on the ordinary characters.
[WeierstrassP] is a notation specifically used for the Weierstrass P function WeierstrassP.
full names
EscscaEsc EscsczEsc
lowercase script letters
EscscAEsc EscscZEsc
uppercase script letters
EscgoaEsc EscgozEsc
lowercase gothic letters
EscgoAEsc EscgoZEsc
uppercase gothic letters
EscdsaEsc EscdszEsc
lowercase doublestruck letters
EscdsAEsc EscdsZEsc
uppercase doublestruck letters
Esc$aEsc Esc$zEsc
lowercase formal letters
Esc$AEsc Esc$ZEsc
uppercase formal letters
Complete alphabets of variant English letters.

Formal Symbols

Symbols represented by formal letters, or formal symbols, appear in the output of certain functions. They are indicated by gray dots below the English letter.
DifferentialRoot automatically chooses the names for the function arguments:
Formal symbols are Protected, so they cannot be accidentally assigned a value.
Trying to modify a formal symbol fails:
This means that expressions depending on formal symbols will not be accidentally modified:
Specific values for formal symbols can be substituted using replacement rules.
Verify that the defining equations hold for cosine:
Formal symbols can be temporarily modified inside a Block because Block clears all definitions associated with a symbol, including Attributes. Table works essentially like Block, thus also allowing temporary changes.
Assign a temporary value to y:
In most situations modifying formal symbols is not necessary. Since in DifferentialRoot formal symbols are used as names for the formal parameters of a function, the function should simply be evaluated for the actual values of arguments.
Evaluating the function substitutes x for x and y for y:
It is possible to define custom typesetting rules for formal symbols.
Use coloring to highlight formal symbols:
The formatting rules were attached to MakeBoxes. Restore the original formatting:

Hebrew Letters

Hebrew characters.
Hebrew characters are used in mathematics in the theory of transfinite sets; is for example used to denote the total number of integers.

Units and Letterlike Mathematical Symbols

Units and letterlike mathematical symbols.
The Wolfram Language treats or \[Degree] as the symbol Degree, so that, for example, 30° is equivalent to 30Degree.
Note that , , and are all distinct from the ordinary letters (\[Mu]), (\[CapitalARing]), and (\[CapitalOSlash]).
The Wolfram Language interprets as Infinity, as E, and both and as I. The characters , , and are provided as alternatives to the usual uppercase letters E and I.
and are not by default assigned meanings in StandardForm. You can therefore use to represent a pi that will not automatically be treated as Pi. In TraditionalForm, is interpreted as EulerGamma.
Operators that look like letters.
is an operator while , , and are ordinary symbols:

Shapes, Icons, and Geometrical Constructs

Shapes are most often used as "dingbats" to emphasize pieces of text. But the Wolfram Language treats them as letterlike forms, and also allows them to appear in the names of symbols.
In addition to shapes such as \[EmptySquare], there are characters such as \[Square], which are treated by the Wolfram Language as operators rather than letterlike forms.
You can use icon characters just like any other letterlike forms:
Notation for geometrical constructs.
Since the Wolfram Language treats characters like as letterlike forms, constructs like are treated in the Wolfram Language as single symbols.

Textual Elements

Characters used for punctuation and annotation.
Other characters used in text.
Characters used in building sequences and arrays.
The under and over braces grow to enclose the whole expression:

Extended Latin Letters

The Wolfram Language supports all the characters commonly used in Western European languages based on Latin scripts.
Variants of English letters.
Most of the characters shown are formed by adding diacritical marks to ordinary English letters. Exceptions include \[SZ] , used in German, and \[Thorn] and \[Eth] , used primarily in Old English.
You can make additional characters by explicitly adding diacritical marks yourself.
char Ctrl+& mark Ctrl+Space
add a mark above a character
char Ctrl+$ mark Ctrl+Space
add a mark below a character
Adding marks above and below characters.
full name
(keyboard character)
acute accent
acute accent
(keyboard character)
grave accent
Esc `Esc
grave accent
. .
(keyboard characters)
umlaut or diaeresis
(keyboard character)
circumflex or hat
Esc esciEsc
(keyboard character)
(keyboard character)
(keyboard character)
bar or macron
Esc hckEsc
hacek or check
Esc bvEsc
Esc dbvEsc
tie accent
long umlaut
Esc cdEsc
Diacritical marks to add to characters.

Basic Mathematical Operators

Some operators used in basic arithmetic and algebra.
Note that the for [Cross] is distinguished by being drawn slightly smaller than the for [Times].
square root
vector cross product
(no built in meaning)
(no built in meaning)
(no built in meaning)
(no built in meaning)
Interpretation of some operators in basic arithmetic and algebra.

Operators in Calculus and Algebra

Operators used in calculus.
Operators for complex numbers and matrices.

Logical and Other Connectives

Operators used as logical connectives.
The operators , , and are interpreted as corresponding to the builtin functions And, Or, and Not, and are equivalent to the keyboard operators &&, ||, and !. The operators , , and correspond to the builtin functions Xor, Nand, and Nor. Note that is a prefix operator.
xy and xy are both taken to give the builtin function Implies[x,y]. xy gives the builtin function Element[x,y].
This is interpreted using the builtin functions And and Implies:
The Wolfram Language supports most of the standard syntax used in mathematical logic. In the Wolfram Language, however, the variables that appear in the quantifiers , , and must appear as subscripts. If they appeared directly after the quantifier symbols then there could be a conflict with multiplication operations.
and are essentially prefix operators like :

Operators Used to Represent Actions

Operators typically used to represent actions. All the operators except [Square] are infix.
Following the Wolfram Language's usual convention, all the operators in the table are interpreted to give functions whose names are exactly the names of the characters that appear in the operators.
The operators are interpreted as functions with corresponding names:
All the operators in the table above, except for , are infix, so that they must appear in between their operands.

Bracketing Operators

Characters used as bracketing operators.
Interpretations of bracketing operators.

Operators Used to Represent Relations

Operators usually used to represent similarity or equivalence.
The special character (or [Equal]) is an alternative input form for ==.  is used both for input and output:
Operators usually used for ordering by magnitude.
Operators used for relations in sets.
Operators usually used for other kinds of orderings.
Relational operators based on vertical bars.

Operators Based on Arrows and Vectors

Operators based on arrows are often used in pure mathematics and elsewhere to represent various kinds of transformations or changes.
is equivalent to ->:
Arrowlike operators with builtin meanings in the Wolfram Language.
Ordinary arrows.
Vectors and related arrows.
All the arrow and vectorlike operators in the Wolfram Language are infix:
Structural Elements and Keyboard Characters
full name
Esc , Esc
Esc @ Esc
Esc is Esc
Esc + Esc
full name
Esc am Esc
Esc nb Esc
Esc null Esc
Invisible characters.
In the input there is an invisible comma between the 1 and 2:
Here there is an invisible space between the x and y, interpreted as multiplication:
\[Null] does not display, but can take modifications such as superscripts:
The \[AlignmentMarker] does not display, but shows how to line up the elements of the column:
The \[ImplicitPlus] operator is used as a hidden plus sign in mixed fractions:
full name
Esc Esc
Esc Esc
Esc Esc
Esc Esc
Esc is Esc
full name
Esc - Esc
Esc - Esc
Esc - Esc
Esc - Esc
Esc nbs Esc

Esc nl Esc
Spacing and newline characters.
full name
Esc spl Esc
full name
Esc pl Esc
Characters used in buttons.
In the buttons in a palette, you often want to set up a template with placeholders to indicate where expressions should be inserted. \[SelectionPlaceholder] marks the position where an expression that is currently selected should be inserted when the contents of the button are pasted. \[Placeholder] marks other positions where subsequent expressions can be inserted. The Tab key will take you from one such position to the next.
full name
Esc space Esc
Esc ret Esc
Esc ret Esc
Esc ent Esc
Esc esc Esc
Esc esc Esc
full name
Esc ctrl Esc
Esc cmd Esc
Esc [ Esc
Esc ] Esc
Esc cl Esc
Representations of keys on a keyboard.
In describing how to enter input into the Wolfram System, it is sometimes useful to give explicit representations for keys you should press. You can do this using characters like and . Note that and are actually treated as spacing characters by the Wolfram Language.
This string shows how to type α2:
full name
full name
Characters generated in Wolfram System output.
The Wolfram Language uses a \[Continuation] character to indicate that the number continues onto the next line:
Raw keyboard characters.
The fonts that are distributed with the Wolfram System contain their own renderings of many ordinary keyboard characters. The reason for this is that standard system fonts often do not contain appropriate renderings. For example, ^ and ~ are often drawn small and above the centerline, while for clarity in the Wolfram Language they must be drawn larger and centered on the centerline.