La vraie complexité des bits de la multiplication matricielle est


9

La multiplication matricielle utilisant la technique régulière (produit interne ligne-colonne) prend multiplications et additions. Cependant, en supposant des entrées de taille égale (le nombre de bits dans chaque entrée des deux matrices étant multiplié) de bits de taille , l'opération d'addition se produit en fait sur bits.O ( n 3 ) m O ( n 3 n m ) = O ( n 4 m )O(n3)O(n3)mO(n3nm)=O(n4m)

Il semble donc que la vraie complexité de la multiplication matricielle si elle est mesurée via la complexité des bits soit .O(n4)

(1) Est-ce correct?

En supposant que si l'on crée un algorithme qui réduit la complexité des bits à plutôt que les multiplications et additions totales, cela pourrait être une approche plus saine que de réduire les multiplications et additions totales à tel que tenté par des chercheurs tels que Coppersmith et Cohn.O ( n 2 + ϵ )O(n3+ϵ)O(n2+ϵ)

(2) Est-ce un argument valable?

Réponses:


31

Non, la complexité en bits de la multiplication matricielle sur les entrées à bits est , où est l'exposant de multiplication de matrice le plus connu. La multiplication et l'ajout de nombres à bits peuvent être effectués en fois. La multiplication de deux nombres à bits donne un nombre qui ne dépasse pas bits. L'ajout de nombres de bits chacun, donne un nombre qui n'a pas plus de bits. (Pensez-y: la somme est au plus , donc la représentation binaire ne prend pas plus den ω ( log n ) O ( 1 )M ( log M ) O ( 1 ) ω < 2,4 M M ( log M ) 2 M 2 M n M M + log n + O ( 1 ) n 2 M log ( n 2 M ) + O ( 1 )Mnω(logn)O(1)M(logM)O(1)ω<2.4MM(logM)2M2MnMM+Journaln+O(1)n2MJournal(n2M)+O(1) morceaux.)

Des références à des algorithmes de multiplication d'entiers rapides peuvent être trouvées avec une recherche sur le Web ou wikipedia.


Je pense que mon argument était erroné. Je vous remercie. J'apprécie cela.
T ....
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.