# Symbolic Computation

One of the important features of the Wolfram System is that it can do symbolic, as well as numerical calculations. This means that it can handle algebraic formulas as well as numbers.

Here is a typical numerical computation.
 In[1]:=
 Out[1]=
This is a symbolic computation.
 In[2]:=
 Out[2]=
 Numerical computation Symbolic computation

Numerical and symbolic computations.

You can type any algebraic expression into the Wolfram System.
 In[3]:=
 Out[3]=
The Wolfram System automatically carries out basic algebraic simplifications. Here it combines and to get .
 In[4]:=
 Out[4]=

You can type in any algebraic expression, using the operators listed in "Arithmetic". You can use spaces to denote multiplication. Be careful not to forget the space in xy. If you type in xy with no space, the Wolfram Language will interpret this as a single symbol, with the name xy, not as a product of the two symbols x and y.

The Wolfram System rearranges and combines terms using the standard rules of algebra.
 In[5]:=
 Out[5]=
Here is another algebraic expression.
 In[6]:=
 Out[6]=
The function Expand multiplies out products and powers.
 In[7]:=
 Out[7]=
Factor does essentially the inverse of Expand.
 In[8]:=
 Out[8]=

When you type in more complicated expressions, it is important that you put parentheses in the right places. Thus, for example, you have to give the expression in the form x^(4y). If you leave out the parentheses, you get instead. It never hurts to put in too many parentheses, but to find out exactly when you need to use parentheses, look at "Operator Input Forms".

Here is a more complicated formula, requiring several parentheses.
 In[9]:=
 Out[9]=

When you type in an expression, the Wolfram System automatically applies its large repertoire of rules for transforming expressions. These rules include the standard rules of algebra, such as , together with much more sophisticated rules involving higher mathematical functions.

The Wolfram System uses standard rules of algebra to replace by .
 In[10]:=
 Out[10]=
The Wolfram System knows no rules for this expression, so it leaves the expression in the original form you gave.
 In[11]:=
 Out[11]=

The notion of transformation rules is a very general one. In fact, you can think of the whole of the Wolfram System as simply a system for applying a collection of transformation rules to many different kinds of expressions.

The general principle that the Wolfram System follows is simple to state. It takes any expression you input, and gets results by applying a succession of transformation rules, stopping when it knows no more transformation rules that can be applied.

 ■ Take any expression, and apply transformation rules until the result no longer changes.

The fundamental principle of the Wolfram System.