Ich würde gerne wissen, ob es eine Arbeit gab, die den Rechtskodex mit der Komplexität in Verbindung bringt. Nehmen wir insbesondere an, wir haben das Entscheidungsproblem "Ist der Angeklagte angesichts dieses Gesetzes und dieser besonderen Umstände schuldig?" Zu welcher Komplexitätsklasse gehört es?
Es gibt Ergebnisse, die bewiesen haben, dass das Kartenspiel Magic: the Gathering sowohl NP- als auch Turing-vollständig ist. Sollten also keine ähnlichen Ergebnisse für das Gesetz existieren?
complexity-theory
np-complete
decision-problem
Björn Lindqvist
quelle
quelle
Antworten:
Gesetze können eine beliebige Sprache enthalten, und eine beliebige Sprache kann NP-vollständige Logik ausdrücken. Theoretisch wäre es also möglich, ein NP-vollständiges oder sogar ein unentscheidbares Gesetz zu schaffen. In der Praxis sind die meisten Strafgesetze jedoch einfache Entscheidungsbäume.
Nehmen wir zum Beispiel Abschnitt 187 (a) des kalifornischen Strafgesetzbuches ("First Degree Murder").
Dies kann als einfacher Satz von Boolescher Logik ausgedrückt werden.
Nun gibt es natürlich eine Menge, die ich hier trivialisiere, wie "Was ist böswillige Voraussicht?", "Was ist eine therapeutische Abtreibung?" Und "Wie bestimmen Sie die Überlebenschance einer Schwangerschaft?". Diese können aber auch als ähnliche boolesche Entscheidungsbäume ausgedrückt werden.
Aus Sicht der Softwareentwicklung kann das Rechtssystem als eine Form von Business Rule Engine angesehen werden, deren Regelsatz das Gesetz ist.
Das heißt, die meisten Gesetze haben eine rechnerische Komplexität von
c
. Berücksichtigen Sie auch den Prozess der Beweisprüfung, der zur Ermittlung der Werte aller dieser booleschen Variablen erforderlich ist, so wird die Komplexität zun
dem Punkt, an demn
die Menge der zu bewertenden Beweise liegt.Manchmal enthalten Gesetze jedoch eine Sprache, die überhaupt nicht bestimmbar ist und ein äußeres Orakel erfordert. Zum Beispiel, wenn Begriffe wie "vernünftiger Zweifel" erwähnt werden. Was ist "vernünftig"? Das muss ein Gericht entscheiden.
quelle
victim.survivalChance == 0 OR victim.mom.survivalChance < 0.5
ist keine korrekte Auslegung des Gesetzes; Das Gesetz sagtvictim.mom.survivalChance == 0 OR victim.mom.survivalChance > 0 AND victim.mom.survivalChance < 0.5
, was sich zu Recht vereinfachen lässtvictim.mom.survivalChance < 0.5
.x AND y AND z
butx OR y OR z
.Es ist nicht zu entscheiden, weil ein Gesetzbuch willkürliche Logik enthalten kann. Ein albernes Beispiel für ein Zensurgesetz wäre "Es ist illegal, ein Computerprogramm zu veröffentlichen, das nicht anhält".
Die Gründe, warum es Ergebnisse für MTG gibt und diese interessant sind, liegen darin, dass es einen einzigen festen Satz (meistens) eindeutiger Regeln gibt, im Gegensatz zu Gesetzen, die sich ständig ändern, fürchterlich lokalisiert und endlos mehrdeutig sind.
quelle
Das ist eine sehr interessante Frage.
Das Recht bewegt sich irgendwo zwischen der Alltagssprache mit ihren willkürlichen, sich ständig ändernden und oft weichen Regeln und der Programmiersprache mit ihren sehr spezifischen, definierten Regeln.
Legalese definiert tatsächlich seine Begriffe und daher haben viele im Gesetz verwendete Wörter (aber nicht alle!) Genaue Bedeutungen.
Bei der Interpretation schlägt jedoch Ihr Ansatz fehl, einen Fall einem logischen System zu präsentieren und ein Ergebnis zu erhalten. Das Gesetz ist eine allgemeine Definition, die an den jeweiligen Einzelfall angepasst werden muss. Oft ist dies ein trivialer, unkomplizierter Prozess, aber es gibt keine Garantie dafür und keine nicht-triviale Möglichkeit, die Grenze zu definieren.
Ein gutes Beispiel ist die Selbstverteidigung. In den meisten Rechtssystemen können Sie eine andere Person rechtmäßig verletzen, vorausgesetzt, Sie handeln in Notwehr. Der Wortlaut ist jedoch ausdrücklich kontextsensitiv. Zum Beispiel schreibt das britische Strafrecht:
In der Rechtsprechung wird definiert, was in bestimmten Fällen "angemessen" ist , aber es ist keine allgemeine Definition in den Büchern. Es gibt auch eine Rechtsprechung, die klarstellt, was genau "Prävention von Kriminalität" bedeutet. Da per definitionem noch kein Verbrechen begangen wurde, geschweige denn ein Gericht entschieden hat, dass die Klage tatsächlich ein Verbrechen ist, ist in diesem speziellen Fall ein angemessener Glaube ausreichend, der jedoch nicht tatsächlich gesetzlich verankert ist!
Um einen digitalen Entscheider über das Gesetz zu schaffen, müsste man nicht nur das Gesetz selbst, sondern auch die gesamte Rechtsprechung, viel natürliches Sprachverständnis und viele Regeln darüber, wie man all dieses Wissen anwendet , füttern, denn Manchmal ist die Rechtsprechung solide, manchmal kann man sie biegen (besonders wenn sie alt ist, da sich die Interpretationen im Laufe der Zeit ändern).
Und schließlich ändert und passt sich das Gesetz nicht nur im Buch, sondern auch in seinen Interpretationen an. Es gibt viele berühmte Beispiele höchster Gerichte, die ihre eigene 20-jährige Entscheidung außer Kraft setzen. Solche Anfechtungen der bisherigen Rechtsprechung treten sehr häufig auf, weil ein Richter entschieden hat, gegen diese geltenden Gesetze zu verstoßen, und er lieber das Risiko eingeht, vor einem höheren Gericht übergangen zu werden, als eine Entscheidung zu fällen, hinter der er nicht steht. Ich frage mich, wie Sie diese Fähigkeit in einem NP-vollständigen System modellieren würden.
Um die Komplexität eines Systems zu berechnen, müssen wir die Ein- und Ausgänge verstehen. Das Gesetz ist jedoch ein offenes System. Es kann buchstäblich alles in seiner Umgebung beeinflussen, insbesondere Veränderungen in Gesellschaft und Kultur. Die meisten Länder haben Gesetze in den Büchern, die kaum noch angewendet werden, weil sich die Gesellschaft verändert hat, aber der Gesetzgebungsprozess hinkt hinterher. Gesetze gegen Homosexualität sind ein aktuelles Beispiel. Oder das Todesurteil, das in den meisten Ländern jahrelang oder jahrzehntelang nicht angewendet worden war, bevor es aus den Gesetzen gestrichen wurde. Und nicht, weil es keine Fälle gab, in denen es hätte angewendet werden können, sondern einfach, weil die Richter es nicht angewendet haben, obwohl sie die Wahl hatten.
Diese Umgebungsfaktoren machen eine Abschätzung der Komplexität fast unmöglich, da wir sie nur dann in einer endlichen Liste aufzählen können, wenn wir alle Quantoren verwenden (z. B. "jede Art von ..." oder "alle ...").
quelle
NP-Vollständigkeit hat, wie bei anderen Komplexitätsklassen, mit Problemen zu tun, die eine Eingabe unterschiedlicher Größe erfordern, deren Größe wir mit n bezeichnen . Speziell:
Ein Problem ist NP, wenn festgestellt werden kann, ob eine vorgeschlagene Lösung tatsächlich eine Lösung mit Laufzeitpolynom in n ist .
Ein Problem ist NP-vollständig, wenn es NP ist, und darüber hinaus kann jedes NP-Problem durch einen Reduktionsprozess mit Laufzeitpolynom in n auf NP reduziert werden .
In dem Problem schlagen Sie nämlich vor
Ich bin mir nicht sicher, was n sein soll. Es scheint, als wären die Eingaben hier die "Menge der Umstände" und der Name des Angeklagten. Nur die ersteren könnten unterschiedlich lang sein, aber was meinen wir dann überhaupt mit den "Umständen"? Füttern wir nur eine willkürliche Anzahl willkürlicher Tatsachen wie "Der Angeklagte besitzt lila Socken" und "Der Richter hat heute Mittag ein Sandwich gegessen" oder was? Darüber hinaus gibt es Einschränkungen für diese Umstände, oder können wir in einem "Umstand" wie "der Barbier von Sevilla rasiert genau die Friseure, die sich nicht selbst rasieren"?
Ich denke nicht, dass diese Frage gut gestellt ist, und ich sehe auch keinen offensichtlichen Weg, sie gut zu stellen.
quelle
Ich denke, in den hervorragenden Antworten fehlt bisher, dass die Berechnungstheorie bekannte, bestimmte Eingabedaten voraussetzt, während die Gesetzgebung in einem Bereich tätig ist, in dem die Fakten normalerweise unsicher und verschwommen sind. Das Strafrecht zum Beispiel befasst sich mit der "Absicht" oder "Einstellung" eines Angeklagten, die niemals mit Sicherheit bekannt sein kann. Die Scheidungsgerichte müssen entscheiden, ob eine Ehe "unwiederbringlich gescheitert" ist. Es kann niemals einen Algorithmus geben, um diese Frage zu entscheiden.
quelle
Während einige Antworten sagen, dass es unentscheidbar ist, denke ich, dass es nicht das ist, wofür Gesetze sind, da sie nicht durchsetzbar sind.
Wenn es auf eine Weise eingeschränkt ist, die es immer entscheidbar macht, ist es wahrscheinlich nicht sinnvoll, über die tatsächliche Komplexität zu sprechen. Dies liegt daran, dass die Eingaben von Gesetzen als Funktionen im Allgemeinen nicht die Definition von Ereignissen im Gesetz sind, wie in einem Kartenspiel, sondern Beweise dafür, dass Ereignisse legal sind oder nicht.
Es könnte beliebig viele Beweise für ein einzelnes Ereignis geben. Für ein Ereignis gibt es keine objektive Eingabelänge, die es ermöglicht, die Komplexität zu definieren. Und für eine bestimmte Reihe von Beweisen schreiben die Gesetze normalerweise nicht vor, dass jemand eine eindeutige Schlussfolgerung ziehen muss, obwohl es eine Eingabelänge gibt. Sie könnten und bevorzugen es normalerweise, mehr Beweise zu sammeln, selbst wenn die Antwort theoretisch auf schwierige Weise logisch abgeleitet werden könnte. Und ein Verdächtiger könnte etwas auf rätselhafte Weise zugeben, um die Komplexität künstlich zu steigern, wenn man ohne Beweise arbeiten muss.
Es würde mehr Probleme geben, wenn Kryptographie involviert ist. Sie könnten theoretisch einen starken Verschlüsselungsalgorithmus umkehren, wenn sie sehr lange rechnen könnten, aber sie könnten das Vertrauen eines Signaturalgorithmus brechen, damit er nicht gleichzeitig als Beweismittel verwendet werden kann.
quelle
Die Jurymitglieder urteilen letztendlich auf der Grundlage des anwendbaren Rechts, das der Jury von den Richtern auferlegt wurde, und der Tatsachen, die von der Jury anhand der Faktoren in den Anweisungen der Jury ermittelt wurden. Besonders die Glaubwürdigkeit von Zeugen ... die man glaubt. Nicht auf einen Algorithmus reduzierbar.
quelle