Электронная библиотека » Сет Ллойд » » онлайн чтение - страница 4


  • Текст добавлен: 14 января 2015, 14:46


Автор книги: Сет Ллойд


Жанр: Зарубежная образовательная литература, Наука и Образование


Возрастные ограничения: +12

сообщить о неприемлемом содержимом

Текущая страница: 4 (всего у книги 19 страниц) [доступный отрывок для чтения: 5 страниц]

Шрифт:
- 100% +
Логические схемы

Чем занимаются наши все более мощные компьютеры? Они обрабатывают информацию, разбивая ее на биты и оперируя с ними, по нескольку битов за один раз. Как мы уже говорили, информация, которая должна быть обработана, представлена компьютеру в форме программы, ряда инструкций на машинном языке. Программа закодирована в память компьютера в виде последовательности битов. Например, команда print («печатать») в коде ASCII выглядит так: P = 1010000; R = 1010010; I = 1001001; N = 1001110; T = 1010100. Компьютер считывает программу по нескольку битов за шаг, интерпретирует эти биты как инструкцию и выполняет ее. Потом он видит следующие несколько битов и выполняет следующую инструкцию. И так далее. Сложные процедуры можно построить из наборов простых инструкций, но об этом мы поговорим позже.

Обычные компьютеры состоят главным образом из электронных схем, которые реализуют на физическом уровне логические схемы. Логические схемы позволяют составить сложные логические выражения из простых операций, воздействующих на несколько битов за один раз. Физически логические схемы состоят из битов, соединений и логических элементов. Биты, как мы видели, могут быть в состоянии или 0, или 1; соединения позволяют перемещать биты из одного места в другое; логические элементы преобразовывают биты по одному или попарно.

Например, логический элемент «не» (not) берет входной бит и инвертирует, «переворачивает» его: «не» превращает 0 в 1, а 1 в 0. Элемент «копировать» (copy) делает копию бита: он превращает входной бит 0 в два выходных бита 00, а входной бит 1 в два выходных бита 11. Элемент «и» (and) берет два входных бита и порождает один выходной бит, который равен 1 в том и только том случае, если оба входных бита равны 1; в остальных случаях на выходе элемента «и» появляется бит 0.



Логические элементы – это устройства, которые берут один или больше входных битов и преобразовывают их в один или больше выходных битов. От левого верхнего по часовой стрелке: элементы «или», «и», «не», «копировать»


Элемент «или» (or) берет два входных бита и порождает выходной бит, который равен 1, если хотя бы один входной бит (или оба) равен 1; если же оба входных бита равны 0, то и результат будет равен 0.

С тех пор как в 1854 г. логик Джордж Буль из Куинс-колледжа в Корке опубликовал работу «Исследование законов мышления» (An Investigation of the Laws of Thought), мы знаем, что любое логическое выражение, включая сложные математические вычисления, можно выразить с помощью операций «не», «копировать», «и» и «или». Эти операции составляют универсальный набор логических элементов.

Законы мышления Буля гласят, что любое логическое выражение или вычисление можно закодировать в виде логической схемы. Цифровой компьютер – это компьютер, который работает с использованием большой логической схемы, состоящей из миллионов логических элементов. Известные нам компьютеры, такие как Mac и PC, – это электронные воплощения цифровых машин.



Элементы «и», «или», «не» и «копировать» можно соединить так, что получится логическая схема. Логическая схема может выполнять более сложные преобразования входных битов


В электронном компьютере биты хранятся в электронных устройствах, например в конденсаторах. Конденсатор похож на ведро, в котором лежат электроны. Чтобы наполнить ведро, к конденсатору прикладывают напряжение. При нулевом напряжении конденсатор не содержит никаких лишних электронов, и его называют незаряженным. Незаряженный конденсатор в компьютере находится в состоянии «0». При напряжении, отличном от нуля, конденсатор содержит много лишних электронов и находится в состоянии «1».

Конденсаторы – не единственные электронные устройства, которые используются в компьютерах для хранения информации. На жестком диске вашего компьютера биты записываются в виде крошечных магнитов: магнит, чей северный полюс указывает вверх, означает 0, а магнит, чей северный полюс указывает вниз, показывает 1. Как всегда, любое устройство, у которого есть два надежно различаемых состояния, может хранить бит.

В обычном цифровом электронном компьютере логические элементы создаются на транзисторах. Транзистор можно воспринимать как электронный выключатель. Когда он находится в разомкнутом положении, через него не может идти электрический ток. Когда выключатель находится в замкнутом положении, ток идет. У транзистора есть два входа и один выход. В транзисторе n-типа, когда на первый вход подано низкое напряжение, выключатель разомкнут, и электрический ток не может идти из второго входа к выходу; если же напряжение на первом входе увеличить, ток начинает идти. В транзисторе p-типа все наоборот: когда на первый вход подано низкое напряжение, выключатель замкнут, и ток может идти из второго входа к выходу. Важно, что транзисторы n– и p-типов можно соединить и тем самым создать логические элементы «и», «или», «не» и «копировать».

Когда компьютер выполняет вычисления, он, в сущности, делает только одно: применяет логические элементы к битам. Компьютерные игры, редактирование текста, математические вычисления и рассылка спама – все они имеют началом процесс электронного преобразования битов, по одному или попарно.

«Невычислимость»

До сих пор мы говорили о простоте информации и вычислений. Бит – простая вещь; компьютер – простая машина. Но это не значит, что компьютеры не способны на сложное поведение. Одно парадоксальное следствие фундаментальной логичности операций компьютера состоит в том, что его будущее поведение совершенно непредсказуемо. Единственный способ узнать, что сделает компьютер, приступив к вычислениям, – подождать и посмотреть, что будет.

В 1930-х гг. австрийский логик Курт Гёдель показал, что в любой достаточно сложной математической теории есть утверждения, которые, если они окажутся ложными, сделают теорию противоречивой, и при этом их истинность доказать невозможно. Иначе говоря, любые достаточно мощные логические системы содержат недоказуемые утверждения. Вычислительный аналог недоказуемого утверждения – это невычислимая величина.

Одна известная проблема, решение которой невычислимо, – это так называемая проблема остановки. Допустим, мы запрограммировали компьютер, и он начал работать по программе. Остановится ли компьютер когда-нибудь, чтобы выдать результат, или он будет работать вечно? Нет никакой стандартной процедуры, позволяющей вычислить ответ на этот вопрос. Иначе говоря, ни одна компьютерная программа не может взять в качестве входных данных другую компьютерную программу и определить со 100 %-ной вероятностью, остановится первая программа или нет.

Конечно, для многих конкретных программ можно легко выяснить, остановится компьютер или нет. Возьмем, например, программу из одной строки «print 1 000 000 000» – компьютер, получивший на входе эту программу, напечатает число 1 000 000 000 и остановится. Общее правило, однако, таково: безостановочная работа компьютера, сколь долго она бы ни продолжалась, не дает оснований утверждать, что компьютер когда-нибудь не остановится.

Проблема остановки кажется на первый взгляд абстрактной, но у нее есть множество практических следствий. Возьмем, например, отладку компьютерных программ. Большинство из них содержат «баги», или ошибки, из-за которых компьютер ведет себя непредсказуемым образом, например «зависает». Было бы неплохо иметь «универсальный отладчик» для компьютерных программ. Такой отладчик брал бы в качестве входных данных компьютерную программу вместе с описанием того, что она должна делать, и проверял бы, выполняет ли эта программа свою задачу.

Увы, создать такой отладчик невозможно. Универсальному отладчику нужно выяснить, дает ли входная программа правильную выходную информацию. Поэтому первое, что должен проверить универсальный отладчик, – есть ли вообще у входной программы какие-либо выходные данные. Но чтобы это проверить, он должен решить проблему остановки, а это, как мы знаем, невозможно. Единственный способ выяснить, остановится ли программа, – запустить ее и посмотреть, что будет, а раз так, универсальный отладчик нам уже не понадобится. И когда в следующий раз компьютер «зависнет» из-за какого-нибудь «бага», мы сможем найти утешение в глубокой математической истине: не существует никакого систематического способа устранить все ошибки! Впрочем, можно просто чертыхнуться и перезагрузить компьютер.

Гёдель показал, что если допустить рекурсию – ссылку процедуры на саму себя, это автоматически приводит к логическим парадоксам; британский математик Алан Тьюринг показал, что рекурсии приводят к невычислимости. Заманчиво поискать подобные парадоксы в человеческом поведении. В конце концов, люди – мастера по части упоминаний о себе любимом (кажется, некоторые не способны ни к каким другим типам ссылок), и, конечно же, люди подвержены парадоксам.

Люди славятся неспособностью предсказывать свои собственные действия. Эта неспособность – важный элемент того, что мы называем свободой воли. Термин «свобода воли» относится к нашей кажущейся свободе принимать решения. Например, когда я прихожу в ресторан и беру меню, я и только я решаю, что заказать, и, прежде чем я приму это решение, даже я сам не знаю, что выберу. Наш собственный выбор в будущем неисповедим для нас самих! (Тем не менее для других он может быть не таким уж и непостижимым. Много лет мы с женой ходим в ресторан Josie’s в Санта-Фе. Тщательно изучив меню, я каждый раз заказываю половину порции фаршированных перцев с красным и зеленым чили и посоле вместо риса. При этом я сам уверен, что проявляю свободную волю: до тех пор пока я не выбрал полпорции фаршированных перцев, мне кажется, что я могу выбрать все что угодно. Но моя жена-то с самого начала знает, что именно я закажу!)

Непостижимая природа наших решений при использовании свободы воли – это аналог проблемы остановки: мы приводим в движение свои мысли, но не знаем, куда они приведут и приведут ли куда-нибудь вообще. И даже если они куда-то приведут, мы не знаем, куда, – до тех пор, пока там не окажемся.

Как ни странно, свое собственное непредсказуемое поведение и такое же поведение других людей мы часто считаем нелогичным: если бы люди вели себя логично и рационально, считаем мы, мир был бы более предсказуемым. Но как раз тогда, когда мы ведем себя рационально и движемся логично, как компьютер, от одного шага к следующему, наше поведение становится доказуемо непредсказуемым. Когда рациональность соединяется с рекурсией, наши действия с необходимостью становятся парадоксальными и непредсказуемыми.

Эта прекрасная загадочность чистого разума возвращает нас к вопросу о роли логики во Вселенной. Размышляя у себя дома в Кордове над трудами Аристотеля, мусульманский философ XII в. Аверроэс (ибн-Рушд) пришел к выводу, что бессмертна в человеке не душа, но способность мыслить. Разум бессмертен именно потому, что не принадлежит никому в отдельности; это общее свойство всех мыслящих существ.

Компьютеры, конечно, обладают способностью мыслить и способностью к рекурсии. Именно поэтому их действия с необходимостью являются непостижимыми. Следовательно, по мере того как они становятся более мощными и выполняют все более разнообразный набор задач, их непредсказуемость приближается к непредсказуемости человека. По логике Аверроэса, они начинают обладать той же степенью бессмертия, что и люди.

Запрограммировать компьютер так, чтобы он выполнял простые человеческие задачи, очень сложно: заставить робота пропылесосить комнату или освободить посудомоечную машину, даже при минимальных требованиях к качеству, – проблема, над которой бьются уже несколько поколений исследователей в области искусственного интеллекта. И наоборот, не нужно больших усилий, чтобы запрограммировать компьютер так, чтобы он вел себя непредсказуемо и сводил нас с ума. С точки зрения способности все запутать и испортить компьютер с каждым днем становится все больше похож на человека{2}2
  В США популярна наклейка на автомобильный бампер с надписью: «Человеку свойственно ошибаться. Но чтобы по-настоящему все испортить, нужен компьютер».


[Закрыть]
.

Глава 3
Вычислительная Вселенная
История Вселенной, часть первая

Вселенная состоит из атомов и элементарных частиц, таких как электроны, фотоны, кварки и нейтрино. Скоро мы углубимся в концепцию Вселенной, основанную на вычислительной модели, но было бы глупо не рассмотреть сначала ошеломляющие открытия космологии и физики элементарных частиц. Наука уже дала нам прекрасные возможности описания Вселенной с точки зрения физики, химии и биологии. Вычислительная Вселенная – это не альтернатива физической Вселенной. Вселенная, которая развивается, обрабатывая информацию, и Вселенная, которая эволюционирует согласно законам физики, – одна и та же. Эти два описания, вычислительное и физическое, дополняют друг друга и помогают лучше понять одни и и те же явления.

Конечно, люди начали размышлять о происхождении Вселенной задолго до появления современной науки. Мифы о Вселенной столь же стары, как и любые другие мифы. В норвежской мифологии Вселенная начинается с того, что гигантская корова вылизывает богов из соленых краев изначальной бездны. В японской мифологии Япония рождается в результате кровосмесительной связи брата и сестры, бога Идзанаги и богини Идзанами. В одном индуистском мифе о сотворении мира говорится, что все существа происходят из топленого масла, собранного из тысячеглавого Пуруши, принесенного в жертву богами. И лишь недавно, в течение последних 100 лет или около того, астрофизики и космологи построили детальную историю Вселенной, подкрепленную наблюдательными данными.

Вселенная возникла немногим менее 14 млрд лет назад, в результате грандиозного события, которое называют Большим взрывом. По мере того как она расширялась и остывала, из «космического супа» формировались знакомые нам формы материи. В течение трех минут после Большого взрыва образовались самые легкие атомы – водород и гелий. Эти «кирпичики» собирались вместе под действием силы тяжести, и спустя 200 млн лет после Большого взрыва из них сформировались первые звезды и галактики. В ходе термоядерного «горения» звезд образовались элементы вплоть до железа, а еще более тяжелые элементы появились позднее, когда эти первые звезды стали взрываться как сверхновые. Наше Солнце и наша Солнечная система сформировались около 5 млрд лет назад, а жизнь на Земле возникла немногим более миллиарда лет спустя.

Это общепринятая история Вселенной не так увлекательна, как некоторые другие, и молочные продукты появляются в ней на достаточно поздней стадии. Однако в отличие от более древних мифов о сотворении мира, у мифа научного есть одно достоинство: он соответствует известным научным законам и наблюдениям. И хотя эта история изложена языком физики, она не лишена интриги. В ней есть драма и неопределенность, она вызывает множество вопросов: как возникла жизнь? Почему Вселенная так сложна? Каково будущее Вселенной в целом и жизни в частности?

Исследуя Млечный путь – нашу собственную Галактику – мы видим множество звезд, похожих на нашу. А когда мы смотрим дальше, то видим множество галактик, очень похожих на Млечный путь. В том, что мы видим, есть определенный сценарий, и в нем снова и снова разворачиваются одни и те же звездные драмы, но с участием других актеров-звезд и в других местах. Если Вселенная имеет бесконечную протяженность, то в конце концов где-нибудь будет разыгран любой возможный сценарий, если он разрешен законами физики. История Вселенной – своеобразная космическая мыльная опера, где актеры разыгрывают перед нами все возможные перипетии космической драмы.

Энергия, или Первое начало термодинамики

Давайте познакомимся с главными героями космической мыльной оперы. В традиционной космологии считается, что ведущий актер – это энергия, лучистая энергия света и энергия массы протонов, нейтронов и электронов. Что такое энергия? В средней школе вы могли узнать, что энергия – это способность выполнять работу. Энергия заставляет физические системы что-то делать.

У энергии есть важное свойство: она сохраняется. Энергия может принимать разные формы – теплота, работа, электрическая энергия, механическая энергия, но при этом она никогда не исчезает. Это утверждение известно как первое начало термодинамики. Но если энергия сохраняется, а Вселенная возникла из ничего, то откуда тогда взялась энергия? У физики есть объяснение на этот счет.

Квантовая механика описывает энергию через квантовые поля – что-то вроде универсальной «ткани» Вселенной. Переплетения «нитей» этой «ткани» дают элементарные частицы – фотоны, электроны, кварки. Энергия, которую мы видим вокруг, будь это Земля, звезды, свет или тепло, извлечена из квантовых полей посредством расширения Вселенной. Гравитация – это сила притяжения, которая соединяет вещи друг с другом. Острые на язык американские школьники говорят: «Гравитация сосет». Действительно, по мере того как Вселенная расширяется (а она продолжает расширяться до сих пор), сила тяжести высасывает энергию из квантовых полей. Энергия, находящаяся в квантовых полях, почти всегда положительна. Эта положительная энергия в точности сбалансирована отрицательной энергией гравитационного притяжения. По мере расширения Вселенной становится доступно все больше положительной энергии в форме вещества и света, но ее компенсирует отрицательная энергия в форме силы притяжения гравитационного поля.

Общепринятая история Вселенной уделяет большое внимание энергии: сколько ее? Где она? Что она делает? Однако в той версии, которая изложена в этой книге, главным действующим лицом в физической истории Вселенной является информация. В конечном счете, информация и энергия дополняют друг друга: энергия заставляет физические системы что-то делать, а информация говорит, что именно нужно делать.

Энтропия, или Второе начало термодинамики

Если бы мы могли рассматривать вещество на уровне атомов, то заметили бы, что атомы танцуют и качаются во все стороны случайным образом. Энергию, которая управляет этим хаотичным танцем атомов, называют теплотой, а информацию, которая определяет шаги этого танца, называют энтропией. Проще говоря, энтропия – это информация, нужная для того, чтобы описать случайные движения атомов и молекул, движения столь малые, что мы не можем их увидеть. Энтропия – это информация, содержащаяся в физической системе и невидимая для нас.

Энтропия – это степень молекулярного беспорядка, существующего в системе: она определяет, какая часть тепловой энергии системы недоступна для преобразования в механическую работу и какая доля ее энергии является полезной. Второе начало термодинамики гласит, что энтропия во Вселенной в целом не уменьшается; иначе говоря, количество непригодной, связанной энергии растет. Проявления второго начала термодинамики легко заметить в обычной жизни. Горячий пар может вращать турбину и выполнять полезную работу. Когда пар охлаждается, его беспорядочно колеблющиеся молекулы передают часть своего беспорядка молекулам окружающего воздуха, подогревая его и увеличивая беспорядок в нем. Молекулы пара колеблются все медленнее и медленнее, а молекулы воздуха – все быстрее и быстрее, до тех пор, пока температура пара и воздуха не сравняется. Когда разница температур становится минимальной, энтропия системы достигает максимума. Но пар, охладившийся до комнатной температуры, уже не может выполнять никакой работы.

Вот еще один способ объяснить, что такое энтропия. Информация по большей части невидима. Количество битов информации, нужной для того, чтобы описать «танец» атомов, намного превышает количество битов, которые мы можем видеть или знать. Возьмите фотографию – она всегда зерниста, и размер зерен зависит от размера частиц галоида серебра, нанесенных на фотопленку, а если это цифровая фотография, то от количества пикселей, из которых состоит изображение на экране.

В качественном цифровом изображении может содержаться около миллиарда битов визуальной информации. Откуда я взял эту цифру? Тысяча пикселей на дюйм – это высокое разрешение, близкое к тому, на которое способен невооруженный глаз. При таком разрешении каждый квадратный дюйм фотографии содержит миллион пикселей. В цветной фотографии размером 6 × 8 дюймов (15 × 20 см) с разрешением 1000 пикселей на дюйм содержится 48 млн пикселей. Далее, у каждого пикселя есть цвет. Цифровые фотоаппараты, как правило, используют 24-битную кодировку, чтобы создать 16 млн цветов, – опять-таки это близко к количеству цветов, которые может различить человеческий глаз. Таким образом, в цветной цифровой фотографии размером 6 × 8 дюймов с разрешением 1000 пикселей на дюйм и 24-битным цветовым разрешением содержится 1 152 000 000 битов информации. (Более простой способ увидеть, сколько битов нужно, чтобы создать фотографию, – посмотреть, как быстро заполняется память вашего цифрового фотоаппарата, когда вы делаете снимки. В обычном цифровом фотоаппарате снимок с высоким разрешением занимает около 3 млн байтов[7]7
  Прогресс не стоит на месте. Сейчас примерно такой объем имеет снимок в сжатом виде, например в формате jpeg, причем сделанный очень скромной камерой. Несжатый снимок будет в несколько раз «тяжелее». – Прим. ред.


[Закрыть]
(3 мегабайта). Байт состоит из 8 битов, так что каждый снимок в цифровом фотоаппарате состоит примерно из 24 млн битов).

1 152 000 000 битов – это очень много информации, но количество информации, нужной для описания невидимых колебаний атомов зерен галоида серебра в обычной фотопленке, намного больше. Чтобы их описать, потребовалось бы больше миллиона миллиардов миллиардов битов (1024, или единица и 24 нуля). Невидимые колеблющиеся атомы содержат значительно больше информации, чем видимая фотография, которую они составляют. Фотография, содержащая то же самое количество видимой информации, что и невидимая информация в грамме атомов, была бы размерами со штат Мэн[8]8
  Или примерно в два раза больше Московской области. – Прим. ред.


[Закрыть]
.

Количество битов, содержащихся в колеблющихся атомах, из которых состоит фотографическое изображение на пленке, можно оценить следующим образом. Размер одного зерна галоида серебра – около одной миллионной метра, и в нем примерно триллион атомов. На фотопленке находятся десятки миллиардов зерен галоида серебра. Отдельный атом, который (при комнатной температуре) находится в своем бесконечном танце, требует для своего описания от 10 до 20 битов. Следовательно, общий объем информации, хранимой атомами на фотографии, составляет 1023 бита. Один миллиард (109) битов информации, видимой на цифровой фотографии, представляет собой лишь небольшую долю от этого количества. Остаток информации, содержащейся в веществе обычной фотографии, невидим. Эта невидимая информация и есть энтропия атомов.


Страницы книги >> Предыдущая | 1 2 3 4 5 | Следующая
  • 0 Оценок: 0

Правообладателям!

Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.

Читателям!

Оплатили, но не знаете что делать дальше?


Популярные книги за неделю


Рекомендации