V matematice je Knuthova šipková notace metodou pro psaní velkých čísel. Jeho myšlenka je založena na skutečnosti, že násobení je vícenásobné sčítání , umocňování je vícenásobné násobení. To bylo navrženo Donaldem Knuthem v roce 1976 [1] . Úzce souvisí s Ackermannovou funkcí a sekvencí hyperoperátorů .
Tetration , zapsaný pomocí Knuthovy šipky:
Pentace v Knuthově notaci:
V uvedeném zápisu existuje b operandů, z nichž každý je roven a , respektive operace se opakují .
Obvyklé aritmetické operace – sčítání, násobení a umocňování – lze přirozeně rozšířit do sekvence hyperoperátorů takto:
Násobení přirozených čísel lze definovat pomocí operace opakovaného sčítání („přidej b kopie čísla a “):
Například,
Zvýšení a na mocninu b lze definovat jako opakovanou operaci násobení („násobení b kopií a “) a v Knuthově zápisu vypadá tento zápis jako jedna šipka směřující nahoru:
Například,
Taková jediná šipka nahoru byla použita jako ikona stupně v programovacím jazyce Algol .
Donald Knuth pokračoval v dalším sledu operací za umocňováním a zavedl koncept operátoru „dvojité šipky“ pro zápis tetrace (vícenásobné umocňování).
Například,
Zde a níže probíhá vyhodnocení výrazu vždy zprava doleva, také Knuthovy šipkové operátory (stejně jako operace umocňování) mají ze své podstaty pravou asociativitu (řazení zprava doleva). Podle této definice,
a tak dále.To již vede k poměrně velkým číslům, ale tím zápis nekončí. Operátor „trojitá šipka“ se používá k zápisu opakovaného umocňování operátoru „dvojité šipky“ (také známého jako „ pentace “):
pak operátor „čtyři šipka“:
atd. Obecným pravidlem je, že n-tý šipkový operátor podle pravé asociativity pokračuje doprava do sekvenční řady n - 1 šipkových operátorů. Symbolicky to lze napsat následovně:
Například:
Forma zápisu se obvykle používá pro zápis s n šipkami.
Ve výrazech jako , je běžné psát exponent jako horní index základu k označení umocňování . Ale mnoho dalších prostředí - jako jsou programovací jazyky a e-mail - tuto dvourozměrnou konfiguraci nepodporuje. Proto by uživatelé měli pro taková prostředí používat lineární zápis; šipka nahoru naznačuje zvýšení na sílu . Pokud mezi dostupnými znaky není žádná šipka nahoru , použije se místo toho opravná značka pro vložení „^“ .
Pokus o zápis výrazu pomocí známé notace s exponenty generuje věž mocnin. Například:
Pokud je b proměnné (nebo velmi velké), lze věž stupňů zapsat pomocí teček a se zápisem udávajícím výšku věže.
Pomocí této formy zápisu lze výraz zapsat jako množinu ( stohu ) takových energetických věží, z nichž každá udává stupeň překrytí
A znovu, pokud je b proměnlivé (nebo velmi velké), lze sadu takových energetických věží zapsat pomocí bodů a označit jimi, aby označovaly jejich výšky.
Kromě toho lze výraz zapsat pomocí několika sloupců podobných energetických věží, kde každý sloupec označuje počet energetických věží v sadě vlevo
Obecněji:
To může být zapsáno donekonečna, aby bylo reprezentováno jako iterace umocňování pro libovolné a , n a b (ačkoli je jasné, že se to také stává značně těžkopádným).
Tetrační notace umožňuje zjednodušit taková schémata a přitom nadále používat geometrickou reprezentaci (můžeme je nazvat tetovací věže ).
Nakonec, jako příklad, čtvrté Ackermannovo číslo lze zapsat jako:
Některá čísla jsou tak velká, že i psaní Knuthovými šipkami je příliš těžkopádné; v tomto případě je výhodnější použití operátoru n - šipka (a také pro popis s proměnným počtem šipek), nebo ekvivalentně, než hyperoperátory . Některá čísla jsou ale tak obrovská, že ani takový zápis nestačí. Například Grahamovo číslo . K jeho zápisu lze použít Conwayův řetězec : řetězec tří prvků je ekvivalentní jinému zápisu, ale řetězec čtyř nebo více prvků je silnější forma zápisu.
Pro malá čísla je běžné používat Knuthovu šipkovou notaci a pro velká čísla řetězové šipky nebo hyperoperátory.
Zápis šipky nahoru je formálně definován jako
pro všechna celá čísla kde .
Všechny šipkové operátory (včetně běžného umocňování, ) jsou asociativní vpravo , to znamená, že se vyhodnocují zprava doleva, pokud výraz obsahuje dva nebo více podobných operátorů. Například,
, ale ne ; rovné , ale nePro tuto volbu směru výpočtu zprava doleva existuje dobrý důvod. Pokud bychom použili metodu výpočtu zleva doprava, pak by se to rovnalo a ve skutečnosti by to nebyl nový operátor.
Pravá asociativita je také přirozená z následujícího důvodu. Můžeme přepsat opakované šipkové výrazy , které se objeví po rozbalení jako , kde všechna a se stanou levými operandy šipek. To je důležité, protože šipkové operátory nejsou komutativní .
Zápisem jako funkcionální exponent b funkce dostaneme .
Definice může pokračovat ještě jedním krokem, počínaje pro n = 0, protože umocňování je opakované násobení, počínaje 1. Extrapolovat ještě jeden krok, psát násobení jako opakované sčítání, není zcela správné, protože násobení je opakované sčítání, počínaje od 0 místo 1. "Extrapolace" znovu o jeden krok, zápis přírůstku n jako opakované sčítání 1, vyžaduje začít od čísla a . Tento rozdíl je také zdůrazněn v definici hyperoperátoru , kde jsou počáteční hodnoty pro sčítání a násobení uvedeny samostatně.
Výpočet lze přeformulovat do podoby nekonečné tabulky. Čísla umístíme do horního řádku a sloupec vlevo vyplníme číslem 2. Číslo v tabulce určíme tak, že vezmeme číslo nejblíže vlevo, pak najdeme požadované číslo nahoře v předchozím řádku, v pozice daná právě přijatou hodnotou.
m \ n | jeden | 2 | 3 | čtyři | 5 | 6 | Vzorec |
---|---|---|---|---|---|---|---|
jeden | 2 | čtyři | osm | 16 | 32 | 64 | |
2 | 2 | čtyři | 16 | 65536 | |||
3 | 2 | čtyři | 65536 | ||||
čtyři | 2 | čtyři |
Tabulka je stejná jako v článku Ackerman function , s výjimkou posunu hodnot a a navíc 3 ke všem hodnotám.
Výpočet
Čísla umístíme do horní řady a sloupec nalevo vyplníme číslem 3. Číslo v tabulce určíme tak, že vezmeme číslo nejblíže vlevo, požadované číslo pak najdeme nahoře v předchozím řádku, v pozice daná právě přijatou hodnotou.
m \ n | jeden | 2 | 3 | čtyři | 5 | Vzorec |
---|---|---|---|---|---|---|
jeden | 3 | 9 | 27 | 81 | 243 | |
2 | 3 | 27 | 7,625,597,484,987 | |||
3 | 3 | 7,625,597,484,987 | ||||
čtyři | 3 |
Výpočet
Čísla umístíme do horního řádku a sloupec nalevo vyplníme číslem 10. Číslo v tabulce určíme tak, že vezmeme číslo nejblíže vlevo, pak najdeme požadované číslo nahoře v předchozím řádku, v pozice daná právě přijatou hodnotou.
m \ n | jeden | 2 | 3 | čtyři | 5 | Vzorec |
---|---|---|---|---|---|---|
jeden | deset | 100 | 1000 | 10 000 | 100 000 | |
2 | deset | 10 000 000 000 | ||||
3 | deset | |||||
čtyři | deset |
Pro 2 ≤ n ≤ 9 je číselné pořadí lexikografické pořadí s m jako nejvýznamnějším číslem, takže pořadí čísel těchto 8 sloupců je pouze řádek po řádku. Totéž platí pro čísla v 97 sloupcích s 3 ≤ n ≤ 99 a začínáme s m = 1 i pro 3 ≤ n ≤ 9 999 999 999.
Velká čísla | |
---|---|
Čísla | |
Funkce | |
Notace |