Over the last week I started digging into quantum computer programming to see what is currently going on and what people are doing in that space [1][2]. General availability of actual quantum computing systems is the major barrier to using one to write some code [3]. You can buy time on a quantum computer or you can use a simulator. The simulators are sort of weird in general as the computing power you are using to simulate the quantum computer has a very small fractional power equivalent in terms of computing power. The biggest thing to really consider in terms of understanding where we are in terms of quantum computing is not cost or availability, but instead its a true question about the computing method itself related to having fully fault-tolerant quantum computing. Not only do you have to have methods for error correction within your quantum computing setup, but also you need a design that has proper fault-tolerant gates to avoid introducing increasing error levels within your computing. You are probably wondering if I went out to Google Scholar to find papers about fault-tolerance in quantum computing [4]. Of course that was where I went to look for papers. Here are 3 academic papers you can read with over 300 citations to consider:
Steane, A. M. (1999). Efficient fault-tolerant quantum computing. Nature, 399(6732), 124-126. https://arxiv.org/pdf/quant-ph/9809054
Chow, J. M., Gambetta, J. M., Magesan, E., Abraham, D. W., Cross, A. W., Johnson, B. R., ... & Steffen, M. (2014). Implementing a strand of a scalable fault-tolerant quantum computing fabric. Nature communications, 5(1), 4015. https://www.nature.com/articles/ncomms5015
Preskill, J. (1998). Fault-tolerant quantum computation. In Introduction to quantum computation and information (pp. 213-269). https://arxiv.org/pdf/quant-ph/9712048
Let’s set aside those questions about making quantum computing sustainable and consider the code part of the equation. Major programming languages for quantum computing do exist from the players you would expect. They tend to have a lot of documentation and GitHub profiles to share the code. You could spend whole days looking at some of the languages made by major players. Here are 3 examples of major players making quantum computing language contributions. First, Qiskit was introduced as a quantum computing programming language by IBM teams back in 2017 [5][6]. Second, teams at Microsoft introduced Q# back in 2017 [7][8]. Third, Cirq is from Google AI and was introduced in 2018 [9][10]. You can start to dig into those code bases and I could find a lot of content related to the languages and a lot of hype about quantum computing.
You can see that a lot of evidence exists related to quantum programming languages. The next logical questions would be how do they execute that code in practice and maybe what exactly are they doing with this quantum code. The teams at IBM have been pretty good about sharing plans to build faster and faster quantum computers [11]. You could watch the hype film about the IBM Quantum System Two that they shared to YouTube back on December 4, 2023. It’s always interesting to look at quantum computer builds; they are not the sort of thing that is going to sit under my desk or on my desk at this point within the technology curve.
After all that foundational digging into the current state of quantum computing my thoughts are still conflicted about it. I know some questions exist about exactly how to deploy large scale efforts that work without propagating errors and the complexity of fault-tolerant gates. Probably the next step in my research process will be to find some examples of solid quantum computing code being used or actually deployed. That is maybe the best way to get a sense of what is being done within the quantum computing space. That research note about practical quantum computing and getting things done will probably shed some light on where things are trending. Beyond people setting records for the fastest machine or sharing hype videos the real deeper question here is what use cases are going to end up defining the technology.
Footnotes:
[1] https://towardsdatascience.com/an-introduction-to-quantum-computers-and-quantum-coding-e5954f5a0415
[2] https://www.mckinsey.com/featured-insights/mckinsey-explainers/what-is-quantum-computing
[3] https://github.com/qosf/awesome-quantum-software
[4] A Google Scholar search for “fully fault-tolerant quantum computing” https://scholar.google.com/scholar?q=fully+fault-tolerant+quantum+computing&hl=en&as_sdt=0&as_vis=1&oi=scholart
[5] https://www.ibm.com/quantum/qiskit
[7] https://learn.microsoft.com/en-us/azure/quantum/qsharp-overview
[8] https://github.com/microsoft/qsharp
[9] https://quantumai.google/cirq
[10] https://github.com/quantumlib/Cirq
[11] https://www.fastcompany.com/90992708/ibm-quantum-system-two
What’s next for The Lindahl Letter? At some point this series will move back to being planned out 5 weeks ahead of publication. That point has not arrived just yet so you can expect a more fluid selection of topic coverage.
If you enjoyed this content, then please take a moment and share it with a friend. If you are new to The Lindahl Letter, then please consider subscribing. Make sure to stay curious, stay informed, and enjoy the week ahead!
Share this post