ForHosting KIT · Outils pour développeurs

Calculateur de Hensel

Le calculateur de relèvement de Hensel reçoit un polynôme entier, une racine connue modulo un nombre premier p et un exposant cible k.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Il applique la forme à racine simple du lemme de Hensel afin d’obtenir l’unique racine compatible modulo p^k. Tous les calculs utilisent une arithmétique entière exacte. Le résultat affiche chaque module, racine et chiffre de correction intermédiaire pour que vous puissiez contrôler ou reproduire le relèvement. La chaîne complète des congruences reste visible.

Saisissez précisément le polynôme et la racine

Fournissez les coefficients du polynôme par degré croissant. Ainsi, [-2, 0, 1] désigne x au carré moins 2 : la première valeur est le terme constant, la deuxième multiplie x et la troisième multiplie x au carré. Indiquez ensuite un nombre premier p, une racine entière et l’exposant cible k. La racine peut être n’importe quel représentant entier ; le calculateur la réduit d’abord au résidu standard compris entre zéro et p moins un. Avant le relèvement, il vérifie que l’évaluation du polynôme en ce résidu vaut zéro modulo p. Il contrôle également que p est bien premier et que le polynôme est de degré positif. Ces vérifications sont nécessaires, car le lemme de Hensel ne recherche pas au hasard une racine modulaire initiale. Il part d’une racine déjà connue au premier niveau premier. Si cette condition échoue, un message d’entrée explicite remplace tout résidu dépourvu de justification mathématique.

Comprenez l’étape de Hensel pour une racine simple

Supposons que la racine courante r convienne modulo p élevé à n. Le candidat compatible suivant s’écrit r plus t fois p élevé à n, où t est un chiffre modulo p. Le quotient de la valeur courante du polynôme par p élevé à n, multiplié par l’inverse de la dérivée, détermine ce chiffre de correction. Le calculateur répète l’opération niveau après niveau jusqu’à p^k. L’hypothèse essentielle exige que la dérivée formelle à la racine initiale ne soit pas nulle modulo p. Elle devient alors inversible, et chaque correction existe de manière unique. Si la dérivée s’annule modulo p, cette capacité renvoie volontairement une erreur. Les racines singulières demandent une analyse plus générale : aucun relèvement, plusieurs relèvements ou un comportement variable aux puissances suivantes sont possibles. Choisir discrètement une branche dénaturerait le théorème et donnerait une fausse impression d’unicité aux calculs ultérieurs.

Lisez et contrôlez le relèvement obtenu

Le champ principal de la racine contient le plus petit représentant non négatif modulo la valeur p^k renvoyée. Les deux valeurs sont des chaînes décimales afin de rester exactes au-delà de la plage numérique sûre de JavaScript. L’exposant confirme le niveau demandé, derivative_mod_p mémorise le résidu non nul de la dérivée utilisé et verified indique si la substitution directe donne zéro modulo le module final. Le tableau lifts commence à l’exposant un et répertorie chaque racine et chaque module successifs. Dès la deuxième entrée, correction_digit est le chiffre en base p ajouté à cette étape. Cette trace facilite la vérification d’exercices, d’exemples détaillés, de tests algorithmiques et de notes de recherche reproductibles. Vous pouvez réévaluer le polynôme à toute racine affichée et vérifier sa divisibilité par le module associé. Le résultat est l’unique relèvement congruent à la racine initiale fournie modulo p ; une autre racine mène généralement à une branche p-adique différente.

Vérifier un exercice de théorie des nombres

Comparez chaque chiffre de correction à votre calcul manuel et contrôlez le résidu final modulo la puissance première demandée.

Créer des vecteurs modulaires exacts

Produisez des racines déterministes modulo des puissances premières croissantes pour tester un code d’algèbre symbolique ou d’arithmétique modulaire.

Explorer une branche p-adique

Suivez une racine simple au fil des puissances successives de p et examinez la correction en base p de chaque niveau.

Dans quel ordre faut-il fournir les coefficients ?

Par degré croissant. Le tableau [a0, a1, a2] représente a0 + a1*x + a2*x^2.

Pourquoi p doit-il être premier ?

Cette capacité applique le lemme de Hensel standard pour une racine simple sur les puissances d’un nombre premier. Un module initial composé exige une autre méthode.

Pourquoi une dérivée nulle produit-elle une erreur ?

La formule à racine simple exige un inverse de la dérivée modulo p. Si elle s’annule, le relèvement peut être absent ou multiple ; le calculateur ne fait donc aucune supposition.

Pourquoi la racine et le module sont-ils des chaînes ?

Les puissances premières peuvent dépasser la plage des entiers sûrs. Les chaînes décimales conservent exactement chaque chiffre dans JSON et le navigateur.

La racine initiale doit-elle être comprise entre zéro et p moins un ?

Non. Tout représentant entier sûr est accepté puis réduit modulo p avant la validation et le relèvement.

Quel est le tarif ?

Le calcul dans le navigateur est gratuit. Une requête API coûte $0.002.

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.

POSThttps://api.kit.forhosting.com/numth/hensel-lift

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é.

curl -X POST https://api.kit.forhosting.com/numth/hensel-lift \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"coefficients":[-2,0,1],"root":3,"p":7,"k":4}'
{
  "coefficients": [
    -2,
    0,
    1
  ],
  "root": 3,
  "p": 7,
  "k": 4
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.hensel_lift",
  "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.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →