Variables allow you to store values that can be recalled later.

Variables can have names with multiple words so you can keep your math understandable.

Functions are your means of quickly doing lots of calculations.

Functions can also be inverted so that you can solve for their parameters. Note how we were able to use the one equation for Fahrenheit temperatures `f`

to calculate a Celsius temperature `c`

.

Functions can even be recursive.

Linear equations can be solved simply by referencing a variable.

In this example, we want to solve for `x`

when we already know `x + 5x`

.

Next, we solve for the frequency of a simple cos signal.

Matrices up to two dimensions with arithmetic, indexing, determinates, and inverses (symbolic and numeric) are supported.

Matrices can also be used with the solver to calculate solutions to linear equations.

In this example, we solve the simultaneous equations:

```
1*x0 + two*x1 = 5
3*x0 + 4*x1 = 6
```

We can use Calca's understanding of De Morgan's Law to unravel some very sketchy logic.