KR20230117566A - 양자 오류 보정 - Google Patents

양자 오류 보정 Download PDF

Info

Publication number
KR20230117566A
KR20230117566A KR1020237016402A KR20237016402A KR20230117566A KR 20230117566 A KR20230117566 A KR 20230117566A KR 1020237016402 A KR1020237016402 A KR 1020237016402A KR 20237016402 A KR20237016402 A KR 20237016402A KR 20230117566 A KR20230117566 A KR 20230117566A
Authority
KR
South Korea
Prior art keywords
patches
qubits
quantum
quantum processor
error
Prior art date
Application number
KR1020237016402A
Other languages
English (en)
Inventor
마이클 존 브렘너
사이먼 데빗
알렉시스 쇼
Original Assignee
유니버서티 오브 테크놀러지 시드니
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AU2020903848A external-priority patent/AU2020903848A0/en
Application filed by 유니버서티 오브 테크놀러지 시드니 filed Critical 유니버서티 오브 테크놀러지 시드니
Publication of KR20230117566A publication Critical patent/KR20230117566A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/70Quantum error correction, detection or prevention, e.g. surface codes or magic state distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/085Error detection or correction by redundancy in data representation, e.g. by using checking codes using codes with inherent redundancy, e.g. n-out-of-m codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/20Models of quantum computing, e.g. quantum circuits or universal quantum computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/40Physical realisations or architectures of quantum processors or components for manipulating qubits, e.g. qubit coupling or qubit control
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B82NANOTECHNOLOGY
    • B82YSPECIFIC USES OR APPLICATIONS OF NANOSTRUCTURES; MEASUREMENT OR ANALYSIS OF NANOSTRUCTURES; MANUFACTURE OR TREATMENT OF NANOSTRUCTURES
    • B82Y10/00Nanotechnology for information processing, storage or transmission, e.g. quantum computing or single electron logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Quality & Reliability (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

본원 개시는, 디지털 큐비트들의 다수의 패치 및 디지털 큐비트들의 양자 버스를 포함하는 양자 프로세서에 관한 것이다. 양자 버스는, 디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송하도록 구성된다. 상기 양자 프로세서는, 디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시키기 위해 버스에 의해 연결된 패치들 각각에 대한 제1 오류 보정 방법에 의해, 그리고 상대적으로 낮은 오류 비율을 보정하기 위해 다수의 패치에 대한 제2 오류 보정 방법에 의해 제어된다. 패치들의 개수는, 제2 방법의 거리를 증가시키고 그에 따라 최종 오류 비율을 감소시키기 위해 증가될 수 있다. 양자 버스로 인해, 패치들은, 제어 회로장치를 위한 상기 패치들 간에 충분한 공간이 있도록 배열될 수 있다.

Description

양자 오류 보정
관련 출원의 상호 참조
본 출원은 그 각각의 내용 전체가 참조로서 본원에 포함되는 호주 임시 출원 제2020903848호 및 호주 임시 출원 제2021901279호의 우선권을 청구한다.
본원 개시는 양자 프로세서 및 양자 프로세서의 동작 방법에 관한 것이다. 보다 구체적으로는, 본원 개시는 현재의 양자 기술에서 오류 보정을 지원하는 양자 프로세서의 레이아웃 설계 및 그 물리적 아키텍처에 관한 것이다.
양자 컴퓨터는, 양자 물리 시스템에서 양자 정보['큐비트(qubits')]의 고유의 불안정성으로 인해 구축하기가 어렵다. 제안되어 온 하나의 접근법은 양자 오류 보정 코드인 표면 코드(surface code)이다. 표면 코드는 조밀하게 패킹(packing)된 큐비트들의 어레이를 기반으로 한다. 일부 구현예에서, 각각의 큐비트는 단지 약 100nm x 100nm의 크기, 또는 심지어 그보다 더 작은 크기를 갖는다. 큐비트들 간의 거리는 전형적으로 이웃한 큐비트들 간의 상호작용을 가능하게 하기 위해 상기 크기 이내이다. 결과적으로, 표면 코드를 위해 사용되는 어레이의 전체 면적은 작다. 그러나 각각의 큐비트는, 예를 들면 실리콘 기판을 가로지르는 금속선들(metal lines)로서 구현되는 '와이어들(wires)'에 의해 제어 회로장치(control circuitry)에 연결되어야 한다. 큐비트의 소형 크기는, 연결 와이어들 역시도 조밀하게 패킹되어야 한다는 것을 의미한다. 그러나 현재의 하드웨어 기술로는, 모든 큐비트 및 특히 큐비트 어레이의 중간에 있는 그런 큐비트들을 연결하기에 충분할 정도로 작은 와이어들을 제조하기는 어렵다.
본원 명세서에 포함된 문헌들, 법령들, 재료들, 장치들, 물품들 등에 대한 임의의 논의는, 이러한 문제들 중 일부 또는 전부가 선행 기술 기반의 부분을 형성한다거나, 또는 첨부된 청구범위 각각의 우선일 이전에 존재했으므로 본원 개시와 관련된 분야에서 공통의 일반 지식이었다고 인정하는 것으로 간주되어서는 안 된다.
본원 명세서 전체에 걸쳐, "포함한다" 또는 "포함하고" 또는 "포함하는"과 같은 그 변형태들은 언급되는 요소, 정수(integer) 또는 단계, 또는 요소들, 정수들 또는 단계들의 그룹의 포함을 암시하지만, 임의의 다른 요소, 정수 또는 단계, 또는 요소들, 정수들 또는 단계들의 임의의 다른 그룹의 배제는 암시하지 않는 것으로 이해되어야 할 것이다.
본원 개시는 현재의 하드웨어 기술을 사용하여 양자 프로세서의 제조를 용이하게 하는 양자 프로세서용 아키텍처를 제공한다. 보다 구체적으로는, 제안되는 아키텍처는 표면 코드에 의해 제어되는 큐비트들의 소형 패치들(small patches)을 포함한다. 패치들은 양자 버스에 의해 연결되어 상이한 패치들의 큐비트들 간의 장거리 상호작용(long-range interaction)을 가능하게 한다. 제2 오류 보정 코드는 논리적 큐비트들로서 패치들을 사용하여 표면 코드에 더하여 수행된다.
양자 프로세서는
디지털 큐비트들의 다수의 패치; 및
디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송하도록 구성된 디지털 큐비트들의 양자 버스;를 포함하되,
양자 프로세서는, 디지털 큐비트들 내의 상대적으로 높은 오류 비율(error rate)을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시키기 위해 버스에 의해 연결된 패치들 각각에 대한 제1 오류 보정 방법(method of error correction)에 의해, 그리고 상대적으로 낮은 오류 비율을 보정하기 위해 다수의 패치에 대한 제2 오류 보정 방법에 의해 제어된다.
바람직하게는, 양자 프로세서는, 패치들에 대한 제1 오류 보정 방법에 의해 제어되고 그런 다음 제2 오류 보정 방법에 의해 제어되는 큐비트들의 패치들을 포함한다. 이런 방식으로, 패치들의 개수는, 제2 방법의 거리를 증가시키고 그에 따라 최종 오류 비율을 감소시키기 위해 증가될 수 있다. 바람직하게는, 양자 버스로 인해, 패치들은, 제어 회로장치를 위한 상기 패치들 간에 충분한 공간이 있도록 배열될 수 있다. 이는, 실제로 연결하기가 어려운 큐비트들의 큰 정사각형 어레이들에 비해 장점이다.
양자 버스는 일정한 폭의 큐비트들을 포함할 수 있다.
패치들은 정사각형일 수 있다.
다수의 패치는, 각각이 양자 버스에 의해 연결되는 하나보다 더 많은 패치의 다수의 어레이를 형성할 수 있다. 다수의 어레이는 선형 어레이들일 수 있다. 각각의 선형 어레이는 동일한 폭을 보유할 수 있다. 각각의 선형 어레이는 다수의 패치 중 하나의 패치; 및 양자 버스;에 의해 정의되는 어레이 폭을 보유할 수 있고, 어레이 폭은 15 또는 20이다. 각각의 선형 어레이는 다수의 패치 중 하나보다 많은 패치; 및 양자 버스;에 의해 정의되는 어레이 길이를 보유할 수 있고, 어레이 길이는 120 또는 160이다.
양자 프로세서는, 다수의 패치 사이에, 다수의 패치의 디지털 큐비트들에 대한 연결부들을 포함한 구역(area)을 더 포함할 수 있다.
버스의 디지털 큐비트들은 제1 오류 보정 방법에 의해 제어될 수 있다. 제1 오류 보정 방법은 표면 코드를 포함할 수 있다. 제2 오류 보정 방법은 블록 코드(block code)를 포함할 수 있다. 블록 코드는 스테인 코드(Steane code)를 포함할 수 있다.
상대적으로 낮은 오류 비율은 10-5미만일 수 있다. 상대적으로 낮은 오류 비율은 10-8을 초과할 수 있다. 상대적으로 낮은 오류 비율을 보정하면, 그 결과는 10-9 미만의 보정된 오류 비율이 될 수 있다.
양자 프로세서는, 제1 오류 보정 방법 및 제2 오류 보정 방법을 수행하기 위해 제어 회로장치를 더 포함할 수 있다.
패치들은 직사각형일 수 있으며, 그리고 제1 치수와 관련된 제1 오류 유형(type of error)의 오류 비율을 제2 치수와 관련된 제2 오류 유형의 오류 비율보다 더 큰 정도로 감소시키기 위해, 제2 치수보다 더 큰 제1 치수를 보유할 수 있다.
제1 오류 보정 방법은 제1 오류 유형의 오류 비율을 제2 오류 유형의 오류 비율보다 더 큰 정도로 감소시키기 위해 비대칭 표면 코드일 수 있다.
제2 오류 보정 방법은 제2 오류 유형의 오류 비율을 감소시키기 위한 반복 코드일 수 있다.
제2 오류 보정 방법은 제2 오류 유형만의 오류 비율을 감소시킬 수 있다.
제1 오류 유형은 비트 플립 오류(bit flip error) 및 위상 플립 오류(phase flip error) 중 어느 하나일 수 있고, 제2 오류 유형은 비트 플립 오류 및 위상 플립 오류 중 다른 하나일 수 있다.
또한, 양자 프로세서를 동작하기 위한 동작 방법도 제공되되, 양자 프로세서는 디지털 큐비트들의 다수의 패치 및 디지털 큐비트들의 양자 버스를 포함하고, 양자 버스는 디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호 작용을 전송하도록 구성되고, 상기 동작 방법은
디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시키기 위해, 버스에 의해 연결된 패치들 각각에 제1 오류 보정 방법을 적용하는 적용 단계; 및
상대적으로 낮은 오류 비율을 보정하기 위해, 다수의 패치에 제2 오류 보정 방법을 적용하는 적용 단계;를 포함한다.
양자 프로세서를 제조하기 위한 제조 방법은
복수의 패치의 제1 어레이를 형성하기 위해, 디지털 큐비트들의 다수의 패치를 생성하는 생성 단계;
디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송하도록 구성된 디지털 큐비트들의 양자 버스로 제1 어레이의 다수의 패치를 연결하는 연결 단계;
제1 어레이와 동일한 개수의 패치들을 포함하는 다수의 추가 어레이를 생성하는 생성 단계;
양자 버스로 제1 어레이에 다수의 추가 어레이를 연결하는 연결 단계; 및
디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시키기 위해 버스에 의해 연결된 패치들 각각에 대한 제1 오류 보정 방법으로, 그리고 상대적으로 낮은 오류 비율을 보정하기 위해 다수의 패치에 대한 제2 오류 보정 방법으로 양자 프로세서를 제어하기 위해 제어 회로장치를 생성하는 생성 단계;를 포함한다.
다수의 추가 어레이의 개수는 상대적으로 낮은 오류 비율의 보정 후 의도되는 오류 비율을 기반으로 할 수 있다.
이제, 예시는 하기 도면들을 참조하여 설명될 것이다.
도 1은 양자 프로세서를 도시한 도면이다.
도 2는 거리가 7개인 회전된 표면 코드 패치의 연결성을 도시한 도면이다.
도 3은 거리가 7개인 회전된 표면 코드에 대한 안정기를 도시한 도면이다.
도 4a는 정사각형 표면 코드 패치를 도시한 도면이다.
도 4b는 단일 큐비트를 포함한 직사각형 표면 코드 패치를 도시한 도면이다.
도 5는 2개의 큐비트를 포함한 직사각형 표면 코드 패치를 도시한 도면이다.
도 6은 선형 어레이에서 정사각형 패치들의 예시의 구조를 도시한 도면이다.
도 7은 선형 어레이에서 직사각형 패치들의 예시의 구조를 도시한 도면이다.
도 8은 상호 간에 수직으로 배열된 정사각형 패치들의 2개의 선형 어레이의 예시를 도시한 도면이다.
도 9는 패리티 측정 가젯(parity measurement gadget)을 도시한 도면이다.
도 10은 제안되는 방법의 결과들을 나타낸 그래프이다.
도 11은 양자 프로세서를 동작하기 위한 동작 방법을 나타낸 흐름도이다.
도 12는 양자 프로세서를 제조하기 위한 제조 방법을 나타낸 흐름도이다.
도 13은 깊이가 13개이고 폭이 5개인 물리적 큐비트들의 어레이를 포함하고 d_z = 3 및 d_x = 7인 직사각형 평면 표면 코드를 도시한 도면이다.
도 14는 도 13의 표면 코드와 함께 이용하기 위한 Z-안정기 양자 회로를 도시한 도면이다.
도 15는 도 13의 표면 코드와 함께 이용하기 위한 X-안정기 양자 회로를 도시한 도면이다.
도 16은 패리티 검사(parity check)를 수행하기 위한 양자 회로를 도시한 도면이다.
도 17은 오류 보정을 위한 동작 시퀀스를 도시한 도면이다.
양자 프로세서
도 1에는, 예시의 큐비트(101)처럼, 소형의 둥근 정사각형들로서 도시된 다수의 디지털 큐비트를 포함하는 양자 프로세서(100)가 도시되어 있다. 디지털 큐비트들은, 전자 또는 핵 스핀들(nucleus spins)과 같은, 디지털의 의미에서 양자 정보를 나타내거나, 또는 조셉슨 접합(Josephson Junction)을 사용하여 디지털 큐비트들을 초전도하는 큐비트들일 수 있다. 디지털 큐비트들은 단열 양자 컴퓨터(adiabatic quantum computer)에서 사용되는 아날로그 큐비트들과 대조가 된다. 디지털 큐비트들은, 데이터 큐비트들 또는 앤실라 큐비트들(ancilla qubits)과 같은 상이한 기능성들을 제공할 수 있다.
다수의 큐비트는, 예시의 패치(102)와 같은, 디지털 큐비트들의 다수의 패치로 배열된다. 또한, 각각의 패치는 큐비트들의 부분 집합, 그룹 또는 구역으로서 지칭될 수도 있다. 도 1에서의 굵은 선들은 큐비트들의 논리 그룹을 도시하고 있지만, 반드시 하드웨어 특징들을 나타낼 필요는 없다. 큐비트들의 패치들은, 비록 직사각형 패치들 및 다른 형상들도 가능하기는 하지만, 명확성을 위해 도 1에는 정사각형 패치들로서 도시되어 있다. 도 1의 예시에서, 패치들은 10 x 10개의 큐비트들의 크기를 보유하며, 이는, 패치(102)를 나타내는 굵은 정사각형이 100개의 둥근 정사각형(즉, 큐비트)을 포함한다는 점을 의미한다.
또한, 양자 프로세서(100)는 큐비트 내 버스(103)(intra-qubit bus) 및 메인 양자 버스(104)를 포함하는 디지털 큐비트들의 양자 버스를 포함한다. 양자 버스(103/104)는 디지털 큐비트들의 다수의 패치(102)를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송한다. 본원에서 "양자 버스"라고 언급할 때, 이는, 함께 하나의 "버스"로서 큐비트 내 버스(103) 및 양자 버스(104)를 나타낸다.
양자 프로세서(100)는, 표면 코드처럼, 버스에 의해 연결된 패치들(102)의 각각에 대한 제1 오류 보정 방법에 의해 제어된다. 표면 코드는 디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시킨다. 양자 프로세서(100)는, 추가로, 블록 코드 또는 스테인 코드와 같은, 다수의 패치에 대한 제2 오류 보정 방법에 의해서도 제어된다. 블록 코드는, 결과적으로 양자 프로세서(100)의 의도되는 동작을 위해 충분히 낮은 오류 비율을 제공하기 위해, 패치들의 상대적으로 낮은 오류 비율을 보정한다
양자 버스
양자 버스(103/104)는, 고장 허용(fault-tolerant) 장거리 패리티 검사 동작을 수행하기 위해 이용될 수 있다. 장거리 패리티 검사는 임의 길이의 고장 허용 패리티 검사를 수행하기 위한 레시피(recipe)를 제공한다. 양자 버스(103/104)의 동작은 하기 단계들을 포함할 수 있다.
1. N개의 데이터 큐비트(4개의 시간 단계)를 갖는 Greenberger-Horne-Zeilinger 상태(GHZ 상태)를 생성하고 이를 비트 플립 오류들(d 주기들)에 대해 보정된 상태로 유지하는 생성 및 유지 단계.
2. 모든 연결된 표면 코드 패치와 GHZ 상태의 그 부분 간의 횡단 CNOT 동작을 수행하는 수행 단계. CNOT들은 병행하여 적용될 수 있고, 그에 따라 단지 하나의 시간 단계만을 요구한다.
3. 임의의 추가 안정기의 측정 없이, GHZ 상태의 완전한 체인의 모든 데이터 큐비트가 측정되는 단계(하나의 시간 단계).
4. d 시간 동안 단계 1 ~ 3을 반복하고 총 시간 O(d2)에서 오류 보정된 측정 결과를 획득하기 위해 개별 측정 결과들에 대한 과반수 투표법(majority voting)을 이용하는 반복 및 이용 단계.
도 1의 예시에서, 메인 양자 버스(104)는 폭이 5개의 큐비트이지만, 그러나 다른 폭들도 동일하게 가능하다. 또한, 도면에서 볼 수 있듯이, 양자 버스는 일정한 폭을 보유하며, 이는, 버스가 양자 프로세서(100)에 걸쳐 5개의 큐비트의 폭을 갖는다는 것을 의미한다. 메인 양자 버스(104)는 "어레이들"로서도 지칭되거나, 또는 도 1의 예시에서는, 어레이의 모든 패치가 서로 나란히 하나의 라인에 배열되기 때문에, "선형 어레이들"로서도 지칭되는 열들(columns)을 연결한다. 그러므로 각각의 선형 어레이는 동일한 폭을 보유하며, 그리고 본 예시에서 그 폭은 10개의 패치 큐비트와 5개의 버스 큐비트를 포함하는 15개의 물리적 큐비트이다. 어레이의 폭은 하나의 패치의 크기 및 양자 버스의 폭에 의해 정의된다. 도 1에서, 각각의 선형 어레이는 75개의 물리적 큐비트 길이를 가지며, 그에 따라 15 x 75의 치수를 갖는다. 다른 구성은 15 x 120 또는 20 x 160일 수 있으며, 그리고 각각의 열은 7개 또는 15개의 논리적 큐비트(즉 패치)를 보유할 수 있되, 도 1에는 열당 4개의 패치만이 도시되어 있는 점이 주지된다. 정확한 치수들은 가변될 수 있으며, 그리고 가변될 수 있는 코드 선택 및 디자인 선택에 따라 결정된다.
일례에서, 치수들은 제2 레벨 코드의 세부사항 및 각각의 패치(102)의 크기에 따라 결정된다. 보다 구체적으로는, 패치들(102)의 폭은 코드 거리의 2배일 수 있다. 그 결과, 도 1의 예시에는, 10개의 패치 폭을 갖는 거리가 5개인 코드가 도시되어 있되, 도 1에는 회전되지 않은 표면 코드 패치들이 도시되어 있는 반면, 도 2에는 회전된 구조가 도시되어 있다. 도 1에서, 버스의 폭은 5개의 큐비트이고, 이는 본 예시에서의 코드 거리와 동일하다. 도 1에는 각각의 선형 어레이에 4개의 패치만이 도시되어 있기는 하지만, 다른 구현예들은, 예를 들면 각각의 선형 어레이를 위한 11개의 패치(스테인 코드, 7+2+2=11) 또는 19개의 패치([[15,7,3]] 코드, 15+2+2=19)처럼, 보다 더 많은 패치를 보유할 수 있다. 또한, 코드들의 다른 구성들 역시도 이용될 수 있다. 합산(summations)은 신드롬 추출 및 CNOT 가젯 구현을 위한 앤실라 큐비트들을 포함한다. 표기법[[n, k, d]]은 k개의 논리적 큐비트를 양자 코드 거리(d)를 갖는 n개의 물리적 큐비트로 부호화하는 양자 오류 보정 코드를 의미한다. 따라서, [[15, 7, 3]] 코드는 7개의 논리적 큐비트를 3개의 거리에서의 15개의 큐비트로 부호화하여, 적어도 1개의 양자 오류를 보정한다. 달리 말하면, 각각의 선형 어레이는 선택 코드 및 앤실라 큐비트들/가젯들의 출력(output)을 나타낸다(여기서 '출력'은 종래 정보 이론에서처럼 코드 매트릭스와 입력의 곱셈 결과를 의미한다). 예를 들면, 코드가 7개의 논리적 큐비트를 15개의 물리적 큐비트로 부호화하는 경우, 각각의 물리적 큐비트 및 앤실라/가젯 큐비트들에 대해 하나의 패치가 있을 수 있다. 즉, 각각의 패치는 제2 레벨 코드의 하나의 큐비트(또는 앤실라/가젯)를 나타내며, 그리고 각각의 선형 어레이는 코드 출력을 나타낸다. 또한, 보다 더 큰 제1 레벨 코드 거리가 요구된다면, 추가 물리적 큐비트들이 하기에서 제시되는 거리가 11개인 코드에서처럼, 각각의 패치의 디자인에 부가될 수 있다.
여기서 주목할 사항은, 각각의 논리적 큐비트(102)의 폭이 표면 코드 오류 보정의 최대 가능한 거리를 결정한다는 점이다. 달리 말하면, 보다 더 넓은 논리적 큐비트들은 보다 더 우수한 오류 보정을 제공하는 반면, 보다 더 좁은 논리적 큐비트들은 보다 더 좋지 않은 오류 보정을 제공한다. 표면 오류 코드는 상대적으로 높은 오류 비율을 갖는 개별 물리적 큐비트들에서 적용될 수 있다. 다른 한편으로, 스테인(7-큐비트) 코드[[7, 1, 3]] 또는 [[15,7,3]] 코드 및 기타 Calderbank-Shor-Steane(CSS) 코드들과 같은 블록 코드들은 보다 더 낮은 오류 비율들을 위해 적용될 수 있다. 그러므로 각각의 논리적 큐비트의 폭은, 목표 양자 계산을 위해 충분히 낮은 오류 비율을 제공하기 위해, 표면 코드에서 기인하는 오류 비율이 단지 제2 오류 보정 레벨에서 블록 코드를 적용하기에 충분히 낮아지도록 선택된다. 일부 예시에서, 폭은 15개 또는 20개의 물리 큐비트이긴 하지만, 그러나 다른 값들도 역시 선택될 수 있다. 보다 더 넓은 논리 큐비트들의 결과로 제1 레벨에서 보다 더 낮은 오류 비율이 되기는 하지만, 제조 비용은 직접적인 이득 없이 상승할 수도 있는데, 그 이유는, 폭이 임계값을 초과하는 동안 제2 레벨 오류 보정 코드가 잔여 오류를 보정할 수 있기 때문이다.
또한, 하단의 수평 영역(104)은, 그 다음 부호화의 최고 레벨에서 논리적 큐비트들이 상호작용하게 하기 위해 이용될 수 있는 마스터 버스 시스템이다. 이는 각각의 논리적 큐비트의 상호작용 및 알고리즘들의 실행을 허용한다. 버스는 다시 완전히 오류 보정되며, 그리고 전체 컴퓨터에서 논리적 큐비트들의 "포크들(forks)"/어레이들의 개수에 비례하는 유한한 폭 및 길이를 갖는다.
논리적 큐비트들 및 버스 시스템의 물리적 배치는 칩셋이 높게 분포되도록 허용한다. 도 1에서 흰색 공간은, 제어 전자 장치(control electronics)가 배치되어 컴퓨터(100)의 동작 및 제어를 위한 시스템 내 각각의 물리 큐비트에 배선(wiring)되는 곳인 영역들을 나타낸다. 이러한 제어 전자 장치의 크기 및 밀도는 칩셋을 포함하는 포크 및 버스시스템의 정확한 기하학적 레이아웃을 결정하게 된다.
오류 보정
양자 계산(quantum computation)을 위한 대부분의 현재의 아키텍처는, 단일 큐비트 게이트들을 포함하고 최근접 상호작용(nearest neighbour interaction)이 이루어지는 큐비트들의 대형 2D 정사각형 격자를 사용하여 계산이 실행되는 것을 제안한다. 이러한 아키텍처들에서, 논리적 큐비트들은, 보통, 일측 치수가 X 유형 오류들에 대한 민감도를 결정하고 타측 치수는 Z 유형 오류들에 대한 민감도를 결정하는 것인[보다 엄격하게는, 거친 경계와 부드러운 경계 사이의 최소 맨하탄 거리(Manhattan distance)가 코드 거리를 결정하고, 이는, 회전된 정사각형을 위해 최소화되는 것인] 대충 정사각형인 패치들 상에서 표면 코드에 의해 표현된다. 다수의 양자 계산은 논리적 오류 비율()을 요구하되, 여기서 A는 논리적 계산의 시간-공간 볼륨이며, 그에 따라 보다 길고 보다 큰 계산을 위해 보다 더 큰 논리적 볼륨이 이용되며, 그리고 이렇게 오류 보정 레벨도 더 높아지되, 예를 들면, 2048-비트 숫자에서 인수분해를 풀려면 27개 거리의 코드를 요구하는 것으로 추정되고, 이는, 23개의 코드 거리로 달성할 수 있는 보다 최근의 스케일링 추정치(estimate of scaling)를 사용하여 10-15의 논리적 오류 비율을 제공한다.
그러나 다수의 아키텍처의 경우, 큐비트 제어 상호 연결 비용 및 도전 과제로 인해, 정해진 큐비트와 어레이의 에지 간의 거리에 따라 큐비트당 비용 및 난제(difficulty)가 (보통 비선형적으로) 증가한다. 그러므로 본원 개시는, 추가 시간 및 큐비트들을 희생하면서 그보다 훨씬 더 작은 폭으로 계산을 수행할 수 있는 확장 가능한 아키텍처를 제공한다
본원 개시는 하이브리드 다중 계층 오류 보정 코드를 제공하며, 여기에는 하기와 같은 2개의 주요 계층(main layer)이 있다.
1. 코드 거리(d)를 갖는 기본 회전된 표면 코드인 제1 레벨 코드. 이러한 코드는 큐비트들의 회전된 2-D 정사각형 격자 패치들(102)을 이용하며, 이들은 그런 다음 제2 코드 계층을 위한 기판으로서 이용된다. 다중 큐비트 연산은 표면 코드 버스(103/104)를 사용하여 발생한다. 거리(d)는 상기에서 설명한 것처럼 충분한 오류 감소를 얻기 위해 제2 레벨 코드에 대해 가능한 한 작도록 선택된다. 일례에서, 제1 레벨 모드는 오류 비율을 10-5와 10-7 사이로 감소시킨다.
2. 최종 논리적 큐비트들의 요구되는 오류 비율로 큐비트들을 제공하는 제2 레벨 코드. 이러한 코드는 블록 코드일 수 있다. 표면 코드 버스(103/104)는, 상호작용을 가능하게 하기 위해 큐비트들을 이동시키지 않으면서도 임의의 블록 코드가 구현될 수 있게 하는 장거리 상호작용(long-distance interaction)을 위한 방법을 제공한다. 일례에서, 제2 레벨 코드의 적용 후 오류 비율은 10-9미만이다.
레벨 2 코드가 개별적으로 연결된 [[7,1,3]] 스테인 코드이고 거리가 11개인 기본 계층이라면, 논리적 오류 비율은 10-15보다 더 적합할 수 있다.
표면 코드 계층
일례에서, 제1 레벨 코드는, 거리가 d 개인 회전된 표면 코드 패치들을 사용하여 구현되되, 상기 표면 코드 패치들은 적어도 2개의 에지 세그먼트에서 표면 코드 버스(103/104)에 인접한다. 일부 구현예에서 상기 버스는, 함께 "버스"로서 지칭되는 큐비트 간 버스(103)(inter-qubit bus) 및 메인 버스(104)와 함께 도 1에 도시된 것과 같은 접힌 표면 코드 버스(folded surface code bus)에 의해 구현될 수 있다. 패치들(102)은 제1 계층의 논리적 큐비트들이거나, 또는 이고, 이들은 그 다음 제2 계층을 위한 기판으로서 사용된다.
회전된 표면 코드는 도 2에서의 것과 유사한 큐비트들의 정사각형 격자에서 동작한다. 상기 도면에서, 열린 원들(open circles)은 데이터 큐비트들이고, 속이 채워진 점들은 측정 보조 큐비트들(ancillary qubits)(앤실라)이며, 그리고 실선들은 직접 상호작용할 수 있는 큐비트들의 쌍들을 나타낸다. 도 3에는, 빗금 영역들(hatched regions) 및 비-빗금 영역들(un-hatched regions)을 포함한 안정기 코드들의 레이아웃의 예시가 도시되어 있되, 빗금 영역들 각각은 그 모서리들에서 데이터 큐비트들에 대한 Z 안정기를 나타내고, 비-빗금 영역들은 그 모서리들에서 데이터 큐비트들에 대한 X 안정기를 나타낸다. 논리적 연산자들(logical operators)은 일측 경계에서 타측 경계로 횡단하는 스트링들(strings)에 의해 표현되어 있다. 표면 코드의 거리는 2개의 매칭 에지 간의 최단 경로 상에서 데이터 큐비트들의 개수이다. 이러한 패치들은, 도 4a, 4b 및 5에서처럼, 표시된 에지들(관례상 부드러운 에지들은 z 에지들이고 x 에지들은 거친)을 포함한 정사각형들로서 표현될 수 있되, 거친 에지들은 대각선에 의해 표시되어 있고, 패치들은 정사각형일 수 있거나, 또는 일부는 보다 큰 다른 형태일 수 있으며, 패치들은 단일 큐비트를 포함할 수 있거나, 또는 보다 더 큰 경우에는 다수의 큐비트를 포함할 수 있다. 예를 들면, 도 4a에는, 하나의 큐비트를 포함하는 정사각형 패치가 도시되어 있고, 도 4b에는, 하나의 큐비트를 포함한 보다 더 큰 패치(2배 길이)가 도시되어 있으며, 도 5에는, 2개의 큐비트 '1' 및 '2'를 포함하는 보다 더 큰 패치(2배 길이)가 도시되어 있다.
기본 계층 상에서 단일 큐비트 클리프포드 연산(Clifford operation)은 에지 트랙킹(edge tracking)에 의해 진행되며, 그리고 2회의 큐비트 연산은, 추가적인 논리적 앤실라의 가능성과 함께, 2회의 적응성 큐비트 패리티 측정 및 보정을 사용하여 수행된다. 버스는 고장 허용 방식으로 임의의 거리들에 걸쳐서 상기 패리티 측정들을 수행할 수 있으며, 그리고 그렇게 (CNOT 게이트들을 포함한) 얽힘 연산들(entangling operations)도 역시 임의의 거리들에 걸쳐 수행될 수 있다.
개별 표면 코드 패치들(102)은 큐비트 버스(103/104)에 의해 함께 연결된다. 큐비트 버스는, 부호화된 큐비트 패치들(102)과 유사하지만, 그러나 모든 정보를 부호화하지 않는 표면 코드의 확장된 영역으로서 간주될 수 있다. 버스 자체는 예를 들면 5개의 큐비트의 고정된 폭을 보유하며, 그리고 부호화된 큐비트 영역들을 연결하기 위해 필요한 요구되는 길이를 연장시킨다. 버스는, 경계들을 따라서 공동 연산자들을 측정함으로써, 논리적 큐비트 패치들에 연결된다. 이는 상호 작용하는 논리적 큐비트들에 버스를 일시적으로 '연결한다'. 이러한 연결은 표면 코드 오류 보정의 다수의 주기 동안, 즉 기본 코드(underlying code)의 거리(d)와 동일한 횟수의 주기 동안 유지된다. 이는 병합 연산(merge operation)으로서 지칭된다.
일단 병합 연산이 완료되면, 버스가 논리적 큐비트 패치들에 연결되어 있는 곳인 경계를 따르는 큐비트들이 측정된다. 이는 각각의 논리적 큐비트 패치로부터 버스를 분리하며, 그리고 분할 연산(split operation)으로서 지칭된다. 병합과 분할의 조합은 버스에 의해 연결된 패치들 간의 논리적 게이트를 완성한다. 버스는 임의의 개수의 논리적 패치들 간의 상호작용을 수월하게 할 수 있다.
도 6에는, 크기가 d인 큐비트들의 정사각형 패치들이 ("모듈"로서도 지칭되는) 어레이 안쪽에 있으며, 그리고 큐비트 버스(103)로의 연결을 위해 각각의 패치의 하나의 거친 에지 및 하나의 부드러운 에지를 따라서 충분한 추가 큐비티들을 포함하는 것처럼, 일정한 폭(w+d)의 패치들의 선형 어레이 내에서 폭이 w인 큐비트들의 버스에 의해 연결되어 있는 예시가 도시되어 있다.
도 7에는, 길이가 2배인, 즉 길이는 2d 개의 큐비트인 반면, 버스 폭은 여전히 w개의 큐비트인 패치들의 선형 어레이의 추가 예시가 도시되어 있다. 여기서 주목할 사항은, 도 7의 예시에서 패치들이 버스 상에 하단 경계, 즉 거친 경계 및 부드러운 경계 모두를 갖는다는 점이다. 즉, 버스는 경계의 일측 측면에 부착되기만 하면 된다. 큐비트들 간의 간극(gap)은 단지 작은 간극일 뿐이며, 그리고 심지어는, 논리적 큐비트들이 분리되어 뚜렷이 구별될 수 있게 하기 위해, 간격을 두는 하나의 격자의 간극일 뿐일 수도 있다.
도 8에는, 버스가 추가 패치들을 연결하기 위해 분기되어 있는 보다 더 복잡한 예시가 도시되어 있다. 여기서, 제1 패치 세트(A1 ~ An)는 제1 선형 서브 어레이(801)로서 배열되고, 제2 패치 세트(B1 ~ Bn)는, 제1 선형 서브 어레이에 대해 직각인 제2 선형 서브 어레이(802)로서 배열된다. 주목할 사항은, 버스가 전체 구조에 걸쳐 w의 폭을 보유한다는 점이다. 상이한 구조들의 범위는, 잠재적으로 여러 분기점(branching point)을 가지면서 직각이거나 상이한 각도들에 배열될 수 있는 다수의 추가 서브 어레이로 가능하다. 여기서 다시 주목할 사항은, 각각의 서브 어레이가, 상기에서 설명한 것처럼, 레벨 2 코드 및 앤실라 큐비트들의 출력을 나타낼 수 있다는 점이다.
패치들은 4개의 패치에 대해 도 1에 도시된 것처럼 연속적인 직사각형으로 서로 가까울 수 있거나, 또는 패치들은, 큐비트들의 밀집한 구역들을 확산시키기 위해, 자신들 사이의 버스만의 긴 폭으로 서로 이격되어 있을 수 있다. 패치들은 일렬로 연결되어 있을 수 있거나, 또는 상위 계층 암호화 구조들 또는 알고리즘을 보다 더 적합하게 하기 위해 보다 정교한 분기 패턴(branching pattern)이 있을 수 있다. 바람직하게는, 패치들 및 버스의 둘레에 큐비트 구동 회로들 또는 장치 등을 위한 충분한 공간이 존재하며, 그리고 임의의 내부 큐비트 및 경계로부터의 거리는 요구되는 한계 미만이다.
제1 레벨 코드는, 물리적 큐비트들의 오류 비율에서의 오류들을, 제2 레벨 모드를 위해 충분히 낮은 논리적 오류 비율로 전환시킨다. 물리적 오류 비율()로, 거리가 d 개인 표면 코드 패치에 대한 논리적 오류 비율은 로서 추정될 수 있다. 다른 추정치들은 약간 보다 더 조밀한 으로 스케일링을 부여한다. 으로, 상기 추정치들은 거리가 11개인 표면 코드 패치에 대한 논리적 오류 비율을 각각 10-7 및 3.3 x 10-8에 배치한다.
제2 레벨 블록 코드
패치 폭을 추가로 증가시키지 않으면서, 최종 계산을 위한 의도되는 계산 충실도를 달성하기 위해, 제1 레벨의 양자 오류 보정 코드는, 기판으로서 제1 레벨() 표면 코드 논리적 큐비트들(즉, 패치들)을 사용하여 구현된다. 버스 아키텍처는, 천연적으로 장거리 패리티 측정 및 적은 수의 추가 앤실라(병렬 CNOT 게이트 당 하나)를 사용하여 장거리 게이트들이 수행될 수 있게 한다. 도 9에는, 이용될 수 있는 패리티 측정 가젯이 도시되어 있되, 이는 파울리(Pauli) 측정 CNOT 가젯이다.
이러한 제2 레벨 코드는, 장거리 게이트들의 가용성; 및 코드 기판에 의해 정해진 패리티 측정들;을 고려할 때 바람직한 블록 기반 양자 오류 보정 코드와 같은 임의의 적합한 양자 코드일 수 있다. 사용될 수 있는 코드들의 예시들은 [[5,1,3]] 쇼어(Shor) 코드, [[7,1,3]] 스테인(Steane) 코드, [[15,7,3]] 해밍(hamming) 코드이거나, 또는 다양한 양자 저밀도 제품 코드들(LDPC) 중 임의의 코드이다.
제어 회로장치
상기에서 개시되는 일부 예시는 양자 연산을 포함하는 코드들 및 기타 양자 알고리즘들을 활용한다. 이러한 연산들은, 전형적으로, 전자 스핀 공명(ESR) 라인들; 또는 방사선원들, 예컨대 극초단파원들 또는 광학원들; 또는 큐비트들에 제어 펄스들 및 필드들을 제공하기 위한, 정적 필드용 금속 패드들 또는 라인들;과 같은 외부 제어 회로장치에 의해 제어된다. 종래 컴퓨터는, 결과적으로 의도되는 양자 코드들 및 연산들로 이어지는 펄스들 및 기타 제어 및 판독 출력 신호들을 계산한다. 예를 들면, 종래 컴퓨터는 프로세서 및 메모리를 포함하며, 그리고 비휘발성 컴퓨터 판독 가능 매체에 저장된 소프트웨어 명령어들을 실행하며, 이는 컴퓨터로 하여금 본원에 설명되는 방법들을 수행하게 한다. 종래 컴퓨터는, 잠재적으로 신호 생성기를 매개로, 양자 프로세서(100)에 연결되며, 그럼으로써 종래 컴퓨터는 큐비트들에 제1 및 제2 오류 보정 방법을 적용함으로써 양자 프로세서를 제어할 수 있게 된다.
양자 프로세서의 동작 방법
도 11에는, 양자 프로세서(100)를 동작하기 위한 동작 방법(1100)의 흐름도가 도시되어 있다. 상기에서 설명한 것처럼, 양자 프로세서는 디지털 큐비트들의 다수의 패치 및 디지털 큐비트들의 양자 버스를 포함한다. 양자 버스는 디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송한다. 일례에서, 본원 방법은 소프트웨어 프로그램을 실행하는 종래 컴퓨터의 종래 프로세서에 의해 수행된다.
그러한 점에서, 프로세서는 디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시키기 위해, 버스에 의해 연결된 패치들 각각에 제1 오류 보정 방법을 적용한다(1101). 상기에서 설명한 것처럼, 상기 제1 오류 보정 방법은, 물리적 큐비트들의 자연 발생적인 오류 비율을 패치에 의해 형성된 논리적 큐비트의 감소된 오류 비율로 감소시키기 위해, 각각의 패치에 적용되는 표면 코드를 수반할 수 있다.
또한, 프로세서는 상대적으로 낮은 오류 비율을 보정하기 위해 다수의 패치에 제2 오류 보정 방법을 적용한다. 상기 제2 오류 보정 방법은, 표면 코드에서 여전히 남아 있는 오류 비율을 보정하기 위해, 물리적 큐비트들에 대조적으로, 논리적 큐비트들에서 동작하는 블록 코드, 예를 들면 스테인 코드를 수반할 수 있다.
제1 및 제2 오류 보정 방법은 순차적으로 차례로, 또는 동시에 수행될 수 있다. 동일한 방법은 모든 패치에 적용될 수 있거나, 또는 일부 패치가 제1 방법으로 처리될 수 있고, 그에 반해 다른 패치들은 제2 방법으로 처리된다.
양자 프로세서의 제조 방법
도 12에는, 양자 프로세서(100)를 제조하기 위한 제조 방법(1200)의 흐름도가 도시되어 있다. 방법(1200)은 복수의 패치의 제1 어레이를 형성하기 위해, 디지털 큐비트들의 다수의 패치를 생성하는 생성 단계(1201)를 포함한다. 이러한 문맥에서, "생성하는(creating)"은 물리적 장치를 생성하는 점, 예를 들면 결정 구조 생성(crystal structure creation)을 포함하는 큐비트들을 제작하고, 도펀트 원자들을 주입하고, 금속 와이어들을 증착하는 점과 관련될 수 있다. 그러나 "생성하는"은, 동일하게, 제조되어야 하는 구조를 위한 디지털 마스크 레이아웃과 같은, 생성되는 디지털 표현, 또는 도 1에 도시된 것과 같은, 장치의 보다 더 높은 레벨 표현, 및/또는 그의 보다 더 추상화된 표현을 생성하는 점과도 관련될 수 있다.
방법(1200)은, 디지털 큐비트들의 양자 버스로 제1 어레이의 다수의 패치를 연결하는 연결 단계(1202)를 더 포함한다. 양자 버스는, 디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송하도록 구성된다. 그러한 점에서, 방법(1200)은, 추가로, 디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송하도록 양자 버스를 구성하는 구성 단계를 포함할 수 있다.
또한, 방법(1200)은 다수의 추가 어레이를 생성하는 생성 단계(1203)를 포함한다. 이러한 추가 어레이들은 제1 어레이와 동일한 개수의 패치를 포함하며, 이는, 추가 어레이들의 부가가 단지 양자 프로세서의 하나의 치수에만 영향을 미친다는 것을 의미한다. 달리 말하면, 추가 어레이들이 부가된다고 하더라도, 양자 프로세서의 폭은 여전히 일정하게 유지되며, 이는, 모든 큐비트의 배선을 가능하게 하기 때문에, 제조를 용이하게 하기에 유의적인 장점이다. 어레이들의 개수는 특정한 적용을 위해 의도되는 원하는 오류 비율에 따라 결정될 수 있다. 그러한 점에서, 오류 비율의 거의 임의적인 감소는 폭을 일정하게 유지하면서 양자 프로세서(100)를 보다 더 길게 만듦으로써 달성될 수 있다. 각각의 어레이는 그 자체의 배선을 위해 충분한 공간을 제공하기 때문에, 추가 어레이들의 부가는 배선 문제를 악화시키지 않는다.
방법(1200)의 다음 단계는, 도 1에 도시된 메인 버스(104)를 확장함으로써 달성되는 것처럼, 양자 버스로 제1 어레이에 다수의 추가 어레이를 연결하는 연결 단계(1204)이다. 최종적으로, 방법(1200)은 제어 회로장치를 생성하는 생성 단계(1205)를 포함한다. 제어 회로장치는 버스에 의해 연결된 패치들의 각각에 대한 제1 오류 보정 방법으로 양자 프로세서를 제어한다. 이는 디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시킨다. 또한, 제어 회로장치는 상대적으로 낮은 오류 비율을 보정하기 위해 다수의 패치에 대한 제2 오류 보정 방법으로 양자 프로세서를 제어한다. 제어 회로장치는 ESR 라인들 또는 기타 상호 연결부들 및 제어부들을 포함할 수 있다. 또한, 제어 회로장치는 신호 생성기들 또는 구동기들뿐만 아니라, 제1 및 제2 오류 제어 방법을 수행하기 위한 제어 펄스들을 계산하는 종래 컴퓨터도 더 포함할 수 있다.
주목할 사항은, 양자 프로세서(100)가 실리콘에서 구현될 수 있으며, 그리고 ARM 프로세서 코어와 같은 종래 프로세서와 동일한 실리콘 다이(silicon die) 상에 구현될 수 있다는 점이다. 그러한 점에서, 양자 프로세서(100)는, 종래 컴퓨터가 종래 세팅에서 계산의 복잡성으로 인해 실제로 수행할 수 없는 계산들을 수행하기 위해, 확장 하드웨어 또는 하드웨어 가속기(hardware accelerator)를 구성한다.
결과
시뮬레이션은, 플래그 큐비트(flag-qubit) 기반 고장 허용 구현예를 사용하여, 상기 기판 상에 구현된 스테인 코드에 대해 수행하였다. 측정된 오류 비율들에 대한 결과들은 도 10 내의 그래프에 기술되어 있다. 이러한 스테인의 구현예의 하나의 레벨에 따른 논리적 오류 비율의 추정은 하기 식과 같다.
인 경우, 이는 스테인의 단일 계층으로 가 제공되며, 그리고 함께 연결된 스테인의 2개의 계층에 대해서는 단지 추가적인 2개의 앤실라만을 사용하여 가 제공된다. [[15,7,3]] 또는 LDPC 코드와 같은 다른 코드들은 이러한 단계로부터 보다 더 낮은 오버헤드(overhead)를 획득하기 위해 사용될 수 있다. 이는, 그 결과로 생긴 오류 비율이 2048 비트 숫자의 인수 분해를 풀기 위한 상기에서 언급한 약 10-15의 오류 비율임을 나타낸다.
고도로 비대칭적인 보다 더 낮은 레벨 표면 코드들을 통한 격자 폭의 추가 감소
전술한 예시들 중 일부에서, 표면 코드는 2d-1의 폭과 2d-1의 깊이를 갖는 큐비트들의 정사각형 패치를 통해 정의되되, d는 코드 자체의 거리이다. 상기 예시들에서, 각각의 치수는 비트 플립 오류들 및 위상 플립 오류들을 독립적으로 보정하는 것에 책임이 있다. 평면 표면 코드에서의 논리적 오류들은, 구성 큐비트들 상의 물리적 오류들이 좌측에서 우측으로, 또는 상단에서 하단으로 격자를 횡단하는 체인들을 생성할 때 야기된다. 어떠한 체인들이 물리적 비트 오류들을 야기하고 어떠한 체인들이 논리적 위상 오류들을 야기하는지는 격자 내에서의 안정기 배향에 대하여 정의된다.
격자의 수평 치수(2d-1)에서 물리적 큐비트들의 개수가 정사각형 평면 코드의 경우 격자의 수직 치수(2d-1)에서의 개수와 동일하기 때문에, 비트 및 위상 오류들에 대한 오류 보정력(error correcting power)은 동일하고 d로 명시된다.
그러나 다른 예시들에서, 평면 표면 코드는, 물리적 격자가 이제는 폭(W) x 깊이(D)[(2d_x-1) x (2d_z-1)]의 치수가 되도록, 2개의 신규 거리(d_x 및 d_z)를 선택함으로써 비대칭적이 된다. 여기서, 비트 플립을 정의하는 논리적 체인 연산자(logical chain operator)가 격자의 폭에 걸쳐 있는 것으로 상정된다. 비대칭 격자는 이제 다른 유형의 오류보다 한 가지 유형의 오류에 대해 더 취약하다. d_x < d_z라면, 코드는 논리적 비트 플립들을 허용하는 능력이 더 적으며, 그와 반대로 d_x > d_z라면, 코드는 위상 오류들을 허용하는 능력이 더 적다.
도 13에는, 깊이가 13개이고 폭이 5개인 물리적 큐비트들의 어레이를 포함하고 d_z = 3 및 d_x = 7인 직사각형 평면 표면 코드가 도시되어 있다. 또한, 2개의 유형의 안정기 연산자들을 추출하기 위해 이용되는 양자 회로들은 도 14 및 도 15에 각각 도시되어 있다. 이러한 회로들은 정사각형 평면 표면 코드에 대한 것과 동일하다.
일례에서, 양자 프로세서는 물리적 어레이의 폭을 최소화하도록 설계된 길고 얇은 직사각형 표면 코드를 포함하는 반면, 여전히 도 13의 경우인 위상 (X) 플립들에 대해 최소의 오류 보정량을 제공한다. 다른 치수는 한 가지 유형의 오류를 심하게 억제하도록 설계되어 있으며, 이는 도 13에서 비트 (Z) 플립들인 반면, 다른 예시들에서 표면 코드는 위상 플립들을 심하게 억제한다. 큐비트들의 물리적 어레이의 길이는 상기 아키텍처에서는 제한이 아니며, 그로 인해 부호화된 패치들은, 논리적으로 부호화된 레벨로 극도로 큰 오류 바이어스를 생성하기에 충분히 큰 d_z의 극도로 큰 값들을 보유할 수 있다.
제안되는 아키텍처는 논리적 계층에서 오류 바이어스를 인공적으로 생성하기 위해 비대칭적 표면 코드 구조를 사용하며, 그 다음 상기 아키텍처는 훨씬 더 간단한 오류 보정 코드 구조들을 활용하게 된다. 구성 큐비트들 각각에 대한 물리적 오류 비율들은 표면 코드의 고장 허용 임계값 미만인 것으로 고려될 수 있으며, 그리고 균형을 유지한다(물리적 X 오류들은 물리적 Z 오류들과 동일하게 발생한다.). 논리적 큐비트의 경우, 논리적 Z 오류들은 효과적으로 존재하지 않고, 논리적 X 오류들은 오직 약간만이 억제되었다. 이런 사항이 완료되면, 이제 몹시 우세한 X 오류들을 보정하도록 설계된 논리적 표면 코드의 상단에서 종래 반복 코드를 효과적으로 연결시킬 수 있다. 달리 말하면, 상기에서 언급한 제1 오류 보정 방법은 이제 비대칭 표면 코드인 반면, 제2 오류 보정 방법은 반복 코드이다.
반복 코드는 비트 플립 오류들 또는 위상 플립 오류들 중 하나를 보정할 수 있다(그러나 동시에 보정할 수는 없으며, 그 때문에 반복 코드는 완전한 양자 코드가 아니다.). 이러한 코드에서, 논리적 상태는, 0 상태가 영(0)의 N-배 곱으로 교체되고 1 상태는 하나의 의 N-배 곱으로 교체되도록 부호화된다. 이러한 부호화는, 큐비트들의 인접 쌍들의 패리티를 비교함으로써, 물리적 상태에서 비트 플립들의 보정을 가능하게 한다. 또한, 길이가 N-큐비트들인 반복 코드의 경우, 오류 보정 거리는 N이며, 이는, 최대 (N-1)/2개의 오류가 N/2개의 인접 쌍의 패리티를 검사함으로써 보정될 수 있음을 의미한다.
반복 코드의 각각의 논리적 큐비트의 중간에서, 그리고 앤실라가 사용되면서, 큐비트들 (j)와 (j+1) 간의 비트 값들이 비교된다. 오류가 발생했다면, 이러한 측정된 패리티는 홀수가 된다.
이러한 인접한 코드에서, 반복 코드의 신드롬 추출은, 반복 코드의 코드 거리와 무관하게, 매우 빠르게, 그리고 일정한 시간으로 수행될 수 있다. 이러한 고속 신드롬 추출 및 높은 거리는, 코드의 임계값이 매우 높다는(~ 50%) 것을 의미한다. 그러나 코드는 두 유형의 오류들을 동시에 보정할 수 없다. 또한, 다른 종래 코드들도 역시 사용될 수 있다.
신규 마이크로 아키텍처 구조는, 고장 허용 오류 보정을 효과적으로 구현할 수 있는, 매우 작고 물리적으로 고정된 폭의 어레이를 허용하기 위해, 상기 2개의 독립적 특성을 이용하는 것에 있다.
큐비트들의 물리적 계층은 (d_x << d_z) 표면 코드로 부호화된 직사각형 패치들의 집합체 내에 배열된다. 일례의 기술에서 실행 가능한 최소 폭은 d_x = 3이며, 이는 5개의 물리적 큐비트의 격자의 물리적 폭에 상응한다.
어레이의 길이는 임의적인 것으로 상정되며, 그리고 계산 알고리즘에 의해 필요한 만큼 많은 상기 직사각형 표면 평면 코드 패치들을 "부호화"할 수 있다.
상기 표면 코드 계층의 상단에서, 양자 프로세서는 반복 코드 내로의 부호화를 수행한다. 상기 제2 계층에서 고장 허용 오류 보정을 수행하기 위한 양자 프로세서의 경우, 어레이의 총 폭은, 2개의 평면 표면 코드가 격자의 수직 치수에 배향되도록, 2의 인수만큼 확장된다. 이는, (하단에 놓이는 평면 코드 오류 보정의 관점에서) 상기 제2 열 또는 평면 표면 코드들이 동일해지도록 하고 직사각형 표면 코드들의 긴 경계를 따라서 물리적으로 상호작용할 수 있도록 하기 위해 이용된다. 결과적으로, 이를 위한 본 예시에서 이용되는 최소 폭은 5+5+1개의 물리적 큐비트이다. 즉, 각각의 직사각형 평면 표면 코드의 폭에 대해 5개의 물리적 큐비트와 논리적으로 부호화된 2개의 블록 간 스페이서(spacer)로서의 하나의 추가적인 물리적 큐비트이다. 또한, 전체 어레이의 폭은 임의의 길이인 것으로서 상정된다.
코드의 상단 계층에서 오류 보정은, 평면 표면 코드 패치들의 상단 열(top row)과 제2 보조 열(ancilliary row) 간에 격자 수술 기법(lattice surgery)이 가능해진 논리 연산들의 집합을 이용한다. 이러한 연산 시퀀스는 도 17에 도시되어 있다.
단계 1에서, 반복 코드 내의 직사각형 논리적 큐비트들 각각은 열 2 내의 큐비트들의 물리적 공간 내로 확장된다. 이는 간단히 d_x = 3에서부터 d_x = 6으로 오류 보정 강도를 배가시킨다.
단계 2에서, 양자 프로세서는 이제 2개의 뚜렷한 직사각형 표면 코드 패치 간에 얽힌 상태(entangled state)를 생성하는 격자 수술 기법 분할 연산(Lattice surgery split operation)을 수행하되, 상기 직사각형 표면 코드 패치 각각은 이제 다시 d_x = 3의 평면 표면 코드로 감소되었다.
단계 3에서, 양자 프로세서는 보조 큐비트들 간에 그들 폭을 따라서 병합 연산을 수행한다. 이는 이제 데이터 큐비트들의 쌍별 논리적 Z 패리티와 관련된 정보를 저장한다. 평면 표면 코드 큐비트들의 제2 열은 이제 반복 코드를 위한 신드롬 정보를 부호화한다.
그런 다음, 단계 4는, 모든 물리적 구성 큐비트들의 측정을 통해, 상기 보조 평면 표면 코드 큐비트들 각각을 측정한다. 이러한 패치들의 측정의 결과로, 논리적 패리티[Z(j)Z(j+1)]에 대한 종래의 신드롬 정보가 획득된다.
반복 코드는 모든 쌍별 연산의 측정을 이용하기 때문에, 상기 제1 블록은 비-중첩 쌍들[Z(1)Z(2) 및 Z(3)Z(4) 등]을 측정한다. 이제, 양자 프로세서는 인접한 비-중첩 반복 코드 큐비트들[Z(2)Z(3), Z(4)Z(5) 등]에 걸쳐서 연산 시퀀스를 반복한다. 이는 반복 코드의 패리티 검사를 완료한다.
만약 물리적 오류 비율이 표면 코드의 고장 허용 임계값 미만(대략 0.6%)이라면, 기본 표면 코드 계층은 << 1인 논리적 Z 오류 비율(<< 1)을 생성하는 반면, 논리적 X 오류 비율은 0.6%를 약간 초과(> 0.6%)한다(비대칭 코드는 다른 유형의 양자 오류를 약간 증폭시키는 동안 한 가지 유형의 양자 오류를 효과적으로 제거하게 된다.).
보다 더 높은 레벨의 반복 코드의 초기화는 간단히 논리적 0 상태로 모든 평면 표면 코드 패치를 준비하는 것에 있으며, 이는 자동으로 반복 코드 레벨에서의 논리적 0 상태를 생성한다.
그 다음, 반복 코드 계층은, 표면 코드 계층에서 여전히 보정되지 않은 상태로 유지되는 X 오류를 제거하는 반복 코드로서의 역할을 하게 된다. 이는, 마이크로 아키텍처를 위해 필수적인 것인 전체 어레이를 위한 작고 고정된 폭을 유지하는 동안, 상단 논리적 계층에서 두 유형의 오류들(X 및 Z)에 대한 효과적인 양자 오류 보정을 가능하게 한다.
당업계의 통상의 기술자라면, 본원 개시의 폭넓은 일반적인 범위에서 벗어나지 않으면서, 상기에서 설명한 실시예들에 대해 수많은 변형 및/또는 수정을 할 수 있다는 점을 인정할 것이다. 그러므로 본원 실시예들은 모든 점에서 예시이고 제한하지 않는 것으로서 고려되어야 한다.

Claims (25)

  1. 양자 프로세서로서,
    디지털 큐비트들의 다수의 패치; 및
    디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송하도록 구성된 디지털 큐비트들의 양자 버스;를 포함하는 상기 양자 프로세서에 있어서,
    상기 양자 프로세서는, 상기 디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시키기 위해 버스에 의해 연결된 상기 패치들 각각에 대한 제1 오류 보정 방법에 의해, 그리고 상대적으로 낮은 오류 비율을 보정하기 위해 상기 다수의 패치에 대한 제2 오류 보정 방법에 의해 제어되는 것인, 양자 프로세서.
  2. 제1항에 있어서, 상기 양자 버스는 큐비트들의 일정한 폭을 보유하는 것인, 양자 프로세서.
  3. 제1항 또는 제2항에 있어서, 상기 다수의 패치는 각각이 상기 양자 버스에 의해 연결된 하나보다 많은 패치의 다수의 어레이를 형성하는 것인, 양자 프로세서.
  4. 제3항에 있어서, 상기 다수의 어레이는 선형 어레이들인 것인, 양자 프로세서.
  5. 제4항에 있어서, 각각의 선형 어레이는 동일한 폭을 보유하는 것인, 양자 프로세서.
  6. 제5항에 있어서, 각각의 선형 어레이는 상기 다수의 패치 중 하나의 패치; 및 상기 양자 버스;에 의해 정의되는 어레이 폭을 보유하되, 어레이 폭은 15 또는 20인 것인, 양자 프로세서.
  7. 제4항 내지 제6항 중 어느 한 항에 있어서, 각각의 선형 어레이는 상기 다수의 패치 중 하나보다 더 많은 패치; 및 상기 양자 버스;에 의해 정의되는 어레이 길이를 보유하되, 어레이 길이는 120 또는 160인 것인, 양자 프로세서.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서, 상기 양자 프로세서는, 상기 다수의 패치 사이에, 상기 다수의 패치의 디지털 큐비트들에 대한 연결부들을 포함하는 구역을 더 포함하는 것인, 양자 프로세서.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 버스의 디지털 큐비트들은 상기 제1 오류 보정 방법에 의해 제어되는 것인, 양자 프로세서.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서, 상기 제1 오류 보정 방법은 표면 코드를 포함하는 것인, 양자 프로세서.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서, 상기 제2 오류 보정 방법은 블록 코드를 포함하는 것인, 양자 프로세서.
  12. 제11항에 있어서, 상기 블록 코드는 스테인 코드를 포함하는 것인, 양자 프로세서.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서, 상기 상대적으로 낮은 오류 비율은 10-5미만인 것인, 양자 프로세서.
  14. 제1항 내지 제13항 중 어느 한 항에 있어서, 상기 상대적으로 낮은 오류 비율은 10-8보다 더 큰 것인, 양자 프로세서.
  15. 제1항 내지 제14항 중 어느 한 항에 있어서, 상기 상대적으로 낮은 오류 비율을 보정한 결과로, 10-9 미만의 보정된 오류 비율이 획득되는 것인, 양자 프로세서.
  16. 제1항 내지 제15항 중 어느 한 항에 있어서, 상기 양자 프로세서는, 상기 제1 오류 보정 방법 및 상기 제2 오류 보정 방법을 수행하기 위해 제어 회로장치를 더 포함하는 것인, 양자 프로세서.
  17. 제1항 내지 제16항 중 어느 한 항에 있어서, 상기 패치들은 정사각형인 것인, 양자 프로세서.
  18. 제1항 내지 제16항 중 어느 한 항에 있어서, 상기 패치들은 직사각형이며, 그리고 제1 치수와 관련된 제1 오류 유형의 오류 비율을 제2 치수와 관련된 제2 오류 유형의 오류 비율보다 더 큰 정도로 감소시키기 위해, 제2 치수보다 더 큰 제1 치수를 보유하는 것인, 양자 프로세서.
  19. 제18항에 있어서, 상기 제1 오류 보정 방법은 상기 제1 오류 유형의 오류 비율을 상기 제2 오류 유형의 오류 비율보다 더 큰 정도로 감소시키기 위해 비대칭 표면 코드인 것인, 양자 프로세서.
  20. 제19항에 있어서, 상기 제2 오류 보정 방법은 상기 제2 오류 유형의 오류 비율을 감소시키기 위해 반복 코드인 것인, 양자 프로세서.
  21. 제18항 내지 제20항 중 어느 한 항에 있어서, 상기 제2 오류 보정 방법은 단지 상기 제2 오류 유형만의 오류 비율을 감소시키는 것인, 양자 프로세서.
  22. 제18항 내지 제21항 중 어느 한 항에 있어서, 상기 제1 오류 유형은 비트 플립 오류 및 위상 플립 오류 중 어느 하나이고, 상기 제2 오류 유형은 비트 플립 오류 및 위상 플립 오류 중 다른 하나인 것인, 양자 프로세서.
  23. 양자 프로세서를 동작하기 위한 동작 방법으로서, 양자 프로세서는 디지털 큐비트들의 다수의 패치 및 디지털 큐비트들의 양자 버스를 포함하고, 양자 버스는 디지털 큐비트들의 다수의 패치를 연결하여 디지털 큐비트들의 패치들 간의 장거리 상호 작용을 전송하도록 구성되는 것인, 상기 양자 프로세서의 동작 방법에 있어서, 상기 동작 방법은
    상기 디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시키기 위해, 상기 버스에 의해 연결된 상기 패치들 각각에 제1 오류 보정 방법을 적용하는 적용 단계; 및
    상기 상대적으로 낮은 오류 비율을 보정하기 위해, 상기 다수의 패치에 제2 오류 보정 방법을 적용하는 적용 단계;를 포함하는 것인, 양자 프로세서의 동작 방법.
  24. 양자 프로세서를 제조하기 위한 양자 프로세서의 제조 방법에 있어서, 상기 제조 방법은
    복수의 패치의 제1 어레이를 형성하기 위해, 디지털 큐비트들의 다수의 패치를 생성하는 생성 단계;
    상기 디지털 큐비트들의 다수의 패치를 연결하여 상기 디지털 큐비트들의 패치들 간의 장거리 상호작용을 구성하는 양자 정보를 전송하도록 구성된 디지털 큐비트들의 양자 버스로 제1 어레이의 다수의 패치를 연결하는 연결 단계;
    상기 제1 어레이와 동일한 개수의 패치들을 포함하는 다수의 추가 어레이를 생성하는 생성 단계;
    상기 양자 버스로 상기 제1 어레이에 상기 다수의 추가 어레이를 연결하는 연결 단계; 및
    상기 디지털 큐비트들 내의 상대적으로 높은 오류 비율을 각각의 패치의 상대적으로 낮은 오류 비율로 감소시키기 위해 상기 버스에 의해 연결된 상기 패치들 각각에 대한 제1 오류 보정 방법으로, 그리고 상대적으로 낮은 오류 비율을 보정하기 위해 상기 다수의 패치에 대한 제2 오류 보정 방법으로 상기 양자 프로세서를 제어하기 위해 제어 회로장치를 생성하는 생성 단계;를 포함하는 것인, 양자 프로세서의 제조 방법.
  25. 제24항에 있어서, 상기 다수의 추가 어레이의 개수는 상기 상대적으로 낮은 오류 비율의 보정 후 의도되는 오류 비율을 기반으로 하는 것인, 양자 프로세서의 제조 방법.
KR1020237016402A 2020-10-23 2021-09-30 양자 오류 보정 KR20230117566A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
AU2020903848 2020-10-23
AU2020903848A AU2020903848A0 (en) 2020-10-23 Quantum error correction
AU2021901279 2021-04-30
AU2021901279A AU2021901279A0 (en) 2021-04-30 Quantum error correction
PCT/AU2021/051138 WO2022082254A1 (en) 2020-10-23 2021-09-30 "quantum error correction"

Publications (1)

Publication Number Publication Date
KR20230117566A true KR20230117566A (ko) 2023-08-08

Family

ID=81291043

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237016402A KR20230117566A (ko) 2020-10-23 2021-09-30 양자 오류 보정

Country Status (6)

Country Link
US (1) US20230394350A1 (ko)
EP (1) EP4232966A1 (ko)
JP (1) JP2023548063A (ko)
KR (1) KR20230117566A (ko)
AU (1) AU2021366253A1 (ko)
WO (1) WO2022082254A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12007835B1 (en) * 2022-10-27 2024-06-11 Amazon Technologies, Inc. Temporally encoded lattice surgery protocols for hybrid error detection and correction schemes

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10942804B2 (en) * 2018-03-23 2021-03-09 Massachusetts Institute Of Technology Physical-layer quantum error suppression for superconducting qubits in quantum computation and optimization
CA3191651A1 (en) * 2018-08-08 2020-02-13 Google Llc Low overhead quantum computation using lattice surgery

Also Published As

Publication number Publication date
US20230394350A1 (en) 2023-12-07
WO2022082254A1 (en) 2022-04-28
JP2023548063A (ja) 2023-11-15
EP4232966A1 (en) 2023-08-30
AU2021366253A1 (en) 2023-06-01

Similar Documents

Publication Publication Date Title
Tuckett et al. Fault-tolerant thresholds for the surface code in excess of 5% under biased noise
US11573259B1 (en) Quantum error-correction in microwave integrated quantum circuits
Vasmer et al. Three-dimensional surface codes: Transversal gates and fault-tolerant architectures
Breuckmann et al. Local decoders for the 2D and 4D toric code
US11966814B2 (en) Surface code computations using Auto-CCZ quantum states
CA2952594C (en) Quantum-assisted training of neural networks
Paetznick et al. Performance of planar floquet codes with majorana-based qubits
US9710758B2 (en) Quantum processor with instance programmable qubit connectivity
Haah Local stabilizer codes in three dimensions without string logical operators
Wang et al. Threshold error rates for the toric and surface codes
JP2020515970A (ja) 周波数混雑を低減するためのフォールト・トレラント量子コンピューティングにおける物理パラメータの最適化
Suchara et al. Constructions and noise threshold of topological subsystem codes
US11507875B2 (en) Measurement-only majorana-based surface code architecture
Litinski et al. Braiding by Majorana tracking and long-range CNOT gates with color codes
EP3987457B1 (en) Topological quantum error correction using a data bus
Criger et al. Noise thresholds for the [[4, 2, 2]]-concatenated toric code
AU2019316554B2 (en) Low overhead quantum computation using lattice surgery
US20220029625A1 (en) Magic state factory constructions for producing ccz and t states
EP3500984A1 (en) Quantum computing methods and devices for majorana qubits
KR20230117566A (ko) 양자 오류 보정
JP7234395B2 (ja) 量子ビットの誤りを検出するための方法及び装置
WO2022103666A9 (en) Fault-tolerant quantum hardware using hybrid acoustic-electrical qubits
Zheng et al. Fault-tolerant holonomic quantum computation in surface codes
Darmawan et al. Low-depth random Clifford circuits for quantum coding against Pauli noise using a tensor-network decoder
CN116724493A (zh) 量子纠错