- Наивная проверка простоты за $\mathcal{O}(\sqrt{n})$
- Тест простоты Ферма
- Тест простоты Миллера-Рабина
- Тест простоты Люка-Лемера ($2^p-1$)
- Тест простоты Люка-Лемера-Ризеля ($k \cdot 2^n - 1,\ k<2^n$)
- Тест Люка, сильный тест Люка, улучшенный сильный тест Люка
- Тест простоты Бейли-Померанца-Селфриджа-Уогстаффа (BPSW), основанный на: тесте Ферма, тесте Миллера-Рабина
- Тест простоты Прота ($k \cdot 2^n + 1,\ k<2^n$)
- Поиск минимального простого не меньшего $k$ (перебор + тест простоты)
- Генерация случайного простого на отрезке (перебор + тест простоты)
- Генерация случайного простого методом Маурера (с сертификатом простоты)
- Наивная факторизация за $\mathcal{O}(\sqrt{n})$
- Факторизация Ферма
- Ро-алгоритм Полларда
-
$p-1$ - алгоритм Полларда
- Алгоритм Диксона
- Вычисление символа Якоби $\left( \frac{a}{n} \right)$ за $\mathcal{O}(\log \min(a,n))$
- Вычисление $n$-го члена последовательности Люка за $\mathcal{O}(\log n)$
- Решето Эратосфена за $\mathcal{O}(n)$ (поиск минимального простого делителя для всех до $n$)
- Склонируйте репозиторий:
git clone https://github.com/crazyilian/big-prime-numbers
cd big-prime-numbers
- Создайте директорию для сборки
- Сконфигурируйте и соберите проект