Согласованные свободные интерпретации
Полагают, что интерпретация I и СИ Ih (того же базиса В) согласованы, если для любого логического выражения p справедливо Ih(p) = I(p).
Пусть, например, t = `g(h(h(x)), g(h(x), g(x,a)))`, а интерпретация I3 совпадает с интерпретацией I1 из п. 1.2.4 за исключением лишь того, что I(x) = 3. Так как I3(a) = 1; I3(g) - функция умножения; I3(h) - функция вычитания 1; получаемI3(t) = ((3-1)-1)*((3-1)*(3*1)) = 6.
В этом случае Ihпримера из п. 1.3.2. согласована с только что рассмотренной интерпретацией I3, а так же с I2 (рисок 1.3, в), но не согласована с I1 (рисунок 1.3, б).
Справедливы прямое и обратное утверждения, что для каждой интерпретации I базиса В существует согласованная с ней СИ этого базиса.
Так, например, выше было сказано, что Ih рассмотренного примера не согласована с I1. Что бы сделать Ih согласованной, необходимо условие Р(t) видоизменить: P(t) = 1, если число функциональных символов в t больше трех, P(t) = 0, в противном случае.
Можно поступить и по другому. Оставить Ih без изменения и согласовать с ней I1. Для этого необходимо будет заменить I1(x) = 4, на I1(x) = 3.
Введем важное вспомогательное понятие подстановки термов, используемое в дальнейшем. Если x1, …, xn (n ≥ 0) – попарно различные переменные, t1, ..., tn – термы из Т, а p - функциональное или логическое выражение, то через p[t1/x1, ..., tn /xn] будем обозначать выражение, получающееся из выражения p одновременной заменой каждого из вхождений переменной xi на терм tI (i = 1, …, n). Например:
a[y/x] = a, f(x, y)[y/x, x/y] = f(y, x), g(x)[g(x)/x] = g(g(x)), p(x)[a/x] = p(a).
Приведем без доказательства несколько важных утверждений:
Если интерпретация I и свободная интерпретация Ih согласованы, то программы (S, I) и (S, Ih) либо зацикливаются, либо обе останавливаются и I(val(S,Ih)) = val(S,I), т.е. каждой конкретной программе можно поставить во взаимно-однозначное соответствие свободно интерпретированную (стандартную) согласованную программу.
Если интерпретация и свободная интерпретация согласованы, они порождают одну и ту же цепочку операторов схемы.
Теорема Лакхэма – Парка – Паттерсона. Стандартные схемы S1 и S2 в базисе В функционально эквивалентны тогда и только тогда, когда они функционально эквивалентны на множестве всех свободных интерпретаций базиса В, т.е. когда для любой свободной интерпретации Ih программы (S1,Ih) и (S2,Ih) либо обе зацикливаются, либо обе останавливаются и
val(S1,I) = {I(val(S1 Ih)) = I(val(S2 Ih))} = val(S2,I).
Стандартная схема S в базисе В пуста (тотальна, свободна) тогда и только тогда, когда она пуста (тотальна, свободна) на множестве всех свободных интерпретаций этого базиса, т.е. если для любой свободной интерпретации Ih программа (S, Ih) зацикливается (останавливается).
Стандартная схема S в базисе В свободна тогда и только тогда, когда она свободна на множестве всех свободных интерпретаций базиса В, т. е. когда каждая цепочка схемы подтверждается хотя бы одной свободной интерпретацией.
Дата добавления: 2015-07-18; просмотров: 795;