Introducció

En aquest tema, explorarem dos conceptes fonamentals en Prolog: les variables i la unificació. Aquests conceptes són essencials per comprendre com Prolog maneja les dades i resol les consultes.

Variables en Prolog

Definició de Variables

En Prolog, les variables són elements que poden representar qualsevol valor. Les variables es diferencien dels àtoms perquè comencen amb una lletra majúscula o un guió baix (_).

Exemples de Variables:

X
Y
Person
_Car

Regles per a les Variables

  1. Nomenclatura: Les variables han de començar amb una lletra majúscula o un guió baix.
  2. Àmbit: Les variables són locals a la regla o consulta en què es defineixen.
  3. Unificació: Les variables poden unificar-se amb altres variables, constants o estructures.

Exemple de Variables en una Consulta

% Definim alguns fets
pare(john, mary).
pare(john, peter).

% Consulta amb una variable
?- pare(john, X).

En aquest exemple, X és una variable que Prolog intentarà unificar amb els valors que satisfacin la consulta pare(john, X).

Unificació en Prolog

Què és la Unificació?

La unificació és el procés mitjançant el qual Prolog intenta fer coincidir dues expressions. Si Prolog pot trobar una manera de fer coincidir les expressions, es diu que han unificat.

Regles de la Unificació

  1. Àtoms: Dos àtoms unifiquen si són exactament iguals.
  2. Variables: Una variable pot unificar amb qualsevol àtom, variable o estructura.
  3. Estructures: Dues estructures unifiquen si tenen el mateix functor i els mateixos arguments, i els arguments unifiquen recursivament.

Exemples de Unificació

Exemple 1: Unificació d'Àtoms

% Consulta
?- john = john.
% Resultat: true

Exemple 2: Unificació de Variables

% Consulta
?- X = john.
% Resultat: X = john

Exemple 3: Unificació d'Estructures

% Consulta
?- pare(john, mary) = pare(john, Y).
% Resultat: Y = mary

Unificació Fallida

La unificació fallarà si les expressions no poden coincidir segons les regles de la unificació.

Exemple de Unificació Fallida

% Consulta
?- pare(john, mary) = pare(peter, mary).
% Resultat: false

Exercicis Pràctics

Exercici 1: Unificació Bàsica

Consulta:

?- X = 5.

Quin serà el resultat?

Solució:

% Resultat: X = 5

Exercici 2: Unificació amb Estructures

Consulta:

?- persona(nom(john), edat(30)) = persona(nom(X), edat(Y)).

Quin serà el resultat?

Solució:

% Resultat: X = john, Y = 30

Exercici 3: Unificació Fallida

Consulta:

?- pare(john, mary) = pare(john, peter).

Quin serà el resultat?

Solució:

% Resultat: false

Errors Comuns i Consells

  1. Confusió entre Àtoms i Variables: Recorda que les variables comencen amb una lletra majúscula o un guió baix, mentre que els àtoms comencen amb una lletra minúscula.
  2. Unificació Incorrecta d'Estructures: Assegura't que les estructures tenen el mateix functor i nombre d'arguments per unificar correctament.
  3. Variables No Unificades: Si una variable no es pot unificar amb cap valor, la consulta fallarà.

Resum

En aquesta secció, hem après sobre les variables i la unificació en Prolog. Les variables són elements que poden representar qualsevol valor, i la unificació és el procés mitjançant el qual Prolog intenta fer coincidir dues expressions. Aquests conceptes són fonamentals per comprendre com Prolog maneja les dades i resol les consultes. Hem vist exemples pràctics i hem practicat amb exercicis per reforçar els conceptes apresos.

En el següent tema, explorarem la retrocessió, un altre concepte clau en Prolog.

© Copyright 2024. Tots els drets reservats