Re: Za Asistenta!!!
Evo da ja odgovorim na ovo pitanje.
1) Kontrolna tabela kod LALR(1) parsera se konstruise po istom algoritmu kao i za LR(1) parser. Tj. stanje u detektoru rucki za LALR(1) parser bi mogao da posmatras kao da se radi o stanju iz detektora rucki za LR(1) parser i onda primenis isti algoritam kao i za LR(1) parser. Ovo je posledica sto je stanje u detektoru rucki za LALR(1) parser dobijeno spajanjem srodnih stanja tj. stanja sa istim jezgrom LR(1) parsera.
2) Ovo jeste objasnjeno u skriptama sa predavanja. Samo se treba malo udubiti u sintaksu skupovnih definicija. Ukratko: Za nultu smenu predikiconi simbol je epsilon. Pri operaciji GOTO predikcioni simboli iz konfiguracije se prepisuju u odgovarajucu konfiguraciju stanja u koje se prelazi. Pri dodavanju konfiguracija zatvaranja za konfiguracije u kojima se tacka nalazi ispred neterminala tj. pri operaciji CLOSURE predikcioni simboli u dodatoj konfiguraciji zatvaranja (konfiguracija zatvaranja-tacka se nalazi na pocetku) se dobijaju kao rezultat operacije FIRST od sentencijalne forme koja se nalazi iza neterminala za koji dodajemo konfiguracije zatvaranja ukoliko ta sentencijalna forma nije ponistiva, odnosno FIRST od te sentencijelne forme unija predikiconi simboli konfiguracije za koju radimo zatvaranje, ukoliko je sentencijalna forma ponistiva.
primer za CLOSURE
<S> -> b * <A><B><C>c, { a, b }
dodajemo sve smene koje imaju <A> na levoj strani i u te konfiguracije dodajemo predikcione simbole kao FIRST (<B><C>ca) Unija FIRST (<B><C>cb). Ovo a i b na kraju sent. formi u zagradama poticu od onih {a, b}odozgo.
Pozdrav
Pera
----- Original Message ----- From: "Dragoslav Plazinic" <plazo@ptt.yu>
To: <ri4pp@rti.etf.bg.ac.yu>
Sent: Thursday, September 14, 2006 8:48 PM
Subject: [ri4pp] Za Asistenta!!!
1) Kontrolna tabela kod LALR(1) parsera se konstruise po istom algoritmu kao i za LR(1) parser. Tj. stanje u detektoru rucki za LALR(1) parser bi mogao da posmatras kao da se radi o stanju iz detektora rucki za LR(1) parser i onda primenis isti algoritam kao i za LR(1) parser. Ovo je posledica sto je stanje u detektoru rucki za LALR(1) parser dobijeno spajanjem srodnih stanja tj. stanja sa istim jezgrom LR(1) parsera.
2) Ovo jeste objasnjeno u skriptama sa predavanja. Samo se treba malo udubiti u sintaksu skupovnih definicija. Ukratko: Za nultu smenu predikiconi simbol je epsilon. Pri operaciji GOTO predikcioni simboli iz konfiguracije se prepisuju u odgovarajucu konfiguraciju stanja u koje se prelazi. Pri dodavanju konfiguracija zatvaranja za konfiguracije u kojima se tacka nalazi ispred neterminala tj. pri operaciji CLOSURE predikcioni simboli u dodatoj konfiguraciji zatvaranja (konfiguracija zatvaranja-tacka se nalazi na pocetku) se dobijaju kao rezultat operacije FIRST od sentencijalne forme koja se nalazi iza neterminala za koji dodajemo konfiguracije zatvaranja ukoliko ta sentencijalna forma nije ponistiva, odnosno FIRST od te sentencijelne forme unija predikiconi simboli konfiguracije za koju radimo zatvaranje, ukoliko je sentencijalna forma ponistiva.
primer za CLOSURE
<S> -> b * <A><B><C>c, { a, b }
dodajemo sve smene koje imaju <A> na levoj strani i u te konfiguracije dodajemo predikcione simbole kao FIRST (<B><C>ca) Unija FIRST (<B><C>cb). Ovo a i b na kraju sent. formi u zagradama poticu od onih {a, b}odozgo.
Pozdrav
Pera
----- Original Message ----- From: "Dragoslav Plazinic" <plazo@ptt.yu>
To: <ri4pp@rti.etf.bg.ac.yu>
Sent: Thursday, September 14, 2006 8:48 PM
Subject: [ri4pp] Za Asistenta!!!
1) Kako se konstruise kontrolna tabela kod LALR(1) parsera?
Ni na predavanjima ni na vezbama nije dat algoritam za ovaj slucaj.
2)Kako se odredjuju predikcioni simboli kod LR(1) parsera?
Ako moze dodatno objasnjenje, jer je na vezbama receno:
"Predikciona komponenta x konfiguracije <A> ® a · b, x označava jedan od mogućih tekućih ulaznih simbola u trenutku rada parsera kada se na vrhu steka kompletira ručka smene <A> ® ab." Ako moze kroz primer.
Unapred hvala.
-----------------------------------------------------------------
unsubscribe:
minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20ri4pp
-----------------------------------------------------------------
- Follow-Ups:
- Re: Za Asistenta!!!
- From: "Dragoslav Plazinic" <plazo@ptt.yu>
- Re: Za Asistenta!!!
- References:
- Domaci!
- From: "Ivan Matic" <popajthesailor@hotmail.com>
- Re: Domaci!
- From: "Jovan Popovic" <jovan@etf.bg.ac.yu>
- Morganov algoritam
- From: "pegy" <pegy@beotel.net>
- Re: Morganov algoritam
- From: "Jovan Popovic" <jovan@etf.bg.ac.yu>
- Re: Morganov algoritam
- From: "Predrag Milosevic" <pedjoni@gmail.com>
- Re: Morganov algoritam
- From: "Jovan Popovic" <jovan@etf.bg.ac.yu>
- Za Asistenta!!!
- From: "Dragoslav Plazinic" <plazo@ptt.yu>
- Domaci!
Previous by date: Za asistenta! A moze i za ljubaznog kolegu koji bi dao odgovor!
Next by date: Re: Za asistenta! A moze i za ljubaznog kolegu koji bi dao odgovor!
Previous by thread: Za Asistenta!!! Next by thread: Re: Za Asistenta!!!
Previous by thread: Za Asistenta!!! Next by thread: Re: Za Asistenta!!!