wcl.AleX |
Реализация алгоритма Миллера Рабина в математике 27.03.2011, 01:57 |
|
02/03/10 73
|
У меня возникла такая проблема в программе Mathematica. В этой программе есть функция PrimeQ[], которая, собственно и проверяет числа на простоту. Но я хочу написать собственную программу,такого же типа. Первым этапом я нашёл в википедии псевдокод программы. Довольно просто можно получить значения S и T. Вот начало программы
Код: m = 2^200 + 3; s = 1; While[True, If[Mod[m - 1, 2^s] > 0, Break[]]; s++]; t = (m - 1)/(2^(s - 1));
Но вот дальше возникают проблемы. Программа не хочет возводить случайное число A в степень T. Пишет, что число имеет слишком много десятичных знаков, даже если использовать не случайное число, а очень маленькое AE[2,23] Но ведь как-то решена эта проблема при создании функции PrimeQ[] Если у кого-то есть идеи в написании программы, с удовольствие прочитаю
|
|
|
|
|
arseniiv |
Re: Реализация алгоритма Миллера Рабина в математике 21.04.2011, 22:19 |
|
Заслуженный участник |
|
27/04/09 28128
|
В алгоритме случайно не возведение в степень по модулю требуется (вижу Mod)? Тогда используйте PowerMod.
|
|
|
|
|
|
Страница 1 из 1
|
[ Сообщений: 2 ] |
|
Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы