La législation est-elle complète?

64

J'aimerais savoir s'il y a eu des travaux reliant le code juridique à la complexité. En particulier, supposons que nous ayons le problème de décision "Compte tenu de ce recueil de lois et de ce cas particulier, le défendeur est-il coupable?" À quelle classe de complexité appartient-il?

Il y a des résultats qui ont prouvé que le jeu de cartes Magic: the Gathering est à la fois NP et Turing-complete. Des résultats similaires ne devraient-ils pas exister pour le code légal?

Björn Lindqvist
la source
18
Votre affirmation à propos de MtG ne peut pas être correcte, car il existe des problèmes décidables qui ne sont pas dans NP . Donc, je suppose que vous voulez dire qu'une partie du jeu est NP -complète, et une autre partie est Turing-complete.
David Richerby
8
Un de mes professeurs a publié quelques ouvrages sur l'analyse formelle de la législation, comme ceci , ceci et cela . Je ne pense pas que ce soit tout à fait ce que vous demandez, mais juste au cas où vous le jugeriez pertinent.
Jdehesa
1
La classe de complexité appelée "les avocats sont capables d'une complexité infinie". ;) Si vous souhaitez analyser formellement une structure abstraite définie de façon arbitraire et conçue pour rapprocher les codes du droit de manière spécifique, cette analyse formelle peut être possible. Cependant, il est important de reconnaître qu'il ne sera pas lié d'une façon significative à réels affaires judiciaires et le réel système de justice, même dans un monde idéalisé. Les questions d' intention, et une grande partie des affaires judiciaires établit actuellement les circonstances sont en premier lieu.
Wildcard
9
Tout dépend si le temps de calcul est facturable ou non.
Matt Timmermans
1
Une référence rapide sur la complexité de MtG pourrait être un Chatterjee & Ibsen-Jensen, 1998 . Il y a sûrement d'autres articles sur le sujet.
Dmitri Chubarov

Réponses:

33

Les lois peuvent inclure un langage arbitraire, et un langage arbitraire est capable d'exprimer une logique NP-complète. Donc, en théorie, il serait possible de créer une loi NP-complète ou même indécidable. Cependant, dans la pratique, la grande majorité des lois pénales sont de simples arbres de décision.

Prenons, par exemple, l' article 187 a) du code pénal de Californie ("Premier degré de meurtre").

(a) Le meurtre est le meurtre illégal d'un être humain, ou d'un fœtus, avec malveillance.

b) Le présent article ne s'applique pas aux personnes qui commettent un acte entraînant la mort du fœtus si l'une des situations suivantes s'applique:

(1) L’acte était conforme à l’article 2 de la loi sur l’avortement thérapeutique (commençant par la section 123400) du chapitre 2 de la partie 2 de la division 106 du Code de sécurité et de santé.

(2) L’acte a été commis par le titulaire d’un certificat de médecin et de chirurgien, au sens du code de commerce et des professions, dans le cas où, à la certitude médicale, le résultat de l’accouchement serait le décès de la mère du fœtus ou son décès après l'accouchement, bien que non médicalement certain, serait substantiellement certain ou plus probable qu'autrement.

(3) L'acte a été sollicité, aidé, encouragé ou consenti par la mère du fœtus.

c) L'alinéa b) ne doit pas être interprété comme interdisant la poursuite de toute personne en vertu d'une autre disposition de la loi.

Ceci peut être exprimé comme un simple ensemble de logique booléenne.

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)

Maintenant, il y a bien sûr beaucoup de choses que je banalise ici, comme "qu'est-ce que la malice est prévu", "qu'est-ce qu'un avortement thérapeutique" et "comment déterminez-vous les chances de survie d'une grossesse"? Mais ceux-ci peuvent également être exprimés sous forme d'arbres de décision booléens similaires.

Du point de vue de l’ingénierie logicielle, le système juridique peut être considéré comme une forme de moteur de règles métier dont la loi constitue le jeu de règles.

Cela signifie que la plupart des lois ont une complexité de calcul de c. Si vous prenez également en compte le processus d'examen des éléments probants nécessaire pour déterminer les valeurs de toutes ces variables booléennes, la complexité devient nalors nla quantité d'éléments probants à évaluer.

Cependant, les lois incluent parfois un langage qui n'est pas décidable et qui requiert un oracle externe. Par exemple, quand il mentionne des concepts tels que "doute raisonnable". Qu'est-ce qui est "raisonnable"? C'est à un tribunal de décider.

Philipp
la source
4
C'est bon. Pour votre exemple, je pense que certains des ET liés à l'avortement devraient être des OR - "l'un des suivants". Aussi, je ne vois pas la chance de survie de la victime mentionnée ici.
Josiah
1
+1, mais comme le dit Josias, victim.survivalChance == 0 OR victim.mom.survivalChance < 0.5n’est pas une interprétation correcte de la loi; la loi dit victim.mom.survivalChance == 0 OR victim.mom.survivalChance > 0 AND victim.mom.survivalChance < 0.5, ce qui peut être simplifié au plus juste victim.mom.survivalChance < 0.5.
Ruakh
4
Juste un nitpick: si l’un des cas suivants ne s’applique pas x AND y AND zmais x OR y OR z.
Tomáš Zato
3
Si c'était aussi simple, pourquoi avons-nous des juges? Pourquoi nous soucions-nous tant de qui ils sont? Pourquoi avons-nous de la jurisprudence? Pourquoi y a-t-il tant de procès controversés? De toute évidence, la loi n’est pas aussi simple que vous le prétendez. Le doute raisonnable est un bon exemple d'une partie problématique (qui se produit assez fréquemment), un autre serait de construire un récit à partir d'un ensemble de preuves arbitraires ou même de décider de la durée d'une peine d'emprisonnement.
11684
1
C'est encore pire. Non seulement le langage juridique peut inclure un langage arbitraire. Il ne peut pas non plus inclure d’hypothèses implicites. Cela peut donc être théoriquement infiniment complexe. De plus, le langage humain est si complexe et implicite que vous pouvez demander la définition de n'importe quel mot dans n'importe quelle phrase, ce qui incitera quelqu'un à l'expliquer. Cela peut aussi durer éternellement. En d’autres termes, la communication et tout ce qui s’exprime en communication n’ont même pas la garantie de donner un sens, d’être bien définis ou de se terminer, lorsqu’ils sont exécutés.
Espérons-
95

C'est indécidable, car un livre de droit peut inclure une logique arbitraire. Un exemple ridicule de loi sur la censure serait "il est illégal de faire connaître tout programme d'ordinateur qui ne s'arrête pas".

Les raisons pour lesquelles MTG existe et sont intéressantes parce qu’elle a un ensemble fixe unique de règles (pour la plupart) non ambiguës, contrairement à une loi en constante évolution, horriblement localisée et sans cesse ambiguë.

orlp
la source
1
Les commentaires ne sont pas pour une discussion prolongée; cette conversation a été déplacée pour discuter .
DW
Avis du modérateur (encore): les commentaires ne sont pas destinés à une discussion approfondie. Si vous souhaitez discuter de cette réponse, utilisez la salle de discussion . Tout commentaire posté une fois qu'un salon de discussion existe peut être supprimé de manière sommaire.
Gilles 'SO- arrête d'être méchant'
3
Cela pourrait même être pire qu'indécidable, c'est-à-dire mal défini ou contradictoire. Souvenez-vous de l' Indiana Pi Bill
Hendrik
10

C'est une question très intéressante.

Le droit se situe quelque part entre le langage de tous les jours avec ses règles arbitraires, en constante évolution et souvent souples, et le langage de programmation avec ses règles très spécifiques et définies.

Le jargon juridique définit effectivement ses termes et ainsi, de nombreux mots (mais pas tous!) Utilisés dans la loi ont effectivement une signification précise.

Cependant, l' interprétation est celle où votre approche consistant à présenter un cas à un système logique et à obtenir un résultat échouera. La loi est une définition générique qui doit être adaptée au cas spécifique en question. Il s'agit souvent d'un processus simple et direct, mais rien ne garantit qu'il en soit ainsi, ni aucun moyen non trivial de définir la limite.

La légitime défense est un bon exemple. Dans la plupart des systèmes juridiques, vous pouvez légalement blesser une autre personne à condition que vous agissiez en état de légitime défense. Cependant, la formulation est explicitement contextuelle. Par exemple, le droit pénal britannique écrit:

Une personne peut avoir recours à la force raisonnable dans les circonstances pour prévenir un crime [...]

La jurisprudence définit ce qui est "raisonnable" dans des cas spécifiques , mais aucune définition générale ne figure dans les livres. Il existe également une jurisprudence qui clarifie ce que signifie exactement "prévention du crime". Comme par définition, aucun crime n’a encore été commis, et encore moins un tribunal ayant décidé que l’action était, en fait, un crime, une conviction raisonnable est suffisante dans ce cas particulier, mais cela n’est pas écrit dans la loi!

Pour créer un décideur numérique sur la loi, vous devez l’alimenter non seulement de la loi elle-même, mais aussi de toute la jurisprudence, de beaucoup de compréhension du langage naturel et de beaucoup de règles sur la manière d’ appliquer toutes ces connaissances, car parfois la jurisprudence est solide, parfois vous pouvez la plier (surtout si elle est ancienne, car les interprétations changent avec le temps).

Enfin, la loi change et s’adapte non seulement au livre, mais aussi à ses interprétations. Il existe de nombreux exemples célèbres de hautes instances judiciaires qui ont annulé leur propre décision, vieille de 20 ans. Très souvent, de telles contestations de la jurisprudence antérieure se produisent précisément parce qu'un juge a décidé de s'opposer à ces lois établies et il préfère prendre le risque d'être rejeté par une juridiction supérieure plutôt que de rendre une décision à laquelle il ne souscrit pas. Je me demande comment vous modéliseriez cette capacité dans un système NP-complet?

Pour calculer la complexité d'un système, nous devons comprendre les entrées et les sorties. La loi, cependant, est un système ouvert. Littéralement, tout dans son environnement peut l’influencer, en particulier les changements survenus dans la société et la culture. La plupart des pays ont des lois sur les livres qui sont rarement appliquées parce que la société a changé, mais le processus législatif est à la traîne. Les lois contre l'homosexualité en sont un exemple actuel. Ou encore la peine de mort, qui dans la plupart des pays n'avait pas été appliquée depuis des années, voire des décennies, avant d'être retirée du livre de loi. Et non pas parce qu'il n'y avait aucun cas d'application possible, mais simplement parce que les juges ne l'avaient pas appliqué malgré le choix.

Ces facteurs environnementaux rendent une estimation de la complexité presque impossible, car nous ne pouvons les énumérer dans une liste finie que si nous utilisons tous les quanteurs (par exemple, "tous les types de ..." ou "tous les ...").

À M
la source
8

La NP-complétude, comme avec d'autres classes de complexité, concerne des problèmes qui prennent une entrée de taille variable, dont nous désignons la taille par n . En particulier:

  • Un problème est NP s'il est possible de déterminer si une solution proposée est réellement une solution avec un polynôme d'exécution en n .

  • Un problème est NP-complet s'il s'agit de NP et, de plus, chaque problème de NP peut être réduit à celui-ci par un processus de réduction avec polynôme d'exécution en n .

Dans le problème que vous proposez, à savoir

Compte tenu de ce recueil de lois et de ces circonstances particulières, le défendeur est-il coupable?

Je ne sais pas ce que n est censé être. Il semble que les entrées ici sont "l'ensemble des circonstances" et le nom du défendeur. Seuls les premiers peuvent être de longueurs variables, mais qu'entendons-nous même par «ensemble de circonstances»? Devons-nous simplement nourrir un nombre arbitraire de faits arbitraires tels que "le défendeur a des chaussettes violettes" et "le juge a mangé un sandwich pour le déjeuner de ce jour" ou quoi? De plus, y a-t-il des contraintes sur ces circonstances, ou pouvons-nous nous nourrir dans une "circonstance" comme "le barbier de Séville rase précisément ces barbiers qui ne se rasent pas"?

Je ne pense pas que cette question soit bien posée, je ne vois pas non plus de manière évidente de la faire.

Daniel McLaury
la source
Avant le procès, le système judiciaire mène une enquête préliminaire (il n'est pas sûr que ce soit le mot anglais qui convient) dans laquelle toutes les circonstances pertinentes sont réunies. La taille des documents rassemblant ces circonstances dépend de la complexité du crime - pour des affaires simples, quelques dizaines de pages seulement et pour des affaires complexes (par exemple, Microsoft antitrust), des dizaines de milliers de pages ou plus.
Björn Lindqvist
5

Je pense que ce qui manque dans les excellentes réponses jusqu’à présent, c’est que la théorie du calcul suppose des données d’entrée connues, certaines données, alors que la législation opère dans un domaine où les faits sont généralement incertains et flous. Le droit pénal, par exemple, se préoccupe de "l'intention" ou de "l'état d'esprit" d'un accusé, ce qui ne peut jamais être connu avec certitude. Les tribunaux de divorce doivent décider si un mariage est "irrémédiablement brisé". Il ne peut jamais y avoir d'algorithme pour décider de cette question.

Michael Kay
la source
0

Bien que certaines réponses disent que c'est indécidable, je suppose que ce n'est pas à quoi servent les lois, car elles ne sont pas applicables.

Si certaines restrictions le rendent toujours décidable, il n’a probablement aucun sens à parler de la complexité réelle. C'est parce que les entrées de lois en tant que fonctions ne sont généralement pas les définitions d'événements de la loi, comme dans un jeu de cartes, mais la preuve que les événements sont légaux ou non.

Il pourrait y avoir arbitrairement beaucoup de preuves sur un seul événement. Pour un événement, il n'y a pas de longueur d'entrée objective permettant de définir la complexité. Et pour un ensemble de preuves donné, bien qu'il y ait une longueur d'entrée, les lois ne spécifient généralement pas que quelqu'un doit avoir une conclusion définitive. Ils pourraient, et préfèrent généralement essayer de collecter plus de preuves, même si la réponse pouvait théoriquement être déduite de manière logique. Et un suspect pourrait admettre quelque chose d'une manière déroutante de renforcer artificiellement la complexité si l'on doit travailler sans preuves.

Il y aurait plus de problèmes si la cryptographie est impliquée. Ils pourraient théoriquement inverser un algorithme de cryptage fort s’ils pouvaient calculer très longtemps, mais ils risquaient de briser la confiance d’un algorithme de signature pour le rendre non utilisable comme preuve au même moment.

utilisateur23013
la source
0

Les membres du jury rendent en définitive les verdicts fondés sur le droit applicable donné par les juges au jury à suivre et sur les faits déterminés par le jury à l'aide des facteurs énoncés dans les instructions du jury. Surtout la crédibilité des témoins ... à qui croire. Non réductible à un algorithme.

Tom Whitaker Jr
la source
Cela semble être une réponse plutôt philosophique, par opposition à une informatique. Cela ne le rend pas faux, mais probablement pas utile pour une question posée sur ce site.
Raphaël
Cela dépend si cs considère la vérité sur le terrain d'une application et si c'est faisable ou non. Pour le moment, toute discussion sans inclusion de points de contact pour l'IA semble hors de propos. Mais c'est à partir d'un procès de plus de 35 ans et non d'un gourou cs.
Tom Whitaker Jr
1
Cette réponse est un bon rappel de la distance entre la théorie de la calculabilité et de la décidabilité et la pratique du droit.
Apass.Jack
@TomWhitakerJr Mon point de vue, dans le but de maintenir la portée de ce site, est que si l' application de techniques de CS doit être liée à des considérations éthiques / philosophiques, l'étude de ces techniques ne l'est pas. Je suis pleinement conscient que de longues discussions sont au rendez-vous, mais je ne vois tout simplement pas comment nous pouvons faire en sorte que ce site fonctionne aussi bien pour des questions techniques et éthiques / philosophiques. Donc, même si je suis tout à fait d’accord pour dire que les discussions sur l’utilisation de l’IA doivent être quelque part, je ne pense pas que ce site soit le lieu idéal.
Raphaël