
Ce que disent les mathématiques classiques

Dans l’arithmétique classique, la division par zéro est interdite. Pourquoi ?
-
La division
a ÷ b
signifie : trouver un nombre c tel que b × c = a. -
Si
b = 0
, alors l’équation devient0 × c = a
.
Deux cas :
-
Si
a ≠ 0
→ aucune solution possible : impossible de multiplier 0 pour obtenir autre chose que 0. -
Si
a = 0
→ une infinité de solutions possibles, donc opération indéterminée.
Conclusion mathématique : X ÷ 0
n’est pas défini.
Et si on posait arbitrairement X ÷ 0 = 0 ?
Certains proposent une définition volontaire : et si l’on décidait que diviser un nombre par 0 donne 0 ?
Testons cela :
Supposons que
x / 0 = 0
Alorsx = 0 × 0 = 0
Ce qui implique que tout x est égal à 0, ce qui est absurde.
Cette hypothèse contredit la logique mathématique de base.
Une hypothèse audacieuse : et si X / 0 = 0
?
Certains pensent que X / 0
pourrait être défini comme 0, en se basant sur des raisonnements comme :
Raisonnement par limite trompeuse
On pourrait dire :
Si
x / a
tend vers 0 quanda
devient très grand, alors peut-être quex / 0
= 0 (par analogie avec l’infini).
Mais c’est dangereux :
-
Quand
a
tend vers zéro,x / a
devient énorme (en valeur absolue), pas nul ! -
Donc
x / 0
ne “tend pas vers 0”, bien au contraire : il diverge.
Interprétation informatique
Dans certains contextes informatiques, une division par zéro n’est pas toujours une erreur fatale :
-
Des systèmes ou langages peuvent renvoyer
0
,inf
, ou une erreur, selon la logique interne. -
Exemple : en langage C, le comportement est indéfini, mais en Python,
1 / 0
lève une exception.
Un système peut choisir arbitrairement que x / 0 = 0
comme règle interne, mais ce n’est pas une vérité mathématique.
Une tentative de logique formelle
Imaginons que l’on pose arbitrairement :
x / 0 = 0
pour toutx
.
Testons la cohérence :
Si x / 0 = 0
, alors cela signifierait :
-
0 × 0 = x
(carx = 0 × (x / 0)
), -
Mais
0 × 0 = 0
, donc cela impliqueraitx = 0
.
Donc cette règle impose que tous les x
soient égaux à 0, ce qui est absurde.
Conclusion : la règle est incohérente.
Des extensions mathématiques existent… mais prudentes
Certains domaines mathématiques élargis proposent des définitions différentes :
-
En analyse non standard, on travaille avec des “infiniment petits” et des “infinis”.
-
En calcul symbolique, on peut parfois garder
x / 0
comme une expression formelle, sans la réduire. -
En géométrie projective, on peut parler de “point à l’infini”, mais c’est un contexte très particulier.
Mais même là, x / 0 = 0
est très rarement admis : c’est considéré comme trop fort, trop arbitraire, et souvent incohérent.
Ce que dit l’informatique… et WebKit
En informatique, les choses sont parfois plus souples que dans les mathématiques pures.
Dans JavaScript, langage interprété notamment par WebKit (Safari), mais aussi par V8 (Chrome) et SpiderMonkey (Firefox), voici ce que donne la division par 0 :
Résultat :
-
x / 0
ne provoque pas d’erreur, -
mais retourne Infinity ou NaN, jamais 0.
Ce comportement suit la norme IEEE 754, utilisée pour les nombres flottants en informatique.
Pourquoi certains croient que x / 0 = 0
?
Dans certains contextes informatiques (langages, moteurs de calcul, systèmes embarqués), on choisit arbitrairement de renvoyer zéro pour éviter de bloquer un programme en cas de division par zéro.
Par exemple, dans certains moteurs internes :
-
x / 0
peut renvoyer0
plutôt que de provoquer une exception, -
Mais c’est une convention interne, pas une vérité mathématique.
Ce que WebKit permet vraiment
Le moteur WebKit, utilisé dans Safari, a souvent été cité comme exemple car il ne considère pas toujours x / 0
comme une erreur fatale.
Mais attention :
-
WebKit permet l’exécution de
x / 0
sans plantage, -
Il retourne
Infinity
,-Infinity
ouNaN
selon les cas, -
Mais il ne renvoie jamais 0 par défaut.
On peut donc conclure :
Non, WebKit ne démontre pas que
x / 0 = 0
.
Il démontre quex / 0
n’est pas forcément une erreur, ce qui est très différent.
entre rigueur mathématique et tolérance informatique
L’idée que X ÷ 0 = 0
est incohérente en mathématiques, mais peut exister dans certaines implémentations informatiques, pour des raisons de praticité ou de gestion d’erreurs.
WebKit n’affirme pas cette égalité, mais montre que la division par zéro peut être traitée avec souplesse, notamment en suivant la norme IEEE 754.
Un cas typique où le langage des machines diverge de celui des mathématiciens.