You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
KAPITOLA 4. BEZKONTEXTOVÉ JAZYKY A ZÁSOBNÍKOVÉ AUTOMATY57<br />
větná forma. Podřetězec β se nazývá frází větné formy λ vzhledem k nonterminálu<br />
A z N, jestliže platí:<br />
S ⇒ ∗ αAγ<br />
A ⇒ + β<br />
Podřetězec β je jednoduchou frází větné formy λ, jestliže platí:<br />
S ⇒ ∗ αAγ<br />
A ⇒ β<br />
Příklad 4.4 Máme nalézt všechny fráze a všechny jednoduché větné formy<br />
〈výraz〉 + 〈term〉 ∗ 〈faktor〉 v gramatice, která popisuje aritmetický výraz. Jak již<br />
bylo uvedeno, derivace této větné formy má tvar:<br />
Protože platí<br />
〈výraz〉 ⇒ 〈výraz〉 + 〈term〉 ⇒ 〈výraz〉 + 〈term〉 ∗ 〈faktor〉<br />
〈výraz〉 ⇒ ∗ 〈výraz〉 + 〈term〉 a<br />
〈term〉 ⇒ 〈term〉 ∗ 〈faktor〉<br />
je řetězec 〈term〉∗〈faktor〉 jednoduchou frází větné formy 〈výraz〉+〈term〉∗〈faktor〉<br />
vzhledem k nonterminálu 〈term〉.<br />
Dále je:<br />
〈výraz〉 ⇒ ∗ 〈výraz〉<br />
〈výraz〉 ⇒ + 〈výraz〉 + 〈term〉 ∗ 〈faktor〉<br />
a z toho vyplývá, že větná forma 〈výraz〉 + 〈term〉 ∗ 〈faktor〉 je frází sama k sobě<br />
vzhledem k výchozímu symbolu. Tato skutečnost je důsledkem triviálního případu<br />
v definici fráze, kdy jsou řetězce α a γ prázdné. Jiné fráze větné formy 〈výraz〉 +<br />
〈term〉 ∗ 〈faktor〉 neexistují.<br />
Pojem fráze je stěžejním pojmem pro syntaktickou analýzu. Celá třída syntaktických<br />
analyzátorů je postavena na metodách hledání nejlevější jednoduché<br />
fráze větné formy (věty). Protože dále budeme pojmu nejlevější jednoduchá fráze<br />
často používat, zavedeme pro něj speciální označení, l-fráze.<br />
Ve větné formě 〈výraz〉 + 〈term〉 ∗ 〈faktor〉 je jediná jednoduchá fráze: 〈term〉 ∗<br />
〈faktor〉. Tato fráze je tedy zároveň l-frází.<br />
S pojmem fráze větné formy je velmi úzce svázán pojem podstrom příslušného<br />
derivačního stromu. Podstromem derivačního stromu budeme rozumět tu část<br />
tohoto stromu, která je vymezena jistým uzlem, tzv. kořenem podstromu, spolu<br />
se všemi uzly, které jsou z kořene podstromu dostupné prostřednictvím příslušných<br />
hran, včetně těchto hran.<br />
Příklad 4.5 Podstromy derivačního stromu věty aabbcd z obr. 4.2 jsou stromy<br />
z obr. 4.4.<br />
Předpokládejme nyní, že nonterminál A je kořenem podstromu derivačního<br />
stromu. Je-li β řetězec koncových uzlů tohoto podstromu, pak jistě platí A ⇒ + β.<br />
Nechť α je řetězec koncových uzlů vlevo, γ řetězec koncových uzlů derivačního<br />
stromu vpravo od β. Pak platí S ⇒ ∗ αβγ; S je kořenem derivačního stromu.