Как решить уравнение в целых числах: 54x + 21y = 906
Дано: уравнение . Найти: все его решения в целых числах и отдельно те, в которых и натуральные.
Уравнение вида с целыми коэффициентами называют линейным диофантовым, и решается оно по жёсткой схеме: проверить разрешимость по НОД коэффициентов, найти одно частное решение расширенным алгоритмом Евклида, а из него получить сразу все остальные. Здесь , правая часть 906 на 3 делится, поэтому решения есть: общее решение , при любом целом , а в натуральных числах подходят ровно три пары: (2; 38), (9; 20), (16; 2). Калькулятор сверху прогоняет ту же цепочку для любых коэффициентов и показывает целые точки на прямой, ниже - решение по шагам.
Решение по шагам
Дано. , , .
Найти. Все целые пары с и все натуральные среди них.
Шаг 1. Проверяем разрешимость по НОД коэффициентов.
Левая часть при любых целых и кратна тройке: и 54, и 21 делятся на 3, значит на 3 делится и вся сумма. Тогда и правая часть обязана делиться на 3, иначе равенство невозможно ни при каких целых числах. Она делится нацело, остатка нет, и решения существуют. Сам НОД удобно получить алгоритмом Евклида: , затем , и , последний ненулевой остаток равен 3.
Шаг 2. Сокращаем уравнение на НОД.
Это то же самое уравнение, но с взаимно простыми коэффициентами, и работать с ним заметно легче. Сокращать нужно обязательно: пока в коэффициентах сидит общий множитель, частное решение получится в три раза больше нужного, а шаг между соседними решениями выйдет неверным.
Шаг 3. Находим частное решение расширенным алгоритмом Евклида.
Сначала прогоняем обычную лестницу делений для пары 18 и 7:
Теперь раскручиваем её в обратную сторону, выражая единицу через исходные числа:
Получилось соотношение Безу . Правая часть у нас не единица, а 302, поэтому домножаем обе части на 302:
Пара - уже честное решение, просто некрасивое.
Шаг 4. Сдвигаем частное решение к удобному.
Уменьшать можно шагами по 7 (коэффициент при в сокращённом уравнении), одновременно увеличивая на 18. Делим 604 на 7 с остатком: , значит после 86 шагов получим . Второе число считаем прямой подстановкой:
Проверка в исходном уравнении: . Сходится.
Шаг 5. Записываем общее решение.
Шаги 7 и 18 - это в точности коэффициенты сокращённого уравнения, поменянные местами, причём у шаг идёт с минусом. Подставим несколько значений параметра и убедимся, что сумма не меняется:
| -1 | -5 | 56 | 906 |
| 0 | 2 | 38 | 906 |
| 1 | 9 | 20 | 906 |
| 2 | 16 | 2 | 906 |
| 3 | 23 | -16 | 906 |
Шаг 6. Отбираем решения в натуральных числах.
Требуем и одновременно:
Целые из промежутка от до - это , и . Больше подходящих значений параметра нет, потому что дальше в обе стороны одна из координат уходит в минус.
Ответ. Общее решение: , , где - любое целое число. В натуральных числах ровно три решения: , , .
Формула и откуда она берётся
Всё держится на одном факте: множество чисел вида при целых и - это в точности множество кратных числу . В одну сторону это очевидно: раз делит и , и , то делит и любую их комбинацию. В другую сторону работает соотношение Безу - расширенный алгоритм Евклида предъявляет конкретные целые числа, для которых , а домножением на любое целое из получаем любое кратное. Отсюда критерий разрешимости в одну строку:
Структура ответа тоже выводится за пару строк. Пусть и - два решения. Вычтем одно равенство из другого:
Числа и взаимно просты, поэтому обязано делить разность целиком. Значит для некоторого целого , а тогда . Это и есть общая формула:
Геометрически картина такая: уравнение задаёт прямую на плоскости, а решения - это узлы целочисленной решётки, на которую прямая попала. Узлы идут вдоль прямой равномерно, с шагом по горизонтали, поэтому решений либо бесконечно много, либо нет вообще. Промежуточного варианта «ровно два решения» у линейного уравнения не бывает - конечным число решений становится только после дополнительного условия вроде натуральности обеих координат. Именно это и рисует калькулятор сверху в режиме целых точек.
Второй способ: перейти к сравнению по модулю
На контрольной обратную подстановку часто заменяют более коротким приёмом. Возьмём сокращённое уравнение и посмотрим на него по модулю 7: слагаемое исчезает, и остаётся сравнение с одним неизвестным.
Здесь и , поэтому коэффициенты сразу заменены на остатки. Дальше перебираем семь вариантов и находим тот, где произведение даёт остаток 1: подходит , так как . Значит , то есть - тот же ответ, что дала обратная подстановка, но без раскручивания лестницы.
Модуль всегда берут по меньшему из коэффициентов: перебирать придётся меньше вариантов. Способ особенно хорош, когда коэффициенты небольшие, а вот при двух трёхзначных числах перебор становится долгим, и расширенный алгоритм выигрывает. По сути мы ищем обратный элемент к 4 по модулю 7, и тот же самый шаг стоит внутри асимметричной криптографии рядом с быстрым возведением в степень по модулю.
Когда решений нет и сколько их в натуральных числах
Поменяем в нашем уравнении правую часть на 100 и посмотрим, что изменится. НОД коэффициентов прежний, , а вот 100 на 3 не делится: . Левая часть кратна трём при любых целых и , правая - нет, поэтому уравнение решений в целых числах не имеет вовсе. Никаких вычислений дальше делать не нужно, ответ «решений нет» и есть полный ответ. Проверить делимость проще всего, разложив коэффициенты на простые множители или прогнав два деления Евклида.
Количество натуральных решений оценивается заранее. Целые точки идут с шагом по , а годный отрезок тянется от до , поэтому решений примерно
Настоящее число всегда равно ближайшему целому снизу или сверху от этой оценки: у нас вышло три решения, могло выйти и два. Так что если после отбора получилось пять пар, а оценка давала около двух, где-то потерян знак или перепутан шаг.
Если в уравнении фигурирует делимость на неизвестный модуль, первым делом выясняют, простое ли число стоит в основании: от этого зависит и существование обратного элемента, и применимость малой теоремы Ферма - как это проверить число на простоту, разобрано отдельно.
Частые ошибки
- Забывают сократить уравнение на НОД. Если работать с исходными 54 и 21, шаг по получится равным 21, а не 7, и две трети решений просто выпадут из ответа.
- Берут НОД правой части. Условие разрешимости проверяется только по коэффициентам при неизвестных, число в НОД не входит - оно лишь обязано на него делиться.
- Теряют знак минус у второго шага. В общем решении шаги идут с разными знаками: растёт на , убывает на . Одинаковые знаки сразу ломают проверку подстановкой.
- Останавливаются на частном решении. Пара формально верна, но задание требует общее решение, а не одну пару. Без параметра ответ неполон.
- Путают целые и натуральные. В целых числах решений бесконечно много всегда, когда они вообще есть, а вопрос «сколько решений» имеет смысл только для натуральных или неотрицательных.
- Ошибаются в границах при отборе. Неравенства решаются каждое отдельно, а параметр берётся из пересечения промежутков; дробные концы округляются внутрь промежутка, а не наружу.
FAQ
Сколько решений у линейного уравнения в целых числах? Либо ни одного, либо бесконечно много. Если не делит , решений нет; если делит, то по одному на каждое целое значение параметра . Конечным число становится, только когда добавлено ограничение вроде натуральности или отрезка значений.
Обязательно ли частное решение искать алгоритмом Евклида? Нет. Для маленьких коэффициентов пару часто видно подбором: например, в уравнении сразу заметно решение , . Расширенный алгоритм нужен там, где подбор безнадёжен, и он же гарантирует результат за считанные шаги.
Что делать, если неизвестных три? Уравнение решают в два приёма: вводят вспомогательную переменную для суммы , находят все её допустимые значения из уравнения с , а затем решают внутреннее уравнение тем же способом. Ответ получается с двумя параметрами.
А если уравнение нелинейное? Общего алгоритма для диофантовых уравнений в принципе не существует, это результат по десятой проблеме Гильберта. Каждый класс разбирают своими приёмами: разложением на множители, оценками, остатками. Классический пример со своей теорией - уравнение Пелля вида .
Коротко
- Считаем и проверяем делимость: , значит решения есть.
- Сокращаем уравнение на НОД: с взаимно простыми коэффициентами.
- Расширенным алгоритмом Евклида получаем , домножаем на 302 и сдвигаем к удобной паре , .
- Записываем общее решение: , при любом целом .
- Из условий и получаем , то есть три натуральных решения: , , .
Похожие задачи
Как найти НОД двух чисел: алгоритм Евклида
Как найти НОД двух чисел алгоритмом Евклида: деления с остатком по шагам на примере 1071 и 462, проверка ответа, НОК через НОД, расширенный алгоритм и коэффициенты Безу.
Теория чисел/криптографияКак решить сравнение по модулю: 42x = 30 (mod 78)
Как решить сравнение по модулю на примере 42x = 30 (mod 78): критерий разрешимости через НОД, число решений, сокращение сравнения вместе с модулем и все шесть классов вычетов.
Теория чисел/криптографияКак найти НОК двух чисел: два способа с примером
Как найти НОК двух чисел на примере 126 и 120: разложение на простые множители со старшими степенями, формула через НОД, проверка ответа и задача про шестерни с зубьями.
Теория чисел/криптографияКак найти функцию Эйлера: разбор на числе 7560
Как найти функцию Эйлера: разбор числа 7560 по шагам, каноническое разложение, формула через произведение скобок по простым делителям, проверка мультипликативностью и теорема Эйлера.
Теория чисел/криптографияКак найти обратное по модулю: расширенный алгоритм Евклида
Как найти обратное по модулю: разбор на числах 37 и 120, условие существования через НОД, таблица расширенного алгоритма Евклида, приведение коэффициента и проверка остатка.
Теория чисел/криптографияКак найти первообразный корень: критерий и пример
Как найти первообразный корень по модулю: функция Эйлера, критерий через её простые делители, проверка кандидатов 2, 3, 5 и 6 по модулю 41 и таблица индексов.