2212790591

2212790591



3.2 Zadania praktyczne

3.2.1 Wstęp

Twórcami jęz3'ka Prolog są Alain Colmerauer i Robert Kowalski. Kowalski podał podstawy teoretyczne, natomiast Colmerauer opracował w 1972 roku język programowania. Nazwa jest skrótem od Programming in Logic, co oznacza programowanie w logice. Prolog zyskał popularność w latach osiemdziesiątych, kiedy Japonia wybrała go na język komputerów piątej generacji, a firma Borland wprowadziła na rynek kompilator Turbo-Prolog.

Pierwotne zastosowania Prologu dotyczyły dowodzenia twierdzeń logicznych i przetwarzania języka naturalnego. Ponieważ Prolog operuje głównie na symbolach, nadaje się także do rozwiązywania zagadnień sztucznej inteligencji takich, jak wnioskowanie logiczne, podejmowanie decyzji czy rozgrywanie gier.

Praca z Prologiem polega na zasadzie zapytań. Zapytanie może być proste, np. Czy 2 jest większe od 1?

?- 2 > 1.

Yes

lub złożone np. Czy 2 jest większe od 1 i czy 3 jest mniejsze od 2?

?- 2 > 1, 5 < 3.

No

Uwaga 3.1 Koniunkcję zapytań realizuje przecinek (,), zaś alternatywęśrednik (;). Kaide zapytanie musi kończyć się kropką.

Prolog interpretuje zapytanie i drukuje odpowiedź. Odpowiedź może mieć postać:

1.    Yes — odpowiedź twierdząca,

2.    No — odpowiedź negatywna,

3.    zmienne i ich wartości — są drukowane, jeżeli stanowią odpowiedź na zapytanie. Po wydrukowaniu jednej odpowiedzi, program czeka na decyzję użytkownika. Aby wyświetlić kolejne rozwiązanie, należy nacisnąć średnik (;). Aby zrezygnować z szukania dalszych odpowiedzi, należy nacisnąć Enter.

Uwaga 3.2 W Prologu zmienne zaczynają się wielką literą (np. X, Kto, Delta).

3.2.2 Działania na zbiorach w języku Prolog

W języku Prolog zbiory są reprezentowane w postaci listy, na przykład:

Zbiór    Lista

0    ii

{a,b,c}    [a,b,c]

{{a}, {6, c}}    [ [a],    [b, c] ]

Działania na zbiorach realizują predykaty podane w tabeli:

Predykat member(X, A) subset(A, B) union(A, B, C) intersection(A, B, C) subtract(A, B, C)


Nazwa    Operacja

przynależność    xA

inkluzja (podzbiór) A C. B suma    C = A U B

iloczyn    C = A fi B

różnica    C = A — B

Pozostałe działania można zdefiniować z wykorzystaniem wymienionych powyżej (por. wykład).



Wyszukiwarka

Podobne podstrony:
4.2 Zadania praktyczne4.2.1    Wstęp Iloczyny kartezjańskie i relacje są zbiorami
Zadanie 16. (0-1) Proste KA i KB są styczne do okręgu o środku S w punktach A i B, a kąt BMA ma miar
4.Zadania Realizowane w czasie praktyk W Agence Rheinert głównymi narzędziami pracy są programy: Arc
Zdjęcie029 Zadanie praktyczne 1.    Zmierzyć zmiany kształtu czopów wału korbowe
zestaw 3 rozw 1 Zadanie praktyczneU«*
zestaw 4 rozw 1 Zadanie praktyczne1.    Tytuł: Projekt realizacji prac związanych z w
img03501 30gą - sie - ni - cagą, ą, gą-sio-ni-ca, mą-ka, łą-ka, ką-kol, są-siad, są-siek, pa-jąlt,
skanuj0006 (127) 8.5. ZADANIE - OBLICZENIE PARAMETRÓW TENSOMETRU8.5.1. Wprowadzenie Na rys. 8.4 są p
skanuj0044 (55) Dlatego w praktyce jest tak, że mężczyźni i kobiety są przedstawiaj! w mass mediach
138 GRZEGORZ CZAPNIK Formułując zadania praktycznego etapu finałowej rozgrywki, zakładano, że
U WM MINSKO-MAZURSKIPoświadczenie odbycia zawodowej praktyki śródrocznej z Technologii potrawStudent
ituralnego 2015 14    Sprawozdanie z egzamit Bardzo dobrze wypadły zadania praktyczne

więcej podobnych podstron