Rene – Hi, welcome to QuBites, your bite-sized pieces of quantum computing. My name is Rene from Valorem Reply and today we're going to learn how to best deal with the complexity in quantum computing. And for this I’m very honored to have a special expert guest, Prof. Robert Wille. Hi Robert, and welcome to the show. How are you today?
Robert - Hello Rene. Yeah, I'm fine, thanks for having me.
Rene – Awesome! I know you were actually also a guest professor in my hometown Dresden, where I'm actually recording from right now and in general you have a very impressive background in the field. So, tell us a little bit about yourself and you know what have you done in the field of quantum computing but also physics and math and all of that stuff.
Robert – Sure! So, yeah indeed. I spent half a year in Dresden and it's a beautiful town. I really enjoyed my time over there but in the meantime now I'm in Austria, actually more precisely in the Linz area and there I’m a professor at the Johannes Kepler University in Linz and additionally chief scientific officer at the technology transfer company called SCCH which stands for Software Competence Center, Hagenberg and in those both jobs I am developing methods and tools to aid engineers in the design of complex systems such as software systems, hardware systems, system composed of both and also I guess this is going to be the major focus of our chat today, also systems like quantum systems, quantum algorithms and stuff like that. In this regard, I would like to unveil that I'm not a physicist or an electrical engineer. I'm a computer scientist, so everything I'm saying here right now is from a computer science perspective and so although I have a huge interest in, of course, when you work in quantum computers, you have to have an interest in quantum physics and physics in general, but to be honest, I'm a layman in physics but obviously I have an interest in that. But my main training is computer science.
Rene – Yeah, just like I'm also a computer, I actually studied media and computer science, so I have also a little bit in that area but yeah definitely but when I was studying, I guess you weren't a professor then, because like I'm quite old now so, but anyhow. So, let's dive into our topic. You already hinted a little bit at, like, you're an expert for automatic methods for design and simulation and verification of this complex system and like you said, that also includes of course quantum computers as they are very complex systems right, so tell us a little bit what are some of the challenges, for example, when folks are designing quantum circuits, like, what are the challenges there in this complex system when designing quantum circuits?
Robert – Well, there are many challenges. I mean obviously the entire paradigm changes and not so much only the paradigm of how we program computers, but actually the entire paradigm how we are supposed to think about it right and so I mean, of course no quantum computers is not only about zeros and ones. In a classical world we work with zeros and ones but with quantum computing we suddenly got the superposition of post, the entanglement of both and in addition to that lots of quantum mechanical facts and operations, for example are suddenly unitary right. So when we developed classical algorithms, classical systems although here you still had to learn programming languages and had to get used to the tools but you still knew, okay in those classical languages in classical programming you still did something like one plus one is two. Now if I ask my students do you know what the unitary is, a unitary operation of course in the beginning nobody knows because we're not that sort of used to it, right? So the main issue is indeed that first of course we have to learn these new programming languages and paradigms and this is I mean, when you start as a computer scientist student, you have also to learn Java and Python but you still work with the computing paradigm which you're familiar with. Now you have to learn all those new languages and all those new tools and on top of that those tools suddenly work with these strange things like asset superposition and entanglement, totally different kind of operations. So this is a huge challenge just to start with and then on top of that also, and I don't want to discourage people from that but everything gets more complex in a sense that working with zeros and ones is still sort of doable but if, you for example, if you have an electrical signal and a hardware you have the signal being assigned to zero and one if you have a qubit and quantum computing it could be, you need to represent certainly an exponential number of amplitudes to represent the state of it. So, complexity is significantly increasing and again don't want to discourage anyone because this complexity is also what makes it fascinating and also it's like puzzle solving, it's getting harder but it's really rewarding once you mastered it and once you have dealt with that. So, I guess, those kind of things, the different paradigms and the complexity are the main challenges.
Rene – Yeah, I love how you put it beautifully like that it's an exponential, a factor of amplitudes actually in your qubit or also sometimes I hear folks say, like, so you know, with bits we're dealing with digital information like you know zero and one basically but qubits can rather represent analog states right and that is actually also a nice part. Also, sometimes I think about it from a philosophical standpoint, right, I mean this is how nature works in the end, right? Nature is probabilistic and nature is analog and not digital and so we can get close or how our universe actually works and so that is so fascinating, like you said right? Also coming from computer science background I mean of course we are kind of geeks and nerds right, so we love physics and you know quantum mechanics but following up on these quantum circuit question and the simulation actually of these quantum circuits, so why is the simulation of quantum circuits so important and what work are you doing in that space with your group?
Robert – Yep, so the main idea of quantum circuit simulation is, as the name suggests, to simulate a quantum algorithm on a conventional machine and now you might ask why should I do that, why not directly executing the quantum algorithm on the actual quantum computer and of course this is something at the end of the day I want to do. But right now of course access to quantum computers is still restricted, so you don't want, you know, to trial and error. You don't want to debug unnecessarily your main idea of our algorithm on the real machine because then you sort of using the system and some other some other colleagues kind of do that, so it makes sense if you develop your quantum algorithm. It makes the sense to develop that on a smaller scale, on a classical computer, simulate it and then sort of fix all the major bugs there, so that you don't waste precious quantum computing time. But let's assume even if we even would have no restrictions on quantum computers at all, anymore, if you have every one of us can have as much as possible time on a quantum computer even then I think quantum circuit simulation is needed because the quantum computer does not give you a full access to all the information. You might know when you execute a quantum algorithm, at the end of the execution you measure your result and then with certain probability do you get some output, and of course, you want to design your algorithm that you get the desired output with a higher probability that's where we have these algorithms things like amplitude amplification. But in order to really check that, you need access to the precise information of the quantum state, which the real quantum computer cannot give you. But quantum circuit simulation on a classical machine can do that, it can give you all the information and this is something what you need in order to develop algorithms. And obviously we can do this on a classical machine just with small algorithms right, because if I could execute all quantum algorithms on the classical machines if I could simulate that on a classic machine, I wouldn't need a quantum movement. But to develop those and to understand how it's work also to understand error effect, to analyze error effects, simulation is still the key and it's going to be the key because the real quantum computers do not give you all the information you would need to really nail your algorithm.
Rene - Yeah totally makes sense. So you actually can understand it better if you're simulated and then can you know build better real quantum computers or understand them better. That totally makes sense. In fact in season three episode nine, I talked with Christopher Granade who works at Microsoft in the azure quantum team and they also work on a noisy simulation or noise simulation, basically, you know, getting closer to simulate how the real noise in the quantum system actually works and so they can simulate it already and then just like you said, you understand it better in this kind of simulated environment where you have full control and it's more of a deterministic behavior. So yeah that makes sense, of course. Right now, there's a big challenge also, you know, to make the quantum feel and also especially quantum programming and so on more approachable right., A lot of that, you still need to target specific hardware if you're dealing with quantum computers with the hardware basically. Or you can use middle layer kind of tooling right like azure quantum or the Qdk or you know Qiskit and what have you right there's a bunch of things available but from your perspective how can quantum hardware and software design be made easier and approachable for more quantum computing experts, not just for quantum computing experts but actually for computer scientists, for example.
Robert - And again tool support and design automation methods I mean, obviously I'm biased here because that's what I stand for but I really believe what we're doing developing those tools, this methodology is key of making it more accessible and I’m really confident about that because we are doing history here somehow. If you check out classical computers, again a couple of decades back we had only electrical engineers were able to put these computers together and to actually use that. And then, of course, it was not accessible at all, it was restricted to this peer group of experts and then we developed a programming languages and tools stuff like that and suddenly we substantially increased accessibility but still probably more for guys like us, you know for these geeky guys who love hacking and stuff like that and if you check out however the development right now we accept extending it further and right now i mean it's a little bit serious but right now I really believe we are really getting to a situation where literally everyone can create a next dating app or a next system on a classical computer. So that's how we managed to improve accessibility in the classical world and obviously this is something we need to accomplish in quantum computing. In quantum computing we are just at the beginning of this development. I still remember, I work in this area since more than 10 years and at that time it was mostly the physicists and maybe the theorists and the mathematicians who worked on that maybe some computer science but definitely not mainstream. Now we've got the first tools, we're still not there but we're increasing the accessibility and now we're developing as we did in classical computing- more programming languages, better tools, better methodologies. This is where we get to it and if I may, this is of course to make it more accessible for quantum for computer scientists or for end users but also what we also need to accomplish in my opinion is, we need much more bridging between the communities. The computer scientists need to talk to the physicists, need to talk to the end users. We really have to, you know, bridge these communities together. My feeling right now and this is a typical development but everyone is in his own bubble right now. We have to put those together and this is also something which could help making this whole technology much more accessible for everyone.
Rene – Thanks, makes a lot of sense and this is also the goal of the show here, right, making quantum computing more approachable and so thanks for being part of that and you know sharing your story about how to make quantum computing more accessible and getting it outside or not just having the focus on the pure scientific and research in quantum computing but again you know opening it up for many more folks because it's we need diverse skills in in this field to actually grow it, right? We're already at the end of the show but thank you so much Robert for joining us and sharing your insights. It is very much appreciated.
Robert - Thank you very much. It was my pleasure and was fun, take care.
Rene - And thanks everyone for joining us for yet another episodes of QuBites, your bite-sized pieces of quantum computing. Watch our blog, follow our social media channels to hear all about the next episodes and of course you can also watch the previous episodes there. Take care and see you soon!