# Everything Is an Expression

*Mathematica* handles many different kinds of things: mathematical formulas, lists, and graphics, to name a few. Although they often look very different, *Mathematica* represents all of these things in one uniform way. They are all *expressions*.

A prototypical example of a *Mathematica* expression is . You might use to represent a mathematical function . The function is named , and it has two arguments, and .

You do not always have to write expressions in the form . For example, is also an expression. When you type in , *Mathematica* converts it to the standard form Plus[x, y]. Then, when it prints it out again, it gives it as .

The same is true of other "operators", such as (Power) and (Divide).

In fact, everything you type into *Mathematica* is treated as an expression.

x+y+z | Plus[x,y,z] |

xyz | Times[x,y,z] |

x^n | Power[x,n] |

{a,b,c} | List[a,b,c] |

a->b | Rule[a,b] |

a=b | Set[a,b] |

Some examples of *Mathematica* expressions.

You can see the full form of any expression by using FullForm[expr].

Out[1]= | |

This is the full form of the expression.

Out[2]//FullForm= |

| |

Here is another expression.

Out[3]= | |

Its full form has several nested pieces.

Out[4]//FullForm= |

| |

The object f in an expression is known as the *head* of the expression. You can extract it using Head[expr]. Particularly when you write programs in *Mathematica*, you will often want to test the head of an expression to find out what kind of thing the expression is.

Head gives the "function name"

.

Out[5]= | |

Here

Head gives the name of the "operator".

Out[6]= | |

Out[7]= | |

Out[8]= | |

You can distinguish different kinds of numbers by their heads.

Out[9]= | |

Head[expr] | give the head of an expression: the f in |

FullForm[expr] | display an expression in the full form used by *Mathematica* |

Functions for manipulating expressions.