Quantum Bayesian Networks

January 20, 2019

IBM Qiskit major update, Qubiter follows suit 2 weeks later

Filed under: Uncategorized — rrtucci @ 2:22 am

Hello my fellow quantum computerists, this is my “State of the Qubiter” address delivered from a chamber of my House of Representatives.

In case you missed it, IBM recently released a major two-fer-one improvement to their quantum computer. On Jan 2, they delivered a new Batman inspired skin for their hardware (I reported on that in this blog post). Then on Jan. 7, they done gone released some major improvements to their software. (They wrote a nice blog post here about their new software releases for Qiskit-terra and Qiskit-aqua). From that blog post, I learned that they have added NOTs with multiple controls and a function that draws an ASCII picture of the circuit. BRAGGING: I’m glad they have done this, but let me point out to potential investors in our company Artiste-qb.net that Qubiter has had those 2 features for the last 2 years or longer. In fact, I wrote a short article 10 years ago in this very blog about ASCII pictures of quantum circuits. And I have been equally vociferous in advocating the need for qc simulators that support NOTs with an arbitrary number of controls.

Another important advance in the new release of the Qiskit software is that what IBMq now calls Terra is really a Python front end to what they had before, which was a language minted by them that they called qasm 2.0, quite independent of Python, for specifying quantum circuits. Qubiter, Rigetti Pyquil, and Google Cirq have always had a Python front-end for specifying quantum circuits, so this is just IBM belatedly joining all of us. Welcome IBM, better late than never.

IBM has essentially chosen to store a quantum circuit in memory as a Python list with gates as items. This is what PyQuil and Cirq have been doing from day one. This is not, however, what Qubiter normally does. Qubiter stores the circuits in text files. Or at least, that is what it used to do. In the last week, I have added a new class to Qubiter called EngFileLineList. This class can read a Qubiter English file and store that as a list with single gates as items. The class EngFileLineList owns such a list, and it has methods for reading and writing files of the English and Picture types used by Qubiter. So now Qubiter can store quantum circuits both as files and as lists in memory. Storing the whole circuit in memory is more convenient than storing it in a file, for some purposes, but for other purposes, the opposite is true. Luckily, now Qubiter can do both.

In the last week, Qubiter has been updated in many other ways besides adding the EngFileLineList class.

We have added Placeholder Variables, as reported in this blog post. This is an extremely useful feature, especially for doing hybrid classical-quantum Noisy quantum computing. Now Qubiter, PyQuil and Cirq have this feature, but IBM Qiskit still doesn’t, as far as I can see.

I have also updated Qubiter’s translation classes that translate Qubiter to the 3 target languages PyQuil, Cirq and IBM Qiskit. They now take into account and support all the most recent changes in Qubiter and in the 3 target languages. I admit it, I love ROSA (wRite Once, Simulate Anywhere). You will love her too.

Check out Qubiter’s new jupyter notebooks illustrating its new Placeholder and translation services.



Leave a Comment »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Blog at WordPress.com.

%d bloggers like this: