ForHosting KIT · Mathématiques

Produit de Kronecker

Deux matrices 2×2 donnent un produit de Kronecker 4×4 composé de copies mises à l'échelle de la seconde. Saisissez les deux matrices ligne par ligne et obtenez A⊗B avec la taille de chaque facteur, même si leurs formes diffèrent. 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

Le produit tensoriel de Kronecker de deux matrices est la matrice par blocs obtenue en mettant à l'échelle le second facteur tout entier par chaque coefficient du premier. Les étudiants rencontrent cette construction en algèbre multilinéaire, en information quantique (opérateurs à deux qubits écrits comme produits de portes à un qubit), en théorie des graphes (produits de Kronecker de matrices d'adjacence) et en traitement discret du signal (filtres séparables). Ce calculateur accepte deux matrices rectangulaires sous forme de lignes de nombres finis, construit le produit de Kronecker par une boucle déterministe à quatre indices et renvoie la matrice produit avec les formes des facteurs.

Ce qu'est le produit tensoriel de Kronecker — et ce qu'il n'est pas

Le produit de Kronecker est une construction par blocs, non un produit intérieur ligne-colonne. Écrivez A comme un tableau m par n de nombres et B comme un tableau p par q. Cette définition n'exige pas que les dimensions intérieures de A et de B coïncident : une matrice deux par trois peut être tensorisée avec une ligne un par deux, ou une colonne avec une carrée, et le produit est toujours défini tant que les deux facteurs sont rectangulaires et finis.

C'est le premier contraste avec la multiplication matricielle ordinaire, indéfinie à moins que les colonnes de A n'égalent les lignes de B. Ce n'est pas non plus le produit de Hadamard, qui multiplie des coefficients homologues et exige la même forme, ni les constructions de Khatri–Rao ou de somme de Kronecker qui apparaissent dans d'autres recoins de l'algèbre multilinéaire.

L'ordre compte : A tenseur B et B tenseur A n'ont les mêmes coefficients qu'après un réordonnancement connu des lignes et des colonnes, et ne sont égaux en tant que matrices que dans des cas particuliers, par exemple lorsque les deux facteurs sont un par un.

Une vérification classique à entiers est le couple A égal à [[1, 2], [3, 4]] et B égal à [[0, 5], [6, 7]], dont le produit de Kronecker est la matrice quatre par quatre de première ligne [0, 5, 0, 10] et de dernière ligne [18, 21, 24, 28]. Ce calculateur applique exactement cette règle de blocs du manuel, arrondit chaque entrée publiée à la précision demandée et refuse d'inventer un résultat lorsqu'une cellule manque, est irrégulière ou n'est pas finie.

Où sert le produit de Kronecker

Les salles de classe et les plateformes de tutorat utilisent un calculateur du produit tensoriel de Kronecker pour que les apprenants vérifient une construction par blocs sans développer à la main chaque copie mise à l'échelle de B et sans confondre l'opération avec le produit ordinaire A fois B. Les générateurs d'examens ont besoin d'un oracle déterministe qui marque une cellule non finie comme erreur plutôt que de renvoyer une matrice contenant NaN, qu'un correcteur défectueux pourrait traiter comme un quasi-succès.

Les scripts de traitement du signal et d'imagerie construisent des noyaux séparables de la même façon, et les algorithmes de graphes qui prennent le produit de Kronecker de matrices d'adjacence ont besoin d'un chemin explicite et documenté pour des exemples entiers modestes. Une validation échouée ne consomme pas de solde.

Gardez les requêtes dans la limite d'entrée vingt par vingt et le plafond de produit deux cents par deux cents, figez le produit arrondi dans les tests, et vous obtenez des matrices de Kronecker reproductibles pour les devoirs, les greffons LMS et les workers en bordure, sans dresser votre propre infrastructure de calcul symbolique.

Corrigés de devoirs et d'examens

Construisez A⊗B pour des matrices entières de manuel, vérifiez la forme (m·p)×(n·q) et contrôlez chaque bloc face à une copie de B mise à l'échelle à la main.

Quantique, graphes et noyaux séparables

Composez des opérateurs à deux qubits, des graphes de Kronecker ou des filtres séparables lorsque les deux facteurs tiennent dans les limites publiées de lignes et de colonnes.

En quoi le produit tensoriel de Kronecker diffère-t-il de la multiplication matricielle ordinaire ?

La multiplication ordinaire exige que les colonnes de A égalent les lignes de B et produit une matrice m×p de produits scalaires ligne-colonne. Le produit de Kronecker A⊗B est toujours défini pour A et B rectangulaires : il pave des copies mises à l'échelle de B et a la forme (m·p)×(n·q).

Que se passe-t-il si une matrice contient Infinity ou NaN ?

Chaque coefficient des deux facteurs doit être un nombre fini ; les valeurs non finies ne sont pas facturées et n'apparaissent jamais dans un produit.

A⊗B est-il égal à B⊗A ?

Pas en général. Les deux produits contiennent les mêmes nombres après une permutation connue des lignes et des colonnes, mais ne sont égaux en tant que matrices que dans des cas particuliers. Cet outil calcule toujours A⊗B dans cet ordre.

Quelles tailles de matrices sont prises en charge ?

Chaque facteur peut avoir jusqu'à 20 lignes et 20 colonnes. Le produit est rejeté s'il dépasserait 200 lignes ou 200 colonnes.

Les deux matrices doivent-elles avoir des tailles compatibles pour le produit de Kronecker ?

Non. Contrairement à la multiplication ordinaire, deux matrices rectangulaires quelconques se combinent : une matrice 2×3 fonctionne avec une ligne 1×2. Si A a m lignes et n colonnes et B en a p et q, le résultat a m·p lignes et n·q colonnes.

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/math/tensor-product

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/math/tensor-product \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"a":[[1,2],[3,4]],"b":[[0,5],[6,7]]}'
{
  "a": [
    [
      1,
      2
    ],
    [
      3,
      4
    ]
  ],
  "b": [
    [
      0,
      5
    ],
    [
      6,
      7
    ]
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "math.tensor_product",
  "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.

max_rows20
max_cols20
max_product_rows200
max_product_cols200
max_abs_entry1000000000000
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.

Si A est m par n et B est p par q, A tenseur B est la matrice (m fois p) par (n fois q) dont le bloc (i, j) vaut a_ij fois B. Une cellule non finie est rejetée par invalid_input au lieu de devenir silencieusement NaN ou Infinity. Aucun réseau, aucun hasard, et un contrat que vous pouvez figer dans les tests à $0.002 par appel réussi.

Ce qu'est le produit tensoriel de Kronecker — et ce qu'il n'est pas

Alors A tenseur B est la matrice haute et large obtenue en remplaçant chaque coefficient a_ij de A par le bloc mis à l'échelle tout entier a_ij fois B. Le résultat a donc m fois p lignes et n fois q colonnes, et l'entrée à la ligne i fois p plus r et à la colonne j fois q plus c vaut exactement a_ij fois b_rc.

Contrat d'entrée, forme de la réponse et échecs non finis

Le champ a est le facteur gauche : un tableau non vide de lignes, chaque ligne un tableau non vide de nombres finis, toutes les lignes de même longueur pour que la matrice soit rectangulaire. Le champ b est le facteur droit sous la même forme par lignes. La precision facultative, entre zéro et quinze décimales, arrondit chaque entrée publiée du produit ; la valeur par défaut est dix. Il n'y a ni coercition silencieuse de null vers zéro, ni diffusion d'un scalaire en matrice. Une validation échouée n'est pas facturée. Envoyez par POST un corps JSON avec deux matrices obligatoires. Les alias matrix_a, left et A pour le premier facteur et matrix_b, right et B pour le second sont acceptés afin que tableurs, chaînes de requête et formulaires typés réutilisent le même contrat. Chaque cellule peut arriver comme nombre JSON ou comme chaîne numérique ; les chaînes vides, les objets et les jetons non finis (Infinity, NaN ou une chaîne qui ne s'analyse pas en décimal fini) échouent avec invalid_input en nommant le chemin du champ en faute, par exemple a[1][0]. Les entrées sont plafonnées à vingt lignes et vingt colonnes chacune, et le produit est rejeté s'il dépasserait deux cents lignes ou deux cents colonnes, afin qu'une seule requête tienne dans un isolate Worker même si la forme de Kronecker multiplie les dimensions des facteurs. En cas de succès le corps renvoie product comme matrice par blocs sous la même forme imbriquée, les facteurs renvoyés a et b, les quatre nombres de forme rows_a, cols_a, rows_b et cols_b, les dimensions du produit, la précision utilisée, une courte chaîne de formule documentant la règle à quatre indices, et les maxima d'entrée publiés. Associez la réponse à votre propre composition si vous avez besoin de crochets de Kronecker ornés ; ce point d'accès ne renvoie que des nombres JSON et n'émet ni graphiques ni réécritures symboliques.

Où une API de produit de Kronecker gagne sa place

Les carnets d'information quantique écrivent des opérateurs à deux qubits comme produits de Kronecker de matrices à un qubit ; une petite API parse permet à une page de leçon de vérifier X ⊗ I ou H ⊗ H sans tirer un système d'algèbre informatique complet. Parce que l'implémentation est parse de niveau A pure, chaque appel réussi coûte le prix de base publié $0.002, sans jetons de modèle et sans réseau sortant.

Fixtures déterministes pour CI

Générez des produits de Kronecker reproductibles pour les tests unitaires sans maintenir à la main des développements à quatre indices ni des contrôles de non-finitude.

Combien coûte le calculateur de produit tensoriel ?

L'outil du navigateur est gratuit. Les requêtes API utilisent un solde KIT prépayé à $0.002 par appel réussi ; une entrée invalide n'est pas facturée.

Consulter la documentation complète du KIT →