3.3 Tính dừng và đúng đắn của giải thuật tạo giả định tối thiểu
3.3.1 Đặc điểm không gian tìm kiếm
Không gian tìm kiếm của các bảng quan sát đƣợc sử dụng trong giải thuật trên chứa hoàn toàn các bảng quan sát đƣợc tạo ra để tạo giả định ứng cử viên cho luật ghép nối. Không gian tìm kiếm này đƣợc mô tả nhƣ là một cây tìm kiếm trong đó gốc của cây chính là bảng quan sát ban đầu OT0. Để thuận lợi chúng ta có thể định nghĩa kích thƣớc của một bảng quan sát OT = (S, E, T) nhƣ là |S|, đƣợc ký hiệu là |OT|. Chúng ta sử dụng Aij để ký hiệu cho giả định thứ j đƣợc tạo ra từ bảng quan sát thứ j (ký hiệu OTj) tại chiều sâu thứ I của cây tìm kiếm. Từ cách xây dựng cây tìm kiếm nhƣ trên hình 3.4 chúng ta có một định lý nhƣ sau:
Định lý 1. Giả sử Aij và Akl là hai giả định ứng cử viên tƣơng ứng đƣợc tạo ra tại chiều sâu thứ i và k. Khi đó ta có thể khẳng định |Aij| < |Akl| thì i < k.
Chứng minh: Bảng quan sát tại chiều sâu thứ i + 1 đƣợc tạo ra từ bảng quan sát tại chiều sâu thứ i theo một số trƣờng hợp sau:
Trong các bảng quan sát OTij tại mức i có ít nhất một bảng quan sát chứa giá trị “?”. Trong trƣờng hợp này, bảng thay thế cho bảng này sau khi thay giá trị “?” bởi true hoặc false là các bảng quan sát ở mức i+1. Những bảng quan sát đó có cùng kích thƣớc với bảng OTij.
Có ít nhất một bảng OTij trong các bảng tại mức i không phải là bảng đóng. Một bảng cập nhật OT(i+1)k tại chiều sâu thứ i+1 thu đƣợc từ bảng OTij bằng cách thêm một phần tử và tập Sij. Điều này có nghĩa là |OTij| < |OT(i+1)k|.
Cuối cùng, có ít nhất một bảng OTij trong các bảng quan sát tại mức i không cho ta một giả định thực sự. Trong trƣờng hợp này, một bảng cập nhật OT(i+1)k tại mức i+1 sẽ thu đƣợc từ bảng này bằng cách thêm một hâu tố e của phản ví dụ cex vào trong tập Eij. Điều này có nghĩa là |OTij| = |OT(i+1)k|.
Từ những điều trên ta có thể khẳng định đƣợc rằng, giả định Aij đƣợc tạo ra tại chiều sâu i có kích thƣớc nhỏ hơn kích thƣớc của giả định Akl đƣợc tạo ra tại chiều sâu k thì khi đó i < k.
3.3.2 Tính dừng và tính đúng đắn của giải thuật
Tính dừng và tính đúng đắn của giải thuật tạo giả định tối thiểu đƣợc đƣa ra trong hình 3.2.2.1 đƣợc khẳng định qua định lý sau:
Định lý 2: Cho hai mô hình thành phần M1 và M2, và một thuộc tính p, thủ tục đƣợc đƣa ra nhằm tạo giả định tối thiểu trong hình 3.4 là dừng ở một số hữu hạn bƣớc và trả lại kết quả true và một giả định Am(p) với kích thƣớc nhỏ nhất, giả định này đủ mạnh để cho thành phần M1 thoả mãn thuộc tính p và cũng đủ yếu để đƣợc thoả mãn bởi thành phần M2, nếu hệ thống ghép nối M1|| M2 thoả mãn thuộc tính p, và trả về false nếu ngƣợc lại
Chứng minh: Tại mỗi vòng lặp, phƣơng thức đƣợc đƣa ra sẽ trả về true hoặc false (tức là M1|| M2 |= p) và kết thúc hoặc tiếp tục bằng cách đƣa ra một phản ví dụ hoặc tiếp tục cập nhật bảng quan sát hiện tại (nếu bảng quan sát đó chứa giá trị “?” hoặc nó không phải là bảng đóng). Do giải thuật đƣa ra dựa trên thuật toán học L*, mặt khác với độ chính xác của L* chúng ta có thể chắc chắn rằng nếu thuật toán học L* duy trì việc nhận đƣợc phản ví dụ đƣa ra, trong trƣờng hợp xấu nhất, thuật toán sẽ thực sự đƣa ra một giả định yếu nhất AW và kết thúc. Điều này có nghĩa là không gian tìm kiếm chắc chắn chứa bảng quan sát OTW để tạo gia giả định AW. Trong trƣờng hợp xấu nhất, phƣơng pháp đƣa ra trong hình 3.2.2.1 sẽ tìm kiếm đến OTW và kết thúc.
Xét tính đúng của giải thuật, giải thuật đƣa ra sử dụng hai bƣớc của luật ghép nối ( đó là A Mi 1 p và true M1 Ai ) để trả lời câu hỏi, giả định ứng cử viên Ai
đƣợc đƣa ra bởi giải thuật có phải là giả định thực sự hay không. Nó chỉ trả lại true và một giả định tối thiểu Am(p) = Ai khi mà cả hai bƣớc của luật ghép nối trả lại true, và nhƣ vậy độ chính xác của nó đƣợc đảm bảo bởi luật ghép nối. Vấn đề của chúng ta ở đây phải chỉ rằng giả định Am(p) đƣợc tạo ra bởi giải thuật trên là tối thiểu. Thật vậy, giả sử rằng tồn tại một giả định A mà |A| < |Am(p)|. Theo định lý 1, khi đó ta có chiều sâu của bảng quan sát tạo ra giả định A phải nhỏ hơn chiều sâu của bảng quan sát để tạo ra Am(p). Điều này có nghĩa là, bảng quan sát để tạo ra A đã đƣợc thăm bởi giải thuật của chúng ta. Trong trƣờng hợp này, thủ tục tạo giả định ứng cử viên A và A không phải là một giả định thực sự, vì nếu A là giả định thực sự thì thuật toán đã dừng và trả lại kết quả là A chứ không phải duyệt tiếp đến bảng quan sát tạo tạo giả định
Am(p). Từ những điều trên, giả định A nhƣ trên là không tồn tại. Vì vậy, giả định đƣợc tạo ra bởi thủ tục trong hình 3.4 là giả định tối thiểu.
3.4 Ví dụ tạo giả định tối thiểu
Phần này chúng tôi sẽ trình bày chi tiết từng bƣớc của giải thuật tạo giả định tối thiểu thông qua một ví dụ cụ thể.
Xét hệ thống đơn giản gồm các thành phần nhƣ sau:
Chúng ta sẽ xác định giả định tối thiểu A thoả mãn điều kiện AGV:
<A> Input <Order>
<true> Output <A>.
Áp dụng giải thuật L*, chúng ta thực hiện huấn luyện giả định yếu nhất AW. Nó cũng có nghĩa là, huấn luyện một ngôn ngữ U = L(AW) với bảng chữ cái ∑ = αAW = (αInput αOrder) ∩ αOutput = {send, out, ack}.
Chúng ta sẽ xây dựng bảng quan sát (S, E, T). Đầu tiên, L* đặt tập S và E là {λ}, khi đó ta có bảng quan sát nhƣ sau:
in Input ack send 0 1 2 out Ordererr in in a b out π Output send ack out send
Table λ S λ ? S.∑ ack ? out ? send ?