Diberikan dan , apakah mungkin untuk mendapatkan bit ke - (atau digit dari basis kecil apa pun) daridalam waktu / ruang , di mana adalah beberapa fungsi polinomial dalam dan ?
yaitu Diberikan , (dengan , ), cari bit daridalam .
Catatan: Saya telah menanyakan hal ini di mathoverflow.net di sini dan belum mendapatkan jawaban, jadi saya mengirim silang.
Dari komentar di situs lain, Gene Kopp menunjukkan bahwa seseorang dapat secara efisien menghitung bit orde rendah dengan melakukan aritmatika modular dan bit orde lebih tinggi menggunakan perkiraan Stirling, jadi pertanyaan ini adalah 'seberapa efisienkah seseorang dapat menghitung bit urutan menengah?' .
sumber
Jawaban Suresh mungkin menjawab pertanyaan untuk Anda, tetapi saya pikir saya akan menunjukkan kasus khusus. Anda selalu dapat menghitung hasilnya untuk digit yang kurang signifikan untuk basis apa pun. Ambil sebagai basis kami.p
Jelas, setiap p th istilah dalam faktorial adalah kelipatan dari . Setiap istilah th adalah kelipatan dari , dll. Dengan demikian kekuatan tertinggi yang merupakan faktoradalah . mudah diperkirakan dengan perkiraan Stirlings: . Selanjutnya,, jadi jumlah selalu dapat dihitung secara efisien dengan menjumlahkan sebagai ganti untuk (karenap (p2) p2 p N! Xp=∑⌊logp(N!)⌋i=1⌊Npi⌋ logp(N!) lnN!≈NlnN−N pN⌈logp(N)⌉>N! 1≤i≤N⌈logp(N)⌉ ⌊Npi⌋=0 untuk ).i>⌊logp(N!)⌋
Demikian digit terakhir dariadalah nol dalam basis .Xp N! p
sumber