Представление и обработка знаний

77 2. Если t 1 и t 2  переменные, то выбирается любая из них. 3. Если t 1 и t 2  функции, то необходимым условием унифи- кации является совпадение функциональных символов и количест- ва аргументов. Термы в этом случае унифицируются, если унифи- цируются соответствующие аргументы (аргументы рассматрива- ются попарно, слева направо). 4. Если t 1  переменная, а t 2  функция или константа, то t 1 заменяется t 2 . 5. Если t 2  переменная, а t 1  функция или константа, то t 2 заменяется t 1 . Унификация при использовании предикатов осуществляется следующим образом: 1. Выделяются первые подвыражения литер, которые не яв- ляются одинаковыми у всех элементов из W k , и образуется множе- ство рассогласований x k , t k , x k , не равное t k . Если x k – переменная, а t k – терм, отличный от x k , то перейти к 2. В противном случае унифицировать нельзя. 2. Произвести унификацию; если выражения совпадают, то закончить унификацию термов. Рассмотрим пример. Произведем унификацию атомов P ( y , g ( z ), f ( x )) и P ( a , x , f ( g ( y ))). 1. Находим расхождение ( y , a ), формируем  1 = {( y , a )}. Про- изводим подстановку: P ( a , g ( z ), f ( x )), P ( a , x , f ( g ( а ))). 2. Находим расхождение ( x , g ( z )), формируем  2 = {( x , g ( z ))}. Производим подстановку: P ( a , g ( z ), f ( g ( z ))), P ( a , g ( z ), f ( g ( a ))). 3. Находим расхождение: ( z , a ), формируем  3 = {( z , a )}. Про- изводим подстановку: P ( a , g ( a ), f ( g ( a ))), P ( a , g ( a ), f ( g ( a ))). Объединяем подстановки:   = 1   U 2   U  3 =  = = {( y  a ), ( x  g ( z )), ( z  a )}.

RkJQdWJsaXNoZXIy MTY0OTYy