Съдържание 
 

НАЙ-ОБЩ УНИФИКАТОР НА ДВЕ АТОМАРНИ ФОРМУЛИ

    Най-общ унификатор на две атомарни формули φ и ψ се нарича такъв техен унификатор, че всеки унификатор на φ и ψ е негов частен случай (т.е. може да се получи от него чрез умножаване отдясно с подходяща субституция). Ако разполагаме с най-общ унификатор на две атомарни формули, можем лесно да опишем кои са всички техни унификатори    те ще бъдат точно неговите частни случаи (това следва от дефиницията за най-общ унификатор и от обстоятелството, че частните случаи на унификатор на две атомарни формули са пак техни унификатори).

    Разбира се, за да имат две атомарни формули най-общ унификатор, необходимо е те да са унифицируеми. Ще докажем, че това необходимо условие е и достатъчно. Нека φ и ψ са две унифицируеми атомарни формули, Ще покажем, че те имат най-общ унификатор, който при това е идемпотентен и действа в обединението на VAR(φ) и VAR(ψ). Ако φ и ψ са една и съща формула, то такъв техен най-общ унификатор очевидно е тъждествената субституция. Затова да предположим, че атомарните формули φ и ψ са различни. Тогава, както знаем, може да се образува нетъждествена система от уравнения между термове, решения на която са точно унификаторите на φ и ψ. Поради това, че φ и ψ са унифицируеми, тя ще има идемпотентно най-общо решение, което действа в множеството на нейните променливи (то може да се намери по метода, разгледан във въпроса Решаване на системи от уравнения между термове). Това решение е най-общ унификатор на φ и ψ със споменатите допълнителни свойства.

    Пример 1. При сигнатура с константи a и b и двуместен предикатен символ p унификатори на атомарните формули  p(a,Y) и  p(X,b) са точно онези субституции, които са решения на системата

a = X,   Y = b.
Решаването й по споменатия по-горе метод води до субституцията  [X/a, Y/b] . Следователно тя е най-общ унификатор на разглежданите две формули.

    Пример 2. При сигнатура с едноместен функционален символ f и двуместен предикатен символ p унификатори на атомарните формули  p(X,f(X)) и  p(f(Y),Z) са точно онези субституции, които са решения на системата

X = f(Y),   f(X) = Z.
Като я решим, виждаме, че субституцията  [X/f(Y), Z/f(f(Y))]  е най-общ унификатор на двете формули.

    Пример 3. При сигнатура с константа a, едноместен функционален символ f и двуместен предикатен символ p унификатори на атомарните формули  p(X,f(Y)) и  p(f(a),X) са точно онези субституции, които са решения на системата

X = f(a),   f(Y) = X.
Чрез решаването й устанoвяваме, че субституцията  [X/f(a), Y/a]  е най-общ унификатор на двете формули.

    Забележка 1.Най-общият унификатор на две атомарни формули, когато съществува, не е единствен. И наистина, нека σ е най-общ унификатор на две атомарни формули φ и ψ. Ще покажем, че при всеки избор на две различни променливи ζ1 и ζ2 произведението σ[ζ1221] също е най-общ унификатор на φ и ψ. При произволно избрани различни променливи ζ1 и ζ2 да означим споменатото произведение с σ. Това, че то е унификатор на φ и ψ, е ясно, защото то е частен случай на σ. Наред с това обаче благодарение на лесно проверимото равенство 1221][ζ1221] = ι може да се твърди, че σ = σ1221], а това позволява да заключим, че всеки частен случай на σ е частен случай и на σ, следователно всеки унификатор на φ и ψ е частен случай и на σ. От друга страна не е трудно ζ1 и ζ2 да се изберат по такъв начин, че субституцията σ да бъде различна от σ. За да се убедим в това, достатъчно е да изберем ζ1 така, че да е в сила равенството  ζ1σ = ζ1, и да сравним резултатите от прилагането на двете субституции към променливата ζ1.

    Забележка 2. Когато две атомарни формули са унифицируеми, измежду унификаторите им сигурно има такива, които не са най-общи. Действително, нека една субституция σ е унификатор на две дадени атомарни формули φ и ψ. Да си вземем две различни променливи ζ1 и ζ2, такива, че  ζ1σ = ζ1 и  ζ2σ = ζ2, и да означим със σ субституцията σ[ζ21]. Тогава σ пак е унификатор на φ и ψ, защото е частен случай на техния унификатор σ, но за разлика от него преобразува променливите ζ1 и ζ2 в един и същ терм (а именно в променливата ζ1). Лесно е да се убедим, че и всяка субституция, която е частен случай на σ, също ще преобразува ζ1 и ζ2 в един и същ терм. Поради това субституцията σ не е частен случай на σ и значи σ не е най-общ унификатор на φ и ψ.

    Забележка 3. За някои две унифицируеми атомарни формули φ и ψ може да се случи всички унификатори (най-общи или не) да съвпадат върху обединението на множествата VAR(φ) и VAR(ψ). Положението е такова точно тогава, когато е налице най-общ унификатор на φ и ψ, съпоставящ на всички променливи от споменатото обединение затворени термове (както е в примери 1 и 3 по-горе).

Последно изменение: 1.07.2008 г.