Pořadí výpočtu

Když pracujeme s funkcí definovanou určitým vzorcem, důležitou roli hraje pořadí, ve kterém je tento vzorec počítán, když do něj dosadíme nějaké číslo. Typická funkce je vytvořena kombinací elementárních funkcí pomocí základních čtyř operací (sčítání/odčítání, násobení a dělení) a skládání. Ať už je vzniklý vzorec sebesložitější, vždy dokážeme jeho strukturu zachytit stromem. Než se k tomu dostaneme, podíváme se na pár příkladů.

Příklad: Uvažujme funkci f (x) = 1/sin(x2 + x − 1). Jak ji počítáme? Dobrým rádcem je představit si, jak bychom postupovali, kdybychom měli nějaké konkrétní číslo, chtěli jej dosadit za x a zkusili to spočítat kalkulačkou. V jakém pořadí bychom dělali jednotlivé operace?

Protože polynomy jsou považovány za elementární funkce, můžeme brát výpočet výrazu x2 + x − 1 jako jeden krok, ten první. Pak zmáčkneme tlačítko sinu, to je druhý krok, a nakonec zmáčkneme tlačítko označované obvykle "1/x", čímž dokončíme výpočet.

Přeloženo do matematiky, vidíme, že začínáme aplikací funkce x2 + x − 1 na dané číslo, pak na výsledek (který můžeme označit y) aplikujeme funkci sin(y), používáme tedy operaci skládání. Pokud výsledný výraz označíme z, tak odpověď dostaneme výpočtem 1/z, neboli skládáme výraz sin(x2 + x − 1) s vnější funkcí, mocninou z−1. Můžeme to vyjádřit takto:

Ve většině aplikací bychom to ale rádi viděli z druhého konce, v pořadí "od posledního k prvnímu". Nejlepší způsob, jak to nakreslit, je dát x dolů jako kořen a nechat z něj funkci vyrůst.

Použili jsme proměnné y a z ke zdůraznění skládání, ale to v komplikovanějších funkcích nebývá občas možné. Budeme proto dále používat proměnnou x i v jednotlivých funkcích, například bychom v tomto příkladě řekli, že aplikujeme sin(x) na argument (x2 + x − 1).

Zatím to asi vypadalo triviálně, jen jsme otočili obrázek. Jaký to mělo smysl? Příští příklad snad něco naznačí.

Příklad: Uvažujme funkci

Teď ji zkusíme vypočítat. Vezmeme nějaké konkrétní x, vrazíme jej do kalkulačky a aplikujeme na něj x3. Pak aplikujeme tangens, abychom dostali tg( x3), ale najednou jsme v průšvihu, protože v dalším kroku bychom měli toto číslo vydělit něčím, co nemůžeme jen tak zadat do kalkulačky, protože bychom to potřebovali nejprve spočítat. To ukazuje, že daný výraz má (alespoň) dva "kořeny", které je třeba spočítat zvlášť a pak je dát dohromady. Toto naznačuje, že rozkládat funkce "zevnitř", od první provedené operace, není obecně nejlepší strategie, platí to zejména při derivování.

Mnohem perspektivnější je začít "zvenčí", od té operace, která se při výpočtu dělá jako poslední, což je logaritmus, a pak se podívat, co je před ním, jmenovitě dělení, což přirozeně ukáže dvě větve jdoucí dolů.

Pokud se vám to všechno zdá snadné, tak je to v pořádku, znamená to, že nebudete mít problémy ve výpočtech, kde je pořadí důležité. Jen tak pro jistotu si zkuste rozložit a nakreslit strom pro tuto funkci (udělejte to sami, nedívejte se dolů):

Pokud jste dostali stejný strom jako my, jste v pohodě.