La preuve par contradiction peut-elle fonctionner sans la loi du milieu exclu?


19

Je pensais récemment à la validité de la preuve par contradiction. J'ai lu ces derniers jours des choses sur la logique intuitionniste et les théorèmes de Godel pour voir s'ils me fourniraient des réponses à mes questions. En ce moment, j'ai encore des questions en suspens (peut-être liées au nouveau matériel que j'ai lu) et j'espérais obtenir des réponses

( AVERTISSEMENT : vous êtes sur le point de lire du contenu avec des fondements très confus dans la logique, prenez tout avec un grain de sel, c'est supposé être une question et non une réponse, il y a beaucoup de malentendus).

Je pense que ma question principale est, une fois que nous avons montré que non A mène à une certaine contradiction, donc pas A doit être faux, alors nous allons conclure que A doit être vrai. Cette partie a du sens (surtout si j'accepte la loi du milieu exclu comme quelque chose de logique), mais ce qui me dérange, c'est en quelque sorte comment la preuve par contradiction se produit. D'abord, nous commençons par pas A, puis nous appliquons simplement des axiomes et des règles d'inférence (disons mécaniquement) et voyons où cela nous mène. Il atteint généralement une contradiction (disons que A est vrai ou et est vrai). Nous concluons que non A doit être faux, donc A est vrai. C'est très bien. Mais ma question est, quel genre de garanties les systèmes formels ont-ils¬φϕsi j'appliquais le même processus mais que je commençais par A, je n'y aurais pas non plus de contradiction ? Je pense qu'il y a une hypothèse cachée qui se passe dans la preuve par des contradictions que si de même le même processus dans A on n'atteindrait pas une contradiction , quelle sorte de garanties avons-nous qui ne se produirait pas? Y a-t-il une preuve impossible? En d'autres termes, si j'avais une Turning Machine (TM) (ou super TM) qui allait pour toujours, qui essayait toutes les étapes logiques de chaque axiome à partir de la supposée vraie affirmation , ce qui garantit qu'elle ne s'arrête PAS en raison de la découverte d'une contradiction ?A

J'ai ensuite fait des liens avec ma question passée avec le théorème d'incomplétude de Godel qui va quelque chose comme ceci:

Un système formel F qui exprime l'arithmétique ne peut pas prouver sa propre cohérence (dans F).

Cela m'a montré clairement que si c'est vrai, alors la cohérence, c'est-à-dire garantir que A et non A ne se produira pas, est impossible. Par conséquent, il a semblé que la preuve par contradiction suppose implicitement que la cohérence est garantie d'une manière ou d'une autre (sinon pourquoi irait-il de l'avant et conclurait que A est vrai en prouvant que A n'est pas possible s'il ne connaissait pas déjà cette cohérence et la contradiction est bonne, pour toute paire de déclarations A et non A)? Est-ce incorrect ou ai-je raté quelque chose?

Ensuite, j'ai pensé, ok, incluons simplement dans nos axiomes la règle du milieu exclu, puis tous les problèmes sont résolus. Mais alors je me suis rendu compte, attendez si nous faisons cela, nous définissons simplement le problème au lieu de le traiter. Si je force simplement mon système à être cohérent par définition, cela ne signifie pas nécessairement qu'il est réellement cohérent… n'est-ce pas? J'essaie juste de donner un sens à ces idées et je ne sais pas trop quoi faire, mais c'est ce que je réalise après quelques jours de lecture et de visionnage de vidéos dans presque tous les aspects de ces concepts, contradiction, milieu exclusif, logique intuitionniste, théorèmes d'exhaustivité et d'incomplétude de Godel…

En relation avec cela, il semble qu'il est essentiellement impossible de prouver directement que quelque chose est faux sans la règle du milieu exclu (ou de la contradiction). Il semble que les systèmes de preuve soient bons pour prouver de vraies déclarations, mais à ma connaissance, ils sont incapables de montrer directement que les choses sont fausses. Peut-être que la façon dont ils le font est plus indirectement avec contradiction (où ils montrent que quelque chose doit être faux ou que de mauvaises choses se produisent), ou exclu du milieu (où connaître la valeur de vérité d'un seul A ou non A nous donne la vérité de l'autre) ou fournir des contre-exemples (qui montrent essentiellement que le contraire est vrai, donc utilise indirectement la loi du milieu exclu). Je suppose que je veux peut-être vraiment une preuve constructive que quelque chose est faux?

Je pense que si je pouvais savoir que si je prouve que A n'est pas faux (disons que j'accepte la contradiction), alors c'est vraiment ok et je n'ai pas besoin d'appliquer toutes les règles d'inférence et les axiomes à l'infini sur A et je suis assuré que A a gagné ne parviens pas à une contradiction. Si c'était vrai, je pense que je pourrais plus facilement accepter la preuve par contradiction. Est-ce vrai ou est-ce que la seconde incomplétude de Godel garantit que je ne peux pas avoir cela? Si je ne peux pas avoir cela alors, ce qui me laisse perplexe, c'est à quel point il est possible que tant d'années de mathématiciens fassent des mathématiques que nous n'ayons pas trouvé d'incohérence? Dois-je me fier à des preuves empiriques de cohérence? Ou par exemple, je prof F est cohérent en montrant superF prouve F mais comme je n'aurai jamais réellement besoin de superF et juste F, alors je ne peux pas être un contenu qui fonctionne vraiment?


Je viens de remarquer que ma plainte se généralise également aux épreuves directes. Ok donc si j'ai fait une preuve directe de A alors je sais que A est vrai ... mais comment puis-je savoir que si je faisais une preuve directe de non A que je n'aurais pas aussi une preuve correcte? Semble la même question juste un accent légèrement différent ....


1
Les commentaires ne sont pas pour une discussion approfondie; cette conversation a été déplacée vers le chat .
DW


La logique intuitionniste rejette l' énoncé général de l'élimination de la négation intermédiaire / double exclue, mais elle peut s'appliquer à des propositions spécifiques. Au mieux, prouver une double négation dans la logique intuitionniste signifie simplement que chercher une preuve positive n'est pas futile.
Karl Damgaard Asmussen

Réponses:


30

Vous avez demandé (je rend votre question un peu plus nette): "Quelle garantie formelle y a-t-il qu'il ne peut pas arriver que et conduisent pas à une contradiction?" Vous semblez craindre que si la logique n'est pas cohérente, alors la preuve par contradiction est problématique. Mais ce n'est pas du tout le cas.¬pp

Si la logique est incohérente, alors la preuve par contradiction est toujours une règle de raisonnement valable, mais sa négation aussi, et la règle qui dit qu'à partir de nous pouvons conclure que vous êtes le prochain pape. Une incohérence dans la logique n'invalide rien: bien au contraire, elle valide tout !1+1=2

Il existe une autre source possible de confusion: le titre de votre question peut être lu comme impliquant que la loi du milieu exclu dit que la logique est cohérente. C'est incorrect. La cohérence de la logique revient à «ce n'est pas le cas qu'une déclaration et sa négation aient des preuves», tandis que le milieu exclu est la règle qui nous permet de prouver des déclarations de la forme .p¬p


Supplémentaire: Je ne comprends pas pourquoi cette question suscite autant de discussions. J'ai du mal à comprendre le véritable dilemme et, pour autant que je sache, la question découle d'une sorte de malentendu. Si quelqu'un peut élucider la question, je vous en serai reconnaissant. Je voudrais également attirer l'attention sur les points suivants:

  1. La preuve par contradiction et le milieu exclu sont équivalents les uns aux autres, et le titre, tel qu'il est écrit, n'est donc pas sensible. Bien sûr, nous ne pouvons pas avoir l'un sans l'autre, ils sont équivalents.

  2. D'après ce que je peux comprendre de la longue discussion dans la question, le PO semble dire, ou inquiétant, qu'une incohérence dans la logique invalide une preuve. C'est faux, comme je l'ai souligné plus haut. J'apprécierais une sorte de réponse de l'OP: l'OP peut-il voir comment une incohérence dans la logique (c'est-à-dire pouvoir tout prouver) n'invalide aucune preuve?

  3. Je trouve probable, mais je ne peux pas vraiment dire avec certitude, que le PO pense que la loi des milieux intermédiaires exclus stipule qu'il est impossible pour et de tenir (avec une formule: ). Ce n'est pas exclu au milieu. On l'appelle parfois la loi de non-contradiction, et elle est prouvable (sans milieu exclu).p¬p¬(p¬p)

  4. Le PO pense qu'il est "impossible de prouver directement que quelque chose est faux sans un milieu exclu". Il confond preuve de négation et preuve de contradiction, ce qui n'est pas la même chose . Le message lié contient de nombreux exemples de preuves constructives que quelque chose est faux. En fait, la plupart des preuves que quelque chose de faux se trouve dans les manuels sont déjà constructives.

  5. L'incomplétude de Gödel est entraînée pour une raison que je peux discerner. L'incomplétude de Gödel fournit une phrase telle que ni ni n'est prouvable. Cela n'implique pas que n'est pas démontrable (c'est, par une simple application de milieu exclu)! Cela n'implique pas non plus que , ou quelque chose du genre. En quoi le caractère incomplet de Gödel est-il pertinent ici?GG¬GG¬G¬G¬¬G

PS Je m'excuse pour la version précédente du supplément qui était désagréable.


1
Les commentaires ne sont pas pour une discussion approfondie; cette conversation a été déplacée vers le chat .
Raphael

GG¬G¬G¬G

Je pense que la solution est la suivante: le raisonnement est que plus implique par Modus Tollendo Ponens; cependant, nous avons qui n'est pas le même que . Un bon exemple de Modus Tollendo Ponens serait et donc (qui est redondant). OR et donc . Bien sûr, ces premières instructions ( et ouGG¬G¬GG¬G¬GG¬G¬G¬¬GG¬GG¬G¬¬GG ) sont précisément exclus par le théorème d'incomplétude de Gödel.
Squirtle

8

Je pense que votre question se résume à "lors d'une vérification formelle avec une sorte de logique formelle, quelle sorte de garantie ai-je que la logique est cohérente?". Et la réponse est: aucune. C'est quelque chose que vous devez assumer. La vérification formelle n'élimine pas toutes les hypothèses; cela vous aide simplement à être plus clair sur ce que vous supposez, et peut-être vous aide à vous assurer que vous partez d'hypothèses qui semblent raisonnables.

Si vous travaillez dans une logique standard, la plupart des gens sont généralement heureux de supposer que la logique est cohérente, même s'ils n'ont pas de preuve de ce fait. Il est vrai que nous pourrions un jour découvrir que la logique est en fait incohérente ... mais la plupart des gens croient que ce n'est pas très probable.

Dans certains cas , on peut prouver qu'une logique est cohérente, mais qui nécessite d' utiliser un autre logique plus puissant, où nous devons supposer que la deuxième logique est cohérente, donc il nous reste encore avoir à faire quelques hypothèses ( en supposant que certaines logique est cohérente ). Cela pourrait être considéré comme une preuve que la première logique est probablement cohérente, si vous croyez que la deuxième logique est probablement cohérente, mais le raisonnement doit fonder quelque part - il y a certaines choses que nous devons simplement supposer et ne pouvons pas prouver.

Voir, par exemple, le deuxième problème de Hilbert et cette discussion sur la cohérence de ZFC (et ceci et ceci et ceci et probablement beaucoup plus).


Il est un peu trompeur de dire que "vous n'avez aucune garantie de cohérence" car cela donne l'impression que toute la logique est en suspens. Bien sûr, il existe des preuves de la cohérence des systèmes formels, mais elles ne "réduisent pas la foi" pour ainsi dire, car de telles preuves nécessitent encore plus de foi en la cohérence des systèmes plus forts. Néanmoins, il est très utile d'avoir des preuves de cohérence.
Andrej Bauer

1
@AndrejBauer Ce n'est jamais une question de foi, mais de savoir si vous êtes d'accord avec les axiomes. Les systèmes formels rendent les axiomes explicites.
Raphael

1
Je ne comprends pas votre point @Raphael. Voulez-vous dire qu'une opinion sur les axiomes est en quelque sorte meilleure que la foi dans les axiomes? Ce sont des mots exprimant le fait bien connu de la force de cohérence. Et au fil des mots, ceux-ci ne sont pas particulièrement éclairants ou utiles. Je soulignais qu'il n'est pas très pédagogique de faire des déclarations générales sur le manque de preuves sur la cohérence, c'est tout.
Andrej Bauer

@AndrejBauer J'ai senti que ni "[la cohérence] n'est quelque chose que vous devez assumer" ni "la foi en la cohérence" n'a frappé la cible. Vous pouvez (parfois) prouver la cohérence, mais finalement toutes les preuves sont "en l'air" sur les échasses des axiomes. (Aussi, je voulais nommer "axiome" qui me manquait ici.)
Raphael

@AndrejBauer, OK, assez bien. J'ai modifié ma réponse pour être plus explicite à ce sujet. J'espère que ça va mieux maintenant. Malheureusement, cela n'élimine pas la nécessité d'hypothèses. Cela change simplement la logique que nous supposons cohérente. En fin de compte, cela se résume à une logique que vous devez supposer cohérente.
DW

8

Il y a beaucoup de points philosophiques intéressants sur lesquels votre message touche.

Cohérence de la logique booléenne

La question de la cohérence de la théorie de la preuve dans la logique classique n'est pas aussi grave que vous le dites. Il se réduit essentiellement à ce qui suit:

Nous pouvons définir la logique booléenne comme un ensemble de fonctions d'opérations logiques sur les valeurs de vérité 1et 0. Mais comment savons-nous cela 0≠1?

(notez que j'utilise simplement 0et 1comme symboles abstraits pour les deux valeurs de vérité; en particulier, je ne suppose aucune notion d'entier ici)

Nous, bien sûr, ne savons que 0et 1sont différentes. Mais la logique booléenne est si ridiculement simple que rejeter cette possibilité est un niveau extrême de scepticisme.

Mais la logique propositionnelle classique se réduit à cela. Rappelons que nous pouvons attribuer des valeurs booléennes aux propositions atomiques de n'importe quelle manière, et cela s'étend à l'attribution d'une valeur à toutes les propositions qui peuvent être construites à partir des propositions atomiques.

L'énoncé "de Pvous pouvez déduire Q" n'est littéralement qu'une relation d'ordre; cela signifie la même chose que l'affirmation qui " v(P) ≤ v(Q)vaut pour chaque fonction vattribuant des valeurs de vérité aux propositions atomiques".

Les règles d'inférence pour la logique propositionnelle sont précisément les propriétés pour travailler avec l'ordre . La preuve par contradiction, en particulier, est l'observation que si P ≤ 0, alors P = 0.

Et pour en revenir à votre problème ... si nous connaissions les deux P ≤ 0et ¬P ≤ 0, après avoir branché les valeurs de vérité, nous finirions par conclure que 0=1; que vrai et faux signifient la même chose.

Donc, si vous avez confiance que «vrai» et «faux» signifient des choses différentes, alors vous devriez avoir une confiance similaire dans la cohérence de la logique booléenne.

Preuve par contradiction dans la logique intuitionniste

Il faut bien noter que la preuve par contradiction est mieux formulée comme:

  • Si vous pouvez dériver une contradiction P, alors concluez¬P

En fait, on pourrait carrément définir la négation comme étant le connecteur avec cette propriété. Par exemple, dans l' algèbre de Heyting, vous verrez généralement ¬P défini comme signifiant P → 0.

A noter notamment le cas particulier

  • Si vous pouvez dériver une contradiction ¬P, alors concluez¬¬P

Ce que vous décrivez comme «preuve par contradiction» vient de votre identification ¬¬Pavec P. La logique intuitionniste ne suppose pas que ceux-ci sont équivalents.

Cohérence en tant que contrat officiel

Il existe davantage de formalismes de calcul pour la logique de codage; voir le lambda calcul simplement typé, les types dépendants, et en particulier le paradigme des «propositions comme types».

Sans entrer dans les détails, la contradiction est fondamentalement traitée comme un contrat formel. Il y a un type, que j'appellerai 0, et il y a le contrat "ces fonctions ne peuvent pas être utilisées pour construire un élément de type 0".

Si un tel système est assez audacieux pour vous permettre de construire une fonction T → 0, alors s'il tient vraiment le contrat, cela signifie qu'il est également impossible de construire des objets de type T. Il s'agit d'un point de vue informatique sur ce que signifie une preuve par contradiction.

En fin de compte, cela n'est pas très différent de, par exemple, une fonction C qui renvoie un pointeur promettant de ne pas retourner un pointeur nul, ou une fonction C ++ promettant de ne pas lever d'exception.

Et boucler la boucle, revenir à la logique classique, c'est vraiment ce que nous faisons.

On nous propose des contrats formels, tels que "des axiomes de Peano, les règles d'inférence ne vous permettront pas de dériver une contradiction". Si ce contrat est réellement respecté, alors si vous avez pu montrer que cela ¬Pimplique une contradiction, Pcela ne peut pas non plus impliquer une contradiction.

Et s'il était possible de violer le contrat, nous dirions simplement "les axiomes de Peano sont incohérents".


P0P=0P=1P0

0P¬P0

1
P=0P=1=(P0P1)=(¬PP)=0P=0P0", alors ce n'est pas une proposition (c'est métalogique); cela n'a pas vraiment de sens de dire qu'un argument utilisant les règles d'inférence de la logique propositionnelle peut le dériver, puisque vous ne pouvez même pas le dire dans le langage des propositions.

¬AAA¬AP¬P

1
01P¬P

1

Lorsqu'elles sont utilisées pour garantir la vérité d'une déclaration formelle, toutes les preuves supposent implicitement la cohérence du système dans lequel elles sont basées. En effet, si le système est incohérent, l'intégralité du système est cassé et tout le travail que nous avons fait dans ce système est fondamentalement une poubelle.

Parce que nous ne pouvons pas prouver qu'un système (ou du moins un système complexe) est cohérent dans les limites de ce système, nous devons le considérer comme une vérité empirique plutôt que comme une vérité formellement prouvable. Fondamentalement, si les mathématiciens passent beaucoup de temps à travailler avec un système formel et qu'aucune contradiction n'est jamais découverte, alors c'est une preuve empirique en faveur de la cohérence du système. De plus, nous pouvons utiliser un système plus puissant pour prouver la cohérence du système avec lequel nous travaillons (bien que la cohérence de ce système plus puissant soit toujours empirique - l'argent revient quelque part).

À la base, la situation en mathématiques est identique à celle de la science. Nous construisons des mathématiques basées sur des théories qui semblent correctes sur la base de toutes les informations dont nous disposons sur ces théories, et comme en science, vous ne pouvez pas prouver qu'une théorie est correcte; vous ne pouvez que le prouver.

S

Quel que soit le système d'axiomes sur lequel nous choisissons de baser nos calculs, il y a toujours un danger que nous découvrions une contradiction dans ce système. C'est exactement pourquoi les mathématiciens n'introduisent pas de nouveaux axiomes dans les mathématiques: chaque nouvel axiome a une chance d'être incompatible avec les axiomes déjà utilisés, et tout travail qui utilise le nouvel axiome devrait être complètement réévalué.

Addendum: Quand je parle d'une affirmation vraie pour un système donné, je veux dire qu'elle ne peut pas être réfutée dans ce système si ce système est cohérent.


2
Il est faux que «toutes les preuves supposent la cohérence». Une preuve correcte est valable indépendamment de la cohérence.
Andrej Bauer

Si j'utilise les axiomes de ZFC pour prouver quelque chose, ma preuve suppose que ZFC est cohérent. Si ZFC est incohérent, ma preuve ne garantit plus la vérité de ce que j'ai prouvé
J. Antonio Perez

1
C'est tout simplement faux. Si ZFC est incohérent, toutes les déclarations sont prouvables et votre preuve est toujours une preuve. La seule chose qui change avec une incohérence est que ZFC devient une théorie plutôt inutile qui n'a pas de modèles (et il est donc vrai que votre preuve montre toujours que votre affirmation est vraie dans tous les modèles).
Andrej Bauer

J'ai modifié ma réponse
J. Antonio Perez

2
Malheureusement, vous ne pouvez pas simplement inventer des définitions de mots acceptés. «Vrai» signifie «est valide dans un modèle». Trouvez un autre mot, ou mieux encore, admettez simplement que vous vous trompez. Je m'excuse également d'être un peu énervé, mais je tiens à garder les choses droites dans la logique.
Andrej Bauer
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.