Ne pas utiliser la formule de Fermat sous la forme :
mais plutôt sa version simplifiée, telle qu’elle est présentée ici.
On part de l’entier 1.
➣ On multiplie par n puis on divise par 1,
➣ On multiplie par n-1 puis on divise par 2,
➣ On multiplie par n-2 puis on divise par 3,
… et ainsi de suite …
➣ Pour finir, on multiplie par n-k+1 puis on divise par k.
D’après la formule de Fermat simplifiée, cette séquence d’opérations conduit au calcul de .
Visiblement, il faut écrire une boucle inconditionnelle (for).
Rappelons aussi que (dans la syntaxe de Python 3), le quotient euclidien d’un entier A par un entier non nul B s’écrit : A // B (alors que A / B est une expression de type float).
Combiner la formule du pion et le théorème de Gauss.
Cette formule découle aussitôt de la formule du binôme : à détailler ! Pour l’interprétation combinatoire : considérer un ensemble E de cardinal n et prouver qu’il existe autant de parties de E de cardinal pair que de parties de E de cardinal impair.
Pour c’est une question classique : il s’agit du calcul de la somme des termes dans une colonne du triangle de Pascal (ce calcul est fait ici).
Pour et , on doit pouvoir s’y ramener via la formule du pion.
Etant donnée , on observe que pour tout :
puis :
et encore :
Moi, ça m’évoque franchement quelque chose de connu … pas vous ?
Considérer un ensemble de cardinal 3n et compter de deux manières le nombre de parties de cardinal n.
est la somme de deux endomorphismes de qui commutent ! Il ne reste plus qu’à trouver lesquels …
Observer qu’il existe, parmi les entiers un multiple de et un seul, que l’on peut noter , pour un certain .
Vérifier alors que :
puis trouver deux entiers vérifiant :
et tels qu’aucun d’eux ne soit multiple de .