Liệu pháp luật NP-hoàn chỉnh?


64

Tôi muốn biết nếu đã có bất kỳ công việc liên quan đến mã pháp lý phức tạp. Cụ thể, giả sử chúng ta có vấn đề quyết định "Đưa ra cuốn sách luật này và tập hợp các tình huống cụ thể này, bị cáo có phạm tội không?" Nó thuộc lớp phức tạp nào?

Có những kết quả đã chứng minh rằng trò chơi bài Magic: the Gathering có cả NP và Turing-perfect nên không tồn tại kết quả tương tự cho mã hợp pháp?


18
Yêu cầu của bạn về MtG không thể chính xác, vì có những vấn đề có thể quyết định không có trong NP . Vì vậy, tôi đoán bạn có nghĩa là một phần của trò chơi là NP -complete và một số phần khác là Turing-Complete.
David Richerby

8
Một giáo sư của tôi đã xuất bản một vài công trình về phân tích chính thức của pháp luật, như thế này , thế nàythế này . Tôi không nghĩ đó là những gì bạn đang hỏi nhưng chỉ trong trường hợp bạn thấy nó có liên quan.
jdehesa

1
Lớp phức tạp gọi là "luật sư có khả năng phức tạp vô hạn". ;) Nếu bạn quan tâm đến phân tích chính thức một số cấu trúc trừu tượng được xác định tùy ý được thiết kế để xấp xỉ các mã luật theo một số cách cụ thể, thì có thể phân tích chính thức. Tuy nhiên, điều quan trọng là phải nhận ra rằng nó sẽ không liên quan theo bất kỳ cách có ý nghĩa nào đối với các vụ kiện thực tế và hệ thống tư pháp thực tế , ngay cả trong một thế giới lý tưởng hóa. Vấn đề ý định, và một phần lớn các trường hợp tòa án được thiết lập gì các trường hợp đang ở nơi đầu tiên.
tự đại diện

9
Nó hoàn toàn phụ thuộc vào việc thời gian tính toán có được tính hóa đơn hay không.
Matt Timmermans

1
Một tài liệu tham khảo nhanh về độ phức tạp của MtG có thể là một Chatterjee & Ibsen-Jensen, 1998 . Chắc chắn có những giấy tờ khác về chủ đề này.
Dmitri Chubarov

Câu trả lời:


33

Luật có thể bao gồm ngôn ngữ tùy ý và ngôn ngữ tùy ý có thể diễn đạt logic hoàn chỉnh NP. Vì vậy, về mặt lý thuyết, có thể tạo ra một NP hoàn chỉnh hoặc thậm chí là một luật không thể giải quyết được. Tuy nhiên, trong thực tế, phần lớn các luật hình sự là những cây quyết định đơn giản.

Ví dụ, hãy lấy phần 187 (a) của bộ luật hình sự California ("Kẻ giết người cấp độ đầu tiên").

(a) Giết người là hành vi giết người trái pháp luật của một con người, hoặc một bào thai, với những điều không lường trước được.

(b) Phần này sẽ không áp dụng cho bất kỳ người nào thực hiện một hành vi dẫn đến cái chết của thai nhi nếu bất kỳ điều nào sau đây được áp dụng:

(1) Đạo luật này tuân thủ Đạo luật phá thai trị liệu, Điều 2 (bắt đầu với Mục 123400) của Chương 2, Phần 2 của Mục 106 của Bộ luật An toàn và Sức khỏe.

(2) Hành động được thực hiện bởi người giữ giấy chứng nhận của bác sĩ và bác sĩ phẫu thuật, như được định nghĩa trong Bộ luật kinh doanh và nghề nghiệp, trong trường hợp, đối với một sự chắc chắn về mặt y tế, kết quả của việc sinh con sẽ là cái chết của mẹ của thai nhi hoặc trong đó cái chết của cô sau khi sinh con, mặc dù không chắc chắn về mặt y tế, nhưng về cơ bản chắc chắn hoặc nhiều khả năng hơn là không.

(3) Hành động này đã được mẹ của thai nhi chào mời, giúp đỡ, bỏ qua hoặc đồng ý.

(c) Phân khu (b) sẽ không được hiểu là cấm truy tố bất kỳ người nào theo bất kỳ quy định nào khác của pháp luật.

Điều này có thể được thể hiện dưới dạng một tập hợp logic boolean đơn giản.

IF !victim.isAlive
   AND victim.species == HUMAN
   AND defendant.hasKilled( victim )
   AND defendant.hadMaliceForethought
   AND !(     victim.age < 0 
          AND wasTherapeuticAbortion 
          AND defendant.profession == DOCTOR 
          AND ( victim.survivalChance == 0 OR victim.mom.survivalChance < 0.5 )
          AND victim.mom.wantedAbortion )
THEN defendant.moveTo(PRISON)

Bây giờ tất nhiên có rất nhiều thứ tôi tầm thường ở đây, như "điều gì là ác ý", "phá thai điều trị là gì" và "làm thế nào để bạn xác định cơ hội sống sót của thai kỳ". Nhưng những điều này cũng có thể được thể hiện dưới dạng cây quyết định boolean tương tự.

Từ quan điểm công nghệ phần mềm, hệ thống pháp lý có thể được coi là một dạng của Công cụ quy tắc kinh doanh với luật là quy tắc của nó.

Điều đó có nghĩa là hầu hết các luật có độ phức tạp tính toán c. Nếu bạn cũng tính đến quá trình kiểm tra bằng chứng được yêu cầu để xác định các giá trị của tất cả các biến boolean này, thì độ phức tạp sẽ trở thành nnơi mà nlượng bằng chứng cần được đánh giá.

Tuy nhiên, đôi khi các luật bao gồm ngôn ngữ hoàn toàn không thể quyết định được và đòi hỏi một lời tiên tri bên ngoài. Ví dụ, khi nó đề cập đến các khái niệm như "nghi ngờ hợp lý". "Hợp lý" là gì? Đó là để một tòa án quyết định.


4
Điều này là tốt Ví dụ của bạn, tôi nghĩ rằng một số AND liên quan đến phá thai phải là OR - "bất kỳ điều nào sau đây". Ngoài ra tôi không thấy cơ hội sống sót của nạn nhân được đề cập ở đây.
Giô

1
+1, nhưng như Josiah ám chỉ, victim.survivalChance == 0 OR victim.mom.survivalChance < 0.5không phải là một cách giải thích đúng về luật pháp; luật đang nói victim.mom.survivalChance == 0 OR victim.mom.survivalChance > 0 AND victim.mom.survivalChance < 0.5, có thể được đơn giản hóa để chỉ victim.mom.survivalChance < 0.5.
ruakh

4
Chỉ là một nitpick: nếu bất kỳ điều nào sau đây áp dụng không dịch sang x AND y AND znhưng x OR y OR z.
Tomáš Zato

3
Nếu nó đơn giản như vậy, tại sao chúng ta có thẩm phán? Tại sao chúng ta quan tâm rất nhiều họ là ai? Tại sao chúng ta có luật học? Tại sao có nhiều vụ kiện gây tranh cãi ở tòa án? Rõ ràng, pháp luật không đơn giản như bạn làm. Nghi ngờ hợp lý là một ví dụ tốt về một phần có vấn đề (xảy ra khá thường xuyên), một phần khác sẽ được xây dựng một tường thuật từ một bộ bằng chứng tùy tiện hoặc thậm chí quyết định về thời hạn của án tù.
11684

1
Nó thậm chí còn tồi tệ hơn. Không chỉ ngôn ngữ pháp lý có thể bao gồm ngôn ngữ tùy ý. Nó cũng không thể bao gồm các giả định ngầm. Vì vậy, về lý thuyết nó có thể phức tạp vô cùng. Ngoài ra ngôn ngữ của con người rất phức tạp và tiềm ẩn, đến mức bạn có thể hỏi định nghĩa của bất kỳ từ nào trong bất kỳ câu nào, khiến ai đó phải giải thích nó. Điều này cũng có thể đi mãi mãi. Nói cách khác, giao tiếp và bất cứ điều gì được thể hiện trong giao tiếp, thậm chí không được đảm bảo có ý nghĩa, được xác định rõ hoặc bao giờ chấm dứt, khi được thực hiện.
Hy vọng hữu ích

95

Điều đó là không thể giải quyết được vì một cuốn sách luật có thể bao gồm logic tùy ý. Một ví dụ kiểm duyệt luật ngớ ngẩn sẽ là "bất hợp pháp khi công khai bất kỳ chương trình máy tính nào không dừng lại".

Lý do kết quả cho MTG tồn tại và thú vị là bởi vì nó có một bộ quy tắc rõ ràng (hầu hết) cố định, không giống như luật luôn thay đổi, cục bộ khủng khiếp và mơ hồ vô tận.


1
Bình luận không dành cho thảo luận mở rộng; cuộc trò chuyện này đã được chuyển sang trò chuyện .
DW

Thông báo của người điều hành (một lần nữa): ý kiến ​​không dành cho thảo luận mở rộng. Nếu bạn muốn thảo luận về câu trả lời này, hãy sử dụng phòng chat . Bất kỳ bình luận nào được đăng khi phòng chat tồn tại có thể bị xóa hoàn toàn.
Gilles 'SO- ngừng trở nên xấu xa'

3
Nó có thể còn tồi tệ hơn không thể giải quyết được, có nghĩa là không được xác định đúng hoặc tự mâu thuẫn. Hãy nhớ đến Indiana Pi Bill
Hendrik ngày 1

10

Đây là một câu hỏi rất thú vị.

Luật nằm ở đâu đó giữa ngôn ngữ hàng ngày với các quy tắc tùy tiện, liên tục thay đổi và thường mềm mại và ngôn ngữ lập trình với các quy tắc được xác định, rất cụ thể.

Legalese thực sự định nghĩa các thuật ngữ của nó và do đó nhiều từ (nhưng không phải tất cả!) Được sử dụng trong luật thực sự có ý nghĩa chính xác.

Tuy nhiên, giải thích là cách tiếp cận của bạn trong việc trình bày một trường hợp cho một hệ thống logic và nhận được kết quả sẽ thất bại. Luật là một định nghĩa chung cần được điều chỉnh cho trường hợp cụ thể được đề cập. Thường thì đây là một quá trình tầm thường, đơn giản, nhưng không có gì đảm bảo rằng nó là và không có cách nào không tầm thường để xác định ranh giới.

Một ví dụ điển hình là tự vệ. Trong hầu hết các hệ thống luật pháp, bạn có thể làm tổn thương một cách hợp pháp một người khác với điều kiện bạn đang hành động tự vệ. Tuy nhiên, từ ngữ rõ ràng là bối cảnh nhạy cảm. Ví dụ, luật hình sự người Anh viết:

Một người có thể sử dụng vũ lực như vậy là hợp lý trong các trường hợp trong phòng ngừa tội phạm [...]

Trường hợp pháp luật xác định những gì là "hợp lý" trong các trường hợp cụ thể , nhưng không có định nghĩa chung là trên các cuốn sách. Ngoài ra còn có luật án lệ làm rõ chính xác "phòng ngừa tội phạm" nghĩa là gì. Vì theo định nghĩa, tội phạm chưa xảy ra, ít hơn một tòa án đã quyết định rằng trên thực tế, đó là một tội ác, niềm tin hợp lý là đủ trong trường hợp cụ thể này, nhưng thực tế đó không được ghi trong luật!

Để tạo ra một người ra quyết định kỹ thuật số về luật, bạn sẽ phải cung cấp cho nó không chỉ bản thân luật mà còn tất cả các án lệ, rất nhiều hiểu biết ngôn ngữ tự nhiên và rất nhiều quy tắc về cách áp dụng tất cả kiến ​​thức đó, bởi vì đôi khi luật án lệ là vững chắc, đôi khi bạn có thể bẻ cong nó (đặc biệt nếu nó đã cũ, vì những diễn giải thay đổi theo thời gian).

Và cuối cùng, luật thay đổi và thích nghi, không chỉ trong cuốn sách, mà còn trong những diễn giải của nó. Có nhiều ví dụ nổi tiếng về các tòa án cao nhất áp đảo quyết định 20 năm của chính họ. Rất thường xuyên, những thách thức như vậy đối với luật án lệ trước đó xảy ra chính xác bởi vì một thẩm phán đã quyết định chống lại những luật được thiết lập đó và anh ta thà chấp nhận rủi ro bị áp đảo tại tòa án cao hơn là đưa ra quyết định mà anh ta không đứng sau. Tôi tự hỏi làm thế nào bạn sẽ mô hình hóa khả năng này trong một hệ thống hoàn chỉnh NP?

Để tính toán độ phức tạp của một hệ thống đòi hỏi chúng ta phải hiểu đầu vào và đầu ra. Luật pháp, tuy nhiên, là một hệ thống mở. Nghĩa đen là bất cứ điều gì trong môi trường của nó có thể ảnh hưởng đến nó, đặc biệt là những thay đổi về xã hội và văn hóa. Hầu hết các quốc gia đều có luật về những cuốn sách hiếm khi được áp dụng nữa vì xã hội đã thay đổi, nhưng quá trình xây dựng luật bị tụt lại phía sau. Luật chống lại đồng tính luyến ái là một ví dụ hiện tại. Hoặc bản án tử hình, mà ở hầu hết các quốc gia đã không thực sự được áp dụng trong nhiều năm hoặc nhiều thập kỷ trước khi nó bị xóa khỏi sách luật. Và không phải vì không có trường hợp nào nó có thể được áp dụng, mà đơn giản là vì các thẩm phán đã không áp dụng nó mặc dù có sự lựa chọn.

Các yếu tố môi trường này làm cho một ước tính phức tạp gần như không thể, bởi vì chúng ta không thể liệt kê chúng trong một danh sách hữu hạn trừ khi chúng ta sử dụng tất cả các lượng tử (ví dụ: "mọi loại ..." hoặc "tất cả ...")


8

Tính đầy đủ của NP, như với các lớp phức tạp khác, có liên quan đến các vấn đề có đầu vào có kích thước khác nhau, có kích thước mà chúng ta biểu thị bằng n . Đặc biệt:

  • Một vấn đề là NP nếu có thể xác định liệu bất kỳ giải pháp được đề xuất nào thực sự là một giải pháp với đa thức thời gian chạy trong n .

  • Một vấn đề là NP-đầy đủ nếu nó là NP và hơn nữa mọi vấn đề NP có thể được giảm xuống bằng một quá trình giảm với đa thức thời gian chạy trong n .

Trong vấn đề bạn đề xuất, cụ thể là

Đưa ra cuốn sách luật này và tập hợp các tình tiết đặc biệt này, bị cáo có phạm tội không?

Tôi không chắc n có nghĩa là gì. Có vẻ như đầu vào ở đây là "tập hợp các tình huống" và tên của bị đơn. Chỉ có cái trước có thể có độ dài khác nhau, nhưng sau đó chúng ta thậm chí còn có ý nghĩa gì với "tập hợp hoàn cảnh"? Có phải chúng ta chỉ cho ăn một số lượng tùy ý các sự kiện tùy tiện như "bị cáo sở hữu tất màu tím" và "thẩm phán đã có một chiếc bánh sandwich cho bữa trưa ngày hôm nay" hay sao? Hơn nữa, có những hạn chế về những trường hợp này, hoặc chúng ta có thể nuôi trong một "hoàn cảnh" như "thợ cắt tóc Seville cạo chính xác những thợ cắt tóc không tự cạo râu" không?

Tôi không nghĩ rằng câu hỏi này được đặt ra tốt, tôi cũng không thấy bất kỳ cách rõ ràng nào để làm cho nó được đặt ra.


Trước phiên tòa, hệ thống tư pháp tiến hành điều tra sơ bộ (không chắc đó có phải là từ tiếng Anh đúng không) trong đó tất cả các trường hợp liên quan được thu thập. Quy mô của các tài liệu thu thập các tình tiết này phụ thuộc vào mức độ phức tạp của tội phạm - đối với các trường hợp đơn giản chỉ vài chục trang và đối với các tài liệu phức tạp (ví dụ như chống độc quyền của Microsoft), hàng chục nghìn trang trở lên.
Bjorn Lindqvist

5

Tôi nghĩ rằng điều còn thiếu trong các câu trả lời xuất sắc cho đến nay là lý thuyết tính toán giả định dữ liệu đầu vào đã biết, chắc chắn, trong khi luật pháp đang hoạt động trong một lĩnh vực mà sự thật thường không chắc chắn và mờ nhạt. Luật hình sự, ví dụ, liên quan đến "ý định" hoặc "trạng thái tâm trí" của một bị cáo, điều không bao giờ có thể được biết một cách chắc chắn. Tòa án ly hôn phải quyết định liệu một cuộc hôn nhân có "đổ vỡ không thể cứu vãn" hay không. Không bao giờ có thể có một thuật toán để quyết định câu hỏi đó.


0

Trong khi một số câu trả lời nói rằng điều đó là không thể giải quyết được, tôi cho rằng đó không phải là luật dành cho, vì chúng không có hiệu lực.

Nếu nó bị hạn chế theo một số cách khiến nó luôn luôn có thể quyết định, thì có lẽ không có ý nghĩa gì khi nói về sự phức tạp thực sự. Đó là bởi vì các yếu tố đầu vào của luật như các chức năng thường không phải là định nghĩa về các sự kiện trong luật, như trong một trò chơi bài, nhưng bằng chứng về các sự kiện có hợp pháp hay không.

Có thể có nhiều bằng chứng về một sự kiện. Đối với một sự kiện, không có độ dài đầu vào khách quan để có thể xác định độ phức tạp. Và đối với một tập hợp bằng chứng nhất định, trong khi có độ dài đầu vào, luật thường không quy định rằng ai đó phải có kết luận chắc chắn. Họ có thể, và thường thích thử thu thập thêm bằng chứng ngay cả khi câu trả lời có thể được suy luận một cách logic về mặt lý thuyết một cách khó khăn. Và một nghi phạm có thể thừa nhận điều gì đó một cách khó hiểu để tăng cường sự phức tạp một cách nhân tạo nếu người ta phải làm việc mà không có bằng chứng.

Sẽ có nhiều vấn đề hơn nếu mật mã có liên quan. Về mặt lý thuyết, họ có thể đảo ngược thuật toán mã hóa mạnh nếu họ có thể tính toán rất lâu, nhưng họ có thể phá vỡ sự tin cậy của thuật toán chữ ký để làm cho nó không thể sử dụng làm bằng chứng cùng một lúc.


0

Các thành viên bồi thẩm đoàn cuối cùng đưa ra các phán quyết dựa trên luật áp dụng được đưa ra bởi các thẩm phán để bồi thẩm đoàn tuân theo và các sự kiện được xác định bởi bồi thẩm đoàn bằng cách sử dụng các yếu tố trong hướng dẫn của bồi thẩm đoàn. Đặc biệt là sự tín nhiệm của các nhân chứng ... ai tin. Không thể rút gọn thành một thuật toán.


Đây có vẻ là một anwer khá triết học, trái ngược với khoa học máy tính. Điều đó không làm cho nó sai, nhưng có lẽ không hữu ích cho một câu hỏi được hỏi trên trang web này .
Raphael

Phụ thuộc vào việc cs xem xét sự thật cơ bản của một ứng dụng và liệu nó có khả thi hay không. Hiện tại, bất kỳ cuộc thảo luận nào mà không bao gồm các điểm tiếp xúc AI dường như không được thực hiện. Nhưng đó là từ một thử nghiệm hơn 35 năm và không phải là một bậc thầy cs.
Tom Whitaker Jr

1
Câu trả lời này là một lời nhắc nhở tốt đẹp về khả năng tính toán hoặc tính quyết định của cs từ thực tiễn của pháp luật.
Apass.Jack

@TomWhitakerJr Quan điểm của tôi, với mục đích duy trì phạm vi của trang web này, là trong khi áp dụng các kỹ thuật CS nên bị ràng buộc bởi các cân nhắc về đạo đức / triết học, nghiên cứu về các kỹ thuật đó thì không. Tôi hoàn toàn biết rằng các cuộc thảo luận dài nằm ở đó, nhưng tôi đơn giản không thấy làm thế nào chúng ta có thể làm cho trang web này hoạt động tốt như nhau cho các câu hỏi về kỹ thuật đạo đức / triết học. Vì vậy, trong khi tôi hoàn toàn đồng ý rằng các cuộc thảo luận như cách sử dụng AI phải được tổ chức ở đâu đó, tôi không nghĩ trang web này là nơi dành cho nó.
Raphael
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.