Bagaimana seseorang bisa berakhir dengan eksponen non-integer dalam kompleksitas waktu? (mis. )

8

Secara berkala saya menemukan kalimat seperti

"Varian Winograd [20] dari algoritma ini, yang kompleksitas asimptotiknya juga dianggap" (dari https://www.cise.ufl.edu/~sahni/papers/strassen.pdf )O(n2.81)

Saya memahami secara intuitif bagaimana kita berakhir dengan kompleksitas seperti O(n2) dan O(nlogn) karena saya dapat melihat bagaimana loop dan pohon bekerja. Tetapi saya tidak tahu bagaimana akhirnya mendapatkan kompleksitas dengan desimal. Adakah yang bisa memberi saya contoh bagaimana ini terjadi?

Joe
sumber

Jawaban:

9

Kompleksitas waktu berjalan dari algoritma Strassen diberikan oleh pengulangan (Dengan case dasar yang sesuai.) Solusi dari perulangan ini adalah .

T(n)=7T(n/2)+O(n2).
T(n)=O(nlog27)

Algoritma Strassen mengalikan dua matriks dengan menguraikannya menjadi empat masing-masing matriks, menghitung tujuh kombinasi linear dari masing-masing matriks yang lebih kecil, katakan , komputasi secara rekursif , dan menghitung empat matriks hasil dengan mengambil kombinasi linear dari matriks . Begitulah waktu berjalan ini terjadi. Jika Anda ingin mempelajari lebih lanjut, ada banyak informasi di luar sana tentang algoritma Strassen. Omong-omong, ada algoritma yang secara asimptotik lebih cepat untuk perkalian matriks, juara saat ini adalah Le Gall .n×nA,B(n/2)×(n/2)(Ai,Bi)i=1,,7Ci=AiBi(n/2)×(n/2)Ci

Yuval Filmus
sumber
Saya pikir saya sedang mencari jawabannya - 'Anda mendapatkan desimal, dalam hal ini, dengan menyelesaikan hubungan perulangan ini.' - Sebenarnya saya mencoba untuk mengajukan pertanyaan yang sedikit lebih umum tentang keadaan di mana ini terjadi. Apakah relasi perulangan adalah satu-satunya cara yang memungkinkan seseorang mendapatkan eksponen non-integer?
Joe
1
Ada beberapa cara lain. Misalnya, dalam algoritma aliran jaringan, beberapa algoritma iteratif mungkin menyatu dalam langkah . Contoh lain adalah polinomial Chebyshev, yang berperilaku "seperti" polinomial derajat tetapi memiliki derajat . Mungkin ada lebih banyak contoh, dan dalam hal apa pun tidak ada alasan untuk daftar yang lengkap - ide-ide baru muncul setiap saat. ndd
Yuval Filmus