# Калькулятор функции Кармайкла λ(n)

Вычисляет функцию Кармайкла λ(n) — показатель мультипликативной группы (Z/nZ)*, то есть наименьшее k, при котором a^k ≡ 1 (mod n) для всех a, взаимно простых с n. Строится по разложению: λ(2)=1, λ(4)=2, λ(2^k)=2^(k−2) (k ≥ 3), λ(p^k)=φ(p^k) для нечётных простых, затем НОК по компонентам; рядом даются φ(n), наличие первообразного корня и критерий Корсельта для распознавания чисел Кармайкла. Классика: λ(561) = 80 (561 — наименьшее число Кармайкла), а λ(8) = 2 < φ(8) = 4.

> Каноническая страница: https://elysiatools.com/ru/tools/carmichael-function

- **Категория:** Math & Numbers

- **Ключевые слова:** функция кармайкла, показатель группы, мультипликативная группа, число кармайкла, критерий корсельта, первообразный корень, теория чисел

## Обзор

Калькулятор функции Кармайкла λ(n) находит показатель мультипликативной группы вычетов (Z/nZ)* — наименьшую универсальную степень k, для которой a^k ≡ 1 (mod n) для любого взаимно простого с n числа a. Инструмент раскладывает число на простые множители, вычисляет λ(p^k) для каждой компоненты, определяет НОК показателей, сравнивает результат с функцией Эйлера φ(n), проверяет наличие первообразного корня и тестирует число по критерию Корсельта на принадлежность к числам Кармайкла.

## Входные данные

- **Число n** (text): Positive integer, 1 ≤ n ≤ 10¹² (trial-division factorization bound).
- **Уровень детализации** (select)

## Когда использовать

- При исследовании структуры мультипликативной группы (Z/nZ)* и определении ее экспоненты.
- При проверке составных чисел на свойства чисел Кармайкла с помощью критерия Корсельта.
- При анализе криптографических схем на базе RSA для вычисления оптимального периода экспоненты d = e⁻¹ mod λ(n).

## Как это работает

- Выполняет факторизацию входного целого числа n (до 10¹²) на простые множители p₁^k₁ · ... · p_m^k_m.
- Вычисляет значение λ для каждого множителя: λ(2)=1, λ(4)=2, λ(2^k)=2^(k−2) при k ≥ 3 и λ(p^k)=φ(p^k) = p^(k−1)(p−1) для нечётных простых p.
- Находит общее значение λ(n) как наименьшее общее кратное (НОК) показателей всех простых сомножителей и сравнивает его с функцией Эйлера φ(n).
- При выборе расширенной детализации выполняет модульное возведение в степень a^λ(n) mod n для набора взаимно простых элементов.

## Сценарии использования

- Оптимизация закрытой экспоненты RSA через вычисление наименьшего общего кратного λ(n) = lcm(p−1, q−1).
- Проверка теоретико-числовых гипотез и классификация псевдопростых чисел Ферма и чисел Кармайкла.
- Учебные демонстрации отсутствия циклической структуры в группах вида (Z/2^k Z)* при k ≥ 3.

## Частые вопросы

### Чем функция Кармайкла λ(n) отличается от функции Эйлера φ(n)?

Функция φ(n) задает порядок всей группы, а λ(n) — наименьший общий показатель степени, обнуляющий мультипликативную группу по модулю n; λ(n) всегда делит φ(n) и часто строго меньше нее.

### Как определить наличие первообразного корня у числа n?

Первообразный корень существует тогда и только тогда, когда λ(n) = φ(n), что возможно для n = 1, 2, 4, p^k и 2p^k (где p — нечетное простое).

### Что означает выполнение критерия Корсельта?

Если составное бесквадратное число n удовлетворяет условию (p − 1) | (n − 1) для всех простых делителей p (что эквивалентно λ(n) | (n − 1)), оно является числом Кармайкла.

### Каково максимальное значение n, поддерживаемое калькулятором?

Калькулятор поддерживает положительные целые числа n в диапазоне от 1 до 10¹².

### Зачем использовать λ(n) вместо φ(n) в RSA?

Использование λ(n) = НОК(p−1, q−1) вместо φ(n) = (p−1)(q−1) дает минимальный секретный показатель d, что сокращает размер вычислений при сохранении корректности расшифрования.

## Связанные инструменты

- [Китайская теорема об остатках (система сравнений)](https://elysiatools.com/ru/tools/chinese-remainder-theorem): Решает систему сравнений x ≡ rᵢ (mod mᵢ) (2–20 уравнений) обобщённой китайской теоремой об остатках с попарным слиянием: для попарно взаимно простых модулей объединённый модуль равен произведению, для не взаимно простых, но совместимой системы — НОК, а для несовместимой системы явно сообщается об отсутствии решений. Каждое сравнение проверяется подстановкой в итоговое решение. Классика: x ≡ 2 (mod 3), x ≡ 3 (mod 5), x ≡ 2 (mod 7) → x = 23 (mod 105).
- [Генератор перестановок / сочетаний / подмножеств (с повторами)](https://elysiatools.com/ru/tools/combinatorial-generation): Генерирует перестановки, сочетания и подмножества мультимножества с автодедупликацией в лексикографическом порядке: перестановки — методом next_permutation с точным счётом n!/Π(mᵢ!); сочетания — все различные k-подмультимножества, счёт — коэффициент при x^k в Π(1+x+…+x^mᵢ) (C(n,k), если все элементы различны); подмножества — все подмультимножества со счётом Π(mᵢ+1) (2ⁿ, если различны), включая пустое. До 12 элементов, показ ограничен 200 записями, но счёт всегда точен; для сочетаний требуется 1 ≤ k ≤ n. Классика: перестановки \[A, A, B\] → 3!/2! = 3 (AAB, ABA, BAA); подмножества \[A, A, B\] → (2+1)(1+1) = 6.
- [Калькулятор функции Эйлера φ(n)](https://elysiatools.com/ru/tools/euler-totient-function): Вычисляет функцию Эйлера φ(n) — количество целых чисел в \[1, n\], взаимно простых с n. Раскладывает n на простые множители пробным делением и точно считает φ(n) = n · Π(1 − 1/p) (n ≤ 10¹²); можно вывести первые 60 взаимно простых чисел и напоминание теоремы Эйлера a^φ(n) ≡ 1 (mod n). Классика: φ(36) = 12 (36 = 2² × 3²); для простого n φ(n) = n − 1, например φ(97) = 96.
- [Конвертер Дробей и Десятичных](https://elysiatools.com/ru/tools/fraction-decimal-converter): Преобразование между дробями и десятичными числами с поддержкой смешанных чисел, неправильных дробей и различных десятичных форматов
- [Решатель матричных игр с нулевой суммой (седловая точка / линейное программирование)](https://elysiatools.com/ru/tools/game-theory-zero-sum): Решает матричные игры 2–6 × 2–6 с нулевой суммой (платёжная матрица принадлежит игроку-строке — максимизирующему; игрок-столбец платит): сначала проверка седловой точки (если максимин минимумов строк равен минимаксу максимумов столбцов, существует равновесие в чистых стратегиях и перечисляются все седловые клетки); иначе матрица сдвигается так, чтобы все элементы были ≥ 1, и однофазным симплексом (базис из остаточных переменных, правило Бланда) решается max Σz при Bz ≤ 1: прямой ответ даёт смешанную стратегию q игрока-столбца, а двойственные теневые цены — в точности решение y игрока-строки; значение сдвигается обратно, выводятся x, q, v с численной проверкой гарантий (xᵀA ≥ v, Aq ≤ v) и равенства минимакса. Классика: «орлянка» \[\[1,-1\],\[-1,1\]\] → значение 0, обе стороны смешивают 0.5/0.5.
- [Калькулятор обратного преобразования Лапласа (простые дроби)](https://elysiatools.com/ru/tools/inverse-laplace-calculator): Вычисляет обратное преобразование Лапласа для F(s) = N(s)/D(s) (правильная дробь, степень знаменателя ≤ 6): находит корни знаменателя, группирует их по кратности и сопряжённым парам, решает линейную систему по коэффициентам многочленов для разложения на простые дроби и обращает каждое слагаемое по таблице (A/(s−r)→Ae^(rt), A/(s−r)^j→At^(j−1)e^(rt)/(j−1)!, (Bs+C)/((s−α)²+β²)→e^(αt)\[Bcos(βt)+…sin(βt)\]). Классика: 1/(s²+3s+2) → e^(−t)−e^(−2t); (3s+5)/(s²+4) → 3cos(2t)+2,5sin(2t).
- [Калькулятор преобразования Лапласа (таблица пар)](https://elysiatools.com/ru/tools/laplace-transform-calculator): Табличное преобразование Лапласа F(s) = ∫₀^∞ e^(−st)f(t)dt: 14 стандартных пар (1, t, tⁿ, e^(at), tⁿe^(at), sin/cos(kt) с экспоненциальным сдвигом, sinh/cosh, t·sin/t·cos, δ(t)), с подстановкой параметров, областью сходимости (например s > a), ходом вывода и необязательным численным вычислением в точке s (со проверкой сходимости). Пример: L{e^t} = 1/(s−1), s>1, F(2) = 1.
- [Мультипликативный порядок по модулю n (порядок элемента)](https://elysiatools.com/ru/tools/order-of-element-mod-n): Вычисляет мультипликативный порядок ord\_n(a) — наименьшее k ≥ 1 с a^k ≡ 1 (mod n) (требуется gcd(a, n) = 1). Алгоритм стартует с φ(n) и последовательно отбрасывает простые множители, проверяя a^(ord/p); вывод включает таблицу степеней a, доказательство минимальности (a^(k/p) ≢ 1 для каждого простого p | k), порождённую циклическую подгруппу , а также отметки, является ли a первообразным корнем (ord = φ(n)) или достигает максимального порядка (ord = λ(n)). Классика: ord\_7(3) = 6 = φ(7), 3 — первообразный корень по модулю 7; ord\_15(2) = 4 < φ(15) = 8.

## Примеры

- [Примеры Обработки Изображений Web Python](https://elysiatools.com/ru/samples/web-image-processing-python): Примеры обработки изображений Web Python используя PIL/Pillow включая чтение, сохранение, изменение размера и преобразование формата
- [Примеры Обработки Изображений Android Java](https://elysiatools.com/ru/samples/android-image-processing-java): Примеры обработки изображений Android Java включая чтение/сохранение, масштабирование и преобразование формата
- [Примеры Обработки Изображений Android Kotlin](https://elysiatools.com/ru/samples/android-image-processing-kotlin): Примеры обработки изображений Android Kotlin включая чтение/сохранение, масштабирование и преобразование формата
- [Примеры Обработки Изображений Web Rust](https://elysiatools.com/ru/samples/web-image-processing-rust): Примеры обработки изображений Web Rust включая чтение/запись, масштабирование и преобразование форматов
