Formální jazyk

Z Multimediaexpo.cz

Formální jazyk v matematice, logice a informatice označuje množinu konečných slov (tj. slov konečné délky) nad určitou abecedou. Místo výrazu "slovo" se někdy užívá výraz "řetězec". Definice pojmu formální jazyk se může měnit podle toho, v jakém kontextu a v jakém vědním oboru jej používáme.

Příkladem abecedy může být \(\left \{ a , b \right \}\), slovem nad touto abecedou je například \(ababba\). Příkladem jazyka můžou být slova nad touto abecedou, která obsahují stejný počet symbolů \(a\) a \(b\).

Prázdné slovo (tj. slovo, které se skládá z nulového počtu znaků) se značí \(e\), \(\epsilon\) nebo λ. Ačkoli abeceda je konečná množina a každé slovo je konečná posloupnost, jazyk konečný být nemusí, jelikož délka slov nemusí být shora omezena.

Abeceda je obvykle značena symbolem \(\Sigma\). Zápis \(\Sigma^{*}\) pak označuje jazyk, obsahující všechna slova nad danou abecedou, včetně prázdného slova. Každý jazyk \(L\) nad určitou abecedou \(\Sigma\) je podmnožinou jazyka \(\Sigma^{*}\).

Příklady formálních jazyků:

Formální jazyk může být definován různými způsoby, například :