To wydaje się pytaniem, które powinno mieć łatwą odpowiedź, ale nie mam ostatecznego:
Jedynie podzielenie przez będzie wymagać czasu , gdzie jest złożoność mnożenia. Ale czy można wykonać nieco szybciej?
To wydaje się pytaniem, które powinno mieć łatwą odpowiedź, ale nie mam ostatecznego:
Jedynie podzielenie przez będzie wymagać czasu , gdzie jest złożoność mnożenia. Ale czy można wykonać nieco szybciej?
Odpowiedzi:
Shoup (Rozdział 3.3.5, Twierdzenie 3.3, s. 62) wyznacza granicę dla obliczenia reszty czasie gdzie oraz .
Sądzę, że jeśli zarówno i są mniej więcej liczbami bitowymi, to (a zatem ) powinno być raczej małe, dając .
Jeśli jest liczbą bitową, a jest względnie małe, wówczas mnożenie powinno być szybsze.