Multimediaexpo.cz je již 18 let na českém internetu !!
Formální jazyk
Z Multimediaexpo.cz
m (Nahrazení textu „<math>“ textem „<big>\(“) |
m (Nahrazení textu „</math>“ textem „\)</big>“) |
||
Řádka 1: | Řádka 1: | ||
'''Formální jazyk''' v [[Matematika|matematice]], [[logika|logice]] a [[Informatika|informatice]] označuje [[množina|množinu]] konečných slov (tj. slov konečné délky) nad určitou [[Abeceda (formální jazyky)|abecedou]]. Místo výrazu "slovo" se někdy užívá výraz "[[textový řetězec|ř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. | '''Formální jazyk''' v [[Matematika|matematice]], [[logika|logice]] a [[Informatika|informatice]] označuje [[množina|množinu]] konečných slov (tj. slov konečné délky) nad určitou [[Abeceda (formální jazyky)|abecedou]]. Místo výrazu "slovo" se někdy užívá výraz "[[textový řetězec|ř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 <big>\(\left \{ a , b \right \}</ | + | Příkladem abecedy může být <big>\(\left \{ a , b \right \}\)</big>, slovem nad touto abecedou je například <big>\(ababba\)</big>. Příkladem jazyka můžou být slova nad touto abecedou, která obsahují stejný počet symbolů <big>\(a\)</big> a <big>\(b\)</big>. |
- | '''Prázdné slovo''' (tj. slovo, které se skládá z nulového počtu znaků) se značí <big>\(e</ | + | '''Prázdné slovo''' (tj. slovo, které se skládá z nulového počtu znaků) se značí <big>\(e\)</big>, <big>\(\epsilon\)</big> 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 <big>\(\Sigma</ | + | Abeceda je obvykle značena symbolem <big>\(\Sigma\)</big>. Zápis <big>\(\Sigma^{*}\)</big> pak označuje jazyk, obsahující všechna slova nad danou [[abeceda|abecedou]], včetně prázdného slova. Každý jazyk <big>\(L\)</big> nad určitou [[abeceda|abecedou]] <big>\(\Sigma\)</big> je [[podmnožina|podmnožinou]] jazyka <big>\(\Sigma^{*}\)</big>. |
Příklady formálních jazyků: | Příklady formálních jazyků: | ||
- | * [[množina]] všech slov nad abecedou <big>\({a, b}</ | + | * [[množina]] všech slov nad abecedou <big>\({a, b}\)</big> |
- | * množina <big>\(\left \{ a^{n}\right\}</ | + | * množina <big>\(\left \{ a^{n}\right\}\)</big>, n je [[přirozené číslo]] a <big>\(a^{n}\)</big> znamená, že <big>\(a\)</big> se vyskytuje <big>\(n\)</big>-krát za sebou. |
* [[Konečný jazyk|konečné jazyky]] jako například ''a,aa,bba'' | * [[Konečný jazyk|konečné jazyky]] jako například ''a,aa,bba'' | ||
* množina všech programů v daném [[programovací jazyk|programovacím jazyce]] | * množina všech programů v daném [[programovací jazyk|programovacím jazyce]] |
Aktuální verze z 14. 8. 2022, 14:51
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ů:
- množina všech slov nad abecedou \({a, b}\)
- množina \(\left \{ a^{n}\right\}\), n je přirozené číslo a \(a^{n}\) znamená, že \(a\) se vyskytuje \(n\)-krát za sebou.
- konečné jazyky jako například a,aa,bba
- množina všech programů v daném programovacím jazyce
- množina všech slov, nad kterými daný Turingův stroj zastaví.
Formální jazyk může být definován různými způsoby, například :
- slova generovaná nějakou formální gramatikou (viz Chomského hierarchie);
- slova vyhovující nějakému regulárnímu výrazu;
- slova akceptovaná nějakým automatem, například Turingovým strojem nebo konečným automatem;
Náklady na energie a provoz naší encyklopedie prudce vzrostly. Potřebujeme vaši podporu... Kolik ?? To je na Vás. Náš FIO účet — 2500575897 / 2010 |
---|
Informace o článku.
Článek je převzat z Wikipedie, otevřené encyklopedie, do které přispívají dobrovolníci z celého světa. |