Криптономикон. Нил Стивенсон
Чтение книги онлайн.

Читать онлайн книгу Криптономикон - Нил Стивенсон страница 76

Название: Криптономикон

Автор: Нил Стивенсон

Издательство:

Жанр: Историческая литература

Серия:

isbn: 978-5-17-068863-0

isbn:

СКАЧАТЬ когда гнутая спица вновь может сбросить цепь. Теперь предположим, что положение цепи вы описываете переменной С по очень простому принципу: нумеруя все звенья цепи. Дефектному звену ставится в соответствие число 0, следующему 1 и так далее до l – 1, где l – общее число звеньев в цепи. Опять-таки ради простоты примем, что в положении, в котором дефектное звено может задеть гнутую спицу (при условии, что спица – там, где ее можно задеть), С = 0.

      Чтобы вычислить, когда с велосипеда доктора Тьюринга свалится цепь, все, что нам надо знать про велосипед, – это значения Q и С. Эти два числа определяют состояние велосипеда. У велосипеда столько возможных состояний, сколько существует возможных значений (Q, С), но только в одном из этих состояний, а именно (0, 0), цепь свалится на дорогу.

      Предположим, мы начинаем с этого состояния, т. е. (Q = 0, С = 0), но цепь не свалилась, потому что доктор Тьюринг (прекрасно зная состояние своего велосипеда в каждый конкретный момент времени) остановился посреди дороги и едва избежал столкновения со своим другом и коллегой Лоуренсом Притчардом Уотерхаузом, поскольку противогаз блокирует его периферическое зрение. Доктор Тьюринг немного прокрутил цепь вперед, одновременно оттягивая ее вбок, чтобы не задела за гнутую спицу. Теперь он снова садится на велосипед и начинает крутить педали. Окружность его колеса примерно два метра, значит, когда он проехал два метра по дороге, колесо совершило полный оборот и вернулось в состояние Q = 0, в котором, как мы помним, гнутая спица может задеть дефектное звено.

      Что с цепью? Ее положение, определяемое как С, начинается с 0, достигает единицы, когда в фатальную позицию перемещается следующее звено, потом двойки и так далее. Цепь движется синхронно с зубцами звездочки в центре заднего колеса. У звездочки n зубцов, так что после второго полного оборота заднего колеса Q снова = 0, но С теперь = 2n. В следующий раз С = 3n и так далее. Однако не забывайте, что цепь – не бесконечная прямая линия, а замкнутая петля, имеющая всего l позиций; при С = l, она возвращается к началу цикла, и С снова принимает нулевое значение. Так что при вычислении С следует прибегнуть к арифметике остатков: то есть если в цепи сто звеньев (l =100), а общее число перемещенных звеньев – 135, то значение С не 135, а 35. Как только вы получаете число, больше или равное l, вы просто последовательно вычитаете l, пока результат не станет меньше l. Математики обозначают эту операцию mod l. Так что последовательные значения С, всякий раз как заднее колесо возвращается в положение Q = 0, равны:

Ci = n mod l, 2n mod l, 3n mod l…, in mod l

      где i = (1, 2, 3… 8 ∞)

      меньше или больше в зависимости от того, насколько близкое к бесконечности время Тьюринг намерен ехать на велосипеде. Через некоторое время Уотерхаузу начинает казаться, что они и впрямь едут бесконечно.

      Цепь сваливается, когда велосипед достигает состояния (Q = 0, С = 0). В свете вышесказанного это происходит, когда i (которое просто означает число оборотов, совершенных задним СКАЧАТЬ