1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu một số bài toán đệ quy trong datalog

63 25 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Tìm hiểu số tốn đệ quy Datalog Tr-ờng đại học vinh Khoa công nghệ thông tin - - ĐỐ ÁN TỐT NGHIỆP I HC Ngành: kỹ s- công nghệ thông tin TèM HIỂU MỘT SỐ BÀI TOÁN ĐỆ QUY TRONG DATALOG gvhd: ths Cao sơn svth : lê anh tuấn chu văn trà lớp : 47k - cntt Nghệ An - 05/2011 Tìm hiểu số tốn đệ quy Datalog LỜI CẢM ƠN Chúng em xin chân thành cảm ơn khoa Công Nghệ Thông Tin, trường Đại Học Vinh tạo điều kiện tốt cho chúng em hoàn thành đồ án tốt nghiệp Chúng em xin cảm ơn thầy giáo ThS Cao Thanh Sơn tận tình hướng dẫn, bảo chúng em suốt thời gian làm đồ án Chúng em xin chân thành cảm ơn quý thầy cô khoa tận tình giảng dạy, trang bị cho chúng em kiến thức quý báu suốt năm học vừa qua Chúng xin nói lên lịng biết ơn sâu sắc Ơng Bà, Cha Mẹ, chăm sóc, ni dạy chúng thành người Xin chân thành cảm ơn anh chị bạn bè ủng hộ, giúp đỡ động viên chúng em thời gian học tập nghiên cứu Mặc dù cố gắng hoàn thành đồ án phạm vi khả cho phép chắn không tránh khỏi thiếu sót Chúng em kính mong nhận cảm thơng đóng góp ý kiến tận tình quý thầy cô bạn Nghệ An … Tháng năm 2011 Sinh viên Tìm hiểu số tốn đệ quy Datalog LỜI NĨI ĐẦU Các hệ quản trị sở liệu (QTCSDL) quan hệ, xây dựng theo mơ hình liệu quan hệ E.F Codd đề xuất vào năm 1970, thu thành tựu to lớn phương diện lý thuyết ứng dụng Ưu điểm hệ cách tổ chức liệu, truy cập cập nhật khối lượng lớn liệu cách thuận lợi, an tồn hiệu Chúng có thuật tốn tìm kiếm, xếp đảm bảo tồn vẹn liệu, quản lý truy cập đồng thời với nhiều người dùng khác Hơn nữa, vấn đề quan trọng hệ QTCSDL phải có khả trả lời câu truy vấn có hiệu Bên cạnh CSDL quan hệ cung cấp nhiều kỹ thuật tiên tiến để đánh giá biểu thức quan hệ phức tạp Theo Codd: Một ngôn ngữ truy vấn CSDL đầy đủ (complete) sinh phép tốn quan hệ Tóm lại, thành cơng mơ hình liệu quan hệ vơ to lớn, minh chứng cụ thể mô hình sử hệ quản trị thương mại, Access, SQL Server,… Tuy nhiên, mơ hình liệu quan hệ khơng có khả suy dẫn kiện Ngoài ra, chúng chưa khai thác hết quan hệ ngữ nghĩa thuộc tính Hiện nay, có nhiều cách tiếp cận để giải vấn đề như: Data mining, Deductive database,… Các nghiên cứu Deductive Database năm 70 kỷ trước thể sách Logic and Databases nhóm tác giả Gallaire Minker Từ đời, nghiên cứu lĩnh vực có xu hướng chính:  Một là, mong muốn tích hợp CSDL trí tuệ nhân tạo, mở rộng hệ thống CSDL cung cấp chức hệ chuyên gia, gọi hệ sở tri thức Tìm hiểu số toán đệ quy Datalog  Hai là, mong muốn tích hợp Lập trình logic CSDL để tăng khả tương tác hệ sở liệu khai thác ưu điểm ngôn ngữ lập trình Hướng tiếp cận có tính khả thi cao có tương đồng lập trình logic phép tốn quan hệ chúng có chung mơ hình tốn học bản: logic vị từ bậc (first-order-logic) Song song với phát triển hệ QTCSDL, hệ chuyên gia phát triển để trợ giúp trình định lĩnh vực chuyên ngành hẹp Đặc điểm hệ chuyên gia cung cấp khả suy luận nhằm hỗ trợ việc định, chúng khơng có khả quản lý khối lượng lớn thơng tin Như vậy, CSDL suy diễn xem chương trình logic với khái quát hoá khái niệm CSDL quan hệ Một CSDL suy diễn CSDL có khả suy diễn số kiện từ kiện lưu trữ CSDL Cụ thể hơn, cung cấp, mức ngôn ngữ thao tác liệu, chế suy diễn mạnh Tìm hiểu số toán đệ quy Datalog đại số quan hệ, đặc biệt cho phép định rõ xử lý đệ quy Mặt khác, CSDL suy diễn phải có tất chức hệ QT CSDL truyền thống, chẳng hạn cho phép nhiều người dùng truy cập đồng thời tới liệu, cho phép liệu phân bố nhiều trạm (phân tán), đảm bảo tính tin cậy, quán an tồn liệu Vấn đề đặt ra: Phép tốn quan hệ Đại số quan hệ xem ngôn ngữ sở liệu suốt thời gian dài, nhiên, phép toán quan hệ thiếu tính chất quan trọng: Đệ quy (recursive) Một số tốn khơng thể giải dùng Phép toán quan hệ Trước nhu cầu giải toán đệ quy, vấn đề mà phép tốn đại số quan hệ trước cịn chưa làm Datalog hướng tìm hướng cho việc giải vấn đề Bằng phương pháp xác định đánh giá ngữ nghĩa chương trình, đồng thời đưa sở luật cho sở liệu suy diễn Bằng phương pháp tiếp cận theo quan điểm lý thuyết kinh điển quan điểm lý thuyết mơ hình, quan điểm lý thuyết chứng minh, quan điểm bất động Datalog góp phần khơng nhỏ vào cơng việc giải vấn đề toán đệ quy Cấu trúc đồ án “Tìm hiểu số tốn đệ quy Datalog” chia làm ba chương Chương 1: Một số khái niệm Chương 2: Một số phương pháp đánh giá xác định ngữ nghĩa chương trình Datalog Chương 3: Ứng dụng Datalog để giải số tốn đệ quy Tìm hiểu số toán đệ quy Datalog CHƢƠNG 1: MỘT SỐ KHÁI NIỆM CƠ BẢN 1.1 Logic vị từ bậc Logic mệnh đề cho phép biểu diễn giới kiện Hạn chế logic mệnh đề không biểu diễn mối quan hệ đối tượng Logic vị từ bậc ngôn ngữ hình thức diễn tả quan hệ đối tượng để suy diễn quan hệ từ quan hệ xem Ngoài kết nối logic mệnh đề, logic vị từ bậc đưa vào khái niệm vị từ (pridicate) sử dụng lượng từ (quantifier): tồn (  ), với ( ) a Logic vị từ bậc có kiểu ký hiệu (symbols):  Hằng (Constants): Tên đối tượng lĩnh vực cụ thể (ví dụ: tuan, tra)  Biến (Variables): Các ký hiệu mà giá trị thay đổi đối tượng khác (ví dụ: x)  Ký hiệu hàm (Function symbols): Các ký hiệu biểu diễn ánh xạ (quan hệ hàm) từ đối tượng miền (domain) sang đối tượng miền khác (ví dụ: plus)  Các vị từ (Predicates): Các quan hệ mà giá trị logic sai (ví dụ: friend) b Ngữ nghĩa:  Một biểu diễn (interpretation) biểu thức cặp , o Miền giá trị (Domain) D tập khác rỗng o Hàm biểu diễn (Interpretation function) I phép gán giá trị hằng, ký hiệu hàm, ký hiệu vị từ cho: Tìm hiểu số toán đệ quy Datalog  Đối với c I(c) d  Đối với ký hiệu hàm (có n tham số) f: I(f): Dn  Đối với ký hiệu vị từ (có n tham số) P: I(P): D Dn {true, false}  Một biểu thức  thỏa mãn tồn phép biểu diễn cho I(  ), ký hiệu  I   Nếu  I  nói I mơ hình (model)  Nói cách khác, I thỏa   Một biểu thức  hợp lệ (valid) phép biểu diễn I thỏa  , ký hiệu  I  c Các lượng từ  Với (  ): dùng để câu với giá trị biến lượng giá  Tồn (  ): dùng để câu với số giá trị biến lượng giá 1.2 Mệnh đề Horn (Horn clause) Trong logic toán học, mệnh đề Horn mệnh đề mà chứa nhiều literal khẳng định (positive literal) Trong đó: literal cơng thức nguyên tử (atomic formula) phủ định (its negation) Mỗi mệnh đề Horn thuộc trường hợp sau: Luật (rule): literal khẳng định literal phủ định Một luật có dạng P1  P2   Pk  Q , luật tương đương logic với luật [ P1  P2   Pk ]  Q ; Ví dụ: parent (X,Y)  ancestor (Y,Z)  ancestor (X,Z) a Sự kiện (fact): 1literal khẳng định literal phủ định Tìm hiểu số tốn đệ quy Datalog Ví dụ: “mother(mary, tom)” b Một phủ định đích (A negated goal): literal khằng định literal phủ định c Mệnh đề rỗng (The null clause): literal khẳng định literal phủ định: xuất vào cuối phép chứng minh resolution (resolution proof).[4] 1.3 Phép thể Herbrand Cho ngôn ngữ bậc L, giả sử tập L khác rỗng Đặt U tập hạng thức L HB tập nguyên tố L U gọi tập phổ dụng Herbrand (Herbrand Universe) HB gọi sở Herbrand (Herbrand Base) Ví dụ: Cho ngơn ngữ L - có a, b - f, g ký hiệu hàm biến - p ký hiệu vị từ biến U = {a,b,f(a),f(b),f(f(a)), } HB = { p(a), p(b), p(f(a)), } Định nghĩa 1.2.1 Một phép thể Herbrand I ngôn ngữ bậc L bao gồm:  Một miền D tập phổ dụng U  Mỗi gán  Mỗi ký hiệu hàm f n biến gán ánh xạ fI :Un  U sau: Tìm hiểu số tốn đệ quy Datalog t1, ,tn U, fI(t1, ,tn)  f(t1, ,tn)  Mỗi ký hiệu vị từ p n biến gán ánh xạ pI từ Un  {true, false} Ví dụ: Cho ngôn ngữ bậc L bao gồm : - Hằng a - Ký hiệu hàm s - Vị từ p, q - Chương trình logic P : r1 : p(a)  r2 : p(s(X))  p(X) r3 : q(X,a,X)  p(X) r4 : q(X,s(Y),s(Z))  q(X,Y,Z) U= {a,s(a),s(s(a)), } HB={p(a),p(s(a)), ,q(a,a,a),q(a,a,s(a)),q(a,a,s(s(a)), ,q(a,s(a),a),q((a,s(s(a)),a), } Ta định nghĩa phép thể Hebrand ngôn ngữ L nhaư sau : Hằng a gán Ký hiệu hàm s gán ánh xạ : sI : X  s(X), XU Ký hiệu vị từ p gán ánh xạ : pI : x  true xU Ký hiệu vị từ q gán ánh xạ : qI : (x,y,z)  true : Tìm hiểu số toán đệ quy Datalog n(x) + n(y) = n(z) n(t) số ký hiệu s có mặt hạng thức t Nhận xét: Đối với phép thể Herbrand phép gán hằng, ký hiệu hàm không thay đổi, khác phép gán ký hiệu vị từ Như phép thể Herbrand khác giá trị chân lý nguyên tố Gọi I tập tất nguyên tố có giá trị chân lý true sở Herbrand Tập hợp I gọi phép thể Herbrand Ví dụ: Cho ngơn ngữ bậc L bao gồm : - Hằng a,b,c - Ký hiệu vị từ p,q,r - Vị từ p, q - Chương trình logic P: r(a,b)  r(b,c)  p(X,Y)  r(X,Y) q(X,Y)  r(X,Z)p(Z,Y) U={a,b,c} HB={r(a,b),r(b,c),r(a,c),r(b,a),r(c,b),r(c,a),r(a,a),r(b,b),r(c,c), p(a,b),p(b,c),p(a,c),p(b,a),p(c,b),p(c,a),p(a,a),p(b,b),p(c,c), 10 Tìm hiểu số tốn đệ quy Datalog 3.3.3 Bài toán phả hệ (family tree)  Giới thiệu tốn Nói theo ngơn ngữ tốn học, phân loại có cấu trúc phả hệ cấu trúc gồm phân loại cho nhóm đối tượng cho trước Trên đỉnh cấu trúc phân loại nhất, nút gốc, áp dụng cho tất đối tượng Các nút bên gốc phân loại cụ thể hơn, áp dụng cho tập tập chứa tất đối tượng phân loại Một ví dụ gia đình Trong nút gốc tổ tiên (hay bề trên) Bên đơn vị phân loại trai, gái, dâu, rể, cháu, chắt nội, chắt ngoại… Một số người cho tư người tự động phân loại biết theo hệ thống Cách nhìn thường dựa theo nhận thức luận Immanuel Kant Các nhà nhân loại học quan sát hệ phân loại thường nhúng văn hóa địa phương hệ thống xã hội, đáp ứng chức xã hội đa dạng Có lẽ nghiên cứu tiếng có giá trị hệ phân loại dân tộc The Elementary Forms of Religious Life (Những loại hình đời sống tôn giáo) Emile Durkheim Các triết lý Kant Durkheim ảnh hưởng tới Claude LeviStrauss, người sáng lập thuyết kết cấu nhân loại học Levi-Strauss viết hai sách quan trọng hệ phân loại: Totemism (Tín ngưỡng tơtem) The Savage Mind (Tâm thức thô sơ) Những kiểu phân loại phân tích Durkheim Levi-Strauss đơi cịn gọi phân loại dân gian để phân biệt với phân loại khoa học, dạng phân loại sau tách khỏi liên kết xã hội để có tính khách quan phổ quát Hệ 49 Tìm hiểu số toán đệ quy Datalog phân loại khoa học tiếng sử dụng nhiều phân loại Linnaeus (xem trên), phân loại sinh vật bắt đầu Carolus Linnaeus  Sử dụng Datalog để thực toán  Giả sử có EDB tốn family sau: father(tom,amy) father(jack,fred) father(tony,carolII) father(fred,carolIII) mother(grace,amy) mother(amy,fred) mother(carolI,carolII) mother(carolII,carolIII)  IDB với luật: parent(X,Y) :- father(X,Y) parent(X,Y) :- mother(X,Y) ancestor(X,Y) :- parent(X,Y) ancestor(X,Y) :- parent(X,Z), ancestor(Z,Y) 50 Tìm hiểu số toán đệ quy Datalog  Các luật trả lời cho câu hỏi (1) ancestor(X, Y)? (2) ancestor(tom, X)? (3)son (S, F, M)  father(F, S), mother(M, S)  Thể toán DES ta thu kết sau: Chạy chương trình DES Chúng ta biết bề gia đình 51 Tìm hiểu số toán đệ quy Datalog 3.3.4 Bài toán Tháp Hà Nội  Giới thiệu toán Tháp Hà Nội trị chơi trí tuệ người An Nam đem từ Đông Kinh giáo sư N Claus (của SIAM) trường cao đẳng Quan Li – Sou – Stian! Dạng thường gặp trò chơi gồm đĩa kích thước khác nhau, có lỗ giữa, nằm xuyên ba cọc Bài toán đố bắt đầu cách xếp đĩa theo trật tự kích thước vào cọc cho đĩa nhỏ nằm cùng, tức tạo dạng hình nón u cầu trị chơi di chuyển toàn số đĩa sang cọc khác, tuân theo quy tắc sau:  lần di chuyển đĩa  đĩa đặt lên đĩa lớn (khơng thiết hai đĩa phải có kích thước liền kề, tức đĩa nhỏ nằm đĩa lớn nhất) Trị chơi tìm thấy, lần đầu, sách minh họa Quan thoại FER-FER-TAM-TAM, xuất bản, tương lai gần, phủ Trung Hoa Tháp Hà Nội có đĩa, nhỏ dần, có số lượng thay đổi, mà chúng làm gỗ, có lỗ Ở Nhật Bản, Trung Quốc, Đông Kinh, chúng làm sứ Trị chơi có mục đích dỡ bỏ đĩa, đặt vào cột bên cạnh, theo quy tắc định Vui bổ ích, dễ học dễ chơi thành phố, ngồi nơng thơn, chuyến du lịch, tạo để mang đến kiến thức khoa học, giống trò chơi kỳ thú lạ giáo sư N CLAUS (của SIAM) Khi người ta công bố rằng: “Chúng trao giải thưởng 1000 franc, 100 nghìn franc, triệu franc, nhiều hơn, cho hoàn thành, việc dùng tay di chuyển tháp Hà Nội với 64 đĩa, theo quy tắc trị chơi” 52 Tìm hiểu số tốn đệ quy Datalog Chúng tơi nói cần số lần di chuyển là: 18 446 744 073 709 551 615 nhiều năm tỷ kỷ! Theo truyền thuyết Ấn Độ, người Brahmin tiếp nối thời gian dài để thay đổi Đền Bernares, di chuyển 64 đĩa vàng Tòa tháp Brahma, trạm kim cương từ Golconde Khi cơng việc hồn thành, Tịa tháp Brahmin đổ, lúc thời điểm kết thúc vũ trụ! Nhiều cách giải phát triển toán tháp Hà Nội Ở xin giới thiệu cách chơi thực tế là: Lần lượt di chuyển đĩa đĩa lớn Nếu có hai đĩa lớn phải chuyển đĩa nhỏ lên đĩa lớn Khi chuyển đĩa số lẻ, ln chuyển cọc theo chiều kim đồng hồ; chuyển đĩa số chẵn, ln chuyển cọc ngược chiều kim đồng hồ Một cách dễ để nhớ cách giải ý đĩa nhỏ chuyển lần di chuyển thứ hai, chuyển theo chiều Trong lần chuyển đĩa nhỏ nhất, có lần chuyển hợp lệ mà chuyển đĩa nhỏ thêm lần Bài tốn có lời giải xác Tuy nhiên mở rộng cho trường hợp có nhiều ba cọc chưa giải cặn kẽ Đa số trò chơi dạng có đĩa Đối với người chơi khó thật thuật giải đơn giản Một thuật giải tốn dùng thuật giải đệ quy 53 Tìm hiểu số tốn đệ quy Datalog  đặt tên cọc A, B, C tên chuyển bước khác (ở đây: A = Cọc Nguồn, B = Cọc Đích, C = Cọc Trung Gian)  gọi n tổng số đĩa  đánh số đĩa từ (nhỏ nhất, cùng) đến n (lớn nhất, cùng) Để chuyển n đĩa từ cọc A sang cọc B cần: chuyển n-1 đĩa từ A sang C Chỉ lại đĩa #n cọc A chuyển đĩa #n từ A sang B chuyển n-1 đĩa từ C sang B cho chúng nằm đĩa #n Phương pháp gọi thuật giải đệ quy: để tiến hành bước 3, áp dụng lại thuật giải cho n-1 Toàn trình số hữu hạn bước, đến lúc thuật giải áp dụng cho n = Bước đơn giản chuyển đĩa từ cọc A sang cọc C Sau dạng dễ xem thuật giải này: chuyển đĩa sang cọc C chuyển đĩa sang cọc B chuyển đĩa từ C sang B cho nằm lên Vậy ta có đĩa nằm cọc B, cọc C thời trống chuyển đĩa sang cọc C lặp lại bước để chuyển & cho nằm lên 54 Tìm hiểu số toán đệ quy Datalog Mỗi lần dựng xong tháp từ đĩa i đến 1, chuyển đĩa i+1 từ cọc A cọc xuất phát, lại di chuyển tháp dựng lên đĩa i+1 Ứng dụng: Tháp Hà Nội toán thường dùng để dạy lập trình Một phiên hình tốn lập trình chương trình soạn thảo emacs, truy cập cách gõ M-x hanoi Ngồi có thuật giải mẫu viết ngơn ngữ Prolog Bài tốn Tháp Hà Nội thường dùng nghiên cứu tâm lý cách giải vấn đề Cũng có biến thể khác toán gọi Tháp Ln Đơn dùng chuẩn đốn điều trị thần kinh tâm lý chức thực hành Trường hợp cọc trở lên Mặc dù thuật giải tương đối đơn giản, toán với n đĩa cần n-1 lần di chuyển Tuy nhiên với số lượng Cọc nhiều chưa biết cần lần di chuyển để giải toán Do việc áp dụng bước tiến dãy (tiếng Anh sequential advancement) để xác định vị trí số lượng lớn đĩa ba cọc sau số lớn tuỳ ý bước tiến không thực tế Lời giải tối ưu cho toán Tháp Hà Nội với bốn cọc hay nhiều cịn tốn mở Đây ví dụ tiêu biểu cho thấy tốn đơn giản, giải trở thành khó nhiều cách nới lỏng số ràng buộc Mặc dù khơng biết xác cần lần di chuyển, có vài kết tiệm cận Có "lời giải coi tối ưu" áp dụng cách đệ 55 Tìm hiểu số tốn đệ quy Datalog quy để tìm lời giải–xem giải thích vài biến thể toán bốn cọc khảo sát Paul Stockmeyer Mặc dù với số đĩa nhỏ thử nghiệm máy tính "lời giải coi tối ưu" thực tối ưu, chưa có chứng minh tổng quát để coi thực tối ưu Tuy nhiên, kết nghiên cứu năm 2004 cho thấy lời giải coi tối ưu phải nằm độ lớn với lời giải tối ưu  Sử dụng Datalog để giải tốn Sử dụng Datalog ta có chương trình giải toán Tháp Hà Nội sau: hanoi(1,A,B,C) hanoi(N,A,B,C) :N>1, N1 is N-1, hanoi(N1,A,C,B), hanoi(N1,C,B,A) Ở ta có câu lệnh hanoi(1,A,B,C) số đĩa; A, B, C theo thứ tự cột nguồn, cột đích cột trung gian Áp dụng thuật giải với N=3 đĩa ta có bước thực sau: 56 Tìm hiểu số tốn đệ quy Datalog - Bước 1: Chuyển đĩa số từ cột nguồn A sang cột đích B, cột C cột trung gian - Bước 2: Chuyển đĩa số từ cột nguồn A sang cột trung gian C, ta coi cột B cột trung gian - Bước 3: Chuyển đĩa số từ cột B sang cột C, ta coi cột A cột trung gian - Bước 4: Chuyển đĩa số từ cột nguồn A sang cột B, cột C cột trung gian - Bước 5: Chuyển đĩa số từ cột C sang cột A, cột B cột trung gian - Bước 6: Chuyển đĩa số từ cột C sang cột B, cột A cột trung gian - Bước 7: Chuyển đĩa số từ cột A sang cột B hồn thành cơng việc, tất đĩa chuyển từ cột nguồn A sang cột đích B theo quy tắc tốn Minh họa q trình chạy tốn Tháp Hà Nội với đĩa: 57 Tìm hiểu số tốn đệ quy Datalog 58 Tìm hiểu số tốn đệ quy Datalog KẾT LUẬN Đồ án hoàn thành với mong muốn nghiên cứu góp phần giải số toán sử dụng phép toán đệ quy Đây điều quan trọng mà phép toán đại số quan hệ chưa làm Kết đạt đƣợc Từ yêu cầu hướng giải cho tốn đệ quy, chúng em tìm hiều số khái niệm như: Logic vị từ bậc nhất, mệnh đề Horn, tìm hiểu cấu trúc mơ hình sở liệu suy diễn (Deductive database), đưa nhìn nhận, đánh giá Deductive database Từ tìm ngơn ngữ luật cho sở liệu suy diễn Datalog Từ cú pháp Datalog, đem so sánh với đại số quan hệ hệ chuyên gia để xây dựng lên số phương pháp đánh giá xác định ngữ nghĩa cho chương trình Datalog Ứng dụng Datalog để giải số toán đệ quy Sử dụng phần mềm DES (Datalog Educational System) giải số toán đệ quy điển tốn: fibonaci, tháp hà nội, tìm đường ngắn đồ thị, … Hƣớng phát triển Datalog đặc biệt thích hợp để diễn tả kiện quy tắc động lực cho mơ hình hóa phát triển tảng kiến thức ban đầu 59 Tìm hiểu số toán đệ quy Datalog Datalog đánh giá dựa trật tự logic Nó thực hiệu sở liệu lớn Truy vấn đánh giá thường thực cách sử dụng chiến lược từ lên (Bottom - up) Datalog động đứng sau chuyên ngành hệ thống sở liệu Hơn nữa, số hệ thống sở liệu sử dụng rộng rãi bao gồm ý tưởng thuật toán cho datalog Từ kiến thức trên, hứa hẹn bước tiến tương lai sở liệu suy diễn Tin góp phần khơng nhỏ việc giải toán phức tạp mà đại số quan hệ không làm Kết luận Một lần xin gửi tới gia đình, thầy cơ, bạn bè lời cảm ơn chân thành sâu sắc Cảm ơn tất ủng hộ động viên để hồn thành tốt đồ án 60 Tìm hiểu số toán đệ quy Datalog TÀI LIỆU THAM KHẢO [1] Nguyễn Văn Huân, Phạm Việt Bình, Giáo trình hệ sở liệu phân tán suy diễn - Lý Thuyết Và Thực Hành, NXB Khoa học Kỹ thuật, Hà Nội, 2009 [2] Đỗ Trung Tuấn, Cơ sở liệu suy diễn, NXB Giáo dục Việt Nam, 2010 [3] Abiteboul, Hull, Vianu, Foundations of Databases, Addison-Wesley Publishing, 1995 [4] Raghu Ramakrishnan, Jeffrey D Ullman, A Survey of Research on Deductive Database Systems, 1993 61 Tìm hiểu số toán đệ quy Datalog MỤC LỤC LỜI CẢM ƠN LỜI NÓI ĐẦU CHƢƠNG 1: MỘT SỐ KHÁI NIỆM CƠ BẢN 1.1 Logic vị từ bậc 1.2 Mệnh đề Horn (Horn clause) 1.3 Phép thể Herbrand 1.4 Cơ sở liệu suy diễn (Deductive database) 12 1.4.1 Mơ hình CSDL suy diễn 12 1.4.2 Nhìn nhận CSDL suy diễn 14 1.4.3 Các giao tác CSDL suy diễn 15 1.4.4 Cấu trúc 16 1.5 Datalog - Ngôn ngữ luật cho Cơ sở liệu suy diễn 16 1.5.1 Cú pháp Datalog 16 1.5.2 So sánh DATALOG với đại số quan hệ 19 1.5.3 Các hệ CSDL chuyên gia 25 CHƢƠNG 2: MỘT SỐ PHƢƠNG PHÁP ĐÁNH GIÁ VÀ XÁC ĐỊNH NGỮ NGHĨA CHƢƠNG TRÌNH DATALOG 25 2.1 Phƣơng pháp ƣớc lƣợng dƣới lên (Bottom - up evaluation) 26 2.2 Phƣơng pháp ƣớc lƣợng xuống (Top – down evaluation) 27 2.3 Phƣơng pháp ma tập (Magic set method) 30 2.3.1 Tô điểm 31 Tìm hiểu số tốn đệ quy Datalog 2.3.2 Truyền thông tin sang ngang 31 2.3.3 Phép biến đổi ma tập 32 2.3.4 Phương pháp ma tập 33 2.4 Tiếp cận theo quan điểm lý thuyết mơ hình 34 2.5 Tiếp cận theo quan điểm lý thuyết chứng minh 35 2.6 Tiếp cận theo điểm bất động 36 CHƢƠNG 3: ỨNG DỤNG DATALOG GIẢI QUYẾT MỘT SỐ BÀI TOÁN ĐỆ QUY 38 3.1 Giới thiệu phần mềm DES (Datalog Educational System) 38 3.2 Cài đặt phần mềm ứng dụng DES 38 3.3 Một số toán minh họa 40 3.3.1 Bài toán fibonaci 40 3.3.2 Bài tốn tìm đường ngắn 44 3.3.3 Bài toán phả hệ (family tree) 49 3.3.4 Bài toán Tháp Hà Nội 52 KẾT LUẬN 59 TÀI LIỆU THAM KHẢO 61 ... 38 Tìm hiểu số toán đệ quy Datalog  Hoặc nháy đúp chuột file Des.exe để chạy chương trình cửa sổ Command Prompt (Cmd.exe) 39 Tìm hiểu số tốn đệ quy Datalog 3.3 Một số toán minh họa 3.3.1 Bài toán. .. điểm bất động khác b T cho b  a 37 Tìm hiểu số toán đệ quy Datalog CHƢƠNG 3: ỨNG DỤNG DATALOG GIẢI QUY? ??T MỘT SỐ BÀI TOÁN ĐỆ QUY 3.1 Giới thiệu phần mềm DES (Datalog Educational System) DES phần... bất động Datalog góp phần không nhỏ vào công việc giải vấn đề toán đệ quy Cấu trúc đồ án ? ?Tìm hiểu số tốn đệ quy Datalog? ?? chia làm ba chương Chương 1: Một số khái niệm Chương 2: Một số phương

Ngày đăng: 07/10/2021, 23:35

Xem thêm:

TỪ KHÓA LIÊN QUAN

w