Подстановка в логике первого порядка
Я должен сказать, объединяют ли следующие пары выражений.
Это задача:
f(g(a, X), g(X, b)) = f(g(a, b, c, d))
Я знаю, что при заданном наборе выражений подстановка является унификатором для этого набора, если все условия набора являются одинаковыми с учетом подстановки, следовательно, набор можно определить только при наличии подстановки, которая является объединителем для этого набора. Проблема в том, что я не могу найти решение этой задачи и с уверенностью сказать, есть ли объединитель.
1 ответ
Можно
f(g(a, X), g(X, b)) = f(g(a, b, c, d))
быть объединенным с помощью синтаксической унификации?
Нет.
Чтобы было легче понять, думай об этом как
f(A,B) = f(C).
f(A,B)
не объединяется с f(C)
так как
g(a, X), g(X, b)
не объединяется с g(a, b, c, d)
Первый - это два отдельных параметра, g(a,X)
а также g(X,b)
в то время как второй является только одним параметром, g(a,b,c,d)
,