Rzeczywista złożoność bitowa mnożenia macierzy wynosi

9

Mnożenie macierzy przy użyciu techniki regularnej (iloczyn wewnętrzny rzędów i kolumn) O(n3)) mnożenia i O(n3))wzbogacenie. Jednak przy założeniu, że wpisy o jednakowej wielkości (liczba bitów w każdym wpisie obu macierzy jest mnożona) o wielkościm bitów, operacja dodawania faktycznie się dzieje O(n3)nm)=O(n4m) bitów

Wydaje się więc, że prawdziwa złożoność mnożenia macierzy, jeśli jest mierzona za pomocą złożoności bitowej, powinna wynosić O(n4).

(1)Czy to jest poprawne?

Załóżmy, że tworzy się algorytm, który zmniejsza złożoność bitów do O(n3)+ϵ) zamiast całkowitej liczby mnożeń i dodatków, może to być bardziej rozsądne podejście niż powiedzieć, że łączna liczba mnożeń i dodatków do O(n2)+ϵ) jak próbowali badacze tacy jak Coppersmith i Cohn.

(2)) Czy to prawidłowy argument?

T ....
źródło

Odpowiedzi:

31

Nie, złożoność bitowa mnożenia macierzy jest włączona M.-bit wpisy są nω(logn)O(1)M.(logM.)O(1), gdzie ω<2.4jest najlepiej znanym wykładnikiem mnożenia macierzy. Mnożenie i dodawanieM.-bitowe liczby można wprowadzić w M.(logM.)2)czas. Mnożenie dwóchM.-bitowe liczby dają liczbę, która nie ma więcej niż 2)M.bitów Dodawanien Numery tego M. bitów każdy, daje liczbę, która nie ma więcej niż M.+logn+O(1)bitów (Pomyśl o tym: suma jest co najwyżejn2)M., więc reprezentacja bitowa nie zajmuje więcej niż log(n2)M.)+O(1) bitów.)

Odnośniki do algorytmów szybkiego mnożenia liczb całkowitych można znaleźć w wyszukiwarce internetowej lub w Wikipedii.

Ryan Williams
źródło
Myślę, że mój argument był błędny. Dziękuję Ci. Doceniam to.
T ....