Prilagajanje

Iz E-študij, proste zakladnice študentskega znanja

Skoči na: navigacija, iskanje

Prilagajanje je edina operacija, ki jo pozna čisti logični prolog. Je implementacija unifikacije v računalniški logiki.

otrok(tine,mojca).  
otrok(tine,cene).
otrok(cene,micka).

?- otrok(X,cene).    %spremenljivka X se opredeli
X = tine
  • Neopredeljena spremenljivka se lahko prilagodi čemurkoli
Po operaciji je spremenljivka opredeljena in njena vrednost je izraz, kateremu se je prilagodila. Če se prilagajata dve neopredeljeni spremenljivki, postaneta identičnil.
  • Dve konstanti se prilagodita, če sta identični.
  • Dve strukturi se prilagodita, če imata isti funktor* in če se lahko argumenti med seboj paroma prilagodijo
*(če imata isto ime in enako število argumentov)


Pri prilagajanju se strukturi prilagodita vedno najbolj splošno. To pomeni da je prilagajanje čimmanjše potrebno.

Primeri

?- datum(Dan,11,1986) = datum(Dan1,Mesec,Leto).
Dan = Dan1
Mesec = 11
Leto = 1986
?- X = 1+2.  %na levi neopredeljena spremenljivka, na desni struktura
X=1+2
yes
?- X+Y = 1+2
X=1
Y=2
yes
?- f(X) = f(g(1)).
X=g(1)
yes
?- X = f(X).  %ciklična struktura, ob izpisu se zacikla ker kliče sam sebe
X=f(f(f(f(f(f(f(f(f(f(f(f(f(f(f(f(f(f(....
Osebna orodja
Imenski prostori
Različice
Dejanja
navigacija

Tiskanje/izvoz
orodja