Uniwersytet Warszawski - Centralny System Uwierzytelniania
Strona główna

Programowanie w logice i w Prologu

Informacje ogólne

Kod przedmiotu: 1000-2M10PLO
Kod Erasmus / ISCED: 11.3 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (0612) Database and network design and administration Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Programowanie w logice i w Prologu
Jednostka: Wydział Matematyki, Informatyki i Mechaniki
Grupy: Przedmioty obieralne dla informatyki
Przedmioty obieralne na studiach drugiego stopnia na kierunku bioinformatyka
Punkty ECTS i inne: 6.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.

zobacz reguły punktacji
Język prowadzenia: angielski
Rodzaj przedmiotu:

monograficzne

Założenia (lista przedmiotów):

Języki i paradygmaty programowania 1000-216bJPP
Logika dla informatyków 1000-217bLOG
Programowanie w logice 1000-2N00PLO

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 2023/24" (w trakcie)

Okres: 2024-02-19 - 2024-06-16
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Mirosława Miłkowska
Prowadzący grup: Mirosława Miłkowska
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Warszawski.
ul. Banacha 2
02-097 Warszawa
tel: +48 22 55 44 214 https://www.mimuw.edu.pl/
kontakt deklaracja dostępności USOSweb 7.0.3.0-2b06adb1e (2024-03-27)