|
Unifikation ist eine Methode zur Vereinheitlichung prädikatenlogischerAusdrücke. Diese hat insbesondere in der Computerlogik und Computerlinguistik eine größere Bedeutung erlangt. So nutzt etwa die Inferenzmaschinedes PROLOG-InterpretersUnifikation. In der Computerlinguistik gibt es sogenannte Unifikationsgrammatiken, die sich auf dieses Konzept stützen.
Als Basisoperation liegt der Unifikation die Substitutionzu Grunde. Im Rahmen der Prädikatenlogik bedeutet eine Substitution ? innerhalb eines gegebenen Ausdrucks die Ersetzung einer Variablen durch einen Term, in dem diese Variable nicht vorkommen darf. Die Variable wird gewissermaßen durch den Term "instanziiert".
Wird eine Menge von Ausdrücken {A1,A2,...,An} durch eine Substitution ? zu einem äquivalenten Ausdruck substituiert, d.h. , so bezeichnet man ? als Unifikator dieser Ausdrucksmenge. Die Anwendung eines Unifikators auf diese Menge bezeichnet man als Unifikation.
Nicht alle Ausdrücke können unifiziert werden!
Beispiel
Gegeben seien die Ausdrücke
A1 = (X,Y,f(Y)) und
A2 = (a,b,Z)
Ersetzt man in A1 nun X durch a, Y durch b und in A2 Z durch f(b), so sind sie gleich oder unifiziert.
Kleinster gemeinsamer Unifikator
Zu einer Menge von Ausdrücken existieren gewöhnlich mehrere Unifikatoren. Man nennt einen Unifikator μ kleinster gemeinsamer Unifikator oder allgemeinster Unifikator, wenn es für jeden anderen Unifikator σ eine Substitution τ gibt mit
Mittels des Algorithmus von Robinson nach John Alan Robinsonkann man zu unifizierbaren Ausdrücken einen kleinsten gemeinsamen Unifikator finden.
Weblinks
- http://i10www.ira.uka.de/fosys/lm/robinson/index.html- Universität Karlsruhe, Institut für Logik: schrittweise Demonstration des Algorithmus von Robinson mit Java-Appleten:Unification
fr:Unification
pl:Unifikacja
zh:??
Dieser Artikel basiert auf dem Artikel aus der freien Enzyklopädie Wikipedia und steht unter der GNU-Lizenz für freie Dokumentation. In der Wikipedia ist eine Liste der Autoren verfügbar.
|