본문 바로가기

추천 검색어

실시간 인기 검색어

프로그래밍으로 배우는 양자컴퓨팅 with 파이썬

임은진 , 권용경 지음
자유아카데미 출판사SHOP 바로가기

2025년 03월 17일 출간

국내도서 : 2025년 03월 05일 출간

(개의 리뷰)
( 0% 의 구매자)
eBook 상품 정보
파일 정보 PDF (23.52MB)   |  339 쪽
ISBN 9791158087029
지원기기 교보eBook App, PC e서재, 리더기, 웹뷰어
교보eBook App 듣기(TTS) 불가능
TTS 란?
텍스트를 음성으로 읽어주는 기술입니다.
  • 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를​ 읽을 수 있습니다.
  • 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.

PDF 필기가능 (Android, iOS)
소득공제
소장
정가 : 32,000원

쿠폰적용가 28,800

10% 할인 | 5%P 적립

이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.

카드&결제 혜택

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
  • 리뷰 작성 시, e교환권 추가 최대 200원

작품소개

이 상품이 속한 분야

1장 양자 회로
1.1 양자 회로의 구성
1.2 퀀텀 컴포저에서 양자 회로 구현하기: 반가산기
연습문제

2장 프로그램으로 양자 회로 표현하기
2.1 파이썬 프로그램과 Qiskit 라이브러리
2.2 양자 회로를 파이썬 프로그램으로 구현하기
2.3 양자 회로를 실행하기
2.4 양자 회로의 모듈화(함수로 구현하기)
연습문제

3장 양자 상태와 유니터리 변환
3.1 디락의 브라-켓 표기법
3.2 선형성과 벡터 공간
3.3 선형 연산자
3.4 고유값과 고유벡터
3.5 벡터 공간의 텐서 프로덕트
3.6 양자역학의 기본 체계
3.7 2준위 양자계: 큐비트
3.8 단일 큐비트 양자 게이트
3.9 다중 큐비트 게이트
3.10 양자 범용 게이트 집합
3.11 양자 얽힘과 벨 상태
3.12 양자 순간 이동
연습문제

4장 기본 양자 알고리즘
4.1 도이치 알고리즘
4.2 위상 킥백 회로
4.3 도이치-조사 알고리즘
4.4 번스타인-바지라니 알고리즘
연습문제

5장 그로버 알고리즘과 그 응용
5.1 그로버 양자 회로와 확산 연산자
5.2 “그로버 반복” 회로의 작동 방식
5.3 그로버 알고리즘의 구현
5.4 그로버 알고리즘 회로의 측정
5.5 불켜기 게임
5.6 불켜기 게임 - 다른 해법
연습문제

6장 양자 소인수 분해 알고리즘
6.1 사이먼 알고리즘
6.2 양자 푸리에 변환
6.3 양자 위상 추정
6.4 쇼어 알고리즘
연습문제

7장 양자 오류 정정
7.1 양자 오류의 유형
7.2 비트 뒤집기 오류를 정정하는 3-큐비트 코드
7.3 위상 뒤집기 오류를 정정하는 3-큐비트 코드
7.4 안정자 체계
7.5 안정자 코드
7.6 스틴의 7-큐비트 코드
7.7 다양한 오류 정정 코드의 개발과 전망
연습문제

부록 A 그로버 알고리즘 : 불켜기 게임 2단계 해법
부록 B 임의의 사이먼 주기를 갖는 오라클 회로 생성 코드
부록 C 위상 추정 값의 확률 분포
참고문헌

머리말

알란 튜링이 제시한 컴퓨터의 수학적 모델을 전자 회로로 실현한 디지털 컴퓨터는 지난 80여 년간 눈부신 속도로 발전을 거듭하며 지구인의 일상을 혁신적으로 변화시키고 정보의 공유를 가능하게 했다. 그러나 무어의 법칙을 따라 기하급수적으로 증가해 온 디지털 컴퓨터 성능의 기반이 되는 반도체 기술은 물리적 한계에 도달하고 있는 것으로 보인다.
양자 컴퓨터의 등장은 디지털 컴퓨터가 처음 등장했을 때와 유사한 혁신적인 전환점에 해당한다고 볼 수 있다. 20세기 중반 디지털 컴퓨터가 계산과 정보 처리의 방식을 완전히 변화시켰던 것처럼, 양자 컴퓨터는 오늘날 해결 불가능하거나 시간이 많이 소요되는 문제에 대한 새로운 해결책을 제시하고 있다. 양자컴퓨팅은 더 이상 이론 물리학이나 영화 속에만 국한된 먼 개념이 아니라, 암호학, 신약 개발, 인공지능 등 다양한 분야에서 큰 진전을 이룰 수 있는 열쇠를 가진 유망한 기술로 떠오르고 있다.

21세기의 초반 무렵 실험적인 양자 컴퓨터가 구현되기 이전에도 이미 양자컴퓨팅 모델을 이용한 흥미로운 양자 알고리즘들이 개발되었다. 저자들은 소프트웨어를 전공하는 학부생들과 물리학을 전공하는 학부생들에게 양자 알고리즘을 소개하는 강의를 진행하며 새로운 접근법으로 쓰여진 교과서의 필요성을 느껴서 이 책을 집필하게 되었다.
양자컴퓨팅을 소개하는 대부분의 교재는 양자역학의 기본 원리와 양자 연산의 수학적 표현을 설명하는 것부터 시작한다. 저자들은 강의 경험을 통해 양자역학에 대한 기본지식이 부족한 학생들에게 이러한 방식은 양자컴퓨팅 공부를 시작하는 데 장애물이 될 수 있다는 점을 알게 되었다. 나아가 학생들에게 흥미를 유발하고 동기를 부여하는 방안으로, 먼저 GUI(Graphical User Interface)를 사용하여 양자 회로를 편집해 보는 것이 효과적이라는 것을 발견하였다.

양자 회로를 구현하여 양자 컴퓨터에서 실행하거나 시뮬레이션하는 목적의 SDK(Software Development Toolkit)로는 IBM의 Qiskit, Google의 Cirq, Rigetti의 Forest 등의 파이썬 패키지들이 공개되어 있다. 특히 IBM의 경우, IBM Quantum Platform 서비스를 통하여 제공하는 Quantum Composer를 이용하면 드래그-앤-드롭 방식으로 양자 회로를 편집할 수 있어 접근성이 매우 뛰어나다. 저자들은 IBM의 Qiskit을 이용한 실습과 병행하여 강의를 한 경험을 바탕으로 본 교재를 집필하였다.
양자 알고리즘에 대한 이해와 더불어 실용적인 프로그래밍 능력은 미래의 컴퓨팅 분야에 기여하고자 하는 사람에게 필수적이다. 양자컴퓨팅의 이론과 수학적 원리에 충실한 훌륭한 자료들이 많이 존재하지만, 이 책은 이론과 실습을 균형 있게 제공하는 독특한 접근 방식을 채택하였다. 이를 통해 독자들이 양자 알고리즘을 이론적으로 이해할 뿐만 아니라, 시뮬레이터, 나아가 실제 양자 컴퓨터에서 이를 실습해 볼 수 있는 실질적인 도구를 제공한다.
이 책은 관련 원리를 명확하고 직관적으로 설명한 후, Qiskit을 사용한 파이썬 구현 예시로 이어진다. 독자들이 실습과 코딩 예제를 통해 양자 회로를 구성하고, 양자역학의
기본 개념을 계산에 어떻게 적용하는지 배울 수 있도록 단원을 구성하였다. 또한 기초 지식을 전달하는 1, 2, 3장과 양자 알고리즘을 설명하는 4, 5, 6장, 그리고 양자오류 정정을 소개하는 7장으로 구성되어 있다. 책에서 사용된 파이썬 코드는 https://github.com/ QCgeek/ProgrammingQC에 공개되어 있다.

1장에서는 퀀텀 컴포저를 이용하여 단순한 양자 회로를 편집하는 것으로 시작하여, 양자 회로의 상태 정보를 해석하는 방법과 IBM 양자 컴퓨터에서 양자 회로를 실행하는 방법을 소개한다. 또한, 퀀텀 컴포저에서 편집된 양자 회로에 대하여 자동으로 작성되는 파이썬 코드를 생성하는 방법도 다룬다.
2장에서는 파이썬 프로그램 개발 환경에서 Qiskit 패키지를 사용할 수 있도록 설치하는 법과 파이썬 프로그램을 이해하기 위한 기본적인 개념들, 즉 클래스와 객체, 함수의 정의 및 사용법을 소개한다. 또한, 반복문을 사용하기 위해 필요한 list와 range 클래스도 설명한다. 파이썬 프로그램을 처음 접하는 독자들을 위해 가장 필수적인 개념만을 간단명료하게 예시를 들어 설명하였기 때문에, 프로그래밍을 처음 접하는 독자들에게 유용한 길잡이가 될 것이다. 반면, 숙련된 프로그래머라면 이 부분을 읽을 필요가 없을 것이다.

이어서, Qiskit 패키지에서 제공되는 클래스와 함수들을 사용한 파이썬 코드로 간단한 3-큐비트 양자 회로를 표현하는 객체를 생성하는 방법을 라인별로 설명한다. 생성된 양자 회로 객체를 qiskit_aer 패키지를 이용하여 시뮬레이션하는 방법과 IBM 양자 컴퓨터에서 실행하는 방법, 그리고 측정된 결과를 읽고 그래프로 시각화하는 방법을 배운다. 프로그램을 모듈화하면 이해하기가 쉬워지므로, 양자 회로를 생성하여 반환하는 함수를 사용하여 모듈화하고, 이렇게 반환된 양자 회로를 기존의 양자 회로에 추가하는 방법도 소개한다. 또한, 양자 회로의 역계산 회로를 생성하는 방법과 다중 제어 게이트를 생성하는 함수를 사용하는 방법도 다룬다.
3장에서는 양자 회로의 양자 상태를 기술하고 양자 연산을 적용하는 수학적 방법을 배운다. 중첩성을 가지는 양자 상태는 벡터들의 선형 결합으로 표현할 수 있기 때문에, 선형 대수의 기본 개념과 성질들을 설명하고, 벡터와 행렬 및 그 연산들을 표현하는 디락표기법(Dirac Notation)을 학습한다. 디락 표기법을 사용하면 양자 회로를 기술하는 선형 연산을 단순명료하게 표현할 수 있음을 이해하게 될 것이다. 이를 바탕으로 양자역학의 기본 체계를 소개하고, 단일 큐비트에 작용하는 양자 게이트들과 다중 큐비트에 작용하는 양자 게이트들의 종류 및 연산, 표현법을 배운다. 또한, 양자 범용 게이트 집합에 대해 소개하고, 양자 얽힘에 의해 생성되는 벨 상태(Bell states)와 이를 활용한 양자 순간이동(Quantum Teleportation)을 양자 회로와 함께 설명한다. 다중 큐비트 상태를 표현하기 위해 텐서곱이 사용되므로 텐서곱 연산에 대해서도 학습할 것이다.

4장에서는 기본적인 양자 알고리즘들을 소개하고, 파이썬 코드를 사용하여 이러한 알고리즘을 구현하는 양자 회로를 생성할 것이다. 생성된 양자 회로를 시뮬레이션 함으로써 도이치-조사(Deutsch-Jozsa) 알고리즘, 번스타인-바지라니(Bernstein-Vazirani) 알고리즘의 동작을 체험해 볼 수 있다. 5장에서는 정렬되지 않은 데이터베이스를 검색하는 그로버(Grover) 알고리즘을 소개한다. 기본 양자 알고리즘들을 처음 접하면 그 실용성에 대해 의구심을 가질 수 있으므로, 그로버 알고리즘을 이용하여 퀴즈의 해를 구하는 예를 포함하였다.
6장에서는 쇼어(Shor)의 소인수분해 알고리즘을 주제로 다룬다. 먼저 소개되는 사이먼(Simon) 알고리즘은 특정 성질을 가진 함수의 반복 주기를 찾는 알고리즘으로, 쇼어 알고리즘의 발견에 중요한 단서를 제공하였다. 양자 푸리에 변환을 활용한 양자 위상 추정(QPE, Quantum Phase Estimation)에 대해서도 학습한다. QPE는 주어진 양자 회로의 고유치의 위상을 추정하는 알고리즘이다. Shor의 소인수분해 알고리즘은 QPE를 통해 추정한 위상으로부터 모듈로-지수 함수의 주기를 찾고, 이 주기를 이용하여 정수의 소인수를 찾는 알고리즘이다.
마지막, 7장에서는 양자 오류 정정에 대해 소개한다. 디지털 컴퓨터에서의 오류 정정과 비교하여 양자 오류 정정의 차이점을 설명하고, 양자컴퓨팅에서도 오류 정정이 가능하다는 것을 간단한 예시를 통해 보인다. 나아가 일반적인 양자 오류 정정 코드를 설명할 수 있는 안정자 체계에 대해서도 소개한다.

이 책은 컴퓨터 공학, 물리학, 수학 등 다양한 전공의 이공계 학생들에게 양자컴퓨팅을 소개하는 교재로 사용될 것을 염두에 두고 작성되었다. 따라서 양자 연산에 익숙하지 않은 학생들도 이해하는 데 어려움이 없도록 수식의 전개 과정을 가능한 한 자세하게 설명하였다. 학생들의 전공에 따라 사전 지식과 관심 분야가 다를 수 있으므로, 이 책을 활용한 강의 방식도 유연하게 조정할 것을 권장한다. 책은 정적인 매체인 반면 강의는 동적인 프로세스이다. 책의 내용은 장별로 일관된 주제를 모아서 정리되어 있으나, 강의 현장에서는 이러한 순서를 그대로 따르기보다는, 다양한 장을 교차하면서 가르치는 것이 효과적일 수 있다. 예를 들어, 2장에 파이썬 프로그래밍 기초가 소개되어 있지만, 실제 강의에서는 이를 독립적으로 가르치기보다는 4장의 양자 알고리즘 실습과 함께 병행하는 방식이 효과적일 것이다. 즉, 아래의 표와 같이 기본적인 양자 알고리즘 실습 중에 파이썬 기초를 설명하고, 알고리즘이 점차 복잡해지면서 프로그래밍 기법도 함께 발전시키는 방식이다. 이 접근 방식은 프로그래밍 경험이 부족한 학생들에게도 파이썬 프로그래밍 능력을 개발할 수 있는 기회를 제공한다. 이러한 순서로 구성된 강의 및 실습 자료는 강의자에게 실질적인 도움이 될 것이다.


이 교재의 목표는 더 많은 독자들에게 양자컴퓨팅을 접근 가능하게 만드는 것이다. 이론과 실습을 조화롭게 제공함으로써, 독자들이 양자 알고리즘에 대한 깊은 이해를 얻는 동시에 소프트웨어 도구를 이용하여 미래에 제공될 양자컴퓨팅 디바이스를 자신 있게 다룰 수 있도록 준비시키고자 한다. 양자컴퓨팅 시대를 준비하는 학생이든, 계산의 최전선을 탐구하려는 전문가든, 이 책은 그 목적을 이루기 위한 기초를 제공할 것이다.
좋은 책을 만들기 위해 최선을 다했지만 오류가 나올 수 있다. 이 점은 양해를 바라며, 출간 후 나올 수 있는 수정사항 등은 자유아카데미 홈페이지 자료실(www.freeaca.com)을 통해 게시할 것이니 참고 부탁드린다.
독자 여러분이 양자컴퓨팅의 매혹적인 세계로 여행을 시작하고, 이 혁신적인 기술을 체득하는 첫 걸음을 내딛는데 도움이 되기를 바란다.

작가정보

저자(글) 임은진

서울대학교 컴퓨터공학과
서울대학교 컴퓨터공학과 석사
University of California at Berkeley, Department of EECS 공학박사
현) 국민대학교 소프트웨어학부 교수

저자(글) 권용경

서울대학교 물리학과
서울대학교 물리학과 이학석사
University of Illinois at Urbana-Champaign, Department of Physics 이학박사
현) 건국대학교 물리학과 교수

이 상품의 총서

Klover리뷰 (0)

Klover리뷰 안내
Klover(Kyobo-lover)는 교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1. 리워드 안내
구매 후 90일 이내에 평점 작성 시 e교환권 100원을 적립해 드립니다.
  • - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • - 리워드는 5,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다. (2024년 9월 30일부터 적용)
  • - 리워드는 한 상품에 최초 1회만 제공됩니다.
  • - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
2. 운영 원칙 안내
Klover리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다. 일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

구매 후 리뷰 작성 시, e교환권 100원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여 주는 교보문고의 새로운 서비스 입니다. 교보eBook 앱에서 도서 열람 후 문장 하이라이트 하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 ‘좋아요’ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보없이 삭제될 수 있습니다.
리워드 안내
  • 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
  • e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • 리워드는 5,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다. (2024년 9월 30일부터 적용)
  • 리워드는 한 상품에 최초 1회만 제공됩니다.
  • sam 이용권 구매 상품 / 선물받은 eBook / 오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.

구매 후 문장수집 작성 시, e교환권 100원 적립

    교보eBook 첫 방문을 환영 합니다!

    신규가입 혜택 지급이 완료 되었습니다.

    바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
    지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!

    교보e캐시 1,000원
    TOP
    신간 알림 안내
    프로그래밍으로 배우는 양자컴퓨팅 with 파이썬 웹툰 신간 알림이 신청되었습니다.
    신간 알림 안내
    프로그래밍으로 배우는 양자컴퓨팅 with 파이썬 웹툰 신간 알림이 취소되었습니다.
    리뷰작성
    • 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
    • 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
    • 콘텐츠 다운로드 또는 바로보기 완료 후 리뷰 작성 시 익일 제공
    감성 태그

    가장 와 닿는 하나의 키워드를 선택해주세요.

    사진 첨부(선택) 0 / 5

    총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.

    신고/차단

    신고 사유를 선택해주세요.
    신고 내용은 이용약관 및 정책에 의해 처리됩니다.

    허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
    있으니 유의하시어 신중하게 신고해주세요.


    이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.

    문장수집 작성

    구매 후 90일 이내 작성 시, e교환권 100원 적립

    eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.

    P.
    프로그래밍으로 배우는 양자컴퓨팅 with 파이썬
    저자 모두보기
    낭독자 모두보기
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 프리미엄 이용권입니다.
    선물하실 sam이용권을 선택하세요.
    결제완료
    e캐시 원 결제 계속 하시겠습니까?
    교보 e캐시 간편 결제
    sam 열람권 선물하기
    • 보유 권수 / 선물할 권수
      0권 / 1
    • 받는사람 이름
      받는사람 휴대전화
    • 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
    • 열람권은 1인당 1권씩 선물 가능합니다.
    • 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
    • 선물한 열람권의 등록유효기간은 14일 입니다.
      (상대방이 기한내에 등록하지 않을 경우 소멸됩니다.)
    • 무제한 이용권일 경우 열람권 선물이 불가합니다.
    이 상품의 총서 전체보기
    네이버 책을 통해서 교보eBook 첫 구매 시
    교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 네이버 책을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)
    구글바이액션을 통해서 교보eBook
    첫 구매 시 교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 구글바이액션을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)