Главная » Просмотр файлов » Д. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1)

Д. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1) (1119452), страница 90

Файл №1119452 Д. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1) (Д. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1)) 90 страницаД. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1) (1119452) страница 902019-05-09СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Отсюда следует, что и < ти~ < 1,, и, если неравенство (29) не выполняется, получаем и < Е. Но е > и, а с — и кратно твт... т„= тв/гпы так что и > и — и > ш/ш1 > 1пы Поэтому, если неравенство (29) для (и, е) не выполняется, оно будет удовлетворяться для пары (и", вл) = (е — там и+ пт — ти1). $ Разумеется, подобный результат может быть доказан для любого га вместо гп1, можно было бы также заменить неравенство (29) условием а < и < а + Е < с < а+ гп, внеся при этом незначительные изменения в доказательство.

Таким образом, теорема Б показывает, что многие простые функции не могут использоваться для определения области, которой принадлежит число в молуляриом представлении. Напомним теперь главные моменты, которые рассматривались в этом разделе. Применение модулярной арифметики может дать значительное преимущество в приложениях, в которых основная доля вычислений приходится на точное умножение (нли возведение в степень) больших чисел в сочетании со сложением и вычитанием, но в которых очень редко появляется необходимость в делении либо сравнении чисел нлн не нужно проверять, не "выходят" ля промежуточные результаты за пределы областл.

(Важно не забывать последней оговорки; существуют методы проверки принадлежности числа данной области (один из них рассмотрен в упр. 12), но онн настолько сложны, что сводят на нет все преимущества модулярной арифметики.) Некоторые приложения вычислений с применением модулярной арифметики рассмотрены Х. Такахаси (Н. ТайаЬал1) и Й. Ишибаши (У. 1эЬ|ЬаэЬ1) в рабзте, опубликованной в 1пгогтапоп Ргос. ш Хчрап 1 (1961), 28 — 42. Примером такого приложения является точное решение линейных уравнений с рациональными коэффициентами.

По Различным причинам в этом случае удобно предположить, что модули ты гпт, ..., п1, являются простыми числами; линейные уравнения могут решаться независимо по каждому модулю гнз. Эта процедура была подробно исследована И. Ворошем (1. ВогоаЬ) и А. С. Френкелем (А. Б. Ргаепйе1) [Магй. Сошр. 20 (1966), 107-112) и в дальнейшем усовершенствована А.

С. Френкелем и Д. Левенталем (П. 1.оенепсЬа)) [Х Внь Ханова) Вигеаи оГ Бсапоагс(э 78В (197Ц, 67-75). При помощи этого метода на компьютере СПС 1604 меньше чем эа 20 мин было получего 9 независимых решений системы из 111 линейных уравнений со 120.ю неизвестными. Та же процедура полезна и для решения систем линейных уравнений, когда коэффициенты представлены в формате с плавающей точкой, а матрица коэффициентов плохо обусловлена. В таком виде коэффициенты трактуются как точные рациональные числа.

Модульный способ дает более быстрый метод вычисления исгпиниых результатов быстрее„чем традиционные методы могут дать приближениыц ответ! Последующие достижения в этой области опубликованы в работе М. Т. МсС!е!1ап,,74СЛХ 20 (1973), 563-588. Исследования, посвященные ограничениям в применении этого метода, опубликованы в работе Е. Н. Ваге)зз, .!. Хпвк ЛХасЬ.

апс«Арр!. 10 (1972), 68 — 104. Опубликованная литература по модулярной арифметике ориентирована, главным образом, .на разработку компьютеров, так как свойства свободного переноса модулярной арифметики делают ее привлекательной с точки зрения быстродействующих операций. Эта идея впервые бьща опубликована А. Свободой (А, БчоЬойа) и Ы.

Валахом (М, Ча«асЬ) в чехословацком журнале 81го1е п» Ергасотап! ХпуоггпасХ (Хпуоггпагюп Ргосевв!пя ЛХасЫпев) 3 (1955), 247-295, а затем независимо — Х. Д. Гарнером (Н. 1. Свгпег) [ХНЕ Тгапз. ЕС-8 (1959), 140 — 147[. Использование модулей 2кч — 1 было предложено А. С. Френкелем в работе,!АСЛХ8 (1961), 87-96, а некоторые преимущества модулей такого вида продемонстрированы А.

Шенхаге (А. ВсЬопЬайе) [Соп1рнс)пй 1 (1966), 182-196[. Дополнительную информацию и исчерпывающую библиографию по этому вопросу ыожно найти в книге Х. 8. 8наЬб, Н. 1. Тапа)ьз НевЫпе Аг!151пе11с апд йв Арр)каНопз го Сошрнгсг Тсгйпо!оду (Нем Уог(с: МсбгажН1!1, 1967). В 1968 году опубликована книга И. Я. Акинского и Д. И. Юдицкого„в которую включена глава, посвященная комплексным модулям [см.

Нет. Нонгпа!пе 8е МаНь Рпгез ег Арр!. 15 (1970), 159-160!*. Обсуждение мццулярной арифметики будет продолжено в разделе 4.3.3В. Сообщение ма доске объявяеммй гласило, что ан макоднтся в комнате 423, но прм взгляде на алан системы нумерации, с виду логичной, складывалось впечатление. будто ее разрабатывал либо лунатик, либо математик. — РОБеРт БэРнАРд (РОВейт ВАпмАЙО), тле сазе о1'спе мйв!пд Вгопгй (1988) УПРАЖНЕНИЯ 1. [об[ Найдите нсе целые числа и, удовлетворяющие всем слелующим условиям: и шеб 7 = 1, и шоб 11 = б, и шаб 13 = 5, 0 < и < 1000. 2.

«Мкб[ Будет лм теорема С по-прежнему справедливой, если допустить, чта а, им иы... ..., и, н и — произвольные вещественные числа (а не только целые)? 3. [мкб[ (Обобщеимак китайская теоре.ма об остатках.) пусть тып1ы...,т,— положительюке целые числа, 1п — наименьшее общее кратное чисел ты тпы..., т„н пусть а, иы иы..., и„— произвольные целые числа. Докажите, что имеется точно одно целое число и, удовлетворяющее соотношениям и щ и.

(по модулю то), 1<Х<т, цри условии, что и, гам (по модулю йети(тит.)), 1 < 4 <! < г, и что если последнее условие не ныполннетсн, та такого целого числа и не существует. ь См. Акннскнй И. Я. н Юлнцкнй Д. И. Машнннкн арнфметнка и остаточных классах.

— Мх сон. радио, 1988.— 440 с. (1970).— прим. нерка. 4. [30] Продолжите процесс, представленный в (13). Чему будут равны тг, тз, тг, ...г б. [М33] Предположим, что метод, определенный в (13), продалжшг до того момента, когда уже нельзя выбрать нн одного нового числа гл .

Получим ли мы зтнм "вульгарным" методом наибольшее возможное значение произведения тгтг... т„такое, что все тг будут тположительными целыми числами, меньшими 100, и попарно взаимно простыми? 6. [МЯ3] Пусть е, / и у — неотрицательные целые числа. а) Покажите, что 2' ш 2г (по модулю 2г — 1) в том и только в том случае, когда е ш / (по модулю 0).

Ь) Ддя заданных е пнх1 / = И и се шог( / = 1 докажите тождество ((1+2'+" +2'-' ') (2" — Ц) 4(21 — Ц = . (Таким образом, получена сравнительно простая формула для величины, обратной 2' — 1, по модулю 2г — 1, как зто и требуется в (23).) У.

[М31] Покажите, что (24) можно переписать следующим образом: аг +- иг шог1 тм аг г- (иг — аг) с,г шоб пгг, аз +- (иг — (аг + тг сг)) сыеш шоб тг, а, Ф- (и, — (а, + тг(аз+ тг(аз + . + т, га„г), .. ))) сг,... ср гр шог)т,. Если зто сделать, то вместо г(г — 1)/2 констант сам как в (24), потребуется только г — 1 констант С'г = еп сп гл шос1 гп .

Оцените с точки зрения вычислений на компьютере достоинства и недосгвтки настоящего варианта формулы (24) по сравнению с ее исходным вариантом. В. [МЖ] Докажите, что число и, определенное формулами (24) и (25), удовлетворяет условию (20). 9. [М30] Покажите, как перейти от значений аг, ..., а„фигурирующих в уравнении (25) и представленных в нем в системе со смешанным основанием, обратно к исходным осгвткам иг, ... „и,.

используя для вычислений значений иу только арифметические операции вычисления остатка по модулю тл 10. [М33] Мелос число и, принадлежащее симметричной области (10), можно было бы представить при помощи чисел иг, ..., и„таких, что и ш из (по модулю тз), удовлетворягоппгх условию -пг,/2 < и < т./2 вместо условия 0 < и < т, как указано в тексте раздела.

Раеемотриге процедуры модулярной арифметики для такого симметричного представления, включая процедуру перевода (24). 11. «МЗЯ] Допустим, все числа т. — нечетные и известно, что и = (иг,..., и„) — четное число при 0 < и < гл. Используя мадулярную арифметику, найдите достаточно быстрый способ вычисления и/2.

Обратите внимание на тождество 21 гзу г ш Г (по модулю т). В общем случае, если а и т являются взаимно простыми, можно найти (по алгоритму Евклида) число а' = (аг',..., а„'), такое, что са' ш 1 (по модулю т), Далее, если известно, что и кратно а, то и/а = иа вычисляем при помощи малулярного умножения. Если а не является взаимно простым с т, то деление выполняется значительно сложнее.

12. [М10] Дагшжнте, что, если О < и, а < т, модулярное сложение чисел и н а приведет к переполнению (т. е. полученное число будет находиться за пределамн допустимой облети) тогда и только тогда, когда сумма меньше числа и. (Таким образом, проблема обнаружения переполнения зквивалентна проблеме сравнения.) зз = Х ~х«91 Длк О С й < и. «взий ов «««аз««««Ю эффективные алгоритмы лля плклической свертки будут рассмотрены в разделах 4.3.3 и 4.6.4. рассмотрим «7-битовые целые числа в и с, которые представлены в виде и = ) из21 з "«, з а и = Х ~ек21"Ы"1, з а где 0 < ямт С 20Ь+Наз"1 1мт~.

(Такое представление является смесью оснований 2ыз" 1 и 2«а« "1.) Используя полходяшую циклическую свертку, предложите хороший способ поиска представления числа (ье) тоб (2з 1) [Указание. Не бойтесь использовать вычисления в формате с плавающей точкой.[ «4.3.3, Насколько быстро можно выполнять умножение Для умножения т-разрядного числа на и-разрядное традиционным методом (алгоритм 4.3.1М) требуется приблизительно стп операций, где с — константа. Для простоты в этом разделе предположим, что т = и, и обсудим следующий вопрос Для любого ли обычного вычислительного алгоритма умножения двух и-разрядных чисел время выполнения пропорционально п~ по мере увеличения и? (В этом вопросе под термином "обычный" понимается алгоритм, воспринимающий в качестве входа число и и два произвольных и-разрядных числа в позиционной интерпретации и на выходе дающий произведение этих чисел также в позиционной интерпретации.

Безусловно, если бы можно было для каждого значения и выбрать свой алгоритм, вопрос не представлял бы интереса, так как для любого конкретного значения и умножение можно было бы выполнить, просто отыскав результат в некоторой огромной таблице. Под термином "вычислительный алгоритм' понимается алгоритм, пригодный для применения на цифровом компьютере, подобном М1Х, а время выполнения — зто время, затраченное на таком компьютере на получение результата по такому алгоритму.) ° 13. [М26) (Аетамарфм.) Десятичное и-разркдное число х > 1 математиками-шутниками называетск автоморфом, если последни» и цифр числа хз равиы х. К примеру, 9 376 есть 4-разрядный автоморф, так как 9376з = 87909376.

[См. ЯаелсИс Атепсал 218 (Лавцаху, 1968), 125.[ а) Докажите, что и-разрядиое число х > 1 есть аатоморф тогда я только тогда, когда хто«$5" = 0 (или 1) и хто62" т 1 (или О) соответственно. (Таким образом, если т« = 2" и тз = 5", то в (7) только числа М~ и Мз являются и-разрялиыми автоморфами.) Ь) Докажите, что если х есть и-разрядный автоморф, то (Зх — 2хз) той 10з" является 2п-разрядным автоморфом.

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

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

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