Analiza în jos

Analiza de sus în jos este una dintre metodele pentru a determina dacă un șir de intrare aparține unui limbaj formal descris de  gramatica fără context LL(k) . Aceasta este o clasă de algoritmi de analiză gramaticală , în care regulile unei gramatici formale sunt extinse începând de la caracterul de început până când se obține secvența necesară de jetoane .

Ideea metodei

Pentru fiecare simbol non-terminal K , se construiește o funcție care, pentru orice cuvânt de intrare x , face 2 lucruri:

O astfel de funcție trebuie să îndeplinească următoarele criterii:

Dacă un astfel de început nu poate fi calculat (și se dovedește corectitudinea funcției pentru nonterminalul K ), atunci datele de intrare nu corespund limbajului, iar analizarea ar trebui oprită.

Analiza constă în apelarea funcțiilor descrise mai sus. Dacă există o regulă compusă pentru non-terminalul citit, atunci când este analizat, vor fi apelate și alte funcții pentru a analiza terminalele incluse în acesta. Un arbore de apeluri care începe de la funcția „sus” este echivalent cu un arbore de analiză.

Cea mai simplă și mai „umană” modalitate de a crea un parser folosind metoda de coborâre recursivă este programarea directă pentru fiecare regulă de inferență pentru non-terminale gramaticale.

Condiții de utilizare

Fie N un set  finit de simboluri non-terminale într-o gramatică formală dată; Σ  este un set finit de simboluri terminale, atunci metoda de coborâre recursivă este aplicabilă numai dacă fiecare regulă a acestei gramatici are următoarea formă:

Algoritmi de analiză de sus în jos

Literatură