Vous n'aurez probablement jamais à prouver des énoncés mathématiques dans votre domaine de travail, mais apprendre à rédiger des preuves mathématiques vous apprendra à écrire d'une manière qui est : sans ambiguïté et convaincante Sans ambiguïté et convaincante n'est pas la même chose que claire et persuasive — ce que je vais aborder plus tard. Lorsque vous rédigez des preuves mathématiques, votre écriture doit avoir une "vérité sous-jacente" qui suit les "règles du jeu" (quelles transformations et implications sont autorisées). Cependant, il y a une certaine latitude dans la façon dont vous "formulez" la vérité sous-jacente — puisque vous ne faites pas de mathématiques computationnelles, vous utilisez l'anglais au lieu de symboles entièrement. Néanmoins, les règles du jeu contraignent fortement ce que vous pouvez écrire. Comme les mathématiques, chaque domaine technique (par exemple, l'ingénierie logicielle) a une "vérité sous-jacente" et des "règles du jeu". Les auteurs inexpérimentés produisent des écrits liés, mais non ancrés dans les vérités sous-jacentes et les règles du jeu de leur domaine. Par exemple, considérez la phrase : "Si nous augmentons le temps de bloc, alors la sécurité de la blockchain augmente parce que plus de nœuds peuvent atteindre un consensus." "Temps de bloc", "quorum" et "sécurité" sont des vérités sous-jacentes, mais la déclaration de relation suit-elle les règles du jeu ? La déclaration semble persuasive mais est-elle sans ambiguïté et convaincante ? Si vous avez de l'expérience avec les preuves mathématiques, vous seriez capable de déceler les hypothèses sous-jacentes que la déclaration fait : - le consensus est plus facile à atteindre lorsqu'on dispose de plus de temps - les blockchains sont plus sécurisées lorsqu'elles ont un consensus fiable Mais ce ne sont pas les hypothèses précises : l'hypothèse précise est que, donné plus de temps, le consensus est plus probable. Il en découle que l'auteur suppose qu'à mesure que le temps tend vers l'infini, la probabilité de consensus approche 1. Formulé ainsi, cela semble-t-il une hypothèse raisonnable ? Lorsqu'on le lit de cette manière, un contre-exemple devient plus évident : que se passe-t-il si beaucoup de nœuds (intentionnellement ou non) se déconnectent définitivement ? Par conséquent, nous pouvons voir que "Si nous augmentons le temps de bloc, alors la sécurité de la blockchain augmente parce que plus de nœuds peuvent atteindre un consensus" reflète certaines "vérités sous-jacentes" et suit certaines "règles du jeu" mais elle fait également des hypothèses importantes et non déclarées (si ces hypothèses étaient déclarées dans le contexte, cela serait acceptable, mais je ne veux pas dérailler cet exemple avec cette nuance). Par conséquent, la déclaration "Si nous augmentons le temps de bloc, alors la sécurité de la blockchain augmente parce que plus de nœuds peuvent atteindre un consensus" est claire et persuasive car chacun des termes qu'elle utilise est bien compris et elle ne dit rien d'évidemment faux. Cependant, elle n'est pas sans ambiguïté et convaincante car elle fait des hypothèses non déclarées sur le comportement des nœuds. Voici une version plus convaincante et sans ambiguïté : "En supposant que les délais réseau sont la seule chose empêchant le consensus, alors des intervalles de bloc plus longs améliorent la probabilité de consensus." Parce que la nouvelle affirmation a un champ réduit (elle ne fait aucune affirmation large sur la "sécurité" et le comportement attendu des nœuds), elle est moins sans ambiguïté (plus précise) et plus convaincante car elle suit les règles du jeu (c'est-à-dire la relation entre la latence réseau et le temps de bloc)....