ForHosting KIT · Mathématiques

Formes quadratiques binaires réduites par discriminant

Liste les formes réduites, primitives et définies positives ax² + bxy + cy² d'un discriminant négatif : −23 donne trois formes, [1, 1, 6], [2, −1, 3] et [2, 1, 3], son nombre de classes vaut donc 3. Calcul entier exact uniquement. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
Discriminant
-23
Vous obtenez
Quantité
3

Ce calculateur répertorie les représentants réduits canoniques des formes quadratiques binaires entières, primitives et définies positives pour un discriminant négatif choisi. Saisissez un discriminant valide afin d’obtenir chaque triplet de coefficients [a, b, c], leur nombre et le discriminant dans le résultat. Le calcul est exact, déterministe et repose sur l’arithmétique entière. Vous pouvez ainsi vérifier des exemples de nombres de classes, préparer des exercices, explorer les classes d’équivalence et contrôler des calculs manuels sans installer de logiciel d’algèbre symbolique ni consulter une base mathématique distante.

Ce que répertorie le calculateur

Une forme quadratique binaire est une expression ax² + bxy + cy² à coefficients entiers. Son discriminant vaut D = b² − 4ac. Lorsque D est négatif et a positif, la forme est définie positive.

Le calculateur renvoie les formes primitives, pour lesquelles gcd(a, b, c) = 1, et choisit les représentants réduits vérifiant |b| ≤ a ≤ c. Aux frontières, il applique la convention b ≥ 0 si |b| = a ou a = c. Ces conditions rendent la liste finie et donnent un représentant standard de chaque classe d’équivalence propre.

Chaque résultat présente les coefficients séparément et sous la notation [a, b, c]. Le nombre indiqué correspond aux formes primitives réduites trouvées pour le discriminant fourni.

Choisir et valider un discriminant

Saisissez un entier négatif congru à 0 ou 1 modulo 4. Cette condition est nécessaire puisque b² vaut toujours 0 ou 1 modulo 4. Ainsi, −23 est valide car il vaut 1 modulo 4, tandis que −22 n’est pas un discriminant quadratique.

Le calculateur refuse zéro, les valeurs positives, fractionnaires ou non sûres et celles hors de la limite publiée. Le discriminant ne doit pas nécessairement être fondamental : le filtre des formes primitives s’applique toujours. Certains discriminants valides n’ont aucun représentant primitif ; le résultat contient alors une liste vide et le nombre zéro, sans signaler d’erreur.

Une énumération exacte et reproductible

L’algorithme découle directement de la théorie de la réduction. Pour une forme réduite définie positive, les inégalités donnent a ≤ √(|D|/3), donc une borne finie pour la boucle externe. Pour chaque a possible, le calculateur teste les entiers b de −a à a, respecte la parité requise et calcule c par (b² − D)/(4a).

Un candidat est conservé uniquement si c est entier, si a ≤ c, si la convention de signe aux frontières est respectée et si les trois coefficients ont un plus grand commun diviseur égal à un. Tous les tests décisifs utilisent une arithmétique entière exacte. Les résultats sont triés par a croissant, puis par b croissant.

Vérifier un exercice de nombre de classes

Comparez une liste calculée à la main à une énumération complète et ordonnée de manière cohérente.

Explorer les discriminants

Observez l’évolution des triplets et des nombres entre discriminants négatifs fondamentaux ou non.

Quelles entrées sont valides ?

Utilisez un entier négatif congru à 0 ou 1 modulo 4 et compris dans la plage publiée.

Que signifie primitive ?

Une forme [a, b, c] est primitive lorsque le plus grand commun diviseur de ses trois coefficients vaut un.

Que signifie réduite ici ?

Le résultat vérifie |b| ≤ a ≤ c, avec b non négatif lorsqu’une égalité de frontière se produit.

Les doublons équivalents sont-ils inclus ?

Non. Les conditions de réduction choisissent un représentant par classe d’équivalence propre.

Un discriminant valide peut-il ne donner aucune forme ?

Oui. Un discriminant valide non fondamental peut ne posséder aucun représentant primitif ; une liste vide est alors renvoyée, sans erreur.

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/reduced-binary-forms

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/reduced-binary-forms \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"discriminant":-23}'
{
  "discriminant": -23
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.reduced_binary_forms",
  "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.

min_discriminant-10000000
max_discriminant-3
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.

Choisir et valider un discriminant

L’API accepte aussi l’alias court d, même si discriminant reste plus clair dans du code enregistré.

Une énumération exacte et reproductible

Sans réseau, hasard, horloge, base de données ni table cachée, le calcul fonctionne de façon identique dans le navigateur et via l’API pour $0.002 par requête.

Créer des jeux d’essai exacts

Produisez des données déterministes pour les cours de théorie des nombres, les scripts et les tests de régression.

Quel est le tarif ?

Vous pouvez l’exécuter gratuitement dans le navigateur de cette page ou payer $0.002 par requête API.

Consulter la documentation complète du KIT →