Если кубит может быть 1 или 0 и вернет и то, и другое — как мы можем на него полагаться?

По сути, кубит может «представлять себя» (при наблюдении) как 1 или 0. Мое понимание (каким бы неточным оно ни было) состоит в том, что наблюдение за одним конкретным кубитом может привести к разным результатам. Это может быть 1 при первом наблюдении и 0 при следующем.

Тем не менее, как это помогает нам, когда мы хотим знать (окончательно), является ли это 1 или 0.

Если я задаю кому-то вопрос и не могу положиться на то, что они говорят, у меня нет достоверного ответа. Чем это отличается? По крайней мере, с «традиционным» битом у меня определенно есть 1 или 0.

Итак, я предполагаю (опять же, возможно, ошибочно), что выход этого кубита должен быть опрошен немного дальше, и должны быть выполнены вычисления, чтобы гарантировать целостность того, что он выводит, чтобы найти наиболее вероятный результат (т. е. 1 или 0). В этом случае, если в конечном итоге это либо 1, либо 0, он не сохраняет несколько значений одновременно. Это означает, что он не более эффективен, чем бит, который аналогичным образом хранит только одно значение за раз.

Позвольте мне прояснить — я кое-что здесь неправильно понимаю, я полностью осознаю это, я определенно ошибаюсь — но я хочу знать, какую часть этой истории я упускаю.

Вопросы

Если один-единственный кубит хранит одно-единственное значение (как бы мы ни извлекали это значение) — насколько он более функционален, чем классический бит? Если я ошибаюсь, и на самом деле кубит может хранить несколько значений и выводить одно из них — как мы можем сохранять и извлекать данные таким образом?

Кубит может быть либо «1», либо «0», либо ОБА. В этом преимущество кубитов. Ваше описание кубитов выше будет неполным, если вы не признаете, что они могут находиться в трех потенциальных состояниях. Один кубит может содержать до двух битов информации. Ключевые слова для поиска: алгоритм Шора и квантовый поиск.
Большое спасибо @JakeWatrous - ценю это. Это оставляет меня в замешательстве от того, как компьютерная система сочтет вывод «оба» полезными, когда ей требуются определенные биты данных. Я посмотрю на это дальше.

Ответы (1)

Один кубит так же полезен, как один классический бит в обычном компьютере. Вы можете сделать только три вещи с классическим битом:

  1. Запишите в него значение, например 1.
  2. Прочитайте это значение, все еще 1.
  3. Переверните его, теперь это 0 (ух! вычисление!)

Мощь компьютера заключается в использовании большого количества битов, что позволяет хранить различные типы данных, когда кто-то выясняет, как кодировать данные (текст, числа, изображения, звуки и т. д.) в битах. Это также позволяет более сложные манипуляции с данными, поскольку изменения в одном наборе битов могут зависеть от состояния других битов.

Точно так же есть три вещи, которые вы можете сделать с одним кубитом:

  1. Запишите к нему амплитуду: а | 0 + б | 1 где а и б комплексные числа и | а | 2 + | б | 2 "=" 1 . | 0 и | 1 являются метками для простейших состояний кубита.
  2. Прочтите это: получите 0 с вероятностью | а | 2 и 1 с вероятностью | б | 2 (отсюда сумма, равная 1 на шаге 1.).
  3. Поверните его: преобразуйте числа а и б в новые значения, все еще удовлетворяя шагу 1.

Вот лучшее объяснение этой установки со щенками от физика Калифорнийского технологического института Шона Кэрролла .

Комикс « Субботние утренние хлопья для завтрака», на который Эмилио ссылается в комментариях к вопросу, представляет собой великолепное непрофессиональное описание того, что происходит (как и должно быть; он был написан в соавторстве со Скоттом Ааронсоном, ученым-компьютерщиком из Техасского университета в Остине).который специализируется на квантовых компьютерах). Как только ваша вычислительная задача закодирована в кубитах, вы можете выполнить с кубитами операцию, не имеющую аналога в классических битовых вычислениях: интерференцию. Эта операция берет набор кубитов, представляющих возможные решения проблемы, и при правильном кодировании заставляет возможности, соответствующие неправильным ответам, уравновешиваться, что приводит к почти нулевой амплитуде, оставляя только правильные ответы для обнаружения. Иными словами, правильно настроенное квантовое вычисление вызывает деструктивную интерференцию неправильных ответов, а конструктивную интерференцию правильных ответов.

Результат по-прежнему является вероятностным, поэтому все еще можно получить неправильный ответ. Но тщательно спроектированный квантовый компьютер может дать правильный ответ с вероятностью 99,99...%. Запуск вычислений несколько раз и получение ответа большинства может сделать вероятность неправильного ответа сколь угодно малой.

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

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

Большое спасибо за ответ Марк! Я разработчик, но раньше не занимался чем-то настолько низкоуровневым, так что извините за непонимание до сих пор. Я думаю, что понимаю многое из того, что вы сказали, но вы по-прежнему уклоняетесь от понятия правильного и неправильного ответа, что для меня подразумевает наличие определенного результата вычислений с участием кубитов. Есть 1 или 0. Вы говорите, что это путешествие и достижение результата, который является оптимальным по сравнению с «классической» системой? Если да, то как это более оптимально, чем бит, который предопределен и готов быть окончательным.
Мое (очень) ограниченное понимание заставляет меня поверить, что выход (будь то бит или серия кубитов) будет ответом. Он предоставит результат для своего рода вычислений. Могут ли кубиты дать этот ответ быстрее (эффективнее)? Или он может дать несколько ответов одновременно? В какой части вычислений мы можем извлечь выгоду из квантовой механики? Я смотрел много видео и читал много статей, я понимаю, что суперпозиционирование обеспечивает астрономически более быстрое вычисление, но не уверен в том, как это сделать.
Я полагаю, что мне было бы очень легко сказать: «Хорошо, биты могут сохраняться либо в 1, либо в 0, что по своей сути ограничивает объем данных, которые они могут представлять. Кубиты могут быть как 1, так и 0, что означает, что они могут представлять очень возможную комбинацию, это означает, что они могут представлять все», и остановимся на этом. Но я хочу знать, как именно это интерпретируется, не говоря уже о том, чтобы написать.
@ JᴀʏMᴇᴇ В конце квантового вычисления будет какое-то измерение, которое даст единственный ответ. Вычисление может быть спроектировано так, чтобы вероятность получения правильного ответа была очень близка к 1. Алгоритм, разработанный для использования преимуществ квантовых эффектов, может привести к значительному ускорению. Алгоритм Шора берет то, что является субэкспоненциальным на классических компьютерах, и решает его за полиномиальное время.
@ JᴀʏMᴇᴇ Подготовка кубитов вызывает еще один важный эффект: некоторые кубиты запутываются друг с другом, то есть их состояния коррелируют друг с другом, несмотря на то, что они являются отдельными объектами. Классические биты всегда независимы друг от друга. Это похоже на наличие дополнительных каналов связи между кубитами, но на самом деле это не так, и здесь детали становятся очень техническими.
@ JᴀʏMᴇᴇ Суть любого квантового компьютера в том, что мы можем согласовать квантовые свойства системы с математическими свойствами проблемы, которую мы пытаемся решить. В квантовых вычислениях существует больше способов подготовки вычислений (запутывания) и больше операций (интерференций), чем в классических вычислениях, и мы обнаружили, что их можно использовать с большим успехом для решения определенных задач (до тех пор, пока Питер Шор не открыл алгоритм факторизации, очень немногие людей интересовали квантовые компьютеры).