1 of 32

Programming a quantum computer using SketchUp

Austin Fowler (agfowler@google.com)

on behalf of Google Quantum AI and the TQEC open source project

CNOT

Data

2 of 32

What are the primitives for 2D fault-tolerant quantum computation?

Austin Fowler (agfowler@google.com)

on behalf of Google Quantum AI and the TQEC open source project

CNOT

Data

Primitives

3 of 32

Initial goal of the talk: explain what these primitives are

And show the importance of using these and more advanced primitives when implementing low-overhead fault-tolerant computation.

4 of 32

Thanks Google Quantum AI: 282 authors and counting…

Dmitry Abanin, Rajeev Acharya, Laleh Aghababaie~Beni, Georg Aigeldinger, Ross Alcaraz, Sayra Alcaraz, Igor Aleiner, Trond I. Andersen, Markus Ansmann, Frank Arute, Kunal Arya, Abraham Asfaw, Walt Askew, Nikita Astrakhantsev, Juan Atalaya, Ryan Babbush, Dave Bacon, Brian Ballard, Joseph C. Bardin, Andreas Bengtsson, Alexander Bilmes, Simon Bilodeau, Sergio Boixo, Gina Bortoli, Alexandre Bourassa, Jenna Bovaird, Dylan Bowers, Leon Brill, Peter Brooks, Michael Broughton, David A. Browne, Brett Buchea, Bob B. Buckley, David A. Buell, Tim Burger, Brian Burkett, Nicholas Bushnell, Anthony Cabrera, Juan Campero, Hung-Shen Chang, Silas Chen, Yu Chen, Zijun Chen, Ben Chiaro, Liang-Ying Chih, Desmond Chik, Charina Chou, Jahan Claes, Agnetta Y. Cleland, Josh Cogan, Roberto Collins, Paul Conner, Harold Cook, William Courtney, Alexander L. Crook, Ben Curtin, Sayan Das, Dripto M. Debroy, Laura De~Lorenzo, Alexander Del~Toro~Barba, Sean Demura, Michel Devoret, Agustin Di~Paolo, Paul Donohoe, Ilya Drozdov, Andrew Dunsworth, Clint Earle, Alec Eickbusch, Aviv Moshe Elbag, Mahmoud Elzouka, Catherine Erickson, Lara Faoro, Edward Farhi, Vinicius S. Ferreira, Leslie Flores~Burgos, Ebrahim Forati, Jeremiah Ford, Austin G. Fowler, Brooks Foxen, Masaya Fukami, Suhas Ganjam, Gonzalo Garcia, Robert Gasca, Helge Gehring, Élie Genois, William Giang, Craig Gidney, Dar Gilboa, Raja Gosula, Alejandro Grajales~Dau, Dietrich Graumann, Alex Greene, Jonathan A. Gross, Jose Guerrero, Tan, Steve Habegger, John Hall, Michael C. Hamilton, Monica Hansen, Matthew P. Harrigan, Sean D. Harrington, Jeanne Hartshorn, Stephen Heslin, Paula Heu, Oscar Higgott, Gordon Hill, Reno Hiltermann, Jeremy Hilton, Sabrina Hong, Hsin-Yuan Huang, Mike Hucka, Ashley Huff, William J. Huggins, Lev B. Ioffe, Sergei V. Isakov, Justin Iveland, Evan Jeffrey, Shaun Jevons, Zhang Jiang, Xiaoxuan Jin, Cody Jones, Stephen Jordan, Chaitali Joshi, Pavol Juhas, Andreas Kabel, Dvir Kafri, Hui Kang, Amir H. Karamlou, Kostyantyn Kechedzhi, Julian Kelly, Trupti Khaire, Tanuj Khattar, Mostafa Khezri, Mária Kieferová, Seon Kim, Paul V. Klimov, Andrey R. Klots, Bryce Kobrin, Alexander N. Korotkov, Fedor Kostritsa, Robin Kothari, John Mark Kreikebaum, Ryuho Kudo, Vladislav D. Kurilovich, David Landhuis, Tiano Lange-Dei, Brandon W. Langley, Pavel Laptev, Kim-Ming Lau, Lo\"ick Le~Guevel, Justin Ledford, Joonho Lee, Joy Lee, Kenny Lee, Yuri D. Lensky, Shannon Leon, Brian J. Lester, Matthew T. Lloyd, Wing Yan Li, Alexander T. Lill, Wayne Liu, William P. Livingston, Aditya Locharla, Erik Lucero, Daniel Lundahl, Aaron Lunt, Sid Madhuk, Paul Masih~Das, Fionn D. Malone, Ashley Maloney, Salvatore Mandrà, Leigh S. Martin, Steven Martin, Orion Martin, Dmitri Maslov, Cameron Maxfield, Jarrod R. McClean, Matt McEwen, Seneca Meeks, Anthony Megrant, Xiao Mi, Kevin C. Miao, Amanda Mieszala, Reza Molavi, Sebastian Molina, Shirin Montazeri, Alexis Morvan, Ramis Movassagh, Wojciech Mruczkiewicz, Ofer Naaman, Matthew Neeley, Charles Neill, Ani Nersisyan, Hartmut Neven, Michael Newman, Jiun How Ng, Anthony Nguyen, Murray Nguyen, Chia-Hung Ni, Murphy Yuezhen Niu, Logan Oas, Thomas E. O'Brien, William D. Oliver, Nikita Onizhuk, Alex Opremcak, Raymond Orosco, Kristoffer Ottosson, Andre Petukhov, Alex Pizzuto, Rebecca Potter, Orion Pritchard, Leonid P. Pryadko, Chris Quintana, Arpit Ranadive, Ganesh Ramachandran, Matthew J. Reagor, Rachel Resnick, David M. Rhodes, Daniel Riley, Gabrielle Roberts, Roberto Rodriguez, Eliott Rosenberg, Emma Rosenfeld, Elizabeth Rossi, Pedram Roushan, Nicholas C. Rubin, Negar Saei, Daniel Sank, Kannan Sankaragomathi, Murat Sarihan, Kevin J. Satzinger, Henry F. Schurkus, Christopher Schuster, Michael J. Shearn, Aaron Shorter, Noah Shutty, Vladimir Shvarts, Volodymyr Sivak, Jindra Skruzny, Spencer Small, Vadim Smelyanskiy, W. Clarke Smith, David Sobel, Rolando D. Somma, Sofia Springer, George Sterling, Doug Strain, Jordan Suchard, Aaron Szasz, Alex Sztein, Douglas Thor, Dogan Timucin, Eifu Tomita, Alfredo Torres, M.~Mert Torunbalci, Abeer Vaishnav, Justin Vargas, Sergey Vdovichev, Guifre Vidal, Benjamin Villalonga, Catherine Vollgraff~Heidweiller, Steven Waltman, Jonathan Waltz, Shannon X. Wang, Brayden Ware, Kate Weber, Travis Weidel, Theodore White, Kristi Wong, Bryan W. K. Woo, Maddy Woodson, Cheng Xing, Z. Jamie Yao, Ping Yeh, Bicheng Ying, Juhwan Yoo, Noureldin Yosri, Grayson Young, Adam Zalcman, Yaxing Zhang, Ningfeng Zhu, Nicholas Zobrist

5 of 32

Thanks TQEC open source project

github.com/tqec/tqec/

9 contributors to date:

Adrien Suau, Yiming Zhang, Sam Burdick, Ricky Young, Philipp Seitz, Victory Omole, Gian Giacomo Guerreschi, Kabir Dubey, Milo Moses

Grew out of a talk at MQSF last year, now a vibrant community:

groups.google.com/g/tqec-design-automation

All are welcome to join :-)

6 of 32

Motivation: the surface code is working!

2.1x lower logical error rate each time* we increase the code distance, enough space for 4 small (d=3) logical qubits.

Quantum error correction below the surface code threshold (arXiv:2408.13687)

* cosmic rays

7 of 32

Need to start at the beginning…

Controlled-X

a

b

Neither a state map nor a matrix is how we want to think about CX.

8 of 32

CNOT gates copy X on control, and Z on target to both outputs.

CX as a map of operators

9 of 32

Before we go any further: a useful color mnemonic

Associate RGB with XYZ:

10 of 32

A colorful surface code

Measure Z stabilizer

Find X errors

Measure X stabilizer

Find Z errors

When you apply XXXX, does the state change sign?

11 of 32

Movement: low level circuits

A

B

C

D

E

We can use stabilizers, initializations and measurements to move logical operators

12 of 32

Movement: scalable templates and blocks

A

B

C

D

E

2kx2k center, 2k+1 height blocks, connectors are replacement rules.

13 of 32

Structures guide logical operators

Correlation surfaces (called observables in Stim) are sets of measurements and are built automatically by the tool.

Aside: the parity of correlation surfaces determines the presence of byproduct operators.

We’ll ignore these moving forward.

14 of 32

CNOT

Controlled-X

Need to show

15 of 32

CNOT

Therefore this structure implements logical CNOT up to byproduct operators. Note flexible choice of input/output and orientation.

16 of 32

Enough theory, let’s simulate!

https://github.com/QCHackers/tqec/

17 of 32

Enough theory, let’s simulate!

https://github.com/QCHackers/tqec/

18 of 32

Baseline hardware data (arXiv:2408.13687)

Chip is big enough to run logical CNOT.

19 of 32

Let’s simplify our 3D structures to graphs

Nodes of a given color support single input single output correlation surfaces of the same color, and scatter correlation surfaces of the opposite color.

20 of 32

Can prove the following identities (ZX calculus)

We’ll just use this one, the spider rule

21 of 32

CNOT again as a graph

Aside: can calculate the output byproduct operators from the input operators and appropriate correlation surfaces without knowing what the computation is actually doing.

Much easier to draw and think about.

22 of 32

Simpler notation helps with compression

CNOTs are not primitives for compressed quantum computation

Good to compile algorithms to a ZX graph, and then to lattice surgery primitives. Rotate as desired.

Don’t

do

this

23 of 32

If you are working on a quantum compiler…

A logical circuit

We don’t need this…

Simple ZX graph

We need this…

Lattice surgery

We’ll make this…

Fault-tolerant quantum computer

And run it on this…

24 of 32

Work in progress

Upgrade our algorithm that finds correlation surfaces

For a large scale ZX graph probably need help from the quantum compiler.

25 of 32

Work in progress

Spatial junctions (the CNOT only used temporal junctions).

26 of 32

Work in progress

Spatial corners.

27 of 32

Work in progress

Logical Hadamard, 0 effective cost, even CZ or CNOT with 0 marginal cost.

28 of 32

Work in progress

Relaxing Hardware Requirements for Surface Code Circuits using Time-dynamics

Matt McEwen, Dave Bacon, Craig Gidney

Quantum 7, 1172 (2023)

29 of 32

Work in progress

Don’t need loose

packing…

Can pack densely…

And create corridors by sliding when needed.

30 of 32

Work in progress

Data in

Data out

Classical processing delay

Y or X basis measurement

T state cultivation

Craig Gidney, Noah Shutty, Cody Jones

arXiv:2409.17595

Preparing magic states has improved greatly

T gate

O(p5)

31 of 32

What we need

Data in

Data out

Classical processing delay

Y or X basis measurement

This is our desired input:

T, X, Y, Z nodes and H edges with correlation surfaces controlling two-color nodes.

Plenty of room to improve cultivation

T gate

O(p5)

32 of 32

Summary

Arbitrary compact 2D fault-tolerant quantum computation can be specified using a limited number of blocks.

These blocks have been used to express logical CNOT then compiled to instructions that have driven Google quantum hardware.

A restricted ZX graph with correlation surfaces and feedforward is the quantum compiler output we need.

If you’d like to learn more, join:

groups.google.com/g/tqec-design-automation

Austin Fowler (agfowler@google.com)