Подстановка в логике первого порядка

Я должен сказать, объединяют ли следующие пары выражений.

Это задача:

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),

Другие вопросы по тегам