Tại sao thống nhất rất quan trọng đối với các công cụ suy luận?


17

Tôi đang tự mình tìm hiểu Định lý tự động / Trình giải quyết SMT / Trợ lý chứng minh và đăng một loạt câu hỏi về quy trình, bắt đầu từ đây .

Tôi tiếp tục đọc về Thuật toán hợp nhất .

  • Nó là gì và tại sao rất quan trọng đối với Động cơ suy luận ?
  • Tại sao nó rất quan trọng đối với Khoa học Máy tính?

Câu trả lời:


11

Hợp nhất là một khái niệm cơ bản như vậy trong khoa học máy tính mà có lẽ tại thời điểm chúng ta thậm chí còn coi đó là điều hiển nhiên. Bất cứ khi nào chúng ta có một quy tắc hoặc phương trình hoặc mẫu và muốn áp dụng nó cho một số dữ liệu, thống nhất được sử dụng để chuyên quy tắc cho dữ liệu. Hoặc nếu chúng ta muốn kết hợp hai quy tắc chung nhưng chồng chéo, thống nhất cung cấp cho chúng ta quy tắc kết hợp chung nhất. Thống nhất là cốt lõi của

  • Các định lý và trợ lý chứng minh, bao gồm một số dựa trên sự thống nhất bậc cao.
  • Thực hiện Prolog (như Nghị quyết).
  • Gõ thuật toán suy luận.
  • Ngôn ngữ học tính toán / xử lý ngôn ngữ tự nhiên.
  • Các hệ thống viết lại thuật ngữ như Maude, có thể được sử dụng làm cơ sở của ngữ nghĩa ngôn ngữ lập trình.
  • Cơ sở dữ liệu suy diễn.
  • Hệ thống chuyên gia hay nói chung là Trí tuệ nhân tạo.
  • Hệ thống đại số máy tính.
  • Khớp mẫu trong các ngôn ngữ chức năng (ít nhất là một phần ... chỉ khớp).
  • Một số cách tiếp cận phân tích cú pháp.
  • Một số ngôn ngữ truy vấn, đặc biệt là liên quan đến Semantic Web.

8

Các trợ lý chứng minh như Isabelle / HOL hoạt động ở cấp độ cú pháp trên một phép tính logic. Hãy tưởng tượng bạn có quy tắc modus ponens (MP)

PQ,P  Q

và mục tiêu bằng chứng

(ab)(cd),ab !cd

Con người chúng ta thấy ngay lập tức rằng điều này xảy ra với modus ponens, nhưng cỗ máy phải phù hợp với mục tiêu để cai trị theo cú pháp (khi bạn làm apply rule mphoặc apply simp), và đây là điều hợp nhất. Những phát hiện thuật toán với φ ( P ) = một bφ ( Q ) = c d , instantiates sự cai trị và áp dụng nó.φφ(P)=abφ(Q)=cd

Điều tốt về phương pháp của trợ lý như simpbây giờ là nếu mục tiêu của bạn là

(ab)(cd),a !d

rằng họ sẽ tìm thấy một chuỗi phù hợp của các ứng dụng của quy tắc MP, P P Q với unifications tương thích với các bước tương ứng và giải quyết các mục tiêu.PQPPPQ


Ký hiệu: Với một tập hợp các công thức logic, các ký hiệuΓ={φ1,,φn}

Γψ

có nghĩa như sau:

Γψ

Γψψ

Lưu ý rằng các quy tắc thường chứa các biến sơ đồ ( Q ở trên) có thể được thay thế bằng các công thức tùy ý miễn là cùng một biến được thay thế bằng cùng một công thức trong mọi trường hợp; kết quả của định dạng đó là thể hiện quy tắc cụ thể (hoặc bằng trực giác, một bước chứng minh). Sự thay thế này ở trên được ký hiệu là φ được tìm thấy bởi sự thống nhất.PQφ

Thường thì mọi người sử dụng thay vì .


3

2

Tôi không nghĩ nó quan trọng đối với các công cụ suy luận . Tuy nhiên, thuật toán hợp nhất là rất hữu ích cho suy luận kiểu . Đây là hai loại suy luận rất khác nhau.

Kiểu suy luận rất quan trọng đối với khoa học máy tính bởi vì các loại rất quan trọng trong lý thuyết về ngôn ngữ lập trình, là một phần quan trọng của khoa học máy tính. Các loại cũng gần với logic và được sử dụng mạnh mẽ trong việc chứng minh định lý tự động. Có nhiều triển khai thuật toán hợp nhất trong nhiều, nếu không nói là tất cả, trợ lý chứng minh và người giải quyết SMT.

Động cơ suy luận có liên quan đến trí tuệ nhân tạo, cũng rất quan trọng nhưng rất khác biệt. (Tôi đã thấy các liên kết giữa học tập và logic nhưng điều này dường như được tải xuống.)


Tôi không nghĩ câu đầu tiên là hợp lệ; xem câu trả lời của tôi
Raphael

1
Tôi cũng không đồng ý với câu đầu tiên. Nghị quyết (chuyên môn hóa thống nhất) là cốt lõi của Prolog, đây là một trong những ngôn ngữ triển khai phổ biến nhất cho các hệ thống chuyên gia và các công cụ suy luận khác.
Dave Clarke

@Raphael và Dave: vậy bạn có nói thuật toán hợp nhất được sử dụng trực tiếp trong các công cụ suy luận không?
jmad

@jmad: Tôi không chắc chắn rằng có các thuật toán thống nhất đất nước, và tôi cũng không chắc chắn những loại hệ thống này được gọi là "động cơ suy luận". Tôi biết rằng sự hợp nhất được sử dụng rộng rãi ở bất cứ nơi nào logic và / hoặc ngữ nghĩa chính thức bật lên; xem câu trả lời của Dave cho một danh sách.
Raphael

@Raphael: đó là vấn đề tôi muốn giải quyết khá nhiều: có vẻ như các công cụ suy luận không phải là về suy luận mà tôi biết về loại hình và logic.
jmad
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.