Symbol (formální jazyky)
Symbol (neformálně znak) je v teorii formálních jazyků libovolný z prvků, ze kterých se vytvářejí řetězce. Řetězec (neformálně slovo) je konečná posloupnost symbolů.
Každý symbol lze považovat za řetězec délky 1.
Definice
Formálně se symbol definuje jako libovolný prvek abecedy, přičemž abeceda je libovolná konečná množina.
Praktické použití
V teorii formálních jazyků se jako symboly zpravidla používají jednotlivá písmena. Při aplikaci na přirozený jazyk mohou být za symboly považována podle potřeby jednotlivá písmena (pro lexikální zpracování) nebo celá slova, případně slovní tvary (pro zpracování syntaxe). Podobně je tomu při zpracování programovacích jazyků: při lexikální analýze se za symboly považují jednotlivě znaky, při syntaktické analýze se za symboly považují posloupnosti znaků tvořící klíčová slova, identifikátory, literály (konstanty), operátory, oddělovače, apod. Při zpracování mluvené řeči se obvykle za symboly považují jednotlivé hlásky (fonémy).
Při popisu gramatik se symboly dělí na terminální a neterminální. V tomto případě se pro terminální symboly používají obvykle malá, pro neterminální symboly velká písmena anglické abecedy.