Lezione Di Un Quotidiano

Il corso di presentazione

OPR: la KS-grammatica di G = (N, E, P, S) senza regole elettroniche è chiamata come LL semplice (k) - la grammatica (o la grammatica condivisa) se per ogni AON tutte le sue alternative cominciano vari simboli terminali.

DKV: Necessità. Diciamo che w, A', b' e con' incontrano condizioni del teorema, e PRIMA (b'a') ZFIRST (c'a') contiene x. Allora per definizione di PRIMA per alcun y e z là sarà conclusioni di Syuwaa'yuwb'a'yuwxy e Syuwaa'yuwc'a'yuwxz. (Noteremo che qui abbiamo usato quel fatto che N non contiene terminali inutili com'è supposto per tutte le grammatiche ponderate.) Se |x |

Per un inizio presumeremo che G = (N, E, P, S) - la grammatica non ambigua e w=a1, a. - una catena di L (G). Then là è l'unica successione delle catene rimosse sinistre di b0, b. il BM, per quale S=b0, bi, il pi greco Yu bi+1 a 0 <=i

Metodo: L'essenza di algoritmo è come segue: Per ciascuno non l'avere terminale di due o più regole di attraversamento di promozione dei primi k-simboli di tutte le catene possibili di promozione è calcolato. Se questa serie è vuota, il passaggio al terminale seguente, in modo diverso finisca senza valore. Se tutte le traversate sono vuote - finiscono con Sì il valore. Per ricevere l'attraversamento di due regole è possibile usare il record: (FIRSTk (b') EKL) Z (FIRSTk (con') EKL), dove L=FIRSTk (') e' - una catena di simboli dopo il terminale.

Sufficienza. Diciamo che G non il LL (k) la grammatica. Allora ci saranno tali due conclusioni di Syuwaa'yuwb'a'yuwx e Syuwaa'yuwc'a'yuwy che le catene x e y coincidono nelle prime posizioni k, ma b`¹c`. Perciò A®b' e A®c' - le varie regole da P e ciascuna di serie di PRIMI (b'a') e PRIMA (c'a') contengono la catena di PRIMI (x) la coincidenza con PRIMO (y). ChTD.

Altrimenti questi espressi di definizione che per la catena disponibile e la conoscenza di k seguente di simboli è possibile applicare non più di una regola di una conclusione. La grammatica è chiamata come grammatica di LL, se questo come LL (k) - la grammatica per alcun k.

Il teorema può esser espresso al seguendo: sul primo simbolo dopo non terminale è necessario scegliere la regola applicabile - perciò, questi simboli sono vari e l'attraversamento è vuoto. Questo teorema può esser applicato a LL (k) - le grammatiche, ma non sempre esser effettuato. Le grammatiche per cui il teorema è effettuato sono chiamate forti, così, tutto LL (-le grammatiche - forte. È anche necessario notare che ogni LL (k) - la grammatica è non ambigua perciò se c'è una grammatica ambigua - che questo non LL (k). C'è un problema insolubile di riconoscimento, se esiste per questa KS-grammatica di G che non è il LL (k) equivalente è (k) - la grammatica. Comunque in alcuni casi una tale trasformazione è possibile. Sono applicate due strade: La prima strada - eliminazione di recursion sinistro.

PRM: Lasci G consistere delle regole S®aAS|b, A®a|bSA. Intuitivamente il G è LL (-non più di una regola applicabile a Con e condurre alla catena terminale che comincia un simbolo di pagina esiste la grammatica perché, per quanto il più sinistro non il terminale C nella catena rimossa sinistra e il simbolo di entrata seguente è dato con. Passando a definizione di LL (-le grammatiche, vediamo che se Syuwsa'yuwb'a'yuwx e Syuwsa'yuwc'a'yuwy e catene x e y cominciano lo stesso simbolo, ci deve essere b di' =c'. In questo caso se x e y cominciano un simbolo a, la regola S®aAS e b di' =c' di =aAS hanno partecipato a una conclusione. L'alternativa per S®b è impossibile qui. D'altra parte, se x e y cominciano con b, la regola S®b e b di' =c' di =b devono esser applicati. Notiamo che il caso x=y=e è impossibile qui siccome l'e non è portato di S in grammatica di G.

PRM: consideriamo LL (-la grammatica di G con due regole S®aS|a. In queste due regole "mettere parentesi esterne a sinistra" un simbolo a, avendoli annotati nella forma di S®a(S|e). In altre parole, pensiamo che una concatenazione di un distributivn riguardo a operazione di una scelta dell'alternativa (designato da linea verticale). Sostituiamo queste regole su: Con ciò riceveremo S®aA A®S|e equivalente a LL (-la grammatica.