Výrazy

> a:=5;
b:=a;
a*b;

a := 5

b := 5

25

Toto byl velmi jednoduchý příklad, nyní si ukážeme o něco více obecnou definici výrazu a její vyčíslení pro konkrétní argument.

> y:=sin(x);

y := sin(x)

> evalf(subs(x=3,y));

.1411200081

Je samozřejmé, že výraz může být složitější, a může obsahovat i několik proměnných.

> y:=x^2+z^2;
subs({x=3,z=2},y);

y := x^2+z^2

13

Všimněte si, že výraz y lze jednoduše předefinovat a že přiřazení příkazem subs je lokální! (existují další alrternativy tohoto příkazu - algsubs pro substituci výrazu.

> algsubs(a+c=b,a+2*c);

5

> x;z;b;

x

z

5

Pro nahrazení části výrazu jiným lze použít příkaz subsop .

> y;
subsop(2=z,y); #nahradí druhý člen výrazu promennou z

x^2+z^2

x^2+z

Pro další usnadnění práce se hodí příkazy applyop (aplikování funkce na část výrazu) a map (aplikování funkce postupně na všechny části výrazu. Jejich funkci si vyzkoušejte až při druhém čtení.