Алгебра в программе Mathematica


Пример 1



Пример 1




где ci — произведение всех модулей, кроме mi: сi = m/mi, a di=ci-1 (modmi) (т.е. dici = 1(modmi)).

Эта теорема имеет многочисленные применения в математике, информатике (машинная арифметика) и криптологии (секретные ключи). Для нахождения числа и, существование которого гарантировал хитрый китаец Сунь Цю, в пакете теории чисел существует "китайская" функция ChineseRemainder. ChineseRemainder [список_1, список_2] — это такое наименьшее целое неотрицательное число и, что Mod [и, список_2] = список_1. Чтобы ею воспользоваться, нужно сначала загрузить пакет теории чисел.

<<NumberTheory`NumberTheoryFunctions`

После загрузки пакета можно вызвать эту функцию.

ChineseRemainder[{0,1,2), {4, 9,121}]

244

Полученный ответ означает, что 244=0(mod4), 244=1(mod19) и 244=2(mod121)-С помощью функции Mod это легко проверить.

Mod[244,{4,9,121}]

{0,1,2}

Пример 7.5. "Задача о корзинке с яйцами". Есть одна очень старая задача, в которой используется китайская теорема об остатках. Вот современная формулировка задачи. Крестьянка (наверняка отличница местной школы, а может даже победительница олимпиад по поднятию тяжестей) несла по проселочной дороге на базар яйца. Однако по дороге очень быстро ехал экипаж с сеньором, и экипаж нечаянно зацепил корзинку, в которой были яйца. Корзинка опрокинулась, и яйца разбились. Сеньор пожелал возместить убытки и спросил, сколько яиц было в корзинке. Крестьянка ответила, что не помнит, однако вспомнила, что когда вынимала яйца парами, то оставалось одно яйцо, когда тройками, то — два яйца, когда семерками — то 6 яиц и, вообще, когда она вынимала по pi (pi — i-e простое число) яиц, то в корзинке оставалось ровно i яиц. И еще вспомнила, что так она делала для всех первых ста простых чисел. Спрашивается, какое наименьшее число яиц могло быть в корзинке. С помощью функции ChineseRemainder это число можно найти так.








Начало  Назад  Вперед