BUDOWA PROGRAMU W PROLOGU
PROGRAM: zbiór procedur; kolejność procedur w programie nie jest istotna.
PROCEDURA: ciąg klauzul definiujących jeden predykat (opis relacji); kolejność klauzul
w procedurze jest istotna.
KLAUZULA: fakt lub reguła.
FAKT:
Określenie Bezwarunkowo prawdziwe stwierdzenie o istnieniu pewnych powiązań
(relacji) między obiektami.
Postać symbol_relacji (obiekt1, ..., obiektn)
Uwagi Liczba argumentów, jak również ich kolejność jest ściśle określona przez
rodzaj związku zachodzącego między obiektami i wiąże się z jego
interpretacją.
Przykłady student(marcin). Marcin jest studentem.
lubi(ewa, marek). Ewa lubi Marka.
synonim(fiasko, krach). Słowa fiasko i krach są synonimami.
matka(anna). Anna jest matką.
matka(joanna, piotr). Joanna jest matką Piotra.
rodzice(jan, maria, ewa). Jan i Maria są rodzicami Ewy.
REGUAA:
Określenie Warunkowe stwierdzenie istnienienia pewnych powiązań (relacji)
między obiektami.
Postać symbol_relacji (obiekt1, ..., obiektn) :-
symbol_relacji_1 (obiekt1, ..., obiektn1),
symbol_relacji_2 (obiekt1, ..., obiektn2),
.......................................................... ,
symbol_relacji_k (obiekt1, ..., obiektnk).
Przykłady lubi (marta, X) :- mezczyzna (X), Marta lubi przystojnych mężczyzn,
przystojny (X), którzy jeżdżą Porsche.
jezdzi (X, porsche).
siostra (S, X) :- kobieta (S), S jest siostrą X, jeżeli jest kobietą
rodzice (O, M, S), oraz S i X maja tych samych
rodzice (O, M, X). rodziców.
powierzchnia (X, Y) :- Powierzchnia Y prostokąta X jest
dlugosc (X, D), równa iloczynowi długości D i
szerokosc (X, S), szerokości S tego prostokąta.
Y is D*S.
ROZPOCZCIE DZIAAANIA PROGRAMU: wywołanie dowolnej procedury, nazywane
w Prologu zadawaniem pytań lub podawaniem celu.
CEL:
Określenie 1. Pytanie o prawdziwość podanych faktów.
2. Polecenie znalezienia nazw obiektów będących w podanej relacji
z innymi.
Postać ?- symbol_relacji_1 (obiekt1, ..., obiektn1),
symbol_relacji_2 (obiekt1, ..., obiektn2),
.......................................................... ,
symbol_relacji_k (obiekt1, ..., obiektnk).
Przykłady ?- lubi (marta, jan). Czy Marta lubi Jana?
?- lubi (jan, X), lubi (marta,X). Kto jest lubiany jednocześnie przez
Martę i Jana?
?- lubi (jan, _ ). Czy Jan kogoś lubi?
Wyszukiwarka
Podobne podstrony:
Budowa programu tworzonego w języku PascalProlog Guide to Prolog ProgrammingProlog programowanieBudowa i zasada działania programowalnych sterowników PLC1 Literatura programowanie w logice, PrologBudowa, dzialanie i programowanie robota L2budowa lunety?lowniczejzestawy cwiczen przygotowane na podstawie programu Mistrz Klawia 6Budowa robotow dla poczatkujacych budrobMiędzynarodowy Program Badań nad Zachowaniami SamobójczymiMakroskopowa budowa mięśniaBudowanie wizerunku firmy poprzez architekturęCSharp Introduction to C# Programming for the Microsoft NET Platform (Prerelease)Instrukcja Programowania Zelio Logic 2 wersja polskawięcej podobnych podstron