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:
Regles per a les Variables
- Nomenclatura: Les variables han de començar amb una lletra majúscula o un guió baix.
- Àmbit: Les variables són locals a la regla o consulta en què es defineixen.
- 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ó
- Àtoms: Dos àtoms unifiquen si són exactament iguals.
- Variables: Una variable pot unificar amb qualsevol àtom, variable o estructura.
- 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
Exemple 2: Unificació de Variables
Exemple 3: Unificació d'Estructures
Unificació Fallida
La unificació fallarà si les expressions no poden coincidir segons les regles de la unificació.
Exemple de Unificació Fallida
Exercicis Pràctics
Exercici 1: Unificació Bàsica
Consulta:
Quin serà el resultat?
Solució:
Exercici 2: Unificació amb Estructures
Consulta:
Quin serà el resultat?
Solució:
Exercici 3: Unificació Fallida
Consulta:
Quin serà el resultat?
Solució:
Errors Comuns i Consells
- 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.
- Unificació Incorrecta d'Estructures: Assegura't que les estructures tenen el mateix functor i nombre d'arguments per unificar correctament.
- 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.
Curs de Programació en Prolog
Mòdul 1: Introducció a Prolog
- Què és Prolog?
- Instal·lant Prolog
- Primers Passos en Prolog
- Sintaxi i Estructura Bàsiques
- Fets, Regles i Consultes
Mòdul 2: Programació Bàsica en Prolog
Mòdul 3: Estructures de Dades en Prolog
Mòdul 4: Programació Avançada en Prolog
- Unificació Avançada
- Tall i Negació
- Meta-Programació
- Gramàtiques de Claus Definides (DCGs)
- Programació Lògica amb Restriccions
Mòdul 5: Prolog en la Pràctica
- Entrada/Sortida de Fitxers
- Depuració de Programes Prolog
- Biblioteques Prolog
- Interfície amb Altres Llenguatges
- Construint una Aplicació Prolog