# Calculateur d'arithmétique modulaire (addition / soustraction / produit / inverse / puissance)

Effectue addition, soustraction, produit, inverse et exponentiation rapide modulo m en BigInt exact (jusqu'à 10¹⁸). Les opérations de base détaillent la réduction et renvoient le représentant canonique dans [0, m−1] ; l'inverse passe par l'algorithme d'Euclide étendu et signale explicitement gcd(a, m) ≠ 1 ; la puissance rapide affiche la table élever-au-carré-et-multiplier bit par bit de l'exposant. Exemples : 17⁵ mod 13 = 10 ; 5⁻¹ mod 18 = 11.

> Page canonique: https://elysiatools.com/fr/tools/modulo-arithmetic-converter

- **Catégorie:** Math & Numbers

- **Mots-clés:** arithmétique modulaire, modulo, congruence, inverse modulaire, exponentiation rapide, euclide étendu, théorie des nombres, reste

## Présentation

Ce calculateur d'arithmétique modulaire réalise des opérations exactes en précision BigInt (jusqu'à 10¹⁸) pour l'addition, la soustraction, la multiplication, l'inverse modulaire et l'exponentiation rapide. Il détaille les étapes de calcul, affiche les décompositions de l'algorithme d'Euclide étendu ou de la méthode d'élévation au carré et ramène chaque résultat à son représentant canonique dans l'intervalle [0, m−1].

## Entrées

- **Opération** (select)
- **Valeur a** (text): First operand (the base in power mode, the value being inverted in inverse mode).
- **Valeur b** (text): Second operand — the exponent in power mode; unused in inverse mode.
- **Module m** (text): Modulus, m ≥ 2. Results are reduced to the canonical range \[0, m−1\].

## Quand l'utiliser

- Résoudre des équations de congruence ou calculer des inverses modulaires pour des exercices de cryptographie et de théorie des nombres.
- Calculer rapidement de grandes puissances modulo m sans dépassement d'entier grâce à l'exponentiation rapide.
- Vérifier manuellement des calculs de réduction canonique modulo m pour des opérations d'addition, de soustraction ou de produit.

## Fonctionnement

- Sélectionnez l'opération souhaitée : addition, soustraction, multiplication, inverse modulaire ou puissance rapide.
- Saisissez la valeur a (l'opérande principal ou la base), la valeur b si l'opération le requiert (le second opérande ou l'exposant), ainsi que le module m (avec m ≥ 2).
- L'outil applique l'algorithme correspondant (Euclide étendu pour l'inverse, carré-et-multiplication pour la puissance) en précision exacte.
- Consultez le résultat final dans l'intervalle canonique \[0, m−1\] ainsi que le détail des étapes de calcul et de réduction.

## Cas d'usage

- Étudiants en mathématiques ou informatique validant des résolutions manuelles d'identités de Bézout et d'inverses modulaires.
- Développeurs et analystes vérifiant des étapes d'algorithmes cryptographiques comme RSA ou Diffie-Hellman.
- Ingénieurs ayant besoin d'effectuer des réductions modulaires exactes sur des entiers volumineux jusqu'à 10¹⁸.

## Questions fréquentes

### Que se passe-t-il si a et m ne sont pas premiers entre eux lors du calcul d'un inverse ?

L'outil applique l'algorithme d'Euclide étendu et indique explicitement qu'aucun inverse modulaire n'existe lorsque le PGCD (gcd(a, m)) est différent de 1.

### Quelle est la limite de grandeur des nombres pris en charge ?

Le calculateur utilise des entiers arbitraires BigInt garantissant des calculs exacts sans perte de précision pour des valeurs allant jusqu'à 10¹⁸.

### Le résultat peut-il être un nombre négatif ?

Non, tous les résultats sont automatiquement ramenés à leur représentant canonique positif ou nul situé dans l'intervalle [0, m−1].

### Le paramètre b est-il requis pour toutes les opérations ?

Non, le champ b est indispensable pour l'addition, la soustraction, la multiplication et la puissance, mais il n'est pas utilisé pour le calcul de l'inverse modulaire.

### Comment l'exponentiation rapide traite-t-elle les grands exposants ?

Elle décompose l'exposant sous sa forme binaire et utilise l'algorithme d'élévation au carré et multiplication successive modulo m pour optimiser le calcul.

## Outils associés

- [Simplificateur d'expressions booléennes (table de Karnaugh)](https://elysiatools.com/fr/tools/boolean-algebra-simplifier): Simplifie les fonctions booléennes en SOM minimale : entrez une expression (A–D, + OU, · ET, ' NON, ≤ 4 variables) ou la liste des minterms Σm ; l'algorithme de Quine-McCluskey extrait les impliquants premiers, retient les essentiels et complète une couverture minimale exacte ; affiche la SOM minimale, la table de Karnaugh en code Gray (2–4 variables), la forme canonique Σm et une vérification sur toutes les affectations. Classiques : AB + A'B → B ; Σm(0,1,2,4,5,6) (3 variables) → B' + C'.
- [Convertisseur de Ratio de Dilution (1:X ↔ 1/X ↔ %)](https://elysiatools.com/fr/tools/dilution-ratio-converter): Convertit entre les notations de dilution de laboratoire : proportion 1:X, fraction 1/X et pourcentage, avec le facteur de dilution et les parties soluté/diluant. Gère les deux conventions de 1:X (X = parties totales, ou 1 partie de soluté + X de diluant) ; avec le volume final, calcule les volumes à mélanger. Exemple classique : 1:5 = 1/5 = 20 % ; pour 100 mL, mélanger 20 mL de concentré + 80 mL de diluant.
- [Algorithme d'Euclide étendu (ax + by = PGCD(a, b))](https://elysiatools.com/fr/tools/extended-euclidean-algorithm): Résout l'identité de Bézout a·x + b·y = PGCD(a, b) pour des entiers de signe quelconque : table complète des étapes de division (chaque ligne vérifie r = a·s + b·t), PGCD et PPCM. Avec le membre droit optionnel c, l'outil devient un solveur d'équations diophantiennes : si PGCD | c, solution particulière et générale x = x₀ + (b/g)t ; sinon, absence de solution entière clairement signalée. Classique : 240 × (−9) + 46 × 47 = 2.
- [Calculateur d'inverse modulaire (Euclide étendu)](https://elysiatools.com/fr/tools/modular-inverse-calculator): Calcule a⁻¹ mod m par l'algorithme d'Euclide étendu : fournit les coefficients de Bézout a·x + m·y = gcd(a, m), la table complète des coefficients progressifs (chaque ligne vérifie r = a·s + m·t) et la vérification a × a⁻¹ ≡ 1 (mod m). Accepte des nombres de taille RSA (jusqu'à 10⁵¹²) et signale clairement quand gcd(a, m) ≠ 1 rend l'inverse inexistant. Classique : en RSA, 17⁻¹ mod 3120 = 2753.
- [Générateur de tables de vérité](https://elysiatools.com/fr/tools/truth-table-generator): Génère la table de vérité complète d'une expression booléenne (jusqu'à 6 variables, 64 lignes) : prend en charge + OU, ^ XOR, ·/*/& ou juxtaposition ET, !/~/' NON et parenthèses ; les variables sont listées alphabétiquement, chaque ligne donne l'affectation et la valeur F, avec les formes canoniques Σm (minterms) et ΠM (maxterms). Classiques : AB + A'C a pour Σm(1,3,6,7) ; A ^ B ^ C est la fonction de parité impaire Σm(1,2,4,7).
- [Convertisseur de Vitesse Angulaire (rad/s / rpm / deg/s / Hz)](https://elysiatools.com/fr/tools/angular-velocity-converter): Conversion de vitesse angulaire : rad/s (base SI) ↔ tr/min (1=2π/60 rad/s) ↔ deg/s (1=π/180 rad/s) ↔ Hz (1 tour/s=2π rad/s). Ici Hz = tour par seconde. Conversion via rad/s avec les quatre équivalents. Réf. : vinyle 33⅓ tr/min≈3,49 rad/s, ralenti moteur ~800 tr/min≈83,8 rad/s.
- [Calculateur de Dimensionnement de Conduit (débit et vitesse)](https://elysiatools.com/fr/tools/duct-size-calculator): Dimensionne un conduit à partir du débit Q et de la vitesse de projet v : section A=Q/v. Circulaire : diamètre D=√(4A/π). Rectangulaire de rapport r=a/b : b=√(A/r), a=r·b, diamètre équivalent ASHRAE D_éq=1,30·(a·b)^0,625/(a+b)^0,25. Débit en m³/s/m³/h/CFM ; résultats en mm et pouces.
- [Calculateur de Limite de Fatigue (Goodman/Gerber/Soderberg)](https://elysiatools.com/fr/tools/fatigue-limit-calculator): Coefficient de sécurité en fatigue avec correction de contrainte moyenne. À partir de σ_a, σ_m et σ_uts, σ_-1, σ_y : trois critères classiques — Goodman modifié (linéaire, conservateur), Gerber (parabolique, meilleur pour les ductiles), Soderberg (via σ_y, le plus conservateur). Le minimum est le valeur gouvernante ; indique si le point est à l'intérieur de la ligne de Goodman.

## Exemples

- [Exemples de Traitement d'Images Web Python](https://elysiatools.com/fr/samples/web-image-processing-python): Exemples de traitement d'images Web Python utilisant PIL/Pillow incluant la lecture, l'enregistrement, le redimensionnement et la conversion de format
- [Exemples de Traitement d'Images Android Java](https://elysiatools.com/fr/samples/android-image-processing-java): Exemples de traitement d'images Android Java incluant lecture/écriture, mise à l'échelle et conversion de format
- [Exemples de Traitement d'Images Android Kotlin](https://elysiatools.com/fr/samples/android-image-processing-kotlin): Exemples de traitement d'images Android Kotlin incluant lecture/écriture, mise à l'échelle et conversion de format
- [Exemples de Traitement d'Images Web Rust](https://elysiatools.com/fr/samples/web-image-processing-rust): Exemples de traitement d'images Web Rust incluant lecture/écriture, redimensionnement et conversion de format
