Valuation p-adique
Comptez combien de fois un nombre premier divise un entier : 72 vaut 8 fois 9, il contient donc trois fois le premier 2, sa valuation 2-adique est 3 et la partie restante est 9. Les nombres négatifs sont acceptés. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- N
- 72
- Puissance (W)
- 2
- Valorisation
- 3
- Résidu
- 9
La valuation p-adique est l'exposant arithmétique qui mesure combien de fois un nombre premier p divise un entier n. Les cours d'algèbre, la théorie algébrique des nombres, les problèmes de concours sur les facteurs terminaux et l'analyse p-adique utilisent ce seul entier. Les étudiants le confondent souvent avec la factorisation première complète ou avec la formule de Legendre pour les factorielles. Ce calculateur accepte un n non nul et un premier p, vérifie la primalité, extrait les puissances de p de la valeur absolue de n et renvoie la valuation avec le résidu libre de p et une courte chaîne de formule. Les bases composées ou non premières sont rejetées pour préserver la définition classique.
Ce que mesure la valuation p-adique
De façon équivalente, écrivez la valeur absolue de n sous la forme p à la k multiplié par m, où m est un entier non divisible par p ; alors la valuation vaut k et m porte le signe de n dans ce calculateur comme résidu. Lorsque p ne divise pas n du tout, le plus grand k est zéro et le résidu égale n. Lorsque n est une puissance pure de p, le résidu a une valeur absolue un.
La définition exclut délibérément n égal à zéro. Les manuels de théorie des nombres l'introduisent avant les corps locaux, tandis que le matériel de programmation compétitive l'utilise pour compter les facteurs de deux ou cinq dans un produit, simplifier des fractions modulo une puissance de premier ou tester des parties sans carré après avoir retiré des puissances premières. Renvoyer valuation et residual permet de reconstruire n comme p à la valuation multiplié par residual et de vérifier l'identité sans un second passage de factorisation.
Contrat d'entrée, algorithme, forme de la réponse et erreurs
Le gestionnaire vérifie d'abord que p est au moins deux, puis exécute un test de primalité déterministe par division d'essai. Les composés pairs, les carrés de premiers et tout entier non premier échouent avec un message clair indiquant que p doit être premier ; ces échecs ne sont pas facturés. Zéro pour n est rejeté avec un message indiquant que la valuation p-adique de zéro est indéfinie.
Exemple : n égal à soixante-douze et p égal à deux donne valuation trois et residual neuf car soixante-douze vaut huit fois neuf. Exemple : n égal à quarante-cinq et p égal à deux donne valuation zéro et residual quarante-cinq car deux ne divise pas quarante-cinq. L'algorithme ne divise que par p de façon répétée ; il ne factorise jamais n complètement, de sorte que de grands n hautement composés avec un petit premier p restent rapides.
Où la valuation p-adique est utile
Les salles de classe et les plateformes de tutorat utilisent un calculateur de valuation p-adique pour que les apprenants vérifient l'exposant d'un premier choisi sans écrire une boucle de factorisation complète pour chaque exercice. Les aides à la programmation compétitive ont besoin d'un oracle déterministe qui retire les puissances de p lors de la réduction de fractions, du calcul de multiplicités dans des produits ou de la vérification de noyaux sans carré après suppression des puissances de p.
Les échecs de validation et un p non premier ne consomment pas le solde. Gardez les requêtes dans les bornes publiées, figez valuation et residual dans les tests, et vous obtenez des exposants reproductibles pour les devoirs, les plugins LMS et les workers en périphérie sans déployer votre propre infrastructure symbolique.
Les pages sœurs de théorie des nombres de ce kit couvrent la factorisation première complète, les exposants factoriels via Legendre et les zéros de fin ; cette page répond spécifiquement à ceux qui cherchent la valuation d'un entier pour un seul premier.
Cas d’usage
Carnets p-adiques et corps locaux
Calculez des valuations finies sur les entiers avant de monter des exemples vers Z_p ou Q_p sans embarquer une bibliothèque d'algèbre computationnelle.
Questions fréquentes
Que se passe-t-il si n est zéro ?
La valuation p-adique de zéro est conventionnellement +∞, et non un entier fini, donc zéro est rejeté et non facturé.
Que se passe-t-il si p n'est pas premier ?
Les bases composées, unitaires et négatives sont rejetées ; l'échec de validation n'est pas facturé.
La valuation dépend-elle du signe de n ?
Le résidu conserve le signe de n de sorte que n égale p^valuation multiplié par residual reste vrai.
Quelle est la valuation 2-adique de 72 ?
Elle vaut 3, avec une partie restante de 9. Le premier 2 divise 72 trois fois, car 72 vaut 8 fois 9, et 9 n'est plus divisible par 2.
Que signifie la partie restante ?
C'est ce qui reste une fois tous les facteurs du premier retirés : elle n'est donc plus divisible par lui. En la multipliant par le premier élevé à la valuation, vous retrouvez votre nombre ; 45 avec le premier 2 donne une valuation de 0 et un reste de 45.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/numth/p-adic-valuation \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":72,"p":2}'const res = await fetch("https://api.kit.forhosting.com/numth/p-adic-valuation", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 72,
"p": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/p-adic-valuation",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 72,
"p": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/p-adic-valuation", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":72,"p":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":72,"p":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/p-adic-valuation", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"n": 72,
"p": 2
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.p_adic_valuation",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Écrivez n comme p à la puissance k multiplié par une unité non divisible par p ; ce k est v_p(n). Zéro est rejeté car v_p(0) vaut conventionnellement plus l'infini, et non un entier fini.
Ce que signifie la valuation p-adique et comment v_p(n) est définie
Pour un premier fixé p et un entier n non nul, la valuation p-adique v_p(n) est le plus grand entier k supérieur ou égal à zéro tel que p élevé à k divise encore n. Les n négatifs reçoivent la même valuation que leur valeur absolue car la divisibilité ignore le signe : v_p de moins douze pour p égal à deux est la même que pour douze. Dans la valeur absolue p-adique, la valuation de zéro est prise comme plus l'infini afin que la formule du produit et les propriétés ultramétriques restent propres ; cette API échoue donc avec invalid_input plutôt que d'inventer un code fini pour l'infini. La valuation est additive sur les produits : v_p de a fois b égale v_p de a plus v_p de b, et elle est le bloc de base de la valeur absolue p-adique donnée par p à la puissance moins la valuation.
Contrat d'entrée, algorithme, forme de la réponse et erreurs
Envoyez un corps JSON avec deux entiers obligatoires : n, un entier non nul dont la valeur absolue est au plus un billion (10^12), et p, un premier au moins deux et au plus un billion. Chaque champ peut arriver comme nombre JSON ou comme chaîne de chiffres ; les champs manquants, les fractions, les valeurs non finies et les magnitudes hors plage échouent avec invalid_input en nommant le champ. En cas de succès le corps répète n et p, renvoie valuation comme entier non négatif, residual comme l'entier signé n divisé par p à la valuation, divides comme booléen vrai lorsque la valuation est positive, et formula comme courte chaîne de la forme v_p de n égale k.
Où une API de valuation p-adique apporte de la valeur
Les carnets de théorie algébrique des nombres réduisent des questions locales sur Z_p et Q_p à des valuations finies sur les entiers avant de monter vers des séries p-adiques ; un petit endpoint de parse évite d'importer un système d'algèbre computationnelle pour un contrôle à deux arguments. Comme l'implémentation est du parse pur de niveau A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle ni réseau sortant.
Cas d'intégration
Contrôles en classe et devoirs
Laissez les élèves envoyer n et le premier p et vérifier v_p(n) plus le résidu libre de p par rapport aux méthodes manuelles sans factorisation complète.
Aides concours et scripts
Retirez les puissances d'un premier fixe dans des produits, simplifiez des fractions ou testez la multiplicité avec un endpoint déterministe facturé à l'élément.
Questions techniques
Comment calculer la valuation p-adique avec cette API ?
Envoyez un JSON avec l'entier non nul n et le premier p. En cas de succès la réponse renvoie valuation (l'exposant), residual (n / p^valuation), divides et une courte chaîne de formule.
Combien coûte le calculateur de valuation p-adique ?
L'outil navigateur est gratuit. Les requêtes API utilisent le solde prépayé KIT à $0.002 par appel réussi ; l'entrée invalide et un p non premier ne sont pas facturés.