Пусть M = áU, mñ – вероятностная Эрбранова модель. Рассмотрим успешный
SLDF-вывод N, N1, ..., Nk запроса N с
помощью последовательности правил C0, C1, ..., Ck-1
некоторой программы Pr, последовательности унификаций q0, q1, ..., qk-1; q = q0q1 ... qk-1 и
некоторого правила вычислений R.
Последовательность запросов
Nq, N1q, ..., Nk, q = q0q1 ... qk-1 также
будет SLDF-выводом запроса Nq с помощью последовательности правил C0q, C1q, ..., Ck-1q тождественных подстановок и правила вычислений R.
Будем предполагать, что Nq, N1q, ..., Nk Î Â. В данном пункте факты A ¬ представим правилами A ¬ true. Тогда m(C) = m(A / true) = m(A), для фактов C = A ¬ , A Î Â.
Определим через Ni^
конъюнкцию всех не подчеркнутых атомов запроса Ni. Если все атомы
подчеркнуты (как в запросе Nk), то положим Nk^ º true. Обозначим через NiF^
конъюнкцию всех подчеркнутых атомов запроса Ni. Тогда NiF^
– конъюнкция всех фактов, использованных в SLDF-выводе запроса Nq.
Цель данного пункта –
оценить вероятности m(Nq^), m(Nq^ / NkF^) по
SLDF-выводу запроса Nq, предполагая, что нам известны только вероятности фактов и правил.
Рассмотрим вывод запросов
(1) из запроса Nq = (¬ A1& ... &Ai& ... &Ak)q, k ³ 1 по правилу
(Ai ¬ B1, ..., Bl)q. Представим запросы (1) в виде N1q = ( ¬ A1, ..., Ai-1, B, Ai+1, ..., Ak)q, B = B1, ..., Bl и Nq = ( ¬ A1, ..., Ai, ..., Ak)q. Конъюнкция Nq^ является
частным случаем конъюнкции N1q^, когда B
= true. Оценим вероятности m(Nq^), m(Nq^ / N1q^) в
предположении, что нам известны только вероятности m(N1q^), m(Aiq), m(Bq), p = m(Aiq / Bq^).
Лемма 12. Если m(N1q^) > 0
и m(Bq) > 0, то
1) m(Nq^) < m(ØBq^) + min{m(N1q^), m(Aq&Bq^)};
2) m(Nq^) > m(N1q^) - (1-p)m(Bq^);
3) m(Nq^ / N1q^) <
p / m(Nq^ / Bq^);
4) m(Nq^ / N1q^) > 1 - (1 -
p) / m(Nq^ / Bq^)
Доказательство. 1) m(Nq^) = m(Nq^&Bq^) + m(Nq^&ØBq^) £ m(ØBq^) + m(Nq^&Bq^) £ m(ØBq^) + min{m(N1q^), m(Aq&Bq^)};
3) m(Nq^ / N1q^) = m(Nq^&Bq^) / m(N1q^) £ m(Aq&Bq^) / m(N1q^) = p*m(Bq^) / m(N1q^) = p / m(Nq^ / Bq^);
2) m(Nq^) ³ m(Nq^&Bq^) ³ m(Nq^&Bq^) - m(ØNq^&ØAq^&Bq^). Выражение из правой части п. 2 утверждения леммы равно этому же выражению: m(N1q^) - (1-p)m(Bq^) = m(N1q^) + m(Aq&Bq^) - m(Bq^) = m(N1q^&Aq) + m(N1q^&ØAq) + m(Aq&Bq^&Nq^) + m(Aq&Bq^&ØNq^) - m(Bq^) = m(Bq^&Nq^&Aq) + m(Bq^&Nq^&ØAq) + m(Bq^&Aq&Nq^) + m(Bq^&Aq&ØNq^) - m(Bq^) = m(Bq^&Nq^&Aq) - m(Bq^&ØNq^&ØAq) = m(Nq^&Bq^) - m(ØNq^&ØAq&Bq^);
4. m(Nq^ / N1q^) = m(Nq^&Bq^) / m(N1q^) ³ (m(N1q^) – (1-p)m(Bq^)) / m(N1q^) = 1 -
(1-p) / m(Nq^ / Bq^) (см. доказательство п. 2.) ■
Следствие 4. Если m(N1q^) > 0,
m(Bq^) > 0
и p = 1, то:
1) m(N1q^) £ m(Nq^) £ min{1, m(ØBq^) + m(N1q^)};
2) m(Nq^ / N1q^) = 1.
Доказательство. Подставим в предыдущую лемму значение p = 1. Второе
из неравенств 1 следует из того, что величина min{m(N1q^), m(Aq&Bq^)} равна
либо m(N1q^), либо m(Bq^). Во
втором случае m(ØBq^) + m(Bq^) = 1 ■
Следствие 5. Если m(N1q^) > 0 и
правило является фактом (A ¬ true)q, то:
1) m(Nq^) £ min{m(N1q^), m(Aq)};
2) m(Nq^) ³ m(N1q^) + m(Aq) - 1;
3) m(Nq^ / N1q^) £ m(Aq) / m(N1q^);
4) m(Nq^ / N1q^) ³ 1 - (1 - m(Aq)) / m(N1q^).
Доказательство. Следует из предыдущей леммы и равенств p = m(Aq), m(Nq^) = m(N1q^) ■
Следствие 6. Если m(Bq^) > 0,
то:
1) m(Nq^&Bq^) £ min{m(N1q^), m(Aq&Bq^)};
2) m(Nq^&Bq^) ³ m(N1q^) - (1-p)m(Bq^).
Доказательство. Следует из доказательств пп. 1, 2 леммы ■
Рассмотрим SLDF-вывод Nq, N1q, ..., Nk запроса Nq посредством последовательности правил Ciq = (A ¬ Bi1, ..., Bili)q, i = 0, 1, ..., k-1 и пустых
унификаций. Положим Biq = (Bi1& ... &Bili)q, pi = m(Ciq).
Теорема 11. Если m(Biq) > 0, i = 0, 1, ..., k-1, то:
m(Nq^&A0q&A1q& ... &
Доказательство. Используем оценку 2 следствия, примененную к
последнему шагу вывода от Nk-1q^ к Nk.
Получим m(Nk-1q^&Bk-1q) ³ m(Nk^) - (1 - pk-1)m(Bk-1q), где m(Nk^) = m(true) = 1, так как все атомы выделены. Рассмотрим
вывод запроса Nk-1q^&Bk-1q из запроса Nk-2q^&Bk-1q посредством правила Ck-2q. Снова применим оценку 2 следствия. Получим: m(Nk-2q^&Bk-1q&Bk-2q) ³ m(Nk-1^&Bk-1q) - (1-pk-2)m(Bk-2q). Рассмотрим вывод запроса Nk-2q^&Bk-1q&Bk-2q из запроса Nk-3q^&Bk-1q&Bk-2q посредством правила Ck-3q и т. д. Получим m(Nq^&B0q&B1q&…&Bk-1q) ³ m(N1q^&B1q&…&Bk-1q) - (1 - p0)m(B0q). Подставляя левые части неравенств в их правые
части, получаем оценку
m(Nq^&B0q&B1q& … &Bk-1q) ³ 1 -
Покажем, что если из
конъюнкции m(Nq^&B0q&B1q& … &Bk-1q) удалить все константы true, то получим конъюнкцию m(Nq^&A0q&A1q&…&Ak-1q). Заметим, что каждый атом конъюнкции Biq (true – не атом) в процессе вывода обязательно
унифицируется с левой частью одного из правил. Следовательно, каждый атом
конъюнкции B0q&B1q& … &Bk-1q содержится в конъюнкции A0q&A1q&…&Ak-1q. С другой стороны, каждый атом Aiq, i = 0, 1, ..., k-1 содержится либо в
Nq^, либо в правой части одного из правил Ciq, i = 0, 1, ..., k-1 ■
Следствие 7. Если m(Biq) > 0, i = 0, 1, ..., k-1, то:
m(Nq^) ³ 1 -
Доказательство. Следует из m(Nq^) > m(Nq^&A0q& ... &Ak-1q) и теоремы 4.1 ■
Для каждого успешного
SLDF-вывода Nq = N0q, N1q, ..., Nk существует успешный SLDF’-вывод Nq = N0q, N’1q, ..., N’iq, ..., Nk, в котором факты
применяются последними и до запроса N’iq применяются правила Cj с длиной lj
³ 1; j =
0, ..., i-1. Тогда запрос N’iq будет иметь вид ¬ A1, ..., Am, а запрос
Nk – вид ¬ A1, ..., Am. Такой SLDF’ -
вывод будем называть нормализованным.
Теорема 12. Если m(Bjq) > 0, j = 0,1, ..., i-1, и m(NkF^) > 0, то
m(Nq^ / NkF^) ³ 1 -
где pj – условные вероятности, а Bjq – условия правил Cj, j =
1, ..., i-1.
Доказательство: Проводится аналогично доказательству предыдущей
теоремы, но для нормализованного вывода и начинается с запроса i. Первое
неравенство имеет вид m(Ni-1q^ &Bi-1q) ³ m(Niq^) - (1-pi-1)m(Bi-1q), где m(Niq^) = m(NkF^). Далее, рассуждая как в
теореме 4.1, получаем неравенство m(Nq^&B0q& … &Bi-1q) ³ m(NkF^) -