Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Тест Рабина-Миллера

Пусть n - нечетное и , t - нечетное. Если число n является простым, то при всех выполняется сравнение . Поэтому, рассматривая элементы можно заметить, что люби среди них найдётся равный , либо .

На этом замечании основан следующий вероятностный тест простоты:

1) Выбираем случайное число "a" из интервала {1,.....,n-1} и проверяем с помощью алгоритма Евклида условие (a,n)=1;

2) Если оно не выполняется, то ответ "n - составное".

3) Вычисляем ,

4) Если получили значение , то ответ неизвестен

5) Вычисляем , до тех пор, пока не появится -1;

6) Если ни одно из этих чисел не равно -1, то ответ "n - составное";

7) Если мы достигли -1, то ответ неизвестен.

 

Арифметическая сложность данного теста, очевидно, составляет O(sn).

 

Пример:

Пусть n=97;

n-1=96=32*3=25*3; т.е 2s=25, а t=3;

1) Выбираем случайное число ;

Пусть a = 5, проверяем его: (5,97)=1;

3) Вычисляем ;

;

;

=> => Вывод: Ответ неизвестен, вероятно число простое.

 


Дата добавления: 2015-09-06; просмотров: 94 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
СТАЛЬНОЙ МЭШИН| Загальні положення

mybiblioteka.su - 2015-2024 год. (0.005 сек.)