Top

양자 컴퓨터 프로그래밍 [IBM Q Experience로 하는 양자 컴퓨터 프로그래밍]

  • 원서명Practical Quantum Computing for Developers: Programming Quantum Rigs in the Cloud using Python, Quantum Assembly Language and IBM QExperience (ISBN 9781484242179)
  • 지은이블라디미르 실바(Vladimir Silva)
  • 옮긴이이정문
  • ISBN : 9791161753393
  • 35,000원
  • 2019년 09월 16일 펴냄
  • 페이퍼백 | 400쪽 | 188*235mm
  • 시리즈 : 클라우드 컴퓨팅

책 소개

요약

새로운 분야인 양자 컴퓨팅에서 프로그램을 작성하는 방법을 설명하는 책이다. 우선, 양자 역학이 우리의 직관과 어떻게 다르게 동작하는지 주요 개념을 소개한 후, 양자 컴퓨터의 특징인 큐빗, 얽힘, 논리 게이트 등을 설명한다. 그리고 QISKit, 파이썬 SDK, QASM를 사용해서 IBM의 Q Experience 클라우드 양자 플랫폼에서 프로그램을 작성하고 실행하는 방법을 안내한다. 그로버와 쇼어 알고리즘, 양자 컴퓨터의 킬러 애플리케이션 후보인 양자 순간이동에 대한 설명도 빼놓지 않는다.

이 책에서 다루는 내용

■ IBM Q Experience를 사용해 프로그램과 실험을 시각적으로 작성해서 클라우드상의 양자 시뮬레이터 및 실제 양자 장치에 제출하는 방법
■ IBM Q Experience의 REST API를 사용해 프로그램을 원격으로 실행하는 방법
■ 고전 컴퓨터보다 성능이 우수한 알고리즘을 작성하는 방법
■ 인증, 원격 장치 열거, 양자 프로세서에 관한 정보 조회
■ 클라우드에서 원격으로 실험을 열거 및 실행할 수 있는 Node.js REST 클라이언트를 구축하는 방법
■ 양자 숫자 생성기 작성
■ 양자 순간 이동의 발견
■ 고전적인 전함 게임의 양자 버전을 예제로 사용해 단일 큐빗 연산의 심화 학습
■ 위조 동전 문제

이 책의 구성

1장, 양자역학의 기이하고 놀라운 세계
모든 것은 1930년대 어쩔 수 없이 천재라고 여겨진 막스 플랑크(Max Planck)로부터 시작됐다. 플랑크는 빛 스펙트럼의 에너지 분포에 대한 새로운 해석을 제시했다. 광자의 에너지는 고전 물리학자들이 믿는 것처럼 연속적인 함수로 기술되는 것이 아니고 플랑크가 양자(quanta)라고 부른 덩어리로 기술된다고 어쩔 수 없이 가정했다. 20세기 과학에서 가장 위대한 혁명, 즉 양자역학을 태동시킨 것이다. 1장은 본격적인 탐구에 들어가기 전의 애피타이저로, 2명의 물리학 거장 알버트 아인슈타인과 닐스 보어 간의 의견 충돌을 소개한다.
1930년대에 양자역학은 혁명적인 이론이었으므로 20세기 최고의 물리학자였던 아인슈타인을 포함해 많은 과학자가 받아들이기를 꺼려했다. 노벨물리학상 수상자이기도 했던 아인슈타인은 양자역학의 확률적 속성을 결코 받아들이지 않았다. 이 때문에 양자역학의 거두였던 닐스 보어와의 관계에 균열이 발생했다. 두 사람은 수십 년에 걸쳐 논쟁을 벌였으며, 끝끝내 의견차를 좁히지 못했다. 양자역학은 70년 동안 이론적, 실험적으로 수많은 도전을 받았으나 항상 논쟁에서 승리했다.
1장을 통해 두 명의 위대한 물리학자 사이의 흥미로운 이야기와 함께 양자역학의 바탕이 된 이론, 실험, 그리고 그 결과를 탐구한다.

2장, 양자 컴퓨팅: 현실의 구조 자체를 바꾼다
1980년대 또 다른 위대한 물리학자 리처드 파인만은 양자역학의 원리를 이용해 문제를 더 빨리 해결할 수 있는 컴퓨터, 즉 양자 컴퓨터를 제안한다. 양자 컴퓨터를 제작하기 위한 경쟁은 이미 시작됐다. 2장에서는 일반적인 용어를 사용해서 양자 컴퓨터의 기본적인 아키텍처, 즉 양자 계산의 기본 단위인 큐빗(qubit)을 탐구한다. 큐빗은 거의 마법과 같은 성질을 갖고 있는데, 바로 중첩(superposition)이다. 놀랍게도 큐빗은 동시에 0과 1, 두 개의 상태를 가질 수 있다. 이 개념은 우리가 살고 있는 거시적 규모에서는 이해하기 어렵다. 하지만 원자 규모에서는 현실 세계의 상식이 통하지 않으며, 이 사실은 70년 이상 실험적으로 입증됐다. 중첩 덕분에 양자 컴퓨터는 비교적 적은 수의 큐빗으로 대규모 계산을 수행해서 고전적인 컴퓨터를 능가할 수 있다. 상식을 뛰어넘는 큐빗의 또 다른 놀라운 성질은 큐빗의 얽힘(entanglement)이다. 얽힘은 알면 알수록 물리 법칙이 아니라 부두교 주술처럼 보이는 현상이다. 서로 얽힌 큐빗을 관찰하는 순간, 시간과 공간의 제약을 넘어서 빛의 속도보다 빠르게 상태 정보가 전송된다! 상식으로는 이해할 수 없는 현상이다.
2장에서는 양자 컴퓨터의 물리적 구성 요소인 양자 게이트와 초전도 루프, 이온 덫, 위상학 끈 등의 다양한 큐빗 설계 원리를 탐구한다. 또한 양자 컴퓨터 개발에 나선 주요 기업들의 현재 상황뿐 아니라 양자 어닐링과 같이 조금 다른 유형의 양자 계산을 소개한다.

3장, IBM Q Experience 시작: 유일무이한 클라우드 양자 컴퓨팅 플랫폼
3장에서는 IBM Q Experience에 발을 담근다. IBM Q Experience는 일반 대중이 사용할 수 있는 최초의 클라우드 양자 컴퓨팅 플랫폼으로, 실제 양자 장치 혹은 시뮬레이터를 제공한다. 전통적으로 실제 양자 장치는 연구 목적으로만 사용됐지만, 수십 년간 양자 컴퓨터를 개발해 온 IBM의 좋은 사람들이 일반에게 공개한 덕분에 우리들도 양자 컴퓨터를 사용할 수 있게 됐다.
시각적 작성 도구인 컴포저를 사용해 양자 회로를 만드는 방법과 여러분의 프로그래밍 열정을 위해 파이썬 SDK를 사용한 프로그램 작성 방법을 배운다. 그런 다음 실제 회로를 실행하고, 결과를 조사하고, 양자 프로그래머로서의 새로운 경력을 쌓기 위한 첫걸음을 내딛는다. IBM이 최초의 클라우드 양자 컴퓨팅 플랫폼을 내놓았지만 경쟁자들도 바짝 뒤쫓고 있다. 가까운 미래에 다른 IT업체들도 클라우드 양자 플랫폼을 발표할 것이다. 지금이야말로 배워야 할 때다.

4장, QISKit: 파이썬으로 양자 프로그램을 작성할 수 있는 멋진 SDK
QISKit은 Quantum Information Software Kit의 약자로, 클라우드 또는 로컬 시뮬레이터에서 양자 프로그램을 작성하기 위한 파이썬 SDK다. 4장에서는 먼저 PC에 파이썬 SDK를 설치하는 방법을 배운다. 다음으로 선형 대수학을 사용해 양자 게이트를 기술하고 내부적으로 어떤 일이 일어나는지 더 깊이 이해한다. 이는 첫 번째 양자 프로그램을 작성하기 전의 애피타이저며, 첫 번째 양자 프로그램은 파이썬 SDK의 구문에 익숙해지기 위해 아주 간단한 프로그램을 사용한다. 마지막으로 실제 양자 장치에서 실행한다. 물론 컴포저에서 시각적인 도구를 사용해 양자 프로그램을 작성할 수도 있다. 양자 프로그램의 기본 구성 요소인 양자 게이트에 대해 자세히 이해하는 것이 중요하다. 4장에서는 이와 관련된 모든 내용을 다룬다.

5장, 시동을 켜시오: 양자 난수, 양자 텔레포테이션, 초고밀도 코딩
5장에서는 양자 시스템의 뛰어난 정보처리 능력 3가지를 설명한다. 양자 난수 생성은 진정한 무작위성을 제공하는 양자역학의 성질을 탐색한다. 매우 간단한 논리 게이트와 파이썬 SDK를 사용해 양자 난수 생성을 어떻게 달성할 수 있는지 배운다. 다음으로 서로 관련을 갖는 정보처리 프로토콜인 초고밀도 코딩과 양자 텔레포테이션을 설명한다. 이 프로토콜들은 이름만큼이나 불가사의한 특징이 있다. 이 프로토콜들의 비밀을 발견하고, 컴포저에서 회로를 작성하고, 파이썬을 사용해 원격으로 실행하며, 최종적으로 결과를 해석하고 검증한다.

6장, 양자 게임으로 놀아보자
6장에서는 양자 컴퓨터로 기본적인 게임을 구현하는 방법을 학습한다. 이를 위해 QISKit 파이썬 튜토리얼과 함께 배포되는 전형적인 양자 전함 게임을 사용한다. 전반부에서는 게임의 동작 원리를 주로 살펴보지만 여기서 멈추지 않는다. 후반부에서는 게임의 외관을 대폭 업그레이드함으로써 한 단계 진화한다. 웹 브라우저 기반의 사용자 인터페이스, 이벤트를 소비하고 양자 시뮬레이터로 보내는 아파치 CGI 인터페이스 등의 기능을 추가하면서 양자 전함 게임을 클라우드에 배포한다. 클라우드의 웹 브라우저로 양자 전함 게임을 플레이하면서 친구와 가족을 감동시키자.

7장, 게임 이론: 양자역학에서 확률은 언제나 호의적이다
게임 이론은 양자역학에서도 신기하다. 7장에서는 고전적 알고리즘에 비해 양자 알고리즘의 놀라운 힘을 보여주는 2개의 게임 퍼즐인 위조 동전 퍼즐과 머민-페레즈 매직스퀘어를 살펴본다.
위조 동전 퍼즐의 경우 양자 알고리즘은 양팔 저울을 제한된 횟수만큼 사용해 가짜 동전을 찾을 때 고전적 알고리즘보다 4차 속도 향상을 보여준다. 머민-페레즈 매직스퀘어는 양자 의사(pseudo) 텔레파시, 즉 게임을 하는 플레이어들 간에 서로 의사소통을 하지 않고서는 불가능한 결과를 보여주는 능력의 예다.

8장, 그로버와 쇼어 알고리즘을 통한 검색 속도 향상과 비대칭 암호화 위협
8장에서는 실용적인 양자 계산의 가능성에 대한 흥분을 불러일으킨 2개의 알고리즘을 소개하며 책을 마무리한다. 그로버(Grover)의 검색 알고리즘은 평균적으로 N의 제곱근 단계 만에 값을 찾을 수 있는 비구조적 양자 검색 알고리즘으로, 최고의 고전적 알고리즘이 N/2 단계에 값을 찾는 것에 비해 훨씬 빠른 속도를 보여준다. 그렇게 큰 차이가 아니라고 생각할지 모르지만, 대규모의 데이터베이스들이 처리되는 데이터 센터에서 이 알고리즘의 잠재력은 엄청나다. 미래에는 그로버의 알고리즘이 모든 웹 검색을 수행할 날이 올 것이다. 쇼어의 소인수분해 알고리즘은 많은 전문가가 현재 주류인 비대칭 암호화 체계를 무릎 꿇릴 것으로 예상할 정도로 유명하다. 최고의 고전적 알고리즘보다 지수적으로 빠른 속도를 제공하며, 양자 계산의 힘을 보여주는 가장 좋은 예다.

상세 이미지

저자/역자 소개

지은이의 말

클라우드에서의 양자 컴퓨터 프로그래밍을 위한 궁극적인 안내서로 이 책을 집필했다. IBM 연구소의 좋은 연구원들 덕분에 양자 컴퓨터 프로그래밍이 가능해졌다. IBM은 자신들이 개발한 프로토타입 양자 컴퓨터인 IBM Q Experience를 연구 목적뿐 아니라 양자 컴퓨팅에 관심 있는 일반 대중을 위해서 공개한 것이다.
양자 컴퓨팅은 점차 확산되고 있으며, 지금은 양자 컴퓨터 프로그래밍을 배워야 할 때다. 앞으로 몇 년 내로 최초의 상용 양자 컴퓨터가 등장할 것이며, 양자 컴퓨터는 고전적 컴퓨터에 비해 상당 수준의 계산 속도 향상을 약속한다. 다음의 그래프는 큰 정수를 소인수분해하는 데 사용되는 2개의 알고리즘의 시간 복잡도를 비교해서 보여준다. 하나는 최고의 고전적 알고리즘인 수체 체(Number Field Sieve) 알고리즘이고, 다른 하나는 피터 쇼어(Peter Shor)가 개발한 양자 소인수 분해 알고리즘이다.
쇼어의 알고리즘은 현재 암호화 체계의 근간을 이루는 문제를 수체 체 알고리즘보다 현저히 빠르게 답을 얻을 수 있다. 이 알고리즘이 실질적으로 구현되면 현재의 비대칭 암호화는 쓸모없게 된다!
전체적으로 이 책은 개념 이해를 위한 여정에 비유할 수 있다. 이 책에서 설명되는 개념을 이해하기 어렵더라도 걱정할 것은 없다. 혼자가 아니기 때문이다. 위대한 물리학자인 리처드 파인만(Richard Feynman)은 누군가가 양자역학을 이해한다고 말한다면 그 사람은 양자역학을 이해하지 못한 것이라고 말한 바 있다. 이 기이한 이론에 정통한 거장들조차도 양자역학의 의미를 이해하기 위해 고민한 것이다.
나는 현실 세계의 알고리즘, 회로 코드, 그리고 그림으로 표현된 실험 결과들을 사용해서 내 능력이 닿는 한 양자 컴퓨팅을 탐구하기 위해 노력했다. 이 책에 포함된 알고리즘 중 일부는 논리적으로 보이지 않으며, 실제 시스템의 계산이 아니라 마치 부두교 주술을 설명하는 것처럼 보이기도 한다. 이것이 내가 이 주제를 다루기로 결심한 주된 이유다.
나는 양자역학의 비상식적인 원리를 이해하기 어려워하면서도 양자역학의 신비로움에 매료돼 왔다. 그래서 IBM이 현재로서는 유일무이한 클라우드 양자 컴퓨팅 플랫폼을 개발해서 세상에 공개했을 때 이 플랫폼을 배워서 책을 집필할 수 있는 기회에 기꺼이 뛰어들었다.
궁극적으로 이 책은 클라우드에서의 양자 컴퓨팅에 대한 나의 견해다. 그리고 내가 이 책을 쓰면서 즐거웠던 것만큼 여러분도 이 책을 읽으면서 즐거움을 얻기를 바란다. 내가 감히 조언한다면 양자 컴퓨터 프로그래밍을 가급적 빨리 배우는 것이 좋다. 양자 컴퓨터가 데이터 센터에서 검색, 시뮬레이션, 의학, 인공지능에 이르기까지 거의 모든 일을 하는 날이 머지않다.

지은이 소개

블라디미르 실바(Vladimir Silva)

미들테네시주립대에서 컴퓨터과학 석사 학위를 받았다. IBM에서 연구 엔지니어로 5년 동안 일하면서 분산 및 그리드 컴퓨팅 분야에서 풍부한 경험을 쌓았다.
OCP, MCSD, MCP 등 다수의 IT 자격증을 보유하고 있으며, 에 다수의 기술 관련 기사를 작성했다. 『Grid Computing for Developers』(Charles River Media, 2005),『Practical Eclipse Rich Client Platform Projects』(Apress, 2009), 『Pro Android Games, 3rd Edition』(Apress, 2015), 『Advanced Android 4 Games』(Apress, 2011) 등의 책을 집필했다. 노스캐롤라이나주에서 열린 16회의 마라톤 경주를 완주한 열정적인 마라토너며, 코딩, 달리기, 글쓰기를 하지 않을 때는 클래식 기타 연주 혹은 양자역학과 같은 신비한 주제에 대한 사색을 즐긴다.

옮긴이의 말

이 책의 기본적인 목적은 IBM이 발표한 클라우드 양자 컴퓨터 플랫폼인 Q Experience에서 프로그램을 작성하는 방법을 설명하는 것입니다. Q Experience를 사용하면 일반인도 양자 컴퓨터의 동작 원리를 따르는 프로그램을 작성하고 실행할 수 있습니다. 실제 양자 컴퓨터는 고가의 장비이므로 사용 횟수에 제한이 있지만, 시뮬레이터는 아무런 제한 없이 사용할 수 있습니다.
양자 컴퓨터의 동작 원리는 우리가 알고 있는 컴퓨터와 매우 다릅니다. 양자 컴퓨터는 양자역학의 원리들을 기반으로 하는데, 양자역학이 말하는 중첩과 얽힘은 우리의 상식으로는 이해하기 어렵습니다. 하지만 양자역학은 미시 세계의 현상을 매우 성공적으로 설명하고 있으며, 이를 활용해 기존 컴퓨터의 한계를 뛰어넘고자 하는 시도가 양자 컴퓨터라고 말할 수 있습니다. 이 책은 본격적으로 Q Experience를 소개하기 전에 양자역학의 역사와 핵심 개념을 설명하는 것으로 시작합니다. 1장은 아인슈타인이 양자역학의 확률적 해석을 끝까지 반대하면서 보어와 대립했던 역사를 흥미 있게 기술하며, 2장은 양자 컴퓨터의 특징인 큐빗의 중첩과 얽힘 원리를 중심으로 최근의 양자 컴퓨터 설계 방안 등을 설명합니다.
3장부터는 Q Experience에서 양자 프로그램을 작성하는 방법을 본격적으로 소개합니다. 화면 구성, 회로 작성, 실험 실행, 파이썬 SDK 설정 등을 설명하고, 이를 바탕으로 난수 생성, 초고밀도 코딩, 양자 순간 이동을 직접 수행합니다. 또한 QISKit 튜토리얼에 포함된 게임을 직접 구현해보고, 양자 알고리즘의 힘을 보여주는 퍼즐도 풀어봅니다.
마지막으로 양자 컴퓨터의 가능성을 이야기할 때 빠지지 않는 그로버의 검색 알고리즘과 쇼어의 소인수 분해 알고리즘을 자세히 다룹니다. 최초의 진공관 컴퓨터가 지금처럼 소형화되기까지 수십 년이 걸렸듯이 양자 컴퓨터를 PC처럼 사용하려면 많은 시간이 걸릴 것입니다. 하지만 거대 IT기업들이 앞다퉈 양자 컴퓨터 개발에 나서고 있으므로, 양자 컴퓨터가 데이터 센터의 서버들을 대체하는 날은 생각보다 빨리 올 수 있습니다. 이를 대비해서 양자 컴퓨터의 개념과 동작 원리를 파악하는 것은 좋은 일이라고 생각합니다.

옮긴이 소개

이정문

컴퓨터공학을 전공했으며, 다수의 원서를 번역했다. 옮긴 책으로는 에이콘출판사에서 펴낸 『비기닝 ANSI C++』(2008), 『데이터 과학으로 접근하는 정보보안』(2016), 『모던 파이썬 쿡북』(2018) 등이 있다.

목차

목차
  • 1장. 양자역학의 기이하고 놀라운 세계
    • 20세기의 물리학 황금시대
    • 막스 플랑크와 자외선 파탄이 모든 것의 시작
    • 보어의 양자 도약
    • 두 거물의 충돌: 양자 고양이와 불확정성 원리
      • 전지전능한 파동 함수
      • ψ의 확률론적 해석: 파동 함수의 원래 의도는 양자역학을 무너뜨리기 위한 것
      • 양자 고양이가 보른의 확률론 진영을 무너뜨리려고 시도
      • 불확정성 원리
      • 간섭과 이중 슬릿 실험
    • 아인슈타인이 보어에게: 신은 주사위를 던지지 않는다
    • 보어가 아인슈타인에게: 신이 주사위를 갖고 무엇을 하든 상관하지 말라
    • 얽힘과 EPR 역설: 도깨비 같은 원격 작용
    • 벨의 부등식: 얽힘 테스트
    • EPR 역설의 패배: 보어가 마지막에 웃다
    • 우리를 속이고 있는 실재: 모든 것은 서로 연결돼 있다

  • 2장. 양자 컴퓨팅: 현실의 뼈대 자체를 구부리다
    • 트랜지스터는 물리 법칙과 충돌하고 있다
    • 5나노 트랜지스터: 커다란 문제
    • 양자 범위와 트랜지스터의 소멸
      • 전자 터널링
      • 슬릿 실험
    • 트랜지스터의 미래
    • 리처드 파인만과 양자 컴퓨터의 세계로
    • 큐빗은 이상하고 놀랍다
      • 상태의 중첩
      • 얽힘: 큐빗 관측이 다른 큐빗의 상태를 드러내다
      • 양자 게이트로 큐빗 조작
      • 큐빗 설계
    • 양자 컴퓨터와 기존 컴퓨터
      • 복잡한 시뮬레이션
      • 분자 모델링과 신소재
      • 정교한 딥러닝
      • 양자 신경망(QNN)과 인공지능(AI)
    • 양자 컴퓨터의 함정: 결깨짐과 간섭
      • 결깨짐(수명)
      • 양자 오류 정정(QEC)
    • 50-큐빗 프로세서와 양자 우위를 위한 탐험
    • 양자 어닐링(QA)과 에너지 최소화 논쟁
      • 2000 큐빗: 눈에 보이는 것이 항상 진실은 아니다
      • 양자 어닐링: 양자 컴퓨팅의 부분집합
    • 범용 양자 컴퓨팅과 미래
      • 구글과 양자 인공지능
      • 데이터 센터의 양자 컴퓨터
      • 경쟁은 전 세계적으로 벌어지고 있다
      • 미래의 응용 분야

  • 3장. IBM Q Experience 시작: 유일무이한 클라우드 양자 컴퓨팅 플랫폼
    • IBM Q Experience에 발 담그기
      • 양자 컴포저
      • 양자 게이트
      • 사용 가능한 양자 백엔드 프로세서
    • 작품 번호 1: 벨 상태와 GHZ 상태의 변형
      • 벨 상태와 도깨비 같은 원격 작용
      • 더욱 도깨비 같은 GHZ 상태 테스트
      • 초결정론:도깨비스러움을 벗어나는 방법.아인슈타인이 옳았는가?
    • REST API를 통한 원격 접근
      • 인증
      • 사용 가능한 백엔드 목록
      • 특정 프로세서의 캘리브레이션 정보 얻기
      • 백엔드 매개변수 얻기
      • 프로세서 대기열의 상태 가져오기
      • 실행 대기열 내의 작업 목록 얻기
      • 계정의 크레딧 정보 가져오기
      • 사용자의 실험 목록 얻어오기
      • 실험 실행
      • 작업 실행
      • API 버전 얻기
    • IBMQuantumExperience용 Node.js 클라이언트
      • IBMQuantumExperience를 위한 Node.js 모듈 구축
      • API 메소드 내보내기
      • 토큰으로 인증
      • 백엔드 목록 가져오기
      • 캘리브레이션 매개변수 목록 가져오기
      • 실험 실행
      • 디버깅과 테스트
      • 세상과 공유: 모듈을 게시

  • 4장. QISKit: 파이썬으로 양자 프로그램을 작성할 수 있는 멋진 SDK
    • QISKit 설치
      • 윈도우에 설치
      • 리눅스 CentOS에서의 설치
    • 큐빗 101: 아주 기본적인 대수학
      • 양자 비트의 대수적 표현
      • 양자 게이트로 큐빗의 상태 변경
      • 보편적 양자 계산은 고전적 계산보다 지름길을 제공한다
    • 첫 번째 양자 프로그램
      • SDK의 내부: 회로 컴파일과 QASM
      • 실제 양자 장치에서 실행
    • 양자 어셈블리: 무대 뒤에 숨은 힘

  • 5장. 엔진 시동: 양자 난수, 양자 순간 이동, 초고밀도 코딩
    • 양자 난수 생성
      • 아다마르 게이트를 이용한 무작위 비트 생성
      • 무작위 결과 값 검증
    • 초고밀도 코딩
      • 컴포저용 회로
      • 파이썬을 사용해 원격으로 실행
      • 결과 보기
    • 양자 순간 이동
      • 컴포저용 회로
      • 파이썬을 사용해 원격으로 실행
      • 결과 분석

  • 6장. 양자 게임으로 놀아보자
    • 양자 전함 게임
      • 설정 방법
      • 초기화
      • 보드에 전함 배치
      • 메인 루프와 실행 결과
    • 클라우드 전함: 원격 접근이 가능하게 개선
      • 연습문제 1: 게임 로직과 사용자 인터페이스를 분리
      • 연습문제 2: 전함-폭탄 보드를 위한 웹 인터페이스 구축
      • 연습문제 3: 아파치 HTTPD로 배포 및 문제 해결
      • 해답 1: 재사용 가능한 파이썬 프로그램
      • 해답 2: 사용자 인터페이스
      • 해답 3: 배포 및 테스트
      • 문제 해결
      • 추가적인 개선 사항

  • 7장. 게임 이론: 양자역학에서 확률은 언제나 호의적이다
    • 위조 동전 퍼즐
      • 위조 동전, 양자 컴퓨터의 해결 방법
      • 1단계: 양자 저울에 질의
      • 2단계: 양자 저울을 생성
      • 3단계: 위조 동전을 식별
      • 임의의 개수의 위조 동전으로 일반화
    • 머민-페레즈 매직스퀘어
      • 머민-페레즈 매직스퀘어 연습문제
      • 양자 승리 전략
      • 얽힘 상태 공유
      • 유니타리 변환
      • 계산 기준의 측정
      • 머민-페레즈 매직스퀘어 연습문제의 해답

  • 8장. 그로버와 쇼어 알고리즘을 통한 검색 속도 향상과 비대칭 암호화 위협
    • 비구조적 양자 검색
      • 위상 반전
      • 평균에 대한 반전
      • 실용적인 구현
      • 일반화된 회로
    • 쇼어 알고리즘을 사용한 소인수 분해
      • 비대칭 암호화에 도전하는 양자 인수 분해
      • 주기 찾기
      • ProjectQ에 의한 쇼어 알고리즘

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안