Why IBM’s Qiskit is Uniquely Well-Positioned in the Quantum Education Race

The Circuit Composer widget of IBM’s Qiskit. The user can drag-and-drop elements to create a circuit, and the composer automatically generates the code for it.

If, in this age, a curious personage would undertake to examine the state of technology, and endeavor to identify the most impactful of these in the future, what might she infer? Artificial intelligence would be seen assisting healthcare; Blockchains enforcing smart contracts with no compromises on trust. The advances in medicine would be especially praised. One, however, would stand out in its potential to bring transformational change — and that would be the quantum technologies. These are the technological culmination of the sub-atomic theory of quantum mechanics, which has been matured and experimentally verified to striking precision over the last century. The change that these technologies, especially quantum computing, promise is truly far-reaching and disruptive: secure communication, efficient solutions to complex computations, simulating molecules ‘quantumly’, optimization, as well as threat to existing information systems. Now that the land has been tilled and the seeds sown by the great scientists of the 20th century, many in the academia, industry, and governments firmly believe that the time is now ripe to grow the crop and reap the golden harvest that this tech has to offer.

This promise has attracted people of all ages and backgrounds to this field. Engineers in firms are developing the cutting-edge hardware. Computer scientists and mathematicians are as busy as bees in formulating new quantum algorithms. Physicists and natural scientists are leading the research initiatives. Companies are pushing the development of proprietary quantum techniques to solve domain-specific challenges, and quantum consultancy is on the rise. Therefore, everybody is keen to learn it, in order to be able to become a part of these exciting developments. In addition to spearheading research, universities, such as Duke University, have launched dedicated Master’s program specializations in quantum information science. Visit quantumcomputingreport.com for more on this. In the United States, The National Quantum Initiative Act was constituted to advance quantum technology and to “support the development of a quantum information science and technology workforce”. The more recent National Q-12 Education Partnership aims to create interest and to introduce key quantum concepts in the K-12 curriculum.

The new applications and efficient computational ability of this technology has led to several software frameworks for quantum computing simulators, quantum algorithms and application development, as quantum software, and also as pedagogic tools. Microsoft, with its massive experience of Azure, has developed the Quantum Development Kit for quantum application development. Google’s quantum library Cirq, and TensorFlow Quantum for building hybrid classical-quantum machine learning models have attracted great attention and optimism. The software package QuTiP has emerged as an indispensable toolbox for simulating quantum systems. The one software, however, which seems to have one of the highest community involvement and usage in quantum education, is IBM’s Qiskit. According to the official website,

“Qiskit [quiss-kit] is an open source SDK for working with quantum computers at the level of pulses, circuits and application modules”.

From classrooms to organizations, Qiskit is rapidly establishing itself as a tool of undeniable importance in quantum development. What is fuelling the rise of Qiskit, particularly in quantum education? To see why, we will have to talk a short trip down the memory lane.

Flashback

Perhaps the most ground-breaking technological development of the past 50 years has been the rise of digital computing. As transistors became smaller and smaller, designers were able to develop computers whose computing power apparently kept on increasing. Through the recent decades, In the computer engineering curriculum, a microprocessor developed in the 1980s, the Intel 8085, was a very popularly used pedagogic tool, so much so that it is still used to teach the fundamentals of computing in some parts of the world even today. In an age where a technology which is only a few years old is considered outdated and gets pushed into oblivion, this classic hardware, with a processing speed of only a few MHz (PC speeds are in GHz now), has survived in engineering classrooms. And since the 1980s were the beginning of the personal computers revolution, there were other processors out there, some with functionality even better than the 8085, and yet, they could just not become the tools of choice for teaching.

Let us analyze what made the Intel 8085 so massively popular with students, teachers and enthusiasts, and try to draw insight. It will be seen how Qiskit shares many such similarities, which might just be the key ingredients contributing to its popularity in education.

Simple and versatile architecture

The 8085 is an 8-bit microprocessor with a classic von Neumann architecture, (partly) multiplexed address and data lines, and an instruction set with many elementary operations. For microcontroller application, it supports interrupts and a large number of I/O ports. It also has programmer-accessible CPU registers. Further, the 8085 was designed so as to make the required peripheral circuitry less complicated. That made a simple yet powerful tool available to students to experiment with relatively inexpensively and with an easier setup. See the datasheet here.

Many compatible popular peripherals produced by Intel

The 8085 uses 8 bit data lines (i.e. pins) and 16-bit addresses, and the lower 8 bits of the address lines are multiplexed with the data lines. What this means for the operation is that the data and address bits occupy the same lines at different times, and for other peripherals reading the address, such as a memory chip, the address may not stay sufficiently long on the pins for proper operation. So, peripherals using the address would need to latch the values on the multiplexed address lines.

Intel realized this and designed and manufactured several peripheral ICs (integrated circuits) with in-built internal latching, so that the users could use these chips directly without having to add extra hardware. For example, an external ROM was a useful peripheral to store code which wouldn’t get erased by switching off the device. So chips like the 8755 were designed. In need of a DMA controller? The 8257 would cover your needs. For simple microcontroller applications, a keyboard and display controller (8279) was present in the arsenal. All these and many more made it much simpler to tinker with and develop applications using the 8085.

Intel’s system development kits (SDKs), training kits and user manuals

The SDKs were a product consisting of an assembly of peripherals around the 8085 microprocessor so that it could function as a full compute with a monitor, keyboard, EPROM etc. The experimenters not only assembled and soldered these on their own, but they could also upload, test and even debug their code on the SDK. These provided a comfortable environment, the incubation, for novice learners to get started straight away with prototyping, without necessarily getting stuck in designing a system from scratch. In addition, the EPROM came with many useful subroutines already stored in it, built on top the elementary instructions — akin to an API. Extensive and dedicated user manuals, assuming not much prior knowledge, were of huge help to complete beginners. See the manual of an Intel SDK for a valuable piece of tech history.

Simulators

The pedagogic use of the 8085 continued even when more advanced computers came into being, in the form of software simulators. These can be used to simulate and debug code written for the 8085, along with showing the flow of data and behavior of registers.

Back to Qiskit

The supporting products and an extensive effort to get beginners up to speed was one of the main factors responsible for the sustained popularity of the 8085 in education. As we stand again at possibly the beginning of another computing revolution, here’s how Qiskit is positioned, with key similarities with the support rallied around the 8085.

Aims to be a complete solution

Although Qiskit can be viewed as software to program a quantum computer, it is much more than that. It is designed to be a full toolbox for quantum algorithm and application development, as well as for hardware development. It contains modules and features for working with quantum gates, error mitigation, and pulses, which are those parts of the quantum computing stack closer to the hardware, it also contains tools for algorithm development. Very recently, modules like Qiskit Finance, Qiskit Nature and Qiskit Machine Learning have been released. Qiskit Metal aims to be a complete solution for quantum chip design. Therefore, Qiskit has something of interest for almost everyone.

The powerful textbook of the future — Qiskit Textbook

This textbook explains the basics of quantum computing using Qiskit, but with a difference. It is a futuristic digital textbook built using Jupyter Book. This makes it a powerful combination of theory and code, which learners can experiment with. Users can also edit the code and write their own in its cells. Reminiscent of the 8085 training manuals, this textbook of the future may well prove to be an important factor which helps Qiskit to reach critical mass.

Multitude of pedagogic initiatives

There are many educational initiatives, and enthusiast groups interested in quantum computing based on Qiskit. A popular formal course is the Qiskit Global Summer School. Recently, the 2-semester course Qubit by Qubit focused on high school students and members of the workforce, and other beginners with basic STEM knowledge was introduced and taught. Qiskit challenges (worldwide and regional) and hackathon events, along with active support of the organizers during the event, have played an important role in making this toolbox familiar and accessible to many a newcomer.

Tools to facilitate learning for beginners and developers

Visual aids like Bloch sphere and Q-sphere for qubit state visualization, graphical plotting of probability distribution after measurement, qubit connectivity diagrams and error rates, state visualization, and many others, are making Qiskit an easy to use tool for beginners and developers alike. As a special mention, the Qiskit circuit composer and circuit composer widget (pictured above) is a versatile element that beginners can use to quickly get started with prototyping and experimenting, without having to worry about the code or underlying algebra. The circuit composer is a GUI, which allows users to creating quantum circuits by dragging and dropping circuit elements. It can also automatically generate the code required to generate the circuit. IBM quantum experience provides a seamless interface to run programs on actual quantum processors.

Open source software

Qiskit and the Qiskit Textbook are open source software hosted on Github! What this means is that the users can see the source code, download their own copy and tinker with it all they like, and even submit cool enhancements and bug fixes via pull requests to the main code. With constructive feedback from the community, contributors can see their submissions becoming part of the real toolbox in real time.

Qiskit community support

This is probably one of the most important factors resulting in high level of engagement of users and students with Qiskit. The Qiskit community is a vibrant and supportive group of Qiskit developers, Qiskit advocates, active contributors and others experienced in this software. The members are always ready to help anyone curious to learn about Qiskit, and will always answer every question, even (seemingly) the most elementary ones, in a helpful manner. With help so easily available via the Qiskit Slack channels, as well as due to the diversity of people in the Qiskit community, this facilitates novices and users with varying levels of familiarity to overcome any hurdles faced while working with Qiskit, contributing code etc. Thus, Qiskit users enjoy the compounded benefits of its community’s past experience and wide knowledge — a snowball effect.

And so, combined with the Qiskit Textbook, Slack community and pedagogical initiatives, the Qiskit SDK appears to have the right mix of ingredients and seasoning, just like the 8085, to make it popular among beginners and users. Therefore, our diligent personage, who had ventured to take a panoramic view of future tech, can possibly conclude this with confidence: that, although, the jury is still out on the tool of choice for high-level quantum application development, Qiskit is very well positioned, at least in the quantum education race, with both experience from the recent past and the thrust it gets from utilizing modern pedagogic strategies.

Engineer.