Czy ustawodawstwo NP jest kompletne?


64

Chciałbym wiedzieć, czy były prace związane z kodeksem prawnym złożoności. W szczególności, przypuśćmy, że mamy problem decyzyjny „Czy biorąc pod uwagę tę książkę prawniczą i ten szczególny zestaw okoliczności, pozwany jest winny?” Do jakiej klasy złożoności należy?

Są wyniki, które dowiodły, że gra karciana Magic: the Gathering jest zarówno NP, jak i Turinga kompletna, więc czy nie powinny istnieć podobne wyniki dla legalnego kodu?


18
Twoje twierdzenie o MtG nie może być prawidłowe, ponieważ istnieją rozstrzygalne problemy, których nie ma w NP . Sądzę więc, że masz na myśli, że pewna część gry jest zakończona NP , a inna część jest ukończona przez Turinga.
David Richerby

8
Mój profesor opublikował kilka prac dotyczących formalnej analizy prawodawstwa, takich jak ten , ten i ten . Nie wydaje mi się, żebyś pytał dokładnie, ale na wypadek, gdybyś uznał to za istotne.
jdehesa

1
Klasa złożoności zwana „prawnikami jest zdolna do nieskończonej złożoności”. ;) Jeśli jesteś zainteresowany formalną analizą jakiejkolwiek arbitralnie zdefiniowanej struktury abstrakcyjnej, która została zaprojektowana w celu przybliżenia kodeksów prawa w określony sposób, ta formalna analiza może być możliwa. Należy jednak pamiętać, że nie będzie to miało żadnego znaczącego związku z faktycznymi sprawami sądowymi i rzeczywistym systemem wymiaru sprawiedliwości, nawet w wyidealizowanym świecie. Cel ma znaczenie, a duża część spraw sądowych przede wszystkim ustala, jakie okoliczności .
Wildcard

9
Zależy to całkowicie od tego, czy czas obliczeń jest rozliczany.
Matt Timmermans,

1
Krótkim odniesieniem do złożoności MtG może być Chatterjee i Ibsen-Jensen, 1998 . Na pewno są inne artykuły na ten temat.
Dmitrij Chubarow,

Odpowiedzi:


33

Prawa mogą zawierać dowolny język, a dowolny język może wyrażać logikę NP-zupełną. Teoretycznie możliwe byłoby stworzenie prawa NP-zupełnego lub nawet nierozstrzygalnego. Jednak w praktyce zdecydowana większość przepisów karnych to proste drzewa decyzyjne.

Weźmy na przykład rozdział 187 (a) kodeksu karnego w Kalifornii („Morderstwo pierwszego stopnia”).

(a) Morderstwo to bezprawne zabicie człowieka lub płodu z uprzedzeniem.

(b) Niniejsza sekcja nie ma zastosowania do osób, które dopuściły się czynu skutkującego śmiercią płodu, jeżeli zachodzi którakolwiek z poniższych sytuacji:

(1) Ustawa była zgodna z ustawą o aborcji terapeutycznej, art. 2 (począwszy od sekcji 123400) rozdziału 2 części 2 działu 106 kodeksu zdrowia i bezpieczeństwa.

(2) Czyn został popełniony przez posiadacza zaświadczenia lekarza i chirurga, zgodnie z definicją zawartą w Kodeksie działalności gospodarczej i zawodowej, w przypadku, gdy dla pewności medycznej wynikiem porodu byłaby śmierć matki płodu lub gdzie jej śmierć z porodu, choć nie medycznie pewna, byłaby zasadniczo pewna lub bardziej prawdopodobna niż nie.

(3) Matka została poproszona, poproszona, podżegana lub wyrażona na to zgodę.

(c) Poddział (b) nie będzie interpretowany jako zakazujący ścigania jakiejkolwiek osoby na podstawie jakiegokolwiek innego przepisu prawa.

Można to wyrazić jako prosty zestaw logiki logicznej.

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)

Teraz oczywiście trywializuję wiele rzeczy, takich jak „jaka jest złośliwość z góry”, „czym jest aborcja terapeutyczna” i „w jaki sposób określasz szansę przeżycia ciąży”. Ale można je również wyrazić jako podobne drzewka decyzyjne boolean.

Z punktu widzenia inżynierii oprogramowania system prawny może być postrzegany jako forma silnika reguł biznesowych, a jego prawem jest zestaw reguł.

Oznacza to, że większość praw ma złożoność obliczeniową c. Jeśli weźmiesz również pod uwagę proces badania dowodów, który jest wymagany do ustalenia wartości wszystkich tych zmiennych boolowskich, wówczas złożoność staje się ntam, gdzie njest ilość dowodów, które należy ocenić.

Czasami jednak przepisy zawierają język, który w ogóle nie podlega dyskusji i wymaga zewnętrznej wyroczni. Na przykład, gdy wspomina o pojęciach takich jak „uzasadniona wątpliwość”. Co to jest „rozsądne”? Do sądu należy decyzja.


4
To jest dobre. W twoim przykładzie myślę, że niektóre z AND związane z aborcją powinny być OR - „dowolne z poniższych”. Nie widzę tu także szansy na przetrwanie ofiary.
Josiah

1
+1, ale jak wspomina Jozjasz, victim.survivalChance == 0 OR victim.mom.survivalChance < 0.5nie jest poprawną interpretacją prawa; prawo mówi victim.mom.survivalChance == 0 OR victim.mom.survivalChance > 0 AND victim.mom.survivalChance < 0.5, co można uprościć do sprawiedliwego victim.mom.survivalChance < 0.5.
ruakh

4
Tylko nitpick: jeśli którykolwiek z poniższych warunków nie przekłada się na, x AND y AND zale x OR y OR z.
Tomáš Zato,

3
Gdyby to było takie proste, dlaczego mamy sędziów? Dlaczego tak bardzo zależy nam na tym, kim oni są? Dlaczego mamy orzecznictwo? Dlaczego jest tak wiele kontrowersyjnych spraw sądowych? Oczywiście prawo nie jest tak proste, jak się wydaje. Rozsądna wątpliwość jest dobrym przykładem problematycznej części (która zdarza się dość często), inna polegałaby na konstruowaniu narracji z dowolnego zestawu dowodów lub nawet decydowaniu o długości kary więzienia.
11684

1
Jest jeszcze gorzej. Język prawny może obejmować nie tylko język dowolny. Nie może również zawierać domniemanych założeń. Więc teoretycznie może być nieskończenie skomplikowany. Również ludzki język jest tak złożony i niejawny, że można zapytać o definicję dowolnego słowa w dowolnym zdaniu, zachęcając kogoś do jego wyjaśnienia. To może trwać wiecznie. Innymi słowy, komunikacja i wszystko, co wyraża się w komunikacji, nie ma nawet sensu, aby mieć sens, być dobrze zdefiniowanym lub kiedykolwiek zakończonym, gdy zostanie wykonana.
Mam nadzieję, że będzie

95

Jest to nierozstrzygalne, ponieważ książka prawnicza może zawierać dowolną logikę. Głupim przykładem ustawy o cenzurze byłoby „nagłaśnianie jakiegokolwiek programu komputerowego, który się nie zatrzymuje”.

Powodem, dla którego wyniki MTG istnieją i są interesujące, jest to, że ma jeden ustalony zestaw (głównie) jednoznacznych reguł, w przeciwieństwie do prawa, które się ciągle zmienia, jest strasznie zlokalizowane i nieskończenie niejednoznaczne.


1
Komentarze nie są przeznaczone do rozszerzonej dyskusji; ta rozmowa została przeniesiona do czatu .
DW

Ogłoszenie moderatora (ponownie): komentarze nie są przeznaczone do rozszerzonej dyskusji. Jeśli chcesz omówić tę odpowiedź, użyj pokoju . Jakikolwiek komentarz opublikowany po utworzeniu pokoju czatu może zostać ostatecznie usunięty.
Gilles

3
Może być nawet gorszy niż nierozstrzygalny, co oznacza, że ​​nie jest właściwie zdefiniowany lub wewnętrznie sprzeczny. Pamiętaj o ustawie
Hendrik,

10

To bardzo interesujące pytanie.

Prawo jest gdzieś pomiędzy językiem codziennym z jego arbitralnymi, ciągle zmieniającymi się i często miękkimi regułami, a językiem programowania z jego bardzo szczegółowymi, określonymi regułami.

Legalese faktycznie definiuje jego terminy, a zatem wiele słów (ale nie wszystkich!) Używanych w prawie ma rzeczywiście dokładne znaczenie.

Interpretacja polega jednak na tym, że podejście do przedstawienia sprawy logicznemu systemowi i uzyskania wyniku zakończy się niepowodzeniem. Prawo jest ogólną definicją, którą należy dostosować do konkretnego przypadku. Często jest to trywialny, prosty proces, ale nie ma gwarancji, że jest i nie jest trywialny sposób zdefiniowania granicy.

Dobrym przykładem jest samoobrona. W większości systemów prawnych możesz legalnie skrzywdzić inną osobę, pod warunkiem że działasz w obronie własnej. Jednak sformułowanie jest wyraźnie zależne od kontekstu. Na przykład brytyjskie prawo karne pisze:

Osoba może użyć takiej siły, jaka jest uzasadniona w okolicznościach w celu zapobiegania przestępczości [...]

Orzecznictwo określa, co jest „uzasadnione” w konkretnych przypadkach , ale nie ma ogólnej definicji w książkach. Istnieje również orzecznictwo wyjaśniające, co dokładnie oznacza „zapobieganie przestępczości”. Ponieważ z definicji przestępstwo jeszcze nie miało miejsca, a tym bardziej sąd, który uznał, że działanie było w rzeczywistości przestępstwem, w tym konkretnym przypadku wystarczy rozsądne przekonanie , ale tak naprawdę nie jest zapisane w prawie!

Aby stworzyć cyfrowy podmiot decyzyjny na temat prawa, musisz go karmić nie tylko samym prawem, ale także całym orzecznictwem, dużą ilością rozumienia języka naturalnego i mnóstwem zasad dotyczących stosowania całej tej wiedzy, ponieważ czasami orzecznictwo jest solidne, czasem można je nagiąć (szczególnie jeśli jest ono stare, ponieważ interpretacje zmieniają się z czasem).

I wreszcie prawo zmienia się i dostosowuje, nie tylko w książce, ale także w jej interpretacjach. Istnieje wiele znanych przykładów sądów najwyższych, które uchylały swoją 20-letnią decyzję. Bardzo często takie wyzwania w stosunku do poprzedniego orzecznictwa zdarzają się dokładnie dlatego, że sędzia postanowił postępować wbrew ustalonym przepisom i wolałby raczej zostać unieważniony przed sądem wyższej instancji niż wydać decyzję, za którą nie stoi. Zastanawiam się, jak byś modelował tę umiejętność w systemie NP-zupełnym?

Aby obliczyć złożoność systemu, musimy zrozumieć dane wejściowe i wyjściowe. Prawo jest jednak systemem otwartym. Dosłownie wszystko w jego otoczeniu może na nią wpływać, zwłaszcza zmiany w społeczeństwie i kulturze. W większości krajów obowiązują przepisy dotyczące książek, które są już rzadko stosowane, ponieważ zmieniło się społeczeństwo, ale proces stanowienia prawa jest opóźniony. Akty prawne przeciwko homoseksualizmowi stanowią aktualny przykład. Albo wyrok śmierci, który w większości krajów nie był stosowany przez lata lub dekady, zanim został usunięty z ksiąg prawniczych. I nie dlatego, że nie było przypadków, w których można by go zastosować, ale po prostu dlatego, że sędziowie nie zastosowali go pomimo wyboru.

Te czynniki środowiskowe sprawiają, że oszacowanie złożoności jest prawie niemożliwe, ponieważ nie możemy wyliczyć ich na skończonej liście, chyba że zastosujemy wszystkie kwantory (np. „Każdy rodzaj ...” lub „cały ...”)


8

NP-kompletność, podobnie jak w przypadku innych klas złożoności, ma związek z problemami, które przyjmują dane wejściowe o różnej wielkości, których rozmiar oznaczamy jako n . W szczególności:

  • Problemem jest NP, jeśli możliwe jest ustalenie, czy którekolwiek proponowane rozwiązanie jest faktycznie rozwiązaniem z wielomianem wykonawczym w n .

  • Problem jest NP-zupełny, jeśli jest NP, a ponadto każdy problem NP może zostać do niego zredukowany poprzez proces redukcji z wielomianem wykonawczym w n .

W zaproponowanym przez ciebie problemie, a mianowicie

Biorąc pod uwagę tę księgę prawa i ten szczególny zestaw okoliczności, czy oskarżony jest winny?

Nie jestem pewien, co ma oznaczać n . Wygląda na to, że dane wejściowe to „zestaw okoliczności” i nazwisko pozwanego. Tylko te pierwsze mogą mieć różną długość, ale co w takim razie rozumiemy przez „zestaw okoliczności”? Czy po prostu wprowadzamy dowolną liczbę arbitralnych faktów, takich jak „pozwany posiada fioletowe skarpetki” i „sędzia zjadł dziś kanapkę na lunch” czy co? Co więcej, czy istnieją ograniczenia w tych okolicznościach, czy też możemy karmić się „okolicznościami”, takimi jak „fryzjer z Sewilli goli dokładnie tych fryzjerów, którzy się nie golą”?

Nie sądzę, aby to pytanie było dobrze postawione, ani nie widzę żadnego oczywistego sposobu, aby uczynić je dobrze postawionym.


Przed procesem wymiar sprawiedliwości przeprowadza wstępne dochodzenie (nie jestem pewien, czy to właściwe słowo angielskie), w którym gromadzone są wszystkie istotne okoliczności. Rozmiar dokumentów zbierających te okoliczności zależy od złożoności przestępstwa - w prostych przypadkach tylko kilkadziesiąt stron, a dla skomplikowanych (np. Antymonopolista Microsoft), dziesiątki tysięcy stron lub więcej.
Björn Lindqvist,

5

Myślę, że brakuje dotychczas doskonałych odpowiedzi, że teoria obliczeń zakłada znane, pewne dane wejściowe, podczas gdy ustawodawstwo funkcjonuje w dziedzinie, w której fakty są zwykle niepewne i niejasne. Na przykład prawo karne dotyczy „intencji” lub „stanu umysłu” oskarżonego, którego nigdy nie można poznać z całą pewnością. Sądy rozwodowe muszą zdecydować, czy małżeństwo „bezpowrotnie się rozpadło”. Nigdy nie może istnieć algorytm decydujący o tym pytaniu.


0

Chociaż niektóre odpowiedzi mówią, że jest nierozstrzygalne, przypuszczam, że nie do tego służą prawa, ponieważ nie są one wykonalne.

Jeśli jest ograniczony w jakiś sposób, który sprawia, że ​​zawsze jest rozstrzygalny, prawdopodobnie nie ma sensu mówić o rzeczywistej złożoności. Jest tak dlatego, że dane wejściowe praw jako funkcji zasadniczo nie są definicjami zdarzeń w prawie, jak w grze karcianej, ale dowodem na to, że zdarzenia są legalne, czy nie.

Może istnieć wiele dowolnych dowodów na temat jednego zdarzenia. W przypadku zdarzenia nie ma obiektywnej długości wejściowej umożliwiającej zdefiniowanie złożoności. I dla danego zestawu dowodów, chociaż istnieje długość wejściowa, prawa zwykle nie określają, że ktoś musi mieć określony wniosek. Mogliby i zwykle wolą próbować zebrać więcej dowodów, nawet jeśli odpowiedź mogłaby być teoretycznie wydedukowana logicznie w trudny sposób. Podejrzany może przyznać się do czegoś w zagadkowy sposób, aby sztucznie zwiększyć złożoność, jeśli trzeba pracować bez dowodów.

Gdyby chodziło o kryptografię, pojawiłoby się więcej problemów. Mogliby teoretycznie odwrócić mocny algorytm szyfrowania, gdyby mogli obliczać bardzo długo, ale mogą złamać zaufanie algorytmu podpisu, aby uniemożliwić wykorzystanie go jako dowodu w tym samym czasie.


0

Członkowie jury ostatecznie wydają werdykt na podstawie obowiązującego prawa wydanego przez sędziów jury, którego należy przestrzegać, oraz faktów ustalonych przez jury z wykorzystaniem czynników zawartych w instrukcjach jury. Szczególnie wiarygodność świadków ... którzy wierzą. Nieredukowalny do algorytmu.


Wydaje się, że jest to raczej filozoficzna odpowiedź, w przeciwieństwie do informatyki. Nie jest to złe, ale prawdopodobnie nie jest pomocne w przypadku pytania zadanego na tej stronie.
Raphael

Zależy od tego, czy cs uważa podstawową prawdę aplikacji i czy jest to wykonalne, czy nie. W tej chwili wszelkie dyskusje bez uwzględnienia punktów stycznych AI wydają się zbędne. Ale to z ponad 35-letniego okresu próbnego, a nie guru cs.
Tom Whitaker Jr

1
Ta odpowiedź jest miłym przypomnieniem, jak daleko od obliczeń prawa leży obliczalność cs lub teoria rozstrzygalności.
Apass.Jack

@TomWhitakerJr Moim zdaniem, w celu utrzymania zakresu tej strony, stosowanie technik CS powinno wiązać się z względami etycznymi / filozoficznymi, ale badanie tych technik nie jest. Jestem w pełni świadomy długich dyskusji, ale po prostu nie widzę, jak sprawić, by ta strona działała równie dobrze w przypadku pytań technicznych i etycznych / filozoficznych. Chociaż w pełni zgadzam się, że dyskusje, takie jak sposób użycia sztucznej inteligencji, muszą gdzieś się odbywać, nie sądzę, aby ta strona była dla niego odpowiednim miejscem.
Raphael
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.