Je me réfère à la question ici: des algorithmes puissants trop complexes à mettre en œuvre .
Si un algorithme est puissant, mais trop complexe à implémenter, comment pouvez-vous être sûr que l'algorithme est correct? Sans implémentation, vous ne pourrez pas tester l'algorithme dans un scénario réel, et un algorithme aussi complexe peut contenir des bogues, ce qui peut invalider l'algorithme.
Voilà ce que je ne comprends pas; si vous avez les techniques pour prouver l'exactitude d'un algorithme, alors vous auriez déjà l'algorithme pour l'implémenter, n'est-ce pas? Ou bien comment pouvons-nous être sûrs que la technique de vérification est correcte?
Je suis désolé si j'ai l'air élémentaire!
Mise à jour de Kaveh (reproduite ici car l'argument est meilleur!):
Si vous pouvez prouver formellement l'exactitude d'un algorithme dans un système formel comme Coq, vous pouvez également extraire l'algorithme (car vous avez essentiellement implémenté l'algorithme), mais le fait clé est que pour la plupart des algorithmes, nous ne donnons pas de preuves formelles de l'exactitude de l'algorithme, nous utilisons des preuves informelles d'exactitude. Les preuves peuvent être fausses, ce qui arrive de temps en temps, et même une preuve formelle de correction ne nous garantira pas absolument que l'algorithme est correct.
la source
Réponses:
Il y a plusieurs années, il y a eu un débat (assez dur) sur un sujet similaire à celui-ci. Tout a commencé lorsque plusieurs preuves complexes se sont révélées incorrectes, et certains chercheurs ont commencé à émettre des doutes sur la nature même des preuves (enfin, j'aurais dû dire "cryptographie prouvable", mais pour des raisons générales, je ne l'ai pas fait) . Les deux côtés de la controverse ont accusé l'autre de mal comprendre les concepts. Voici un lien pour plus d'informations .
Les preuves sont nos outils (mathématiques) pour prouver que les théorèmes / algorithmes sont corrects, mais quand ils sont devenus trop complexes, nous pouvons glisser et prouver que les choses fausses sont correctes. La récente épreuve d'une centaine de pages sur P ≠ NP en est un excellent exemple. Cependant, cela n'exclut pas la nature même des preuves: il n'y a rien de mal avec elles.
Un dernier point: je pense que l'étude de la philosophie des sciences nous donnera plus de détails à ce sujet. (Sous le lien donné, voir la puce " Comment savoir si une preuve mathématique est correcte? ")
la source