Если бы у нас был «совершенно эффективный» компьютер и вся доступная энергия Млечного Пути, до какого числа он мог бы считать?

Идея этого вопроса исходит из примера из криптографии, где якобы 256-битных симметричных ключей будет достаточно на все времена (грубая форсировка 256-битного ключа в некотором роде эквивалентна подсчету до 2 255 , с некоторой константой перед ним). Хотя я на самом деле не сомневаюсь в этом, я думаю, что это интересный мысленный эксперимент, до какого числа (приблизительно, конечно) теоретически «совершенно эффективный» (определяйте это как хотите) компьютер с бесконечным временем и всей энергией (включая материю) но не темная материя) в нашей галактике можно было бы рассчитывать. Считая до Икс определяется как прохождение некоторого физического объекта через Икс различные, предопределенные, измеримые состояния. К сожалению, мне не хватает теоретической основы, чтобы правильно выполнить этот расчет, я мог бы попробовать, но я бы понятия не имел, если бы я пропустил что-то важное. Я надеюсь, что такой «забавный» вопрос не выходит за рамки этого сайта (не стесняйтесь направить меня в лучшее место, чтобы задать этот вопрос).

В качестве альтернативы: как насчет всей энергии в известной Вселенной?

Поскольку идея для этого вопроса заключалась в длине ключа в криптографии, не стесняйтесь рассматривать (или не рассматривать) алгоритм Гровера.

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

привет, куки - у меня такое чувство, что твой вопрос балансирует на том, что тебя любят/ненавидят в физике SE. Во-первых, я не знаю, как можно измерить работу «компьютерного подсчета» или существует ли идеально эффективный компьютер.
Вы могли бы сформулировать это так: сколько энергии потребуется самым эффективным компьютерам, чтобы... (вставьте свою задачу)
Используя классические подходы, можно сосчитать до 2^256, используя 3/4 массы/энергии галактики. Я бы перепроверил для вас математику, но похоже, что вы уже приняли квантовый ответ.
@CortAmmon Это тоже выглядит интересным ответом, пожалуйста , уточните - я, например, понятия не имею, к чему вы клоните. Более того, учитывая потребности ОП (оценки для оценки надежности криптографических схем), было бы полезно использовать различные подходы к проблеме.
Учитывая контекст вашего вопроса, вам также следует взглянуть на предел Бреммермана , который, по-видимому, имеет некоторую историю использования для оценки безопасности криптографических алгоритмов.
@CortAmmon Кстати, у меня не «квантовый» ответ, это «обратимый компьютерный» ответ. Я упоминаю квантовые вычисления только потому, что в настоящее время они рассматриваются как многообещающий кандидат на создание обратимого компьютера. Беннетт, Фейнман и другие, кто думал об этих вещах, на самом деле проводили свои мысленные эксперименты с бильярдными компьютерами, в которых маленькие шары упруго отскакивали друг от друга, влияя на пути друг друга и, таким образом, выполняя вычисления без какой-либо потери энергии. Посмотрите на статью Беннета, которую я цитирую для описания.

Ответы (1)

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

Теоретически нижним пределом энергетических потребностей в вычислениях является предел Ландауэра , который утверждает, что забвение одного бита информации требует ввода работы, равной к Т журнал 2 чтобы соблюсти второй закон термодинамики. Если компьютер является обратимым, т . е. о его состоянии в любой момент времени можно вывести его состояние в любое другое время, то нет теоретического нижнего предела его потребности в энергии. Под состоянием здесь мы подразумеваем компьютерное теоретическое состояние ЦП, а не физическое квантовое состояние (первое является очень малой частью второго; микроскопические законы обратимы, так что полное квантовое состояние в любой момент времени теоретически может быть выведено из полное квантовое состояние в любое время). Примером необратимого вычисления является то, когда вы складываете два числа и записываете результат в память, ранее занятую слагаемыми. Два дополнения не могут быть выведены из состояния компьютера ( т.е.сумма) после того, как произошло сложение. Вкратце, причина этой ситуации в том, что если ваш расчет забывает, Природа этого не делает, поэтому, если вы стираете память, то эта «стертая» информация должна каким-то образом оказаться закодированной в полном квантовом состоянии компьютера, поскольку микроскопические законы действительно обратимы. Единственный способ, которым система может «поглощать больше информации», т. е. полностью кодировать свое прошлое в своем квантовом состоянии, — это получать доступ ко все большему и большему количеству квантовых состояний, а это почти всегда означает нагреваться [см. 1]. Итак, в какой-то момент вам нужно добавить энергию, чтобы это произошло, и в конечном итоге вам нужно будет охлаждать компьютер, чтобы он продолжал работать. Затем второй закон термодинамики показывает, что если мы хотим поддерживать компьютер в постоянном макросостоянии, нам нужно вводить объем работы, предписанный Ландауэром. принцип сделать это[см. 2].

Теперь давайте посмотрим на вашу проблему. Очевидно, что подсчет можно превратить в обратимое вычисление: каждый шаг обратим, и вы можете представить себе, что для достижения этого просто синхронизируют простой цифровой счетчик в обратном направлении. Таким образом, теоретически мы могли бы построить квантовый (или другой обратимый) компьютер, чтобы считать без ввода энергии , пока он считает . Однако при подсчете забывания информации необходимо учитывать инициализацию. То есть вам нужно начать с инициализированных регистров для подсчета. Вы запускаете свою машину, инициализируя их все до нуля ..... но это означает, что существует квантовое состояние каждого регистра, которое «забывается» при инициализации машины. Итак, если вам нужна память о Н биты для вашего счета, вам нужно придумать Н к Т журнал 2 джоулей, чтобы инициализировать обратимый компьютер. Википедия говорит мне, что масса Млечного Пути оценивается в 10 12 солнечных масс или около 2 × 10 30 × 10 12 × 10 17 знак равно 2 × 10 59 джоули. Если вы можете охладить свой компьютер до температуры космического фонового микроволнового излучения или 2,7 К , то предел Ландауэра означает, что вы можете купить инициализацию 2 × 10 59 / ( 2,7 × 1,38 × 10 23 × журнал 2 ) 8 × 10 81 биты. Вы не можете запустить свой компьютер ниже 2,7 К поскольку тогда ему потребуется энергия для искусственного охлаждения ниже его окружающей среды.

Итак, вот ваш грубый ответ: теоретически вы можете сосчитать до числа:

2 8 × 10 81

с реверсивной реализацией счетчика с учетом заявленного энергетического бюджета.

Другим пределом, который может представлять интерес с криптографической точки зрения, является предел Бреммермана , который ограничивает, насколько быстро вычисления могут развиваться в их последовательных шагах.

Следует отметить, насколько трудно достичь предела Ландауэра. Если наш счетчик забывает хотя бы один бит за цикл счета, предел снижается до все еще колоссального 2 × 10 ˆ 81 . Йоки [см. ссылку 3] утверждает в первых главах своей книги, что явление репликации ДНК во время клеточного деления, рассматриваемое как компьютерный алгоритм, является наиболее эффективным из известных вычислений и потребляет примерно на порядок больше энергии, чем предел Ландауэра. то есть примерно 10 к Т за забытый бит. В свете предела Ландауэра современные компьютеры поразительно неэффективны. 32 ГБ ОЗУ перезаписываются со скоростью 1 ГБ в секунду и потребляют 5 Вт при 300 КБ (это цифры для компьютера, на котором пишутся эти слова) представляют собой забывание, которое на одиннадцать порядков более расточительно ( 5 / ( 8 × 10 9 × к × 300 журнал 2 ) 2 × 10 11 ), чем предел Ландауэра.


Ссылки и сноски:

[1]: Чтобы углубить ваше понимание этого утверждения, попробуйте вычислить и построить график энтропии Шеннона спецификации состояния ансамбля Н квантовые гармонические осцилляторы в термодинамическом равновесии как функция температуры (ответ: ( е β ю β ю 1 е β ю + журнал ( е β ю 1 ) ) / журнал ( 2 ) бит на генератор, где β ю знак равно ю / ( к Т ) ). Сразу видно, что происходит: распределение вероятностей Больцмана здесь пропорционально п ( н ) опыт ( ( н + 1 2 ) ю к Т ) и хвост становится длиннее, «доступ к большему количеству состояний», как Т поднимается).

[2] Прекрасным обзором этих концепций является Charles Bennett, "The Thermodynamics of Computation: A Review", Int. Дж. Тео. Phys., 21 , № 12, 1982 г. )

[3] «Теория информации, эволюция и происхождение жизни», Хьюберт П. Йоки . Как человек, не являющийся биологом, я не чувствую себя вправе судить об этом тексте. Однако я чувствовал, что понял первые главы, из которых я почерпнул утверждение об эффективности репликации ДНК, достаточно хорошо, чтобы быть достаточно уверенным в правильности этого утверждения, но я нашел большую часть текста после главы 2 совершенно непонятной.

Это качественное объяснение того, почему необратимые вычисления требуют энергии, было великолепным. Я сталкивался с этим фактом, но не видел объяснения раньше.
Для полноты, возможно, стоит отметить, что если вам нужно выполнять какие-либо необратимые вычисления на каждом шаге, то предел становится намного ниже. На самом деле, используя ваши цифры и предполагая стирание (по крайней мере) одного бита за шаг, предел становится примерно 8 × 10 81 2 272 шаги.
@IlmariKaronen Действительно. Предел Ландауэра намного ниже всего, что мы пытаемся достичь. Я добавил немного по вашему предложению
@PeterCordes Спасибо; объяснение, конечно, не совсем мое, но то, что я получил прямо, прочитав обзор Беннета, который я сейчас процитировал в обновленном ответе. Если вы заинтересованы в этом материале, этот документ стоит прочитать.
@Bosoneando Большое спасибо. Как я сказал Питеру Кордесу, если вас это интересует, ссылку на Беннета, которую я только что добавил к ответу, стоит прочитать.
Род, основанный на книге или нет, ваш ответ просто впечатляет!
Кроме того, как ярый сторонник замечательной эффективности биологических систем в интеллектуальных вычислениях, я был очень заинтригован вашими замечаниями об эффективности репликации ДНК как формы вычислений.
@TerryBollinger Спасибо, Терри. Это действительно интригует. Жаль, что я не мог понять большую часть книги, которую цитирую. В этой книге, конечно, есть ссылки, но я не удосужился их отыскать.
Учитывая, что есть ~ 10 80 атомов во Вселенной, оказывается, что ограничивающим фактором в двоичном компьютере будет количество атомов (при условии, что вы можете получить один бит на атом). Возможно, когда-нибудь мы придумаем, как кодировать более плотно, но мы все еще находимся в режиме многих атомов на бит. Однако несколько интересно, что эти два числа отличаются друг от друга в пределах двух порядков.
@ user121330 Я думаю, что два числа примерно равны, это совпадение, так как я взял полную энергию Млечного Пути, а не наблюдаемой Вселенной. Как указывает здесь ответ Джерри Ширмера , нет теоретико-информационного ограничения на количество битов, которые могут быть закодированы в один атом водорода. Но в конце концов вы достигнете границы Бекенштейна.
Правильно, Млечный Путь. Так что только ~ 10 68 атомы для работы, и нам нужно кодировать ~ 10 13 бит на атом. дельта Е н >> Δ Е н как правило, поэтому, хотя можно с бесконечной точностью закодировать информацию, ее никогда нельзя измерить, а возбужденные состояния Водорода общеизвестно нестабильны. Вы написали здесь прекрасный ответ, но, как и при любом обсуждении вычислений, необходимо учитывать узкие места. Я предполагаю, что здесь есть 4 действительно замечательных вопроса - ЦП, память, пропускная способность и дисплей.
В журнале Nature есть статья , в которой экспериментально подтверждается принцип Ландауэра.
@WYSIWYG Спасибо за ссылку. В настоящее время существует довольно много экспериментальных работ, направленных на прямую проверку LP. См., например , здесь
@WetSavannaAnimalakaRodVance Да, я наткнулся на другую бумагу , когда искал вышеуказанную. В целом выглядит очень интересно.
Мне любопытно: в чем именно разница между обратимым и необратимым счетчиком? Вы говорите, что необратимый — это тот, который забывает, но разве каждый раз, когда мы щелкаем счетчик вверх на единицу, мы не забываем его предыдущее состояние? Или дело в том, что мы можем так же легко щелкнуть его на единицу, достаточную для того, чтобы сделать его обратимым, потому что это позволяет нам сделать вывод о том, каким было его состояние в прошлом (то есть карта прошлого в будущие состояния биективна на пространство состояний)? Вы упомянули, что «вы можете представить, что для достижения этого просто синхронизируется простой цифровой счетчик в обратном направлении», но это утверждение немного неясно.
Это предполагает, что вы каким-то образом должны использовать обратный счетчик для его реализации, а не просто тот факт, что вы можете щелкнуть по нему назад, делает его обратимым. Скорее, это предполагает, что либо вам нужно включить обратный счетчик, и в этом случае я не вижу, как это помогает, либо вам нужно отмечать счетчик назад, а не вперед, что также не похоже, что это должно иметь какое-либо значение. Что именно вы имеете в виду здесь?
@The_Sympathizer По сути, здесь важно биективное отображение. Со счетчиком, если вы знаете входные данные (бит направления) и состояние, вы можете заранее сделать вывод о том, какое состояние было в тактовом цикле. У сумматора есть много прежних состояний, которые могут произвести текущее сложение. Конечно, квантовые счетчики существуют: можно настроить квантовую систему, которая посещает заранее определенный набор состояний в заданном порядке посредством унитарной обратимой эволюции.