www.wikidata.de-de.nina.az
Der Occurs check bezeichnet in der Informatik einen Teil des Unifikationsalgorithmus Er verhindert dass eine Variable durch einen Term ersetzt wird der diese Variable enthalt Anwendung findet er bspw bei der Typprufung in funktionalen Programmiersprachen um die Konstruktion unendlicher Datentypen zu verhindern sowie in logischen Programmiersprachen Inhaltsverzeichnis 1 Beispiel 2 Prolog 3 Siehe auch 4 LiteraturBeispiel BearbeitenIm folgenden Beispiel seien x displaystyle x nbsp y displaystyle y nbsp und z displaystyle z nbsp Variablen und f displaystyle f nbsp ein 2 stelliges Funktionssymbol Die Variable y displaystyle y nbsp und der Term t 1 f x y displaystyle t 1 f x y nbsp sollen unifiziert werden Aufgrund des Occurs checks schlagt die Unifizierung fehl da y displaystyle y nbsp in t 1 displaystyle t 1 nbsp als Variable auftritt Die Unifizierung von y displaystyle y nbsp mit t 2 f x z displaystyle t 2 f x z nbsp ware hingegen erfolgreich Prolog BearbeitenIn der Sprache Prolog ist der Occur check bei der Uberprufung von Regel Definitionen aus Performanzgrunden normalerweise abgeschaltet was die Gefahr einer Endlosschleife bei der Auswertung in sich birgt In einigen Implementierungen von Prolog kann sie aber bei Bedarf aktiviert werden Die Komplexitat einer Unifikation liegt ohne occurs check bei O min Grosse Term1 Grosse Term2 und mit occurs check bei O max Grosse Term1 Grosse Term2 Siehe auch BearbeitenUnifikation Logik Pradikatenlogik Maschinengestutztes BeweisenLiteratur BearbeitenFranz Baader Wayne Snyder Ch 8 Unification theory In Handbook of Automated Reasoning 2001 S 441 524 Unification theory 660 kB Abgerufen von https de wikipedia org w index php title Occurs check amp oldid 236556168