SlideShare a Scribd company logo
1 of 23
Download to read offline
양자 컴퓨팅을 공부하기 위한
선형대수학 기초
Linear algebra for quantum computing
멘티 송가현(Gahyun Song)
선형대수학
왜 알아야할까?
선형대수학
왜 알아야할까?
양자 컴퓨팅에서 다양한 상태와 동작들을 묘사하고
추측하기 위해 사용하는 언어의 일종
선형대수학
왜 알아야할까?
양자 컴퓨팅에서 다양한 상태와 동작들을 묘사하고
추측하기 위해 사용하는 언어의 일종
여러 미지수, 식들의 관계를 표현하기 위한 도구
벡터
“크기와 방향을 가진 양”
추상적 정의 : 벡터 공간(덧셈, 스칼라 곱셈에 대해 닫혀 있는 공간)의 원소
3
5 0 0 3
Image : https://qiskit.org/textbook/ch-appendix/linear_algebra.html
열벡터(column vector) 행벡터(row vector)
벡터
“크기와 방향을 가진 양”
추상적 정의 : 벡터 공간(덧셈, 스칼라 곱셈에 대해 닫혀 있는 공간)의 원소
벡터의 덧셈 벡터의 스칼라 곱
행렬
숫자들을 행과 열에 맞추어 배열한 것
행렬의 덧셈, 스칼라곱
행렬의 곱셈
1 2
3 4
1 2
3 4
10 20
30 40
=
1 ∗ 10 + 2 ∗ 30 1 ∗ 20 + 2 ∗ 40
3 ∗ 10 + 4 ∗ 30 3 ∗ 20 + 4 ∗ 40
1 0
2 5
1 1
행렬
숫자들을 행과 열에 맞추어 배열한 것
행렬의 덧셈, 스칼라곱
행렬의 곱셈
1 2
3 4
1 0
2 5
1 1
1 2
3 4
10 20
30 40
=
1 ∗ 10 + 2 ∗ 30 1 ∗ 20 + 2 ∗ 40
3 ∗ 10 + 4 ∗ 30 3 ∗ 20 + 4 ∗ 40
* 𝒎 × 𝒏 행렬과 𝒏 × 𝒌 행렬의 곱 = 𝒎 × 𝒌 행렬
* 𝒎 × 𝒏 행렬과 𝒏 × 𝟏 행렬의 곱 = 𝒎 × 𝟏 행렬 = 열벡터
Bra-ket notation
를 이용해 벡터를 표현하는 표기법
: ket : 열벡터에 해당 : bra : 행벡터에 해당
: 두 벡터의 내적으로 이해할 수 있음
벡터의 내적 (inner product)
조건 1. 연산 결과는 하나의 숫자
조건 2.
조건 3. ,
조건 4.
이러한 조건들을 만족하는 연산을 정의
벡터의 내적 (inner product)
계산 방식 :
대강의 의미 : 두 벡터가 얼마나 같은 방향을 가리키는지 나타내는 척도
Ex ) 같은 방향일때 , 수직일 때 0, 반대 방향일 때
|𝑎||𝑏| -|𝑎||𝑏|
벡터의 노름(Norm) :
Hilbert space의 특징 : 내적이 정의된 벡터 공간
벡터 공간 분석하기
벡터의 선형 결합(Linear combination)
* 각각의 fi : 벡터 공간이 정의된 field(체) F의 원소
벡터 공간 분석하기
벡터의 선형 결합(Linear combination)
* 각각의 fi : 벡터 공간이 정의된 field(체) F의 원소
벡터의 선형 의존 : 벡터 공간의 부분 집합 S에서 어떠한 벡터 를 다른
벡터들의 선형 결합으로 나타낼 수 있을 때
벡터의 선형 독립 : ~~의 모든 벡터들이 다른 벡터들의 선형 결합으로
나타내어질 수 없을 때
벡터 공간 분석하기
벡터의 선형 결합(Linear combination)
* 각각의 fi : 벡터 공간이 정의된 field(체) F의 원소
벡터 공간의 기저(basis) : 벡터 공간의 모든 원소를 선형 결합으로 나타낼
수 있고 서로 선형 독립인 벡터들의 집합
벡터의 선형 의존 : 벡터 공간의 부분 집합 S에서 어떠한 벡터 를 다른
벡터들의 선형 결합으로 나타낼 수 있을 때
벡터의 선형 독립 : ~~의 모든 벡터들이 다른 벡터들의 선형 결합으로
나타내어질 수 없을 때
선형 연산자(Linear operators)
연산자(Operator) : 벡터 → 벡터로 변환하는 규칙
선형 연산자 : 1.
2.
3. bra에 대해서도 똑같이 성립
선형 연산자(Linear operators)
연산자(Operator) : 벡터 → 벡터로 변환하는 규칙
선형 연산자 : 1.
2.
3. bra에 대해서도 똑같이 성립
→ 행렬로 표현 가능
다양한 행렬들
단위 행렬 (Identity matrix)
: 주대각 성분만 1, 나머지는 모두 0
: 다른 행렬과의 곱셈에 대한 항등원
1 0
0 1
1 0 0
0 1 0
0 0 1
역행렬 (Inverse matrix)
: 행렬 𝑨의 역행렬 𝑨!𝟏
: 𝑨 𝑨!𝟏 = 𝑨!𝟏𝑨 = 𝑰
: 임의의 행렬에 대해 항상 존재하는 것은 아님
𝑎𝑑 − 𝑏𝑐 ≠ 0,
다양한 행렬들
전치 행렬 (Transpose matrix)
: 행과 열을 서로 바꾼 경우
: 복소수의 경우 켤레 전치 (Conjugate transpose)
에르미트 행렬 (Hermitian matrix)
: 켤레 전치가 원래 행렬과 같은 경우 (𝑨 = 𝑨#)
: 실수 범위에서의 symmetric matrix와 유사
Image : https://en.wikipedia.org/wiki/Transpose , https://qiskit.org/textbook/ch-appendix/linear_algebra.html
𝑖 2 − 𝑖
4 3
!
=
−𝑖 4
2 + 𝑖 3
다양한 행렬들
유니터리 행렬 (Unitary matrix)
: 켤레 전치가 원래 행렬의 역행렬과 같은 경우 (𝑨!𝟏 = 𝑨#)
: 𝑨𝑨# = 𝑨#𝑨 = 𝑰
다양한 행렬들
유니터리 행렬 (Unitary matrix)
: 켤레 전치가 원래 행렬의 역행렬과 같은 경우 (𝑨!𝟏 = 𝑨#)
: 𝑨𝑨# = 𝑨#𝑨 = 𝑰
* 약간의 직관 : 행렬 𝑨 = 길이 변화 + 회전
𝑨!𝟏 = 길이 변화 반대로 + 회전 반대로
𝑨# = 길이 변화 + 회전 반대로
빠진 내용
Eigenvalue, Eigenvectors
벡터의 외적
각 행렬들의 성질 등등…
참고자료
신소영 멘토님 - <lecture 0-0 양자컴퓨터를 위한 선형대수>
(https://github.com/QuantumComputingKorea/Qiskit-Dev-Cert-lectures)
김태현 교수님 ­ <양자 컴퓨팅 및 정보의 기초 (2020)> 강의 내용
Qiskit textbook (https://qiskit.org/textbook/ch-appendix/linear_algebra.html)
감사합니다:-)

More Related Content

Similar to Linear algebra for quantum computing

선형대수 07. 선형독립, 4가지 부벡터공간
선형대수 07. 선형독립, 4가지 부벡터공간선형대수 07. 선형독립, 4가지 부벡터공간
선형대수 07. 선형독립, 4가지 부벡터공간AHRA CHO
 
GameMath-Chapter 04 사원수
GameMath-Chapter 04 사원수GameMath-Chapter 04 사원수
GameMath-Chapter 04 사원수Mark Choi
 
이산치수학 데이터베이스
이산치수학 데이터베이스이산치수학 데이터베이스
이산치수학 데이터베이스mil23
 
0131 1 spectral_theorem_transformation
0131 1 spectral_theorem_transformation0131 1 spectral_theorem_transformation
0131 1 spectral_theorem_transformationJeonghun Yoon
 
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기종빈 오
 
입문 Visual SLAM 14강 - 3장 3d rigid body transform
입문 Visual SLAM 14강 - 3장 3d rigid body transform입문 Visual SLAM 14강 - 3장 3d rigid body transform
입문 Visual SLAM 14강 - 3장 3d rigid body transformjdo
 
[0528 석재호]게임을위한기초수학과물리
[0528 석재호]게임을위한기초수학과물리[0528 석재호]게임을위한기초수학과물리
[0528 석재호]게임을위한기초수학과물리Jaeho Seok
 
[Swift] Data Structure - Graph
[Swift] Data Structure - Graph[Swift] Data Structure - Graph
[Swift] Data Structure - GraphBill Kim
 
파이썬 기초
파이썬 기초 파이썬 기초
파이썬 기초 Yong Joon Moon
 
프로그래머을 위한 선형대수(Chap1)
프로그래머을 위한 선형대수(Chap1)프로그래머을 위한 선형대수(Chap1)
프로그래머을 위한 선형대수(Chap1)Haryun Lee
 
Swift 세미나
Swift 세미나Swift 세미나
Swift 세미나용재 김
 
선형대수 01. 선형성의 정의와 1차 연립방정식의 의미
선형대수 01. 선형성의 정의와 1차 연립방정식의 의미선형대수 01. 선형성의 정의와 1차 연립방정식의 의미
선형대수 01. 선형성의 정의와 1차 연립방정식의 의미AHRA CHO
 
Eigendecomposition and pca
Eigendecomposition and pcaEigendecomposition and pca
Eigendecomposition and pcaJinhwan Suk
 
[이산수학]4 관계, 함수 및 행렬
[이산수학]4 관계, 함수 및 행렬[이산수학]4 관계, 함수 및 행렬
[이산수학]4 관계, 함수 및 행렬종빈 오
 
120428 게임 프로그래머를 위한 기초수학과 물리 제 5장 행렬연산
120428 게임 프로그래머를 위한 기초수학과 물리   제 5장 행렬연산 120428 게임 프로그래머를 위한 기초수학과 물리   제 5장 행렬연산
120428 게임 프로그래머를 위한 기초수학과 물리 제 5장 행렬연산 tedypicker
 
선형연립방정식 가우스소거법
선형연립방정식 가우스소거법선형연립방정식 가우스소거법
선형연립방정식 가우스소거법KyeongWon Koo
 
Java 자료구조 비교 (Java1.6 기준)
Java 자료구조 비교 (Java1.6 기준)Java 자료구조 비교 (Java1.6 기준)
Java 자료구조 비교 (Java1.6 기준)혜웅 박
 
파이썬+정규표현식+이해하기 20160301
파이썬+정규표현식+이해하기 20160301파이썬+정규표현식+이해하기 20160301
파이썬+정규표현식+이해하기 20160301Yong Joon Moon
 
01_ML 기초_선형회귀_Linear Regression
01_ML 기초_선형회귀_Linear Regression01_ML 기초_선형회귀_Linear Regression
01_ML 기초_선형회귀_Linear RegressionAHRA CHO
 

Similar to Linear algebra for quantum computing (20)

점, 선, 면
점, 선, 면점, 선, 면
점, 선, 면
 
선형대수 07. 선형독립, 4가지 부벡터공간
선형대수 07. 선형독립, 4가지 부벡터공간선형대수 07. 선형독립, 4가지 부벡터공간
선형대수 07. 선형독립, 4가지 부벡터공간
 
GameMath-Chapter 04 사원수
GameMath-Chapter 04 사원수GameMath-Chapter 04 사원수
GameMath-Chapter 04 사원수
 
이산치수학 데이터베이스
이산치수학 데이터베이스이산치수학 데이터베이스
이산치수학 데이터베이스
 
0131 1 spectral_theorem_transformation
0131 1 spectral_theorem_transformation0131 1 spectral_theorem_transformation
0131 1 spectral_theorem_transformation
 
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
[SICP] 4.4 Logic Programming : 논리로 프로그램 짜기
 
입문 Visual SLAM 14강 - 3장 3d rigid body transform
입문 Visual SLAM 14강 - 3장 3d rigid body transform입문 Visual SLAM 14강 - 3장 3d rigid body transform
입문 Visual SLAM 14강 - 3장 3d rigid body transform
 
[0528 석재호]게임을위한기초수학과물리
[0528 석재호]게임을위한기초수학과물리[0528 석재호]게임을위한기초수학과물리
[0528 석재호]게임을위한기초수학과물리
 
[Swift] Data Structure - Graph
[Swift] Data Structure - Graph[Swift] Data Structure - Graph
[Swift] Data Structure - Graph
 
파이썬 기초
파이썬 기초 파이썬 기초
파이썬 기초
 
프로그래머을 위한 선형대수(Chap1)
프로그래머을 위한 선형대수(Chap1)프로그래머을 위한 선형대수(Chap1)
프로그래머을 위한 선형대수(Chap1)
 
Swift 세미나
Swift 세미나Swift 세미나
Swift 세미나
 
선형대수 01. 선형성의 정의와 1차 연립방정식의 의미
선형대수 01. 선형성의 정의와 1차 연립방정식의 의미선형대수 01. 선형성의 정의와 1차 연립방정식의 의미
선형대수 01. 선형성의 정의와 1차 연립방정식의 의미
 
Eigendecomposition and pca
Eigendecomposition and pcaEigendecomposition and pca
Eigendecomposition and pca
 
[이산수학]4 관계, 함수 및 행렬
[이산수학]4 관계, 함수 및 행렬[이산수학]4 관계, 함수 및 행렬
[이산수학]4 관계, 함수 및 행렬
 
120428 게임 프로그래머를 위한 기초수학과 물리 제 5장 행렬연산
120428 게임 프로그래머를 위한 기초수학과 물리   제 5장 행렬연산 120428 게임 프로그래머를 위한 기초수학과 물리   제 5장 행렬연산
120428 게임 프로그래머를 위한 기초수학과 물리 제 5장 행렬연산
 
선형연립방정식 가우스소거법
선형연립방정식 가우스소거법선형연립방정식 가우스소거법
선형연립방정식 가우스소거법
 
Java 자료구조 비교 (Java1.6 기준)
Java 자료구조 비교 (Java1.6 기준)Java 자료구조 비교 (Java1.6 기준)
Java 자료구조 비교 (Java1.6 기준)
 
파이썬+정규표현식+이해하기 20160301
파이썬+정규표현식+이해하기 20160301파이썬+정규표현식+이해하기 20160301
파이썬+정규표현식+이해하기 20160301
 
01_ML 기초_선형회귀_Linear Regression
01_ML 기초_선형회귀_Linear Regression01_ML 기초_선형회귀_Linear Regression
01_ML 기초_선형회귀_Linear Regression
 

Linear algebra for quantum computing

  • 1. 양자 컴퓨팅을 공부하기 위한 선형대수학 기초 Linear algebra for quantum computing 멘티 송가현(Gahyun Song)
  • 3. 선형대수학 왜 알아야할까? 양자 컴퓨팅에서 다양한 상태와 동작들을 묘사하고 추측하기 위해 사용하는 언어의 일종
  • 4. 선형대수학 왜 알아야할까? 양자 컴퓨팅에서 다양한 상태와 동작들을 묘사하고 추측하기 위해 사용하는 언어의 일종 여러 미지수, 식들의 관계를 표현하기 위한 도구
  • 5. 벡터 “크기와 방향을 가진 양” 추상적 정의 : 벡터 공간(덧셈, 스칼라 곱셈에 대해 닫혀 있는 공간)의 원소 3 5 0 0 3 Image : https://qiskit.org/textbook/ch-appendix/linear_algebra.html 열벡터(column vector) 행벡터(row vector)
  • 6. 벡터 “크기와 방향을 가진 양” 추상적 정의 : 벡터 공간(덧셈, 스칼라 곱셈에 대해 닫혀 있는 공간)의 원소 벡터의 덧셈 벡터의 스칼라 곱
  • 7. 행렬 숫자들을 행과 열에 맞추어 배열한 것 행렬의 덧셈, 스칼라곱 행렬의 곱셈 1 2 3 4 1 2 3 4 10 20 30 40 = 1 ∗ 10 + 2 ∗ 30 1 ∗ 20 + 2 ∗ 40 3 ∗ 10 + 4 ∗ 30 3 ∗ 20 + 4 ∗ 40 1 0 2 5 1 1
  • 8. 행렬 숫자들을 행과 열에 맞추어 배열한 것 행렬의 덧셈, 스칼라곱 행렬의 곱셈 1 2 3 4 1 0 2 5 1 1 1 2 3 4 10 20 30 40 = 1 ∗ 10 + 2 ∗ 30 1 ∗ 20 + 2 ∗ 40 3 ∗ 10 + 4 ∗ 30 3 ∗ 20 + 4 ∗ 40 * 𝒎 × 𝒏 행렬과 𝒏 × 𝒌 행렬의 곱 = 𝒎 × 𝒌 행렬 * 𝒎 × 𝒏 행렬과 𝒏 × 𝟏 행렬의 곱 = 𝒎 × 𝟏 행렬 = 열벡터
  • 9. Bra-ket notation 를 이용해 벡터를 표현하는 표기법 : ket : 열벡터에 해당 : bra : 행벡터에 해당 : 두 벡터의 내적으로 이해할 수 있음
  • 10. 벡터의 내적 (inner product) 조건 1. 연산 결과는 하나의 숫자 조건 2. 조건 3. , 조건 4. 이러한 조건들을 만족하는 연산을 정의
  • 11. 벡터의 내적 (inner product) 계산 방식 : 대강의 의미 : 두 벡터가 얼마나 같은 방향을 가리키는지 나타내는 척도 Ex ) 같은 방향일때 , 수직일 때 0, 반대 방향일 때 |𝑎||𝑏| -|𝑎||𝑏| 벡터의 노름(Norm) : Hilbert space의 특징 : 내적이 정의된 벡터 공간
  • 12. 벡터 공간 분석하기 벡터의 선형 결합(Linear combination) * 각각의 fi : 벡터 공간이 정의된 field(체) F의 원소
  • 13. 벡터 공간 분석하기 벡터의 선형 결합(Linear combination) * 각각의 fi : 벡터 공간이 정의된 field(체) F의 원소 벡터의 선형 의존 : 벡터 공간의 부분 집합 S에서 어떠한 벡터 를 다른 벡터들의 선형 결합으로 나타낼 수 있을 때 벡터의 선형 독립 : ~~의 모든 벡터들이 다른 벡터들의 선형 결합으로 나타내어질 수 없을 때
  • 14. 벡터 공간 분석하기 벡터의 선형 결합(Linear combination) * 각각의 fi : 벡터 공간이 정의된 field(체) F의 원소 벡터 공간의 기저(basis) : 벡터 공간의 모든 원소를 선형 결합으로 나타낼 수 있고 서로 선형 독립인 벡터들의 집합 벡터의 선형 의존 : 벡터 공간의 부분 집합 S에서 어떠한 벡터 를 다른 벡터들의 선형 결합으로 나타낼 수 있을 때 벡터의 선형 독립 : ~~의 모든 벡터들이 다른 벡터들의 선형 결합으로 나타내어질 수 없을 때
  • 15. 선형 연산자(Linear operators) 연산자(Operator) : 벡터 → 벡터로 변환하는 규칙 선형 연산자 : 1. 2. 3. bra에 대해서도 똑같이 성립
  • 16. 선형 연산자(Linear operators) 연산자(Operator) : 벡터 → 벡터로 변환하는 규칙 선형 연산자 : 1. 2. 3. bra에 대해서도 똑같이 성립 → 행렬로 표현 가능
  • 17. 다양한 행렬들 단위 행렬 (Identity matrix) : 주대각 성분만 1, 나머지는 모두 0 : 다른 행렬과의 곱셈에 대한 항등원 1 0 0 1 1 0 0 0 1 0 0 0 1 역행렬 (Inverse matrix) : 행렬 𝑨의 역행렬 𝑨!𝟏 : 𝑨 𝑨!𝟏 = 𝑨!𝟏𝑨 = 𝑰 : 임의의 행렬에 대해 항상 존재하는 것은 아님 𝑎𝑑 − 𝑏𝑐 ≠ 0,
  • 18. 다양한 행렬들 전치 행렬 (Transpose matrix) : 행과 열을 서로 바꾼 경우 : 복소수의 경우 켤레 전치 (Conjugate transpose) 에르미트 행렬 (Hermitian matrix) : 켤레 전치가 원래 행렬과 같은 경우 (𝑨 = 𝑨#) : 실수 범위에서의 symmetric matrix와 유사 Image : https://en.wikipedia.org/wiki/Transpose , https://qiskit.org/textbook/ch-appendix/linear_algebra.html 𝑖 2 − 𝑖 4 3 ! = −𝑖 4 2 + 𝑖 3
  • 19. 다양한 행렬들 유니터리 행렬 (Unitary matrix) : 켤레 전치가 원래 행렬의 역행렬과 같은 경우 (𝑨!𝟏 = 𝑨#) : 𝑨𝑨# = 𝑨#𝑨 = 𝑰
  • 20. 다양한 행렬들 유니터리 행렬 (Unitary matrix) : 켤레 전치가 원래 행렬의 역행렬과 같은 경우 (𝑨!𝟏 = 𝑨#) : 𝑨𝑨# = 𝑨#𝑨 = 𝑰 * 약간의 직관 : 행렬 𝑨 = 길이 변화 + 회전 𝑨!𝟏 = 길이 변화 반대로 + 회전 반대로 𝑨# = 길이 변화 + 회전 반대로
  • 21. 빠진 내용 Eigenvalue, Eigenvectors 벡터의 외적 각 행렬들의 성질 등등…
  • 22. 참고자료 신소영 멘토님 - <lecture 0-0 양자컴퓨터를 위한 선형대수> (https://github.com/QuantumComputingKorea/Qiskit-Dev-Cert-lectures) 김태현 교수님 ­ <양자 컴퓨팅 및 정보의 기초 (2020)> 강의 내용 Qiskit textbook (https://qiskit.org/textbook/ch-appendix/linear_algebra.html)