Tải bản đầy đủ (.doc) (18 trang)

Chương trình Logic phân tầng yếu

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (188.8 KB, 18 trang )

MỤC LỤC

I. Giới thiệu..........................................................................................................1
II. Ký hiệu và định nghĩa:...................................................................................3
III. Chương trình phân tầng yếu và mơ hình hồn hảo yếu:..........................4
IV. Các tính chất của Mơ hình hồn hảo yếu.................................................10
V. Quan hệ ngữ nghĩa từ đề xuất khác............................................................14
Tài liệu tham khảo...............................................................................................17


Chương trình Logic phân tầng yếu

I. Giới thiệu
Chương trình logic là một phần quan trọng của cơ sở dữ liệu suy diễn.
Trong trường hợp chương trình logic khơng chứa phủ định thì nó có ngữ nghĩa
tự nhiên duy nhất là mơ hình nhỏ nhất. Khi chương trình có chứa phủ định ở vài
quy tắc thì ngữ nghĩa của nó trở nên phức tạp hơn nhiều.
Các chương trình Datalog phân tầng có thể mở rộng thành các chương
trình phân tầng địa phương theo một cơ sở EDB đã cho, trong trường hợp này
các vị từ có đối là hằng có thể phụ thuộc âm vào chính nó, với điều kiện, khi các
mệnh đề của chương trình được thể hiện với các đối là hằng thì khơng có chu
trình xảy ra. Một chương trình Datalog có thể phân tầng địa phương với cơ sở
EDB này nhưng không phân tầng địa phương đối với một cơ sở EDB khác.
Ví dụ: Xét chương trình Datalog gồm một mệnh đề:
s(X) ¬ t(X,Y) Ù Øs(Y)
Vị từ s phụ thuộc âm vào chính nó vì vậy chương trình âm này khơng
phân tầng.
Giả sử quan hệ EDB của vị từ t gồm các bộ (1,2), (2,3), (1,3). Ta có:
r1: s(1) ¬ t(1,2) Ù Øs(2)
r2: s(1) ¬ t(1,3) Ù Øs(3)
r3: s(2) ¬ t(2,3) Ù Øs(3)


Chương trình này phân tầng địa phương và s(3) thuộc tầng 1, s(2) thuộc
tầng 2 và s(1) thuộc tầng 3.
Lớp các chương trình logic có chứa phủ định với ngữ nghĩa là mơ hình
hồn hảo có nhiều tính chất đáng mong đợi, tuy nhiên chúng bị giới hạn bởi sự
phân tầng hay phân tầng địa phương. Có những chương trình logic mà chúng
khơng có mơ hình hồn hảo.

Nhóm 1B KHMT 2014-2016

Trang 1


Chương trình Logic phân tầng yếu

Ví dụ 1.1 Xét chương trình cho bởi:
p(1,2) ¬
q(X) ¬ p(X,Y ) Ù

q(Y).

Sau khi thay vào, P có dạng:
p (1,2) ¬
q(1) ¬ p(1,2) Ù ¬q(2)
q(1) ¬ p(1,1) Ù ¬q(1)
q(2) ¬ p(2,2) Ù ¬q(2)
q(2) ¬ p(2,1) Ù ¬q(1)
Chương trình này khơng phân tầng địa phương, được xác định bởi đồ thị
phụ thuộc của P. Hơn nữa, P khơng có các mơ hình hồn hảo. Mặt khác, ngữ
nghĩa của P là xác định rõ ràng và được đặc trưng bởi mơ hình Herbrand M =
{p(1,2), q(1), ¬q(2), ¬p(1,1), ¬p(2,2) , ¬ p(2,1)} của P. Chương trình P tương

đương về ngữ nghĩa với một chương trình phân tầng địa phương P* chỉ có duy
nhất các quy tắc (1) và (2) còn các quy tắc (3), (4) và (5) là hồn tồn khơng
thích hợp, bởi vì p(1,1), p(2,1) và p(2,2) có thể giả thiết sai trong P. Đồng thời,
chúng là những quy tắc phá hủy sự phân tầng địa phương của P và gây ra sự
không tồn tại của mơ hình hồn hảo.
H. Przymushinska và T. C. Przymusinski đã đưa ra một mở rộng tự nhiên
của lớp chương trình logic phân tầng địa phương thành một lớp rộng hơn gọi là
lớp chương trình logic phân tầng yếu và ngữ nghĩa của nó gọi là mơ hình hồn
hảo yếu. Mọi chương trình logic phân tầng yếu có duy nhất một mơ hình hồn
hảo yếu và nếu một chương trình logic có cả mơ hình hồn hảo và mơ hình hồn
hảo yếu thì chúng phải đồng nhất. Vì vậy ngữ nghĩa mơ hình hồn hảo yếu là
tương thích hồn tồn với ngữ nghĩa mơ hình hồn hảo.

II. Ký hiệu và định nghĩa:
Nhóm 1B KHMT 2014-2016

Trang 2


Chương trình Logic phân tầng yếu

Một chương trình logic, là một tập hợp hữu hạn các mệnh đề lượng từ có
dạng:
"(A ¬ L1 Ù … Ù Lm)
Trong đó m > 0, A là một nguyên tố và L i là literals âm hay dương. Và ta
quy ước đơn giản như sau:
A ¬ L1 Ù … Ù Lm
Một chương trình P bao gồm các hằng, vị từ và các ký hiệu hàm xuất hiện
trong P, một tập hữu hạn các biến, các phần tử kết nối (Ø, Ù, Ú) , lượng từ ($, ")
và dấu chấm câu thông thường.

Cơ sở Herbrand Hp của P là tập các nguyên tố nền được xây dựng từ các
ký hiệu vị từ có đối là các hạng thức nền từ vũ trụ Herbrand của P. Một mơ hình
M của P là một thể hiện của P, nó là mơ hình nhỏ nhất của P, nếu nó chứa các
nguyên tố dương hơn so với bất kỳ mơ hình M' khác của P.
Định nghĩa 2.1 (Đồ thị phụ thuộc) Các đỉnh của đồ thị phụ thuộc Gp của
một chương trình P là tất cả các nguyên tố nền xuất hiện trong P. Các cạnh của
Gp được định nghĩa như sau. Đối với mỗi quy tắc:
A ¬ A1Ù…Ù AnÙ


"i

B1Ù…Ù Bm

< n có một cạnh dương có hướng đi từ Ai đến A trong Gp.

 "j < m có một cạnh âm có hướng đi từ Bj đến A trong Gp.
Sự phụ thuộc quan hệ < và

giữa các nguyên tố nền của P được xác định

bởi:
(i) A B khi và chỉ khi có một đường đi hướng từ A đến B;
(ii) A < B khi và chỉ khi có một đường đi hướng từ A đến B đi qua một
cạnh âm.

III. Chương trình phân tầng yếu và mơ hình hồn hảo yếu:
Nhóm 1B KHMT 2014-2016

Trang 3



Chương trình Logic phân tầng yếu

Định nghĩa 3.1 Quan hệ tương đương ~ giữa các nguyên tố nền của P
được xác định như sau:
A ~ B º (A = B) Ú (A < B

B < A).

Ta gọi nó là mệnh đề tương đương của Gp. Một thành phần là tầm thường
nếu nó bao gồm một phần tử A duy nhất, sao cho A

A.

Theo định nghĩa này thì hai nguyên tố nền A và B là tương đương nếu
chúng có quan hệ đệ quy phủ định lẫn nhau, tức là có sự đệ quy đối với đích con
phủ định. Đệ quy phủ định lẫn nhau là nguyên nhân chính gây ra nhiều khó khăn
trong việc xác định một mơ hình thích hợp của chương trình logic.
Định nghĩa 3.2 Gọi C1, C2 là hai thành phần của Gp. Chúng ta định nghĩa
quan hệ thứ tự  như sau:
C1  C2º C1¹ C2Ù$A1 Î C1 , $A2Î C2 ( A1< A2) thành phần C1 gọi là cực
tiểu, nếu khơng có thành phần C2 mà C2 C1.
Rõ ràng, mối quan hệ  các thành phần cực tiểu của Gp hoàn toàn được
xác định bằng cú pháp của chương trình P. Chính xác hơn:
C1  C2 C1 ạ C2 A1ẻ C1 A2 Î C2 (A1< A2) Mối quan hệ thứ tự 
giữa các thành phần của đồ thị phụ thuộc Gp tương ứng với mối quan hệ phụ
thuộc < giữa các đỉnh của nó, nhưng trái ngược với <, nó có những lợi thế nhất
luôn luôn là một thứ tự từng phần.
Định nghĩa 3.3 Quan hệ thứ tự bộ phận là một quan hệ phản đối xứng và

bắc cầu. Một quan hệ < được cho là có cơ sở nếu nó khơng chứa các dãy vô hạn
A0 > A1 > A2 > ....
Mệnh đề 3.1 Mối quan hệ là một quan hệ thứ tự từng phần.
Chứng minh: Các mối quan hệ  là phản đối xứng, bởi vì nếu C  C' và
C'  C, thìvới mọi A

C’ ta có A < A' và A' < A. Điều này có nghĩa rằng A và

A' trùng nhau, mâu thuẫn với C

Nhóm 1B KHMT 2014-2016

C'.

Trang 4


Chương trình Logic phân tầng yếu

Mối quan hệ  là bắc cầu, bởi vì nếu C  C'  C ", thì với mọi C, A'
Ỵ C’, A" Ỵ C" ta có A < A ' < A ". Bắc cầu < và phản đối xứng , điều này nói
rằng C < C".
Mệnh đề 3.2 Một chương trình logic p sau đây là tương đương:
(i) p là phân tầng địa phương;
(ii) Các mối quan hệ phụ thuộc < là một phần để có cơ sở;
(iii) Mọi thành phần của Gp là tầm thường.
Quan hệ  có tính đơn giản, nhưng quan trọng đối với bất kỳ hai thành
phần riêng biệt C, C', trong đó có ít nhất một thành phần không tầm thường,
hoặc là độc lập với nhau, theo nghĩa là khơng có C và bảng B Ỵ C', và A <
B hay B


A, hoặc C  C', hoặc C' C (nhưng không phải cả hai, do thực tế

rằng  là một thứ tự bộ phận).
Mệnh đề 3.3 Giả sử C và C' là các thành phần riêng biệt và có ít nhất một
thành phần khơng tầm thường. Giả sử rằng A Ỵ C, B Ỵ C' và A < B. Lúc đó C <
C'.
Mệnh đề này suy ra rằng nếu C và C' là hai thành phần không tầm thường
và chúng khơng có quan hệ C  C' hoặc C'  C thì các mơ hình của P hạn chế
đối với các thành phần này là độc lập hồn tồn với nhau, bởi vì chúng bao gồm
các vị từ không bị liên hệ bởi quan hệ phụ thuộc.
Định nghĩa 3.4
(i) Tầng đáy S (P) của P là sự kết hợp của tất cả các thành phần cực tiểu
của P, tức là:
S (P) = U {C: C là một thành phần cực tiểu của Gp}.
(ii) Lớp đáy L(P) của P là các chương trình con tương ứng của P, tức là:
L(P) = tập tất cả các quy tắc từ P, mà đầu quy tắc thuộc vào S(P).
(iii) Mơ hình Herbrand của chương trình con L(P) sẽ được xác định với
Nhóm 1B KHMT 2014-2016

Trang 5


Chương trình Logic phân tầng yếu

các tập con có dấu của tầng đáy S(P).
Ví dụ 3.1 Xem chương trình P ở Ví dụ 1.1. Quan hệ phụ thuộc được đưa
ra như sau:
q(1) < q(2), q(2) < q(1),
q(l) > p(l ,2), q(l) > p(l , 1) , q(2) > p(2,2) , q(2) > p(2,1).

Chương trình P có năm thành phần:
C1 = {q(l), q(2)}, C2 = {p(l,2)}, C3 = {p(l,1)}, C4 = {p(2,2)} và C5 =
{p(2,1)} . Rõ ràng, Ck C1, với mọi k (2 < k < 5). Do đó, tầng đáy S(P) của P được định nghĩa là sự kết hợp các thành phần cực tiểu của P - được cho bởi:
S(P) = {p(l,2), p(l,l) , p(2,2) , p(2,1)} ,
Và lớp đáy L(P) của P, tức là tập tất cả các quy tắc của P có đầu thuộc
S(P) là:
L(P) = {p (1,2) ¬}.
Lớp đáy L(P) của chương trình P có mơ hình Herbrand nhỏ nhất:
M = {p(l,2),

p (l , l) ,

p(2,2) ,

p (2, l)}.

Nếu lớp đáy L(P) của P có mơ hình nhỏ nhất là M thì ta sử dụng nó để
loại bỏ khỏi P các quy tắc ‘khơng thích hợp’. Nói chung, ta đưa ra một phép
tốn biến đổi chương trình P đã cho theo thể hiện M của nó.
Định nghĩa 3.5 Cho P là một chương trình logic và cho M là một thể hiện
của P. Với một nguyên tố A thuộc Hp, ta nói rằng M
nói rằng M

A nếu

A nếu A thuộc M và ta

A thuộc M. Một rút gọn của P theo modulo M có nghĩa

là một chương trình mới thu được từ P bằng cách thực hiện hai rút gọn sau:

M

(i) Loại bỏ từ P tất cả các quy tắc có chứa L mà thỏa mãn M

L hoặc

có đầu thuộc về M (nói cách khác, loại bỏ tất cả các quy tắc trong M);
(ii) Loại bỏ L ra khỏi các quy tắc còn lại được thỏa mãn trong M, tức là
Nhóm 1B KHMT 2014-2016

Trang 6


Chương trình Logic phân tầng yếu

mà M L.
Cuối cùng, loại bỏ khỏi chương trình kết quả tất cả các quy tắc đơn vị, mà
đầu xuất hiện như là các quy tắc đơn vị trong chương trình.
Chương trình rút gọn

P
M

khơng chứa mọi nguyên tố (dương hay âm) xuất

hiện trong M. Trong Ví dụ 3.1 chương trình rút gọn P '=
quy tắc: q(1) ¬

P
M


chỉ bao gồm các

q (2).

Rõ ràng, P' khơng chứa bất kỳ literals từ S(P). Quan sát thấy trong các
chương trình rút gọn ta đã loại tất cả các quy tắc 'khơng thích hợp' (3), (4) và (5)
trong P.
Ý tưởng đằng sau việc xây dựng các mơ hình hồn hảo yếu như sau. Với
mọi chương trình P = P0 và để cho M0 = . Gọi P1 =

P
M

, tìm mơ hình nhỏ nhất

M1 của lớp đáy L(P1) và rút gọn P modulo M0 U M1 có được một chương trình
mới P2 =
P3 =

P
M 0  M1

P
M 0  M1  M 2

Tìm lớp đáy của L(P2) và mơ hình nhỏ nhất là M 2 và để cho
Tiếp tục quá trình này cho đến khi một trong hai chương

trình thứ k Pk là rỗng, khi đó Mp = M1 M2...  Mk-1 là mơ hình hồn hảo của

yếu P, hoặc cho đến khi một trong hai S(P k) là rỗng hoặc Pk khơng có một mơ
hình nhất, trong trường hợp đó Mp = M1 M2...  Mk-1 là mơ hình hồn hảo
yếu bộ phận của P.
Định nghĩa mơ hình hồn hảo yếu Mp của một chương trình logic P.
Định nghĩa 3.6 Giả sử P là một chương trình logic, và cho P 0 = P, M0 =
. Giả sử a> 0 là một số có thể đếm được như vậy các chương trình P d và thể hiện
bộ phận Md đã được đã được xác định với mọi d<α.

UĐặt Na = 0Nhóm 1B KHMT 2014-2016

P
Na

, Sa= S(Pa), La= L(Pa).

Trang 7


Chương trình Logic phân tầng yếu

 Nếu chương trình Pa là rỗng, thì quá trình xây dựng dừng lại và MP =
Na là mơ hình hồn hảo của yếu P;
 Ngược lại, nếu tầng đáy Sa = S(Pa) của Pa là rỗng hoặc nếu mơ hình
nhỏ nhất của lớp đáy La = L(Pa) của Pa khơng tồn tại thì q trình cũng
dừng và MP = Na là mơ hình hồn hảo yếu bộ phận của P.
 Ngược lại, thể hiện bộ phận Ma được xác định như là mơ hình nhỏ nhất
của lớp đáy La = L(Pa) của Pa và quá trình xây dựng tiếp tục.
Trong hai trường hợp đầu tiên thì a được gọi là mơ hình mẫu của P và

được ký hiệu là d(P). Với 0 < a < d(P) thì tập Sa được gọi là tầng thứ a của P và
chương trình La được gọi là lớp thứ a của P.
Trong quá trình xây dựng tầng S a, một vài nguyên tố nền có thể bị loại bỏ
bởi phép thu hẹp và không rơi vào một tầng nào cả. Các nguyên tố như vậy sẽ
được thêm vào một tầng tùy ý, ví dụ tầng đầu tiên và được giả thiết là sai trong
MP.
Q trình xây dựng ln ln dừng sau một số hữu hạn bước và vì vậy
mơ hình hồn hảo yếu (bộ phận) MP của chương trình P ln ln xác định và
duy nhất. Một trường hợp đặc biệt quan trọng của định nghĩa ở trên xãy ra khi
tất cả các tầng Sa chỉ chứa các thành phần tầm thường hoặc tương đương - khi
tất cả lớp chương trình La là các chương trình logic dương.
Định nghĩa 3.7 Một chương trình logic P là phân tầng yếu nếu nó có một
mơ hình hồn hảo yếu và nếu tất cả các tầng S a của nó chỉ chứa các thành phần
tầm thường hoặc - tương đương - khi tất cả các lớp L a của nó là những chương
trình logic xác định. Trong trường hợp này, chúng ta gọi là tập các tầng {S a: 0 <
a < d(P)} của chương trình là phép phân tầng yếu của P.
Nhận xét 3.1 Quan sát, mỗi chương trình logic phân tầng có mơ hình nhỏ
nhất, một chương trình P là phân tầng yếu khi và chỉ khi với mọi P a khác rỗng
thì Sa = S(Pa) cũng khác rỗng và chỉ chứa các thành phần tầm thường.
Ví dụ 3.2 Xem xét các chương trình P từ Ví dụ 3.1. Ta có:
Nhóm 1B KHMT 2014-2016

Trang 8


Chương trình Logic phân tầng yếu

P1 = P, S1 = S(P) = {p(1,2), p(1,1), p(2,2), p(2,1)},
L1 = L(P) = {p(1,2)¬},
Vì vậy:

M1 = {p(1,2), Øp(1,1), Øp(2,2), Øp(2,1)}
P1

Do đó: P2 = M = {q(1) ¬ Øq(2)}, S2 = S(P2) = {q(2)} là hợp các thành
1
phần cực tiểu của P2 và L2 = L(P2) = Ỉ là tập các quy tắc thuộc P2 mà đầu thuộc
vào S2. Vì vậy M2 = {Øq(2)}. Ta có:
P3 = M

P2

1

M = {q(1)¬}, S3 = {q(1)}, L3 = P3 và M3 = S3 = {q(1)}
2

P3

Từ P4 = M M M = Ỉ nên q trình xây dựng kết thúc, P là chương
1
2
3
trình phân tầng yếu, {S1, S2, S3} là phép phân tầng yếu của P và
MP = M1  M2  M3 = {p(1,2), q(1), Øp(1,1), Øp(2,2), Øp(2,1), Øq(2)}
là mơ hình hồn hảo yếu duy nhất của P.
Ví dụ trước có thể dễ dàng sửa đổi để minh họa cho khái niệm về một
thành phần của mơ hình hồn hảo yếu của một chương trình logic.
Ví dụ 3.3 Xét các chương trình từ Ví dụ 1.1 với thêm ngun tố p(2,1) ¬
Đối với chương trình P mới, ta có:
P1 = P, S1 = S(P) = {p(1,2), p(1,1), p(2,2), p(2,1)},

L1 = L(P) = {p(1,2)¬ , p(1,2)¬},
Vì vậy: M1 = {p(1,2), p(2,1), Øp(2,2), Øp(1,1)}
P1

Do đó: P2= M ={q(1) ¬ Øq(2), q(2) ¬ Øq(1)},S2 = {q(1), q(2)}, L2 = P2.
1

Vì L2 khơng có mơ hình nhỏ nhất, việc xây dựng dừng ở đây và ta nhận
được mơ hình hồn hảo yếu bộ phận:
MP = {p(1,2), p(2,1), Øp(2,2), Øp(1,1)}
Nhóm 1B KHMT 2014-2016

Trang 9


Chương trình Logic phân tầng yếu

Lớp các chương trình của mơ hình hồn hảo yếu là rộng hơn lớp chương
trình phân tầng yếu.
Ví dụ 3.4 Cho chương trình P bao gồm các quy tắc:
p¬q
q ¬ Øp
Lúc đó P có một thành phần đơn và do đó mơ hình hồn hảo yếu của nó là
mơ hình nhỏ nhất của P, chính là tập M P = {p, Øq} (xem hệ quả). Rõ ràng P
khơng phân tầng yếu.
Ví dụ 3.5 Cho P như sau:
p ¬ q, Ør
q ¬ r,Øp
r¬ p,Øq
Một lần nữa, P có một thành phần duy nhất và do đó mơ hình hồn hảo

yếu của nó là mơ hình nhỏ nhất của P. Dĩ nhiên, P không phân tầng yếu.
IV. Các tính chất của Mơ hình hồn hảo yếu
Các lớp của chương trình phân tầng yếu mở rộng các lớp của chương
trình phân tầng địa phương.
Định lý 4.1 Mỗi chương trình phân tầng địa phương là phân tầng yếu.
Chứng minh: Đầu tiên, ta thấy rằng nếu P là phân tầng tại địa phương, thì
chương trình rút gọn P'= P/M’ cũng vậy, đối với mọi thể hiện bộ phận M. Vì
vậy, với mọi a thì chương trình Pa cũng phân tầng địa phương. Theo nhận xét ở
trên, điều này đủ để Sa = S(Pa) là khác rỗng và chỉ chứa các thành phần tầm
thường mỗi khi Pa không rỗng. Theo mệnh đề 3.3, tất cả thành phần của P a là
tầm thường. Vì vậy Sa = S(Pa) chỉ chứa các thành phần tầm thường và không
rỗng, miễn là Pa khác rỗng.
Mô hình hồn hảo yếu chia sẻ thuộc tính cực tiểu với mơ hình hồn hảo.
Nhóm 1B KHMT 2014-2016

Trang 10


Chương trình Logic phân tầng yếu

Định lý 4.2 Mỗi mơ hình hồn hảo yếu là cực tiểu.
Giả sử M là mơ hình hồn hảo yếu và khơng phải là mơ hình cực tiểu. Như
vậy tồn tại mơ hình N nhỏ hơn của chương trình P. Đặt a < d(P) là chỉ số nhỏ
nhất sao cho M/Sa ¹ N/Sa, trong đó M/S là ký hiệu của mơ hình M thu hẹp trên
tập con S của cơ sở Herbrand HP của P. Theo định nghĩa thì M/Sa là mơ hình
nhỏ nhất của La. Bởi vì M/Sg = N/Sg với mọi g < a, dễ thấy rằng N/Sa cũng phải
là mơ hình của La và nó hồn tồn nhỏ hơn M/Sa. Điều này là vơ lý.
Sự tồn tại của một mơ hình hồn hảo của một chương trình logic khơng
phải ln ln bao hàm sự tồn tại của mơ hình hồn hảo yếu.
Ví dụ 4.1 Giả sử P có quy tắc:

P(X) ¬ Øp(f(x)) , p (x) ¬ p(f(x)).
Chương trình này có các mơ hình nhỏ nhất trong đó P(X) là đúng với mọi
X và vì vậy nó có một mơ hình hồn hảo. Nó khơng có một mơ hình hồn hảo
yếu bởi vì, chương trình chính nó là khác rỗng, tầng đáy của nó là khác rỗng.
Định lý sau đây chỉ ra chương trình P có mơ hình hồn hảo, tầng đáy của
chương trình con P' khác rỗng có thể là ngun nhân duy nhất của sự khơng tồn
tại mơ hình hồn hảo yếu của P.
Định lý 4.3 Giả sử rằng có một chương trình logic P có mơ hình hồn
hảo. Nếu tất cả các chương trình con khác rỗng P a được xây dựng trong định
nghĩa 3.6 có tầng đáy Sa = S(Pa) khác rỗng thì P cũng có mơ hình hồn hảo yếu
và hai mơ hình này là đồng nhất.
Chứng minh: Cho K là một mơ hình hồn hảo của P. Ta chứng minh bằng
quy nạp, lớp đáy La của chương trình Pa có mơ hình nhỏ nhất là Ma và mơ hình
này trùng với giới hạn Ka = K\Sa của mơ hình hồn hảo K của tầng S a. Điều này
cho thấy rằng việc xây dựng các mơ hình hồn hảo yếu được mơ tả trong Định
nghĩa 3.6 có thể được thực hiện thành công để kết thúc và kết quả trong một mơ
hình, trùng với mơ hình hồn hảo K.
Giả sử ta đã chứng minh được với mọi g < a.
Nhóm 1B KHMT 2014-2016

Trang 11


Chương trình Logic phân tầng yếu
Nα 0<

δ<α

Pa =


P
Na

, Sa= S(Pa), La= L(Pa).

Giả sử, nếu Pa là rỗng, thì nó là Sa. Cho K' là giới hạn của mơ hình hồn
hảo K để tập Hp- U0Pa,. U’ là các quy tắc của Pa. tồn tại các mệnh đề U trong P, như vậy U' có thể
thu được từ U bằng cách loại bỏ một số quy tắc trong N a. Bằng giả định quy
nạp, các cơ sở cũng được thỏa mãn trong K. Vì K là một mơ hình của U, sau đó
K' là một mơ hình của U', có nghĩa là K' là một mơ hình của P a. Nếu K' khơng
hồn hảo, thì tồn tại một mơ hình K" của P a, là hồn hảo từ K'. Cho K* là kết
hợp của Na và K". Dễ dàng thấy rằng K* là một mơ hình của P, là hoàn hảo từ
K, trái với giả thiết. Điều này chứng tỏ K' là một mơ hình hồn hảo của P a,
những hạn chế Ka mơ hình hồn hảo của K' của P a đến tầng đáy Sa = S (Pa) của
Pa là mơ hình nhỏ nhất là lớp đầu tiên La = L (Pa) của Pa.
Thật vậy, nếu không sẽ tồn tại một không tầm thường, thành phần nhỏ
nhất C của Pa là K'\ C không phải là mô hình nhỏ nhất của P a chương trình giới
hạn C. Xuất phát từ thực tế rằng, Mệnh đề 3.3, các thành phần không tầm
thường C trong tầng đáy của Pa là hồn tồn độc lập với các thành phần cịn lại
trong tầng đáy và từ thực tế là Pa giới hạn trong U của tất cả các thành phần tầm
thường nhỏ nhất của nó là một chương trình logic dương và nên có mơ hình nhỏ
nhất. Do đó, K' là một mơ hình hồn hảo, hạn chế của nó để U phải trùng với mơ
hình nhỏ nhất.
Do đó phải tồn tại một mơ hình T của L a giới hạn C và một nguyên tố A
trong C như vậy một bảng A

Ka - T. T* là giải thích của P a thu được bằng

cách lấy mơ hình K' và sửa đổi nó bằng cách:

 Làm tất cả các nguyên tố B trong Hp lớn hơn hẳn trong T*;
 Thay thế những hạn chế K'\C của K' bằng thành phần C của mơ hình
T.
Nhóm 1B KHMT 2014-2016

Trang 12


Chương trình Logic phân tầng yếu

 Dễ dàng để xác minh rằng thực tế là các thành phần C là khơng nhỏ
ngụ ý rằng T* là một mơ hình của Pa, được lựa chọn từ K'. Điều này
mâu thuẫn với giả thiết, suy ra điều phải chứng minh.
Đặc biệt, nếu các chương trình khởi P là hữu hạn thì sự tồn tại của mơ
hình hồn hảo của nó đảm bảo sự tồn tại của mơ hình hồn hảo yếu.
Hệ quả 4.4 Giả sử rằng một chương trình logic P có một mơ hình hồn
hảo thì P cũng có một mơ hình hồn hảo yếu và hai mơ hình trùng nhau.
Định lý 4.3 Ngữ nghĩa của mơ hình hồn hảo yếu là hồn tồn tương
thích với ngữ nghĩa mơ hình hồn hảo.
Hệ quả 4.5 Nếu một chương trình logic có cả mơ hình hồn hảo và mơ
hình hồn hảo yếu thì trùng nhau.
Chứng minh: Nếu một mơ hình hồn hảo yếu tồn tại thì theo định nghĩa,
tất cả các tầng dưới Sa, sao cho a < (P), là khác rỗng.
Ta thấy rằng ngữ nghĩa mơ hình hồn hảo yếu được dựa trên ngun tắc lặp (2
giá trị) ngữ nghĩa mơ hình nhỏ nhất. Đặc biệt, các chương trình với một tầng
ngữ nghĩa duy nhất của mơ hình hồn hảo yếu trùng với ngữ nghĩa của mơ hình
nhỏ nhất.
Hệ quả 4.6 Nếu một chương trình logic P gồm một tầng duy nhất thì đối
với mơ hình M của P:
M là hồn hảo yếu º M là hồn hảo º M là mơ hình nhỏ nhất của P.

Chứng minh: Giả sử P gồm một tầng duy nhất. Theo định nghĩa, M là mơ
hình hoàn hảo của yếu P khi và chỉ khi M là mơ hình nhỏ nhất của P. Hơn nữa,
rõ ràng từ định nghĩa của mơ hình hồn hảo, mơ hình nhỏ nhất của mọi chương
trình logic ln ln là hồn hảo. Vì vậy, nó cũng đủ để cho thấy rằng nếu M là
một mơ hình hồn hảo của P thì nó là mơ hình nhỏ nhất của P. Kết quả này được
rút ra từ định lý 4.3.

Nhóm 1B KHMT 2014-2016

Trang 13


Chương trình Logic phân tầng yếu

Định lý 4.7 Nếu Mp là mơ hình hồn hảo yếu của P và nếu {S a : 0 (P)} là tập các tầng tương ứng, thì Mp là mơ hình Herbrand duy nhất của
CIRC(P; S1 > S2 > …).
Chứng minh: Theo định nghĩa, mô hình ưu tiên được xây dựng như sau.
Trước tiên chúng ta đã chọn một mơ hình nhỏ nhất M 1 của chương trình P giới
hạn trong tầng đầu tiên S1, tức là một mơ hình nhỏ nhất của L1 và tương đương
với việc áp dụng các quy tắc Davis - Putnam với P, kết quả là chương trình P 2
giảm. Sau đó ta chọn một chương trình M 2 nhỏ nhất của P2 chương trình giới
hạn trong tầng thứ hai, tức là một chương trình nhỏ nhất của L2,…
Việc xây dựng các mơ hình hồn hảo yếu sau đó tương tự, nhưng trên mỗi
cấp ta giả sử tồn tại của mơ hình nhỏ nhất và chỉ có một sự lựa chọn một mơ
hình nhỏ nhất. Điều này có nghĩa rằng chỉ có một mơ hình ưu tiên và nó phải
phù hợp với mơ hình hồn hảo yếu.
Định lý 4.8 Chương trình phân tầng yếu SLS độ phân giải là âm thanh và
đầy đủ liên quan đến ngữ nghĩa mơ hình hoàn hảo yếu.
Chứng minh: Hoàn toàn tương tự như các chứng minh đầy đủ của SLS độ

phân giải cho ngữ nghĩa mơ hình hồn hảo.
V. Quan hệ ngữ nghĩa từ đề xuất khác
Ví dụ 5.1 Chương trình P từ Ví dụ 3.4 có một mơ hình hồn hảo yếu,
nhưng nó khơng có hoặc là một mơ hình có 2 có giá trị hoặc một mơ hình ổn
định duy nhất.
Tuy nhiên, các phương pháp tiếp cận có liên quan chặt chẽ và cho thấy 2
giá trị mơ hình cũng là một mơ hình ổn định duy nhất. Ta chứng minh kết quả
sau:
Định lý 5.1 Đối với các chương trình phân tầng yếu P, các ngữ nghĩa
trùng, tức là mơ hình hồn hảo yếu M p của P cũng là có cơ sở và duy nhất ổn
định.
Chứng minh: Mp là một mô hình có 2 giá trị cơ sở của mơ hình P.
Nhóm 1B KHMT 2014-2016

Trang 14


Chương trình Logic phân tầng yếu

Với mỗi < (P) và cho mỗi literal L, nếu L< Ma thì L

I*, I* là giới hạn của

bộ Ia
Giả sử rằng ta đã được chứng minh với mọi a< . Ta chứng minh

theo

định nghĩa, M là mơ hình nhỏ nhất là L và L là lớp đáy của chương trình P
=


P
. Cho L
Ua
nếu L là dương, sau đó từ L là một chương trình logic

dương, L phải thuộc về T

( ) và do đó, bằng cách giả định quy nạp, L phải

thuộc về Tp (I*), và Vp(I*). Nếu L =
K = {B:

B

}. Ta thấy rằng K là khơng tìm thấy từ I*. Từ A K, điều này

sẽ có nghĩa là L = ¬ A
Từ

A là âm thì chúng ta định nghĩa:

Up(I*), và do đó L Vp(I*)

dương, nếu B K thì mọi quy tắc trong

I*.

, với B làm đầu, phải có một


tiền đề từ K. Một quy tắc từ P, không thể thuộc về

, bởi vì đã được gỡ bỏ

trước. Nhưng một quy tắc được loại bỏ nếu nó chứa một tiền đề literal, đó là sai
lầm trong sự kết hợp của các mơ hình xây dựng trước đó

. Giả định quy nạp,

các tiên đề là sai trong I*, Điều này nói rằng K là sai trong I*, suy ra điều phải
chứng minh.
Các chương trình với 2 giá trị có mơ hình cơ sở mà khơng có mơ hình
hồn hảo yếu và các chương trình với các mơ hình ổn định duy nhất, mà khơng
có một trong hai giá trị 2 mơ hình cơ sở hoặc các mơ hình hồn hảo yếu.
Ví dụ 5.2 Cho P được đưa ra bởi:
b ¬ ¬a
a ¬ ¬b
p ¬ ¬p
p ¬ ¬a .

Nhóm 1B KHMT 2014-2016

Trang 15


Chương trình Logic phân tầng yếu

Chương trình này có một mơ hình ổn định M = {p, b}, nhưng nó khơng có
một trong hai hồn hảo yếu hoặc 2 giá trị mơ hình cơ sở.

Ví dụ 5.3 Cho P như sau:
P ¬ ¬s, q, ¬r
Q ¬ r, ¬p
R ¬ p, ¬q
S ¬ ¬p, ¬q, ¬r
Chương trình này có 2 giá trị mơ hình cơ sở M = {s}, mà là ổn định một
cách tự động duy nhất. Vì nó chỉ có một thành phần và khơng có mơ hình nhỏ
nhất, theo Định lý 4.6 nó khơng có một mơ hình hoàn hảo yếu.
Sử dụng các khái niệm về phân tầng động, người ta đã chứng minh rằng
(3 giá trị) ngữ nghĩa cơ sở có tính chất hồn tồn tương tự như các thuộc tính
ngữ nghĩa của mơ hình hồn hảo, dẫn đến khái niệm về phân tầng động của một
chương trình logic tùy ý. Hơn nữa, khái niệm về phân tầng động đã được sử
dụng để mở rộng định nghĩa của SLS độ phân giải đến lớp của tất cả các chương
trình logic và để chứng minh rằng SLS có độ phân giải là âm thanh và đầy đủ.
Sự tồn tại của hai ngữ nghĩa khác nhau của chương trình logic (ổn định và
hoàn hảo yếu), tương ứng với tiêu chuẩn 2 giá trị không đơn điệu và một ngữ
nghĩa duy nhất (có 3 giá trị cơ sở). Ngữ nghĩa thứ hai được xác định cho tất cả
các chương trình logic, trong khi trước đây bị hạn chế riêng, lĩnh vực hẹp hơn.
Cả ba ngữ nghĩa đều trùng hợp trong các lớp của chương trình phân tầng yếu.

Nhóm 1B KHMT 2014-2016

Trang 16


Chương trình Logic phân tầng yếu

Tài liệu tham khảo
[1.] Halina Przymusinska Department of Computer Science University of Texas
at El Paso andTeodor C. Przymusinski Department of Mathematics University

of Texas at El Paso, march 3, 1995, Weakly Stratified Logic Programs.
[2.] PGS. TS Lê Mạnh Thạnh, PGS. TS Trương Cơng Tuấn, Chương trình
Datalog, nhà xuất bản Đại Học Huế, 2011.

Nhóm 1B KHMT 2014-2016

Trang 17



×