Terminální a neterminální symbol

Z Wikipedie, otevřené encyklopedie
Skočit na navigaci Skočit na vyhledávání

Terminální a neterminální symboly jsou prvky používané v teorii formální jazyků pro popis jazyka pomocí formální gramatiky.

Gramatiky používají pro popis jazyka přepisovací pravidla, která obsahují terminální a neterminální symboly.

Terminální symboly (krátce terminály) jsou symboly, které už nemohou být dále přepisovány.[Pozn 1] Slova generovaná gramatikou obsahují pouze terminální symboly.

Neterminální symboly (krátce neterminály) jsou pomocné symboly, které se používají v přepisovacích pravidlech pro popis struktury jazyka. Můžeme považovat za reprezentaci syntaktických kategorií. Někteří autoři je nazývají proměnné (anglicky variables).

Konvence a pravidla[editovat | editovat zdroj]

V teorii formálních jazyků se pro neterminály obvykle používají velká písmena latinské abecedy, a pro terminály malá písmena. V Backusově-Naurově formě (BNF) se názvy terminálů ohraničují špičatými závorkami, např. <příkaz>; v rozvinuté Backusově-Naurově formě (EBNF) se naopak terminální symboly píšou do uvozovek nebo apostrofů, např. 'while', "!=".

Preterminální symboly[editovat | editovat zdroj]

Název preterminální symbol se někdy používá pro neterminální symboly, které se přímo přepisují na jednotlivé terminální symboly. Při zpracování přirozeného jazyka mohou být preterminály slovní druhy nebo morfologické značky. Preterminální symboly mohou tvořit rozhraní mezi syntaktickou i lexikální analýzou – z pohledu syntaktické analýzy jsou to terminály, z pohledu lexikální analýzy neterminály.

Odkazy[editovat | editovat zdroj]

Poznámky[editovat | editovat zdroj]

  1. To úplně neplatí pro transformační gramatiky (gramatiky typu 0), ve kterých se mohou přepisovat řetězce terminálů a neterminálů obsahující aspoň jeden neterminál; v ostatních druzích gramatik se však vždy přepisuje neterminální symbol.

Související články[editovat | editovat zdroj]