Maison Périphériques technologiques IA Revisitez le principe de Turing et ressentez le pouvoir de la preuve par contradiction

Revisitez le principe de Turing et ressentez le pouvoir de la preuve par contradiction

Sep 29, 2023 pm 06:45 PM
入门

Les algorithmes sont devenus omniprésents, et il semble que pour chaque problème pouvant être exprimé en termes mathématiques précis, il existe un algorithme correspondant. Cependant, ce n'est pas le cas. En fait, certains problèmes apparemment simples ne peuvent jamais être résolus par des algorithmes. Alan Turing, un pionnier parmi les informaticiens, a prouvé un jour ce problème "incalculable" dans un article il y a près d'un siècle. le modèle mathématique computationnel qui a lancé l’informatique moderne.

Turing a démontré ce résultat révolutionnaire en utilisant une stratégie contre-intuitive : il a défini un problème, un problème qui rejette toutes les tentatives pour le résoudre. "Par exemple, si je vous demande ce que vous faites, quelle que soit votre réponse, je dirai : 'Ce que je vais faire est différent de ce que vous avez dit'", a déclaré Rahul Ilango, étudiant diplômé du MIT. informatique théorique. Contenu réécrit : Turing a démontré ce résultat révolutionnaire avec une stratégie contre-intuitive : il a défini un problème qui a résisté à toutes les tentatives pour le résoudre. "Par exemple, si je vous demande ce que vous faites, quelle que soit votre réponse, je dirai : 'Ce que je vais faire est différent de ce que vous avez dit'", a déclaré Rahul Ilango, un étudiant diplômé en informatique théorique. science au MIT

Turing's La stratégie est basée sur une méthode mathématique de longue date connue sous le nom de « preuve diagonale ». Voici une explication simplifiée de la logique derrière sa preuve

Strings

La preuve diagonale vient d'une astuce astucieuse pour résoudre un problème concernant les chaînes, où chaque bit peut avoir une valeur de 0 ou 1. La description du problème est la suivante : étant donné une liste de chaînes, toutes les chaînes de la liste ont la même longueur, comment pouvez-vous générer une nouvelle chaîne qui ne figure pas dans la liste ?

Contenu réécrit : l'une des stratégies les plus simples consiste à considérer toutes les chaînes possibles dans l'ordre. Supposons qu’il y ait cinq chaînes de cinq bits chacune. Commencez par parcourir pour vérifier si 00000 existe dans la liste. S'il n'existe pas, le problème est résolu ; s'il existe, passez à 00001 et répétez le processus. Cette approche est simple, mais lente pour les longues listes résultant de longues chaînes

Diagonal s'avère être une alternative viable pour construire progressivement des chaînes inexistantes. En commençant par le premier bit de la première chaîne de la liste, inversez-le et cela deviendra le premier bit de la nouvelle chaîne. Inversez ensuite le deuxième bit de la deuxième chaîne et utilisez-le comme deuxième bit de la nouvelle chaîne, répétez cette opération jusqu'à ce que vous atteigniez la fin de la liste. En inversant les opérations sur les bits, vous vous assurez que la nouvelle chaîne est différente de chaque chaîne de la liste d'origine d'au moins une position. (Ils forment également une diagonale dans la liste des chaînes, d'où le nom de preuve diagonale.)

Revisitez le principe de Turing et ressentez le pouvoir de la preuve par contradictionLa preuve diagonale ne nécessite que de vérifier tour à tour un bit de chaque chaîne de la liste, donc généralement beaucoup plus rapide que les autres méthodes, mais sa véritable puissance réside dans sa capacité à gérer les problèmes de chaînes infiniment longues.

L'informaticien théorique Ryan Williams du MIT a déclaré : "Bien que les chaînes et les listes puissent être infinies, la méthode de diagonalisation est toujours efficace.

George Cantor a été le premier à exploiter cela. Un homme de pouvoir, il a été le fondateur du domaine." des mathématiques de la théorie des ensembles. En 1873, il utilise les diagonales pour montrer que certaines valeurs infinies sont plus grandes que d'autres. 60 ans plus tard, Turing a appliqué cette version de la preuve diagonale à la théorie du calcul

Les limites des algorithmes

Pour prouver qu'il existe une classe de problèmes mathématiques qui ne peuvent être résolus par aucun algorithme, Turing a proposé une théorie. Ce type de problème a des entrées et des sorties bien définies, mais aucun processus défini pour convertir les entrées en sorties. Turing s’est principalement concentré sur les problèmes de prise de décision et a cherché à mieux concrétiser cette tâche nébuleuse. Dans un problème de décision, l'entrée peut être n'importe quelle chaîne composée de 0 et 1, et la sortie peut être 0 ou 1

Déterminer si un nombre est premier (divisible uniquement par 1 et lui-même) est un exemple de problème de décision — — Étant donné une chaîne d'entrée représentant un nombre, la sortie correcte est 1 si le nombre est premier et 0 s'il n'est pas premier. Un autre exemple consiste à vérifier les programmes informatiques pour détecter les erreurs de syntaxe. Les chaînes d'entrée représentent le code de différents programmes - tous les programmes peuvent être représentés de cette façon car c'est ainsi qu'ils sont stockés et exécutés sur l'ordinateur - la règle est que si le code contient une erreur de syntaxe, alors affichez 1, sinon, alors sortie 0.

Seulement si un algorithme produit le résultat correct pour chaque entrée possible, on peut dire qu'il résout le problème - s'il échoue ne serait-ce qu'une seule fois, ce n'est pas un algorithme général pour résoudre le problème. Généralement, on spécifie un problème que l’on souhaite résoudre, puis on essaie de trouver un algorithme pour le résoudre. Turing a renversé cette logique lorsqu'il recherchait des problèmes insolubles : il a imaginé une liste infinie de tous les algorithmes possibles et a utilisé la diagonalisation pour construire un puzzle opposé à tous les algorithmes de la liste.

Veuillez imaginer une nouvelle question composée de 20 questions. Au lieu de partir d'un concept spécifique, le répondant propose un exemple d'insatisfaction pour chaque question tour à tour. À la fin du jeu, celui qui a répondu a décrit une proposition qui est entièrement composée des opposés de la question.

Le processus de preuve diagonale de Turing consiste à penser à chaque algorithme dans une liste infiniment longue d'algorithmes : « Un algorithme peut-il résoudre le problème que nous voulez-vous prouver que vous n'êtes pas calculable ? » C'est comme un jeu de compétition. Williams a déclaré : « Cette méthode transforme le problème initial en un « problème infini ». »

Pour gagner la partie, Turing doit concevoir une question dans laquelle la réponse donnée par chaque algorithme est négative. Cela signifie trouver l’entrée spécifique qui a fait que le premier algorithme a produit la mauvaise réponse, une autre entrée qui a fait échouer le deuxième algorithme, et ainsi de suite. Il a découvert que ces entrées spéciales utilisaient une méthode similaire à celle utilisée par Kurt Gödel il n'y a pas si longtemps lorsqu'il montrait que des affirmations autoréférentielles telles que « Cette proposition n'est pas prouvable » peuvent causer des problèmes dans les fondements des compétences mathématiques.

La clé ici est que chaque algorithme (ou programme) peut être représenté comme une chaîne de 0 et de 1. Cela signifie que, tout comme dans l’exemple du vérificateur d’erreurs, un algorithme peut prendre en entrée l’encodage d’un autre algorithme. En principe, l’algorithme pourrait même prendre son propre codage en entrée.

De cette façon, nous pouvons définir un problème non calculable, tout comme le problème mentionné dans la preuve de Turing : « Étant donné une chaîne d'entrée représentant le code d'un algorithme, lorsque le code de l'algorithme lui-même est pris en entrée, si le l'algorithme produit 0, laissez-le produire 1, sinon il produit 0. "Chaque algorithme qui tente de résoudre ce problème produira une sortie incorrecte sur au moins une entrée, celle qui correspond à son propre code. Cela signifie que ce problème anormal ne peut être résolu par aucun algorithme

Ce qui ne peut pas être prouvé est une preuve par contradiction

L’utilisation par les informaticiens des preuves diagonales ne s’arrête pas là. En 1965, Juris Hartmanis et Richard Stearns ont adapté l'argument de Turing pour montrer que tous les problèmes calculables ne sont pas égaux : certains sont intrinsèquement plus difficiles que d'autres. Ce résultat a lancé le domaine de la théorie de la complexité informatique, l'étude de la difficulté des problèmes informatiques.

Le développement de la théorie de la complexité révèle les limites de la preuve diagonale de Turing. En 1975, Baker, Gill et Solovy ont démontré que de nombreux problèmes non résolus en théorie de la complexité ne pouvaient être résolus par la seule diagonalisation. Le plus important d'entre eux est le fameux problème P/NP, qui consiste simplement à savoir si l'exactitude de la solution peut être vérifiée en temps polynomial et si elle peut être résolue en temps polynomial. La limitation de la preuve diagonale est une conséquence directe de. le haut niveau d'abstraction qui le rend si puissant. La preuve de Turing n'a abordé aucun des problèmes non calculables qui pourraient survenir dans la pratique ; les problèmes ont plutôt tendance à être abstraits. D’autres diagonales s’avèrent tout aussi éloignées du monde réel et ne peuvent donc pas résoudre les problèmes du monde réel.

Williams a déclaré : "La preuve diagonale ne touche pas directement le problème lui-même, tout comme faire une expérience avec une boîte à gants."

La tendance à la baisse de la preuve diagonale montre que la résolution du problème P/NP sera un long processus. voyage. Malgré leurs limites, les preuves diagonales restent l'un des outils clés de l'arsenal des théoriciens de la complexité. En 2011, Williams l’a combiné avec une gamme d’autres techniques pour démontrer qu’un modèle informatique restreint était incapable de résoudre certains problèmes incroyablement difficiles – un résultat qui a résolu un problème qui contrariait les chercheurs depuis 25 ans. Même si cela est loin de résoudre le problème P/NP, cela représente néanmoins un progrès significatif.

Si vous voulez prouver que quelque chose est impossible, ne sous-estimez pas le pouvoir de la négation

Lien original :

Le contenu qui doit être réécrit est : https://www.quantamagazine.org/alan- turing-et-le-pouvoir-de-la-pensée-négative-20230905/

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Un didacticiel sur le modèle de diffusion qui vaut votre temps, de l'Université Purdue Un didacticiel sur le modèle de diffusion qui vaut votre temps, de l'Université Purdue Apr 07, 2024 am 09:01 AM

La diffusion permet non seulement de mieux imiter, mais aussi de « créer ». Le modèle de diffusion (DiffusionModel) est un modèle de génération d'images. Par rapport aux algorithmes bien connus tels que GAN et VAE dans le domaine de l’IA, le modèle de diffusion adopte une approche différente. Son idée principale est un processus consistant à ajouter d’abord du bruit à l’image, puis à la débruiter progressivement. Comment débruiter et restaurer l’image originale est la partie centrale de l’algorithme. L'algorithme final est capable de générer une image à partir d'une image bruitée aléatoirement. Ces dernières années, la croissance phénoménale de l’IA générative a permis de nombreuses applications passionnantes dans la génération de texte en image, la génération de vidéos, et bien plus encore. Le principe de base de ces outils génératifs est le concept de diffusion, un mécanisme d'échantillonnage spécial qui surmonte les limites des méthodes précédentes.

Générez du PPT en un seul clic ! Kimi : Que les « travailleurs migrants PPT » deviennent d'abord populaires Générez du PPT en un seul clic ! Kimi : Que les « travailleurs migrants PPT » deviennent d'abord populaires Aug 01, 2024 pm 03:28 PM

Kimi : En une seule phrase, un PPT est prêt en seulement dix secondes. PPT est tellement ennuyeux ! Pour tenir une réunion, vous devez avoir un PPT ; pour rédiger un rapport hebdomadaire, vous devez avoir un PPT ; pour solliciter des investissements, vous devez présenter un PPT ; même pour accuser quelqu'un de tricherie, vous devez envoyer un PPT ; L'université ressemble plus à une spécialisation PPT. Vous regardez le PPT en classe et faites le PPT après les cours. Peut-être que lorsque Dennis Austin a inventé le PPT il y a 37 ans, il ne s'attendait pas à ce qu'un jour le PPT devienne aussi répandu. Parler de notre dure expérience de création de PPT nous fait monter les larmes aux yeux. "Il m'a fallu trois mois pour réaliser un PPT de plus de 20 pages, et je l'ai révisé des dizaines de fois. J'avais envie de vomir quand j'ai vu le PPT." "À mon apogée, je faisais cinq PPT par jour, et même ma respiration." était PPT." Si vous avez une réunion impromptue, vous devriez le faire

Tous les prix CVPR 2024 annoncés ! Près de 10 000 personnes ont assisté à la conférence hors ligne et un chercheur chinois de Google a remporté le prix du meilleur article. Tous les prix CVPR 2024 annoncés ! Près de 10 000 personnes ont assisté à la conférence hors ligne et un chercheur chinois de Google a remporté le prix du meilleur article. Jun 20, 2024 pm 05:43 PM

Tôt le matin du 20 juin, heure de Pékin, CVPR2024, la plus grande conférence internationale sur la vision par ordinateur qui s'est tenue à Seattle, a officiellement annoncé le meilleur article et d'autres récompenses. Cette année, un total de 10 articles ont remporté des prix, dont 2 meilleurs articles et 2 meilleurs articles étudiants. De plus, il y a eu 2 nominations pour les meilleurs articles et 4 nominations pour les meilleurs articles étudiants. La conférence la plus importante dans le domaine de la vision par ordinateur (CV) est la CVPR, qui attire chaque année un grand nombre d'instituts de recherche et d'universités. Selon les statistiques, un total de 11 532 articles ont été soumis cette année, dont 2 719 ont été acceptés, avec un taux d'acceptation de 23,6 %. Selon l'analyse statistique des données CVPR2024 du Georgia Institute of Technology, du point de vue des sujets de recherche, le plus grand nombre d'articles est la synthèse et la génération d'images et de vidéos (Imageandvideosyn

Du bare metal au grand modèle avec 70 milliards de paramètres, voici un tutoriel et des scripts prêts à l'emploi Du bare metal au grand modèle avec 70 milliards de paramètres, voici un tutoriel et des scripts prêts à l'emploi Jul 24, 2024 pm 08:13 PM

Nous savons que le LLM est formé sur des clusters informatiques à grande échelle utilisant des données massives. Ce site a présenté de nombreuses méthodes et technologies utilisées pour aider et améliorer le processus de formation LLM. Aujourd'hui, ce que nous souhaitons partager est un article qui approfondit la technologie sous-jacente et présente comment transformer un ensemble de « bare metals » sans même un système d'exploitation en un cluster informatique pour la formation LLM. Cet article provient d'Imbue, une startup d'IA qui s'efforce d'atteindre une intelligence générale en comprenant comment les machines pensent. Bien sûr, transformer un tas de « bare metal » sans système d'exploitation en un cluster informatique pour la formation LLM n'est pas un processus facile, plein d'exploration et d'essais et d'erreurs, mais Imbue a finalement réussi à former un LLM avec 70 milliards de paramètres et dans. le processus s'accumule

Guide d'installation de PyCharm Community Edition : maîtrisez rapidement toutes les étapes Guide d'installation de PyCharm Community Edition : maîtrisez rapidement toutes les étapes Jan 27, 2024 am 09:10 AM

Démarrage rapide avec PyCharm Community Edition : Tutoriel d'installation détaillé Analyse complète Introduction : PyCharm est un puissant environnement de développement intégré (IDE) Python qui fournit un ensemble complet d'outils pour aider les développeurs à écrire du code Python plus efficacement. Cet article présentera en détail comment installer PyCharm Community Edition et fournira des exemples de code spécifiques pour aider les débutants à démarrer rapidement. Étape 1 : Téléchargez et installez PyCharm Community Edition Pour utiliser PyCharm, vous devez d'abord le télécharger depuis son site officiel

Cinq logiciels de programmation pour débuter l'apprentissage du langage C Cinq logiciels de programmation pour débuter l'apprentissage du langage C Feb 19, 2024 pm 04:51 PM

En tant que langage de programmation largement utilisé, le langage C est l'un des langages de base qui doivent être appris pour ceux qui souhaitent se lancer dans la programmation informatique. Cependant, pour les débutants, l’apprentissage d’un nouveau langage de programmation peut s’avérer quelque peu difficile, notamment en raison du manque d’outils d’apprentissage et de matériel pédagogique pertinents. Dans cet article, je présenterai cinq logiciels de programmation pour aider les débutants à démarrer avec le langage C et vous aider à démarrer rapidement. Le premier logiciel de programmation était Code :: Blocks. Code::Blocks est un environnement de développement intégré (IDE) gratuit et open source pour

A lire absolument pour les débutants en technique : Analyse des niveaux de difficulté du langage C et Python A lire absolument pour les débutants en technique : Analyse des niveaux de difficulté du langage C et Python Mar 22, 2024 am 10:21 AM

Titre : Une lecture incontournable pour les débutants en technique : Analyse des difficultés du langage C et de Python, nécessitant des exemples de code spécifiques. À l'ère numérique d'aujourd'hui, la technologie de programmation est devenue une capacité de plus en plus importante. Que vous souhaitiez travailler dans des domaines tels que le développement de logiciels, l'analyse de données, l'intelligence artificielle ou simplement apprendre la programmation par intérêt, choisir un langage de programmation adapté est la première étape. Parmi les nombreux langages de programmation, le langage C et Python sont deux langages de programmation largement utilisés, chacun ayant ses propres caractéristiques. Cet article analysera les niveaux de difficulté du langage C et Python

L'IA utilisée | L'IA a créé un vlog sur la vie d'une fille vivant seule, qui a reçu des dizaines de milliers de likes en 3 jours L'IA utilisée | L'IA a créé un vlog sur la vie d'une fille vivant seule, qui a reçu des dizaines de milliers de likes en 3 jours Aug 07, 2024 pm 10:53 PM

Rédacteur du Machine Power Report : Yang Wen La vague d’intelligence artificielle représentée par les grands modèles et l’AIGC a discrètement changé notre façon de vivre et de travailler, mais la plupart des gens ne savent toujours pas comment l’utiliser. C'est pourquoi nous avons lancé la rubrique « AI in Use » pour présenter en détail comment utiliser l'IA à travers des cas d'utilisation de l'intelligence artificielle intuitifs, intéressants et concis et stimuler la réflexion de chacun. Nous invitons également les lecteurs à soumettre des cas d'utilisation innovants et pratiques. Lien vidéo : https://mp.weixin.qq.com/s/2hX_i7li3RqdE4u016yGhQ Récemment, le vlog de la vie d'une fille vivant seule est devenu populaire sur Xiaohongshu. Une animation de style illustration, associée à quelques mots de guérison, peut être facilement récupérée en quelques jours seulement.

See all articles