AOP_Tom2 (1021737), страница 89

Файл №1021737 AOP_Tom2 (Полезная книжка в трёх томах) 89 страницаAOP_Tom2 (1021737) страница 892017-07-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 89)

э. Дальнейшее развитие эта задача получила в работах математиков средневековой Индии, предложивших методы куттака (Ьи(1айа) (см. раздел 4.5.2). Однако в общем виде теорема С впервые была сформулирована и доказана Чин Чжу-Шао в работе Яш ЯЬп СЬш СЬапб (1247), в которой рассмотрен также случай, когда модули могут иметь общие множители (как в упр. 3). [См. 3. ХеебЬаш, Яс)енсе апд Сйгш)хайоп ш СЬ1па 3 (СашЬг168е Еп1чегз11у Ргезз, 1959), 33-34, 119-120; У. Ь1 апй 8. Пи, С)плеве МасЬеша11ск (Ох(огб: С1агепс1оп, 1987), 92-94, 105, 161-166; К.

ЯЬеп, АгсЬте Гог НЫогу ог" Ехасс Яс1епсез 38 (1988), 285-305.] Многочисленные исследования, посвященные этой теории, обобщены Л. Ю. Диксоном (Ь. Е. Ейс1сзоп) в книге Н!нсогу ог" ФЬе ТЬеогу ог 7чшпЬегк 2 (Сагпе81е 1пзс. оГ ЪЧазЬ1пйсоп, 1920), 57-64, Как следует из теоремы С, модулярное представление можно использовать для чисел в любом соответствующем интервале гп = т1тз...гп, целых чисел. Например, можно в (6) взять а = 0 и работать только с неотрицательными целыми числами и, меньшими т.

С другой стороны, при выполнении операций сложения и вычитания, так же„как н умножения, обычно удобнее всего предположить, что все модули ты тю ..., т„являются нечетными числами, так что и т = т1тз... т„ тоже нечетное, и работать с целыми числами из интервала т т — — <и< —, (10) 2 2' симметричного относительно нуля. Для выполнения основных операций, перечисленных в (2)-(4), необходимо вычислить (и, +из) шойт, (и — е ) той т и и е пюйт при 0 < име; < т .

Если т — число однократной точности, то лучше всего формировать и,е, пюй т путем умножения н последующего деления. Что касается операций сложения и вычитания, то здесь ситуация проще, так как не требуется деление; удобно рассматривать следующие формулы: (и +е.)гпойт =и +е.— т (иу+е,)т ). (и; — ез)гпойт =и — е +т(и,<е). (См. раздел 3.2.1.1.) Поскольку желательно„чтобы ш было как можно большим, проще всего принять т1 наибольшим нечетным числом, соответствующим машинному слову, в качестве т2 принять наибольшее нечетное число < тм взаимно простое с тм а в качестве тз — наибольшее нечетное числа < тз, взаимно простое как с тм так и с тю и т. д., пока не наберется столько т,, сколько будет достаточно для образования нужного т. Способы эффективного определения, являются ли два числа взаимно простыми, рассматриваются в разделе 4.5.2.

В качестве простого примера предположим, чтб имеется десятичный компьютер со словом, содержащим две цифры, так что размер слова равен 100. Тогда в результате только что описанной процедуры получаем тг = 99, тг = 97, тз = 95, т4 — — 91, тл = 89, тл — — 83 (13) и т. д. При работе на двоичных компьютерах иногда желательно выбирать модули т иным образом: 2е, (14) Другими словами, значение каждого модуля на единицу меныпе очередной степени 2. Такой выбор значения модуля т; зачастую упрощает выполнение основных арифметических операций, нбо выполнять вычисления с числами, представленными по модулю 2'~ — 1, несколько проще, чем с числами, представленными в обратном коде. После того как значении модулей выбраны таким образом, полезно несколько ослабить условие 0 < и < т, и потребовать только, чтобы (15) и ш и (по модулю 2'~ — 1).

0<и~ <2", Таким образом, значение и = т. = 2' — 1 принимается в качестве оптимального вместо иу = О, поскольку это, с одной стороны, не влияет на справедливость теоремы С, а с другой — означает, что и; может быть любым е -битовым двоичным числом. При таком допущении операции сложения н вычитания по модулю т, выполняются следующим образом: и. 9 с.

= ((и + о ) той 2" ) + (и + ву > 2' ']. (16) и, З су = (иову шо42") Ю (изо~/2"!. (17) (Здесь Оз и З указывают на действия, которые с учетом условия (15) должны быть выполнены с отдельными компонентами (и,,..., и,) н (иы., ., о„) при сложении или умножении соответственно.) При вычитании можно пользоваться и соотношением (12). Можно также использовать условие и Ю и = ((и~ — о ) шос$2") — (из <су). (18) Эти операции могут быть эффективно выполнены, даже если 2'~ больше машинного слова компьютера, так как совсем просто вычислить остаток положительного числа по модулю степени 2 нли разделить число на степень 2. В (17) имеем сумму "верхней половины" и "нижней половины" произведения, как в разделе 3.2.1.1 — 8. Для работы с модулями вида 2' — 1 необходимо знать„прн каких условиях число 2' — 1 является взаимно простым с числом 2У вЂ” 1.

К счастью, для этого существует очень простое правило: йсй(2' — 1, 2г — 1) = 2з' 1'П вЂ” 1. (19) Данная формула утверждает, в частности, что о! 2' — 1 и 2г — 1 взаимно просты тогда и только тогда, когда взаимно просты е и /. Уравнение (19) следует из алгоритма Евклида и тождества (2' — 1) тос1(2à — 1) = 2' '~ — 1. (20) (... (и„,Ь+ о 1)Ь+ .) Ь+ оо. Если Ь = 2 и модули ту имеют специальный вид 2' — 1, оба подхода сводятся к совсем простому способу.

Рассмотрим двоичное представление числа и с блоками е, бит: и = азА' + аз — зАз + . + а1А+ ао, (21) где А = 2" и 0 < аь С 2ю при 0 ( /с ( а Тогда и = аз +а, з + . + аз +аз (по модулю 2" — 1), (22) поскольку А = 1. Поэтому и, вычисляются, как и в (16), путем сложения е -битовых чисел аз Ю . Ю а1 б ао. Этот процесс аналогичен уже знакомому процессу (См. упр. 6.) Поэтому на компьютере с длиной слова 2з' можно выбрать т1 —— 2зз — 1 тз = 2зч — 1, тз = 2зо — 1 тз — — 2з' — 1 т = 2зз — 1, что обеспечивает эффективность сложения, вычитания и умножения целых чисел в интервале вплоть до т|тзтзтзтз > 2'~з.

Как мы уже заметили, операции преобразования в молулярное представление и обратно очень важны. Молулярное представление (иы..., и„) для заданного числа и может быть получено посредством деления и на ты ..., гп, с запоминанием остатков. В случае, когда и = (и в з...оо)ы возможно применение более подходящего способа, который состоит в том, чтобы, используя модулярную арифметику, вычислить полинам "выбрасывания девяток", который использовался для определения и шог1 9 в случае, когДа и выражалось в десятичной системе. Обратный переход от модулярного представления к позиционной системе счисления выполняется немного сложнее. В связи с этим интересно отметить, как изучение способов вычисления приводит к пересмотру критериев оценок математических доказательств.

В теореме С утверждается, что возможен переход от (иг,...,иг) к иг и приводятся два доказательства. Первое из рассмотренных доказательств считается классическим; оно основывается лишь на самых простых понятиях, а именно: г) любое число„кратное тг, пгэ, ... и т„, должно быть кратным пггтз...гп,, если числа пг попарно взаимно просты; й) если т предметов поместить в т ящиков так, чтобы ни в каком ящике не было двух предметов одновременно, то в каждом ящике должно быть по одному предмету. Согласно традиционным понятиям математической эстетики это, несомненно, наилучший способ доказательства теоремы С. Но с точки зрения вычислительной он никуда не годится! Это все равно что сказать: "Попробуйте перебирать и = а, а+1,..., пока не найдете значение, для которого и = иг (по модулю тг ),..., и = иг 1по модУлю пгг)".

Второй способ доказательства теоремы С более конкретен. Он показывает., как вычислить г новых констант Мг,..., М„и получить решение, выражаемое через данные константы, с помощью формулы (9). В этом доказательстве используются более сложные понятия (например, теорема Эйлера), но с вычислительной точки зрения оно гораздо более удовлетворительно, поскольку константы Мг,..., ЛХ, определяются только один раз. С другой стороны, определение констант ЛХХ при помощи уравнения (8) является нетривиальной задачей, так как вычисление Эйлеровой ггг-функции в общем случае требует факторизации, т. е, разложения чисел т, на простые сомножители.

Сугцествует много способов вычисления М, лучших, чем использование (8). В связи со сказанным можно снова подчеркнуть разницу между математической элегантностью и вычислительной эффективностью. Но даже после нахождения М при помощи лучшего из возможных способов можно столкнуться с фактом, что ЛХ, слишком велико. Таким образом, использование (9) приводит к большому числу вычислительных операций с высокой точностью, а именно этого нам хотелось бы избежать 'прежде всего. Поэтому, чтобы найти действительно пригодный для практического применения метод перехода от (и„..., и„) к гг, необходимо иметь лучшее доказательство теоремы С. Такое доказательство предложено в 1958 году Х.

Л, Гарнером (Н. 1.. Оагпег). Оно основано на использовании (тг) констант с, для 1 < г < Х < г, где (23) со тг = 1 (гго модулю тп ). Константы с; легко вычисляются при помощи алгоритма Евклида, так как алгоритм 4.5.2Х для заданных г и Х позволяет определить а и 5, такие, что апг, + бтг —— йсг1(гп„го,) = 1, и можно положить с; = а. Простой метод определения сгу для модулей специального вида 2" — 1 приведен в упр. 6. Так как сО удовлетворяет условию (23), можно выполнить присвоения ег +- иг шоб»пм ег +- (иг — ег) сш шад тг, ез +- ((из — ег) сгг — ег) сгг шоб тз, (24) е»»- ( - ((и» вЂ” е~) с㻠— ег) с㻠— — е, г) с1„О, шабт„.

Тогда число и = е»т, г тгтг + ' '+ гитгтг + ег»пг + ег (25) будет удовлетворять условиям 0<и<т, и:— и. (по модулю ту) для 1 < у < г. (26) (См. упр. 8; другой способ записи формул (24), не требующий такого большого количества констант, приведен в упр. 7.) Формула (25) — это предсгпаеление но смешанному основанию числа и, которое можно перевести в двоичный либо десятичный формат, используя методы, описанные в разделе 4.4. Если интервал 0 < и < т не является необходимым, то после завершения процесса перевода к нему можно добавить (или вычесть из него) соответствуюшее число, кратное т.

Преимущество метода, представленного в (24), состоит в том, что для вычисления е используется только арифметика по модулю т з которая уже встроена в алгоритмы этого класса. Более того, соотношения (24) позволяют выполнять вычисления параллельно. Можно начать с присвоения (ем..., е„) < — (иг шоб ты ..., и„шод т,), затем в момент у при 1 < г < г сразу же получить еь < — (еь — еу)с,ь шад та для г < й < г. Другой способ вычисления представления числа по смешанному основанию. обеспечивающий возможность достижения параллелизма, рассматривается в интересной статье А. С. Френкеля (А.

Характеристики

Тип файла
DJVU-файл
Размер
9,89 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6553
Авторов
на СтудИзбе
299
Средний доход
с одного платного файла
Обучение Подробнее