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?

T ....
la source

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.

Ryan Williams
la source
Je pense que mon argument était erroné. Je vous remercie. J'apprécie cela.
T ....