Programowanie w logice i w Prologu
Informacje ogólne
Kod przedmiotu: | 1000-2M10PLO |
Kod Erasmus / ISCED: |
11.3
|
Nazwa przedmiotu: | Programowanie w logice i w Prologu |
Jednostka: | Wydział Matematyki, Informatyki i Mechaniki |
Grupy: |
Przedmioty monograficzne dla III - V roku informatyki Przedmioty obieralne dla informatyki Przedmioty obieralne na studiach drugiego stopnia na kierunku bioinformatyka |
Punkty ECTS i inne: |
6.00
|
Język prowadzenia: | angielski |
Rodzaj przedmiotu: | monograficzne |
Założenia (lista przedmiotów): | Języki i paradygmaty programowania 1000-216bJPP |
Założenia (opisowo): | Znajomość podstaw programowania w logice (np. JPP), umiejętność pisania prostych programów w Prrologu. |
Tryb prowadzenia: | w sali |
Skrócony opis: |
Celem zajęć jest pełniejsze przedstawienie programowania w logice (rozszerzenie wiedzy zdobytej na zajęciach z przedmiotu Języki i paradygmaty programowania). Na wykładzie zostanie dokładnie przedstawiony mechanizm obliczeniowy stosowany w programowaniu w logice i zostaną wykazane jego własności (poprawność i pełność). Ponadto zostaną omówione różne semantyki programów z negacją. Na laboratorium studenci poznają techniki programowania w języku Prolog (m.in. dynamiczną modyfikację programu). |
Pełny opis: |
1. SLD-rezolucja: mechanizm obliczeniowy dla programów w logice. 2. Semantyka programów w logice (poprawność i pełność SLD-rezolucji). 3. Negacja w programowaniu w logice (wyprowadzanie negatywnych informacji, programy z negacją, klasy programów, semantyki programów z negacją). 4. Przegląd dziedzin programowania w logice: programowanie z więzami, równoległość, deklaratywna lokalizacja błędów. 5. Weryfikacja programów w logice. Wymagania: Znajomość podstaw programowania w logice (JiPP). Założenia: Języki i paradygmaty programowania. Logika dla informatyków. |
Literatura: |
1. U.Nilsson, J.Małuszyński ,"Logic Programming and Prolog", wyd. 2, John Wiley, 1995,. http://www.ida.liu.se/~ulfni/lpp/ 2. K.R.Apt ,"From Logic Programming to Prolog". 1997. 3. L.Sterling, E.Shapiro, The Art of Prolog. MIT, 1994. 4. W.F.Clocksin, C.S.Mellish, Prolog. Programowanie. Wyd. Helion, 2003. |
Efekty uczenia się: |
Wiedza 1. Ma uporządkowaną wiedzę w zakresie semantyki programów w logice (K_W01, K_W02). 2. Zna podstawowe własności (poprawność i pełność) systemu dowodzenia twierdzeń występującego w programowaniu w logice (K_W09). 3. Zna zaawansowane techniki programowania w logice (K_W01, K_W02). 4. Zna podstawy wybranych dziedzin programowania w logice (m.in. programowanie z więzami, metaprogramowanie, równoległość w programowaniu w logice) (K_W01). Umiejętności 1. Potrafi pisać, uruchamiać i testować programy w Prologu (K_U05). 2. Potrafi pisać metainterpretery w Prologu (np. debugger) (K_U05). 3. Potrafi wybrać właściwą technikę programowania do rozwiązania danego problemu (K_U20). Kompetencje 1. Zna ograniczenia własnej wiedzy i rozumie potrzebę dalszego kształcenia (K_K01). 2. Potrafi pracować indywidualnie (K-K05). |
Metody i kryteria oceniania: |
Ocena końcowa na podstawie wyników z egzaminu (60 pkt.), kolokwium (20 pkt.) oraz dwóch małych programów zaliczeniowych (2*10 pkt.). |
Zajęcia w cyklu "Semestr letni 2022/23" (w trakcie)
Okres: | 2023-02-20 - 2023-06-18 |
![]() |
Typ zajęć: |
Laboratorium, 30 godzin
Wykład, 30 godzin
|
|
Koordynatorzy: | Mirosława Miłkowska | |
Prowadzący grup: | Mirosława Miłkowska | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Egzamin |
Właścicielem praw autorskich jest Uniwersytet Warszawski, Wydział Nauk Ekonomicznych.