Forest: an Operating System for Quantum Computing

everyone thanks everyone for coming so excited to be here and meet all of you and talk to you about quantum computing so my name is Gwen of evil at mojo I am just like Rick a quantum engineer at Righetti computing although Rick is mostly focused on the experimental part I'm mostly focused on the software part of our full stack so Righetti is a full stack quantum computing company that means we are engineering the hardware as well as the software and what I'm gonna talk to you today about is the quantum hardware and how to use it so I'm gonna talk to you but about the full stack so not just the software that's the forest part but also the software that's the lower stack that part in a part of the litter stay so if you're like me and you like taking things apart and putting them back together again and then hope they still work now you'll probably recognize what this is so this is the the motherboard and basically the guts of a macbook pro and here you see the battery the the memory and you see the processor here so in a quantum computer the processor is basically the chip that the RIC show this with the qubits and so forth so you see you see basically here there's this bar in front of the processor which is linked to these big fans and if you're curious and you want to see what's under it this is actually this is the processor right here and then there's this piece of metal right here with this thermal paste so you might know why it's like this so actually a processor heats itself up when you use it and the goal of this heatsink is to cool it back down to the optimal temperature which it operates this is very important because you know if it gets too hot you get like blue screens of death or it's freezes and a quantum computer actually also has an optimal operating temperature um it's just much much lower than a real like than a classical processor so what you see here is a dilution refrigerator a dilution refrigerator uses liquid helium to cool down a quantum chip – OH the absolute zero temperature just minus 273 degrees and as you see here's all these tubes and so on they have like the the helium flowing through it and basically what you see here is not very unlike this thermos so if you guys know how a thermos works there's like a layer of vacuum in between like the inside of the of the bottle on the outside which insulates it from the environment such that you can either have a cold or a hug beverage inside it's gonna retain the temperature so it's the same for this this fridge just we call it bio Aleutian refrigerator it takes a bit long to say so we just call it a fridge this is what it looks like on the inside so what you see here is a different stages so every stage cut as you go down it gets colder and colder and the bottom stage over here is what we call the mixing chamber plate it gets called as ten millikelvin and this is actually so this is a pretty neat picture from the bottom of the fridge over here where you see what we call the sample holder which contains the quantum processor so you've seen this picture before this is where we actually mount our chips are our quantum processors and connect them to all the cables that go through a lot of these stages bunch of filters here and all kinds of different like amplifiers that make sure we can read all those tiny quantum signals very well so what's actually inside a quantum processor I thought it would be nice to compare it to a CPU or a central processing unit from like a computer classical computer so if you open that up this is what it looks like so there's a bunch of well they're really small but there's a lot of transistors on here so transistor is one of the switching elements that can be you want it's e 2 0 1 and one of the main differences between a classical computer and a quantum computer is that in a classical computer the data flows through the circuit flows through two gates so what's on here are different gates like an and or X or inverter all these different gates issue familiar with and the signals that flow through is the data so this is zeros and ones is like a current that's on or off that's flowing through well in a quantum computer so here's CRA Q Righetti qpu quantum processing unit seri we take them off the cap here is actually the data is on the chip so the quantum information is represented by the circuits that are drawn into the aluminum so that means that the operation is actually in the inverse of how a classical computer works so here you have data flowing through the circuit and here you have actually the circuit going to the data so we have pulses that you send to the data to manipulate it and it is right here on the chip and this chip is fabricated using EB mythography using metal deposition all kinds of nano fabrication processes and here's a picture of our fab in Fremont which was open in June this is a world first nano fabrication facility solely dedicated to making quantum processors it's right here in California and yeah what you see here is basically this is one of those metal deposition chambers so this is for depositing the aluminium and the oxide that's in the junction and all kinds of different equipment needed to do analysis and and other kinds of processing steps so as as my colleague Rick mentioned before is is that we send these pulses these are actually representing the gates and you can also represent a qubit on the sphere which we call a Bloch sphere so as a transistor can be zero or one a qubit can be something in between as well so we like to represent an old sphere because it also has phase information which is this axis over here so you have this axis which you use to read it out and then you have this axis which contains the quantum information which is what makes quantum computer powerful so for example if I send it a pulse like this and now it should animate BAM I just rotated the qubit to it you want to see it again I just rotated a qubit on the Bloch sphere from the ground state to the excited state or from 0 to 1 right so this is what we call a knot or a PI pulse PI and X pi rotation now this also rickles I mentioned we can do something really cool we can take the same pulse and we can take half of the amplitude and then we can send it again and now it's only gonna rotate half way so this actually happens on that chip this state goes into this in-between position now you may say like ok what the hell is it now 0 1 or I'm gonna measure like 0.5 or something like no you're actually gonna measure 0 or you're gonna measure 1 we're going to map it onto the z-axis however half the time oh I have some Apple thing no all right it's working so I don't have to install driver anyway so yeah so it's gonna be either either a 0 or I'm gonna measure 1/2 the time let's say I do this 1,000 times then 500 times I'm gonna measure 0 and 500 times gonna measure 1 so I can take the average of that and I'm gonna get 0.5 so now I'm going to talk about quantum AI think somebody in the audience asked about it like we really mentioned it and teased about it a bit so quantum entanglement is basically when you when you have two qubits and they have some interaction between them so Einstein called this a spooky action at a distance so I'm gonna explain you why it's spooky so I'll use an analogy to describe it so let's say I have two boxes and there are quantum boxes let's say they're not normal boxes with quantum boxes and I put two cubes and every box one's a zero and once is one now I put them in the box and I close the box and I shake it right then I'm gonna blindly take one box from the left's 1 1 from the left box and one cube from the right box right now everybody who's had like basic combinatoric snow seis like for outcomes second at zero zero I can have zero one so I pick a zero from left and one from the right I can pick up one from the left and a zero from the right or I can pick two ones right so let's say I do this a thousand times then 25% of the time we're gonna get zero zero 25% zero on that cept around right every it's more or less right maybe some some some deviations but if I do this one thousand times to get 250 times every outcome now I'm gonna do something special I'm gonna untangle my quantum boxes what happens when I do entanglement I can actually change the probability distribution of what comes out of this box which is pretty spooky right because that means that if I have a zero if I pick a zero out of this box then I know for certain I'm gonna pick a zero in the other box so actually really what this means is that the left box the outcome is gonna influence what comes out of the right box so this is what quantum entanglement is and now we're going to take it back to qubits so how do you actually do this with qubits right so what quantum box that makes no sense we don't have a quantum box we have qubits what we do is we we take two qubits and does this actually work yeah yeah it's okay thank you so I'm gonna take two qubits and I'm gonna take the left one and put it in the superposition state so that's the zero one in-between state then we're gonna take another cubed and I'm gonna initialize it in the ground state and zero and then I'm going to apply a C naught pulse and what this does Si not stands for conditional not so I'm gonna take the first qubit as the condition to flipping the second one so that means if I measure this and I get zero then I'm not going to flip this and if I get a one then I'm going to flip this that means is that the outcome is gonna be either 0 0 or 1 1 so that means the outcome of this one is going influence this one so why do we want to do this right why how can we actually do computation with this a college is useful so these are the lists of quantum instructions that you have in a quantum computer so they're CD not since the header mark there's the Z and then the C naught and measure this also swap which are left out here and these you can use to make quantum circuits and one of them is like what what Rick explained is sure algorithm and the Grover's algorithm and at Righetti we actually developed our own quantum instruction language so if you have these drawings you cannot really give them to a computer you can't make a drawing and say okay compute this right so what we actually did is we we took all these different kinds of gates and we turned them into instructions so shed a quantum program who actually looks like something that a computer can read and execute so I'm just gonna give you a quick code example of of quill so let's say I want to make one of those entangled states this is what the circuit would look like if I make the drawing so I take two qubits and I perform a Hadamard on one of them which rotates it into into this equator and I'm gonna perform a C naught which makes them entangled so this is sort of the notation you use to say I'm gonna get either 0 0 or I'm gonna get 1 1 and I have to normalize it so divided by square root of 2 so if we translate this into quill and this is what it would look like so this is something like a software engineer really likes right I think this is like I can actually debug this and I can write run this right so yeah so Hana Mart on qubit be seen out on on on a with B as conditional and I can call it in tango so a little bit of more sophisticated example quantum teleportation so I'm not actually teleporting a guy here I'm gonna teleport a cute a quantum state all right so I'm gonna have three qubits and we're gonna teleport the state from this qubit to this cubed so this is what the circuit looks like it's very similar to the one I showed before so the part over here actually is entangling those two qubits and then I do a bail measurement here which gives me some information about the face and about the energy and then I do these conditional operations on this qubit and then I have teleported this state sigh from this cubed to this qubit so on the x axis is time so these are the different pulses I apply to modify the qubits and this is what it looks like in ink will code so this is actually pretty cool I posted this example on the the forest channel and the James Weaver over here is gonna give a talk light actually made a template for this in Pikeville sorry in pycharm so you can actually code using like this sort of syntax highlighting now yeah so just to quickly give you an overview of forest so far as this are or quantum computing environment so how do you actually compile code right so you take this quill right and you you build it in later like it i fights a notebook or or something like that and you send it to the cloud like how does it actually translate into these gate operations so what you do is you send it through the cloud and then it gets sent to our worker which is located on premises we're just going to translate it into a pulse program so this is actually doing the compiling of the code then this gets sent to our qpu which is this in this big dilution refrigerator and in berkeley then that gets translated on the chip into some cubed operation so it's gonna live in this quantum state what you coded and then we do readout so as I said like you read out the state and you're gonna get some single shots like either 0 or 1 so you're gonna get a lot of zeros and ones and then you do some averaging or filtering and then it gets sent back to do that um this circuit that you were running and the whole loop starts over yeah so that was my talk I hope you enjoy the rest of the Meetup and I can answer one or two questions [Applause]

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *