SW wykład 2 - Slajd3: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Tarlecki (dyskusja | edycje)
Nie podano opisu zmian
Tarlecki (dyskusja | edycje)
mNie podano opisu zmian
Linia 1: Linia 1:
{{Szablon:Semantyka i weryfikacja programów/Wykład 2}}
{{Szablon:Semantyka i weryfikacja programów/Wykład 2}}
[[Grafika:sw0202.png|frame|center|]]
[[Grafika:sw0202.png|frame|center|]]
Właśnie strukturę fraz programu określa składnia
Właśnie strukturę fraz programu określa składnia
abstrakcyjna. Rozumieć ją należy jako opis struktury programu przez
abstrakcyjna. Rozumieć ją należy jako opis struktury programu przez

Wersja z 11:08, 22 sie 2006

<<powrót do strony wykładu

Składnia Składnia konkretna Składnia abstrakcyjna Przyjmowane założenia Przykład wiodący Kategorie składniowe Kategorie składniowe, c.d. Uwagi Indukcja strukturalna Definicje indukcyjne Kategorie semantyczne Wartościowanie zmiennych Semantyka wyrażeń Semantyka wyrażeń logicznych Semantyka instrukcji Prosty fakt Dowód Przezroczystość odwołań Semantyka operacyjna Obliczenia Semantyka operacyjna Tiny Własności Własności, c.d. Warianty definicji

Właśnie strukturę fraz programu określa składnia abstrakcyjna. Rozumieć ją należy jako opis struktury programu przez podanie kolejnych konstrukcji językowych, które budują kolejne frazy programu i w końcu całe programy ze swoich bezpośrednich składowych, uprzednio zbudowanych z podobny sposób. Najlepiej definiuje tę strukturą drzewo rozbioru (wyprowadzenia) programu w jego zadanej gramatyce bezkontekstowej. Podstawowym celem analizy składniowej jest właśnie zbudowanie takiego drzewa wyprowadzenia w gramatyce składni konkretnej języka dla zadanego słowa nad przyjętym alfabetem --- o ile jest to możliwe. Gdy nie jest to możliwe, zadane słowo nie należy do języka, nie stanowi zatem programu w rozważanym języku programowania. Wtedy zadaniem analizy składniowej jest możliwie najbardziej precyzyjne wskazanie "błędu syntaktycznego" i możliwości jego poprawienia.