SW wykład 4 - Slajd2: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Arturas (dyskusja | edycje)
Nie podano opisu zmian
Dorota (dyskusja | edycje)
Nie podano opisu zmian
 
(Nie pokazano 1 wersji utworzonej przez jednego użytkownika)
Linia 1: Linia 1:
{{Semantyka i weryfikacja programów/Wykład 4}}
{{Semantyka i weryfikacja programów/Wykład 4}}
[[Grafika:sw0401.png|center|frame]]
[[Grafika:sw0401.png|center|frame]]
Zaczynamy więc od dziedzin syntaktycznych. Definiować je będziemy jak
dotychczas, podając odpowiednią gramatykę bezkontekstową (w razie
potrzeby uzupełnioną dodatkowymi kontekstowymi ograniczeniami, które
muszą spełniać napisy by być poprawnymi syntaktycznie frazami danej
kategorii składniowej języka (czyli elementami danej dziedziny
syntaktycznej).
Dla każdej kategorii składniowej języka podajemy jej dziedzinę
semantyczną: zbiór obiektów, formalnie definiowanych z dziedzin
prostych (liczby całkowite, wartości logiczne, itp.) przez stosowanie
standardowych operacji na dziedzinach. Typowe przykłady takich
operacji, służących budowaniu stopniowo coraz bardziej skomplikowanych
dziedzin semantycznych, to iloczyn kartezjański, czy suma
rozłączna. Najważniejszą jednak taką operacją jest tworzenie zbioru
funkcji pomiędzy danymi dziedzinami semantycznymi. Bardziej
szczegółowo pojęcie dziedziny semantycznej i metod budowania tych
dziedzin będziemy jeszcze omawiać na tych zajęciach w jednym z
kolejnych modułów.
Ten krok jest często kluczowy dla adekwatności definiowanej semantyki
języka. Tu bowiem decydujemy, jakie potencjalne informacje mogą nieść
znaczenia fraz języka, a jakie informacje nie będą mogły być w
znaczeniach zawarte.
Dla niektórych prostych kategorii składniowych (np. zmiennych) opis
ich semantyki wydaje się zbędny i będziemy go po prostu pomijać. Można
wówczas przyjąć, że dziedzina semantyczna dla tej kategorii
składniowej jest tożsama z dziedziną syntaktyczną, a odpowiadająca jej
funkcja semantyczna to po prostu identyczność.

Aktualna wersja na dzień 12:21, 29 wrz 2006

<<powrót do strony wykładu

Semantyka denotacyjna Dziedziny składniowe i semantyczne Funkcje semantyczne Kompozycjonalność Tiny. Semantyka denotacyjna Tiny. Semantyka denotacyjna, c.d. Pojęcia pomocnicze Pojęcia pomocnicze, c.d. |Tiny. Semantyka denotacyjna, c.d. Tiny. Semantyka denotacyjna, c.d. Problem z while Konstrukcje stałopunktowe Konstrukcje stałopunktowe, c.d. Konstrukcje stałopunktowe, c.d. Przykład Przykład, c.d. Dowód Dowód Zgodność semantyki denotacyjnej

Zaczynamy więc od dziedzin syntaktycznych. Definiować je będziemy jak dotychczas, podając odpowiednią gramatykę bezkontekstową (w razie potrzeby uzupełnioną dodatkowymi kontekstowymi ograniczeniami, które muszą spełniać napisy by być poprawnymi syntaktycznie frazami danej kategorii składniowej języka (czyli elementami danej dziedziny syntaktycznej).

Dla każdej kategorii składniowej języka podajemy jej dziedzinę semantyczną: zbiór obiektów, formalnie definiowanych z dziedzin prostych (liczby całkowite, wartości logiczne, itp.) przez stosowanie standardowych operacji na dziedzinach. Typowe przykłady takich operacji, służących budowaniu stopniowo coraz bardziej skomplikowanych dziedzin semantycznych, to iloczyn kartezjański, czy suma rozłączna. Najważniejszą jednak taką operacją jest tworzenie zbioru funkcji pomiędzy danymi dziedzinami semantycznymi. Bardziej szczegółowo pojęcie dziedziny semantycznej i metod budowania tych dziedzin będziemy jeszcze omawiać na tych zajęciach w jednym z kolejnych modułów.

Ten krok jest często kluczowy dla adekwatności definiowanej semantyki języka. Tu bowiem decydujemy, jakie potencjalne informacje mogą nieść znaczenia fraz języka, a jakie informacje nie będą mogły być w znaczeniach zawarte.

Dla niektórych prostych kategorii składniowych (np. zmiennych) opis ich semantyki wydaje się zbędny i będziemy go po prostu pomijać. Można wówczas przyjąć, że dziedzina semantyczna dla tej kategorii składniowej jest tożsama z dziedziną syntaktyczną, a odpowiadająca jej funkcja semantyczna to po prostu identyczność.