Funnier if we'd hit record first.
Would it though?
Probably not.
I don't remember us being humorous.
That was not promised in the podcast contract.
I mean, looks aren't everything.
Thank God.
I mean, for you.
I'm beautiful.
Everyone says so.
No, you have a
song that you play that says so.
That's different.
You leave me and Xtina alone.
Hello, alleged human, and welcome to the Chaos Lever Podcast.
My name is Ned, and I'm definitely not a robot.
I'm a real human person with feelings, DNS records, and DMARC keys.
Watch out!
I sign all of my email just like a good human should.
With me is Chris, who also signs his emails.
Oh, I sincerely hope that the editors cut the entire front end
of our conversation so that that quip makes no sense at all.
Oh, even if the conversation's there, it still doesn't.
Oh, that's fair.
All right.
We need to do a whole show about Haven't we done one about email security?
I don't know if we ever actually got into SPF, DKIM, and DMARC.
We did like a lightning round coverage of those things.
Really what we were talking about is SMTP and why it's a nightmare,
disaster, hellscape of a protocol that for some reason we're still using.
All of that is true.
And now we can move on to all of the weird band aids that
we've added to get around the Nightmare Hellscape that is SMTP.
With more to come!
Yay!
I love nightmares.
They keep me from sleeping, and sleep is a little death.
I got morbid.
I'm sure it's fine.
Should we talk about something else?
Anything else, I think.
Okay, go for it.
So, Before I start, I do want to make the preface that I actually
originally anticipated this having three topics to talk through, and
by the time I was finished with topic number one, I was out of words.
Boy, that's never happened before in the history of Chaos Lever.
Every episode.
A few weeks ago, though,
we talked about what can only be described as
the ineffable weirdness of light, which was fun.
Yeah.
I hinted that we were going to do more about quantum
mechanics and quantum computing in the near future.
And at the time, I believed me.
Whoa.
Then I kept reading about quantum mechanics and quantum computing.
And here's the thing, that shit's hard.
Fair.
Hard to grasp, hard to keep concepts straight in your
head, hard to remember 30 seconds after you turn the page
what you just read and do you actually understand it.
Even
the best quantum scientists and experts that I've heard
talk about this stuff, Say they don't really understand it.
Right.
It's
kind of like trying to understand the fifth dimension.
Right.
You actually can't understand it.
It's like trying to draw a four dimensional cube in three dimensional space.
You just can't, but you can give an approximation
of what it looks like for a particular plane.
The best approximation I heard about
these types of things is like if you have a three dimensional
cube and you shine light on it and it puts a two dimensional
shadow on the wall, you sort of get the gist of what the cube is
if you like move it around in your hand and everything but you're
never going to actually be able to understand what the cube is.
Something like a tesseract?
That's the only way we're ever going to understand it.
As though it was a shadow on the wall.
All right, Plato's cave, we get it.
Moving on.
What we're going to do is continue down the quantum weirdness rabbit hole
with some of the essential topics that make quantum computing possible.
And somewhere along the way, I might even just give you a
quantum computing example that you can try for yourself at home.
Ooh, I know how well the split beam experiment went.
And by at home, I mean, creating an account with IBM and running
it as a cloud job that runs on one of their available quantum
computers, because it's 2024 and everything is in the cloud.
All right.
I actually got a new washer and dryer and the washer and
dryer wants to connect to the cloud and I'm just like, why?
So they can talk to your toaster oven naturally.
Poor K, suds.
Poor K.
Like I said, we set up some of the essentials of why quantum
is weird, and the topics that I'm going to talk about
now, we've at least alluded to in the earlier episodes.
But if we're going to start talking about quantum computing in a
little bit more focused manner, I think the first thing to do is
talk actually about what is the same from what we do understand.
What in the classical world, the classical computing
world, can we use as an immediate one to one, so that
we can then understand the quantum stuff from there?
Okay.
And what's interesting is, The answer is kind of a lot.
First, let's do a little review of the fundamental way
that data is stored or expressed in a classical computer.
That is our good friend, the bit.
Hey, bit.
A bit is pretty simple.
It's the digital representation of either
a 1 or a 0 somewhere in a computer system.
How this is expressed?
can be wildly varied.
It can be a voltage difference, it can be an opened or closed
physical or logical gate, it could be a burn onto an actual CD,
it could be a blip on a disc that is either full or empty, all
depending on where that bit is either stored or being processed.
The point is, the value is only ever 0 or 1.
If we go back far enough in time, it could be a punched piece of tape.
Sure can.
Paper tape, I'll have you know.
Because I'm a thousand.
Now if you want an image to go along with this discussion, just imagine
that you have some coins, like a quarter, laying flat on your desk.
Let's say that tails is 0 and heads is 1.
That's your bit.
When it's heads up, that is worth one.
Now what's fun is we can start to combine multiples of these.
So let's say you've got, you've got four quarters on your desk.
You have four bits of available space to store information,
depending on the way that some of the coins in the different
ranks are either heads up or heads down, you will get a number.
And this is where we're counting from binary into decimal.
So four bits.
0, 0, 0, 0.
What's that worth?
Zero.
Good.
Ooh, I did it!
Alright, participation time is over.
Thank God.
0, 0, 0, 1 is equal to 1.
And with the quarters, it's the same thing.
Tails, tails, tails, heads.
Right?
This is where the simplicity stops, because 0, 0, 1, 0 is not equal to 10.
It is equal to 2 in decimal, because we're counting up.
0011 is equal to 3, so on and so forth, all
the way up to 1111, which is equal to Fifteen!
Well done.
I hex.
Equal to F, you jerk.
So, uh, If you're playing along at home, you'll see
that all four quarters have flipped to be heads up.
One, one, one, one, or heads, heads, heads, heads.
It doesn't make a difference, it's the same representation.
And this is also a demonstration of binary being powers of two.
A binary system can store the maximum number equal
to two to the power of the number of bits available.
And we just demonstrated that.
We had four coins, two to the fourth is equal to 16.
Remember, computers start counting from zero, Our top
number, 1 was 15, therefore making 16 total combinations.
This, not too complicated, right?
Right, right.
Now, these numbers obviously get much larger as we go along.
If you had a computer that could only process
4 bits, uh, you wouldn't really be doing this.
Doing anything.
No.
It's the reason why if you look at the specs on any given system, so
many things are in powers of two, even if they don't need to be, because
that's just what we've come to accept when it comes to computing.
So like, memory is still allocated in like, 128 gig.
Not because it has to be a power of two, it's just that That's what we expect.
Yeah, that's true.
I didn't even think about it that way.
Yeah, there's no reason it can't be 100 gig.
Like, it doesn't matter at that point.
The gig is already a power of two.
Do you remember when virtualization first came out
and you could create a computer with three CPUs?
You're like, that's stupid, but I can do it.
Anyway, we're getting off track.
So powers of two, binary, zeros and ones.
What does this have to do with quantum?
Well, quantum uses what are called qubits.
These are quantum bits, hence the name, Q and then bits.
We did it!
Yay!
In their base state, a qubit stores a value
exactly the same as a classical computer does.
When it is measured, it can have a value of 0 or 1.
And when you add up all of those bits, you have to answer to the
quantum question, the data that is stored in there is exactly the same.
It's powers of 2.
2 to the 4th, the same amount of data that can be presented in a
classical system, is the answer from the basis state of a quantum system.
Now, you might notice that probably sounded super close to the
same thing, except for a small wrench I threw in at the end there.
You said basis.
I feel like that's important.
Correct.
Because quantum computing doesn't just do computing, On the basis state.
Quantum computing can do something, for lack of a better term, in between.
And that is where the crux of this episode comes
in with a fun sounding name called superposition.
I did promise that there would be no math, and I swear I'm going to try.
I might have to allude to math, hint at it behind the curtain.
Perhaps quiz me once or twice, jerk.
Participation time is over.
Let's continue with the metaphor we had before.
Remember the four quarters from earlier?
Well, we can still use them for the four qubit system.
When the system is at rest, aka when the answer is
kicked out, the four qubit system has the ability to show
the exact amount of data that we talked about before.
Two to the fourths worth, aka 16 possible states.
And once again, that number gets bigger with the more qubits,
but we're going to keep it at 4 for simplicity's sake.
When the system is in action, as in, when the quantum computer is computering,
technical term, the qubits can have a value either 1 or 0 or both.
Both is an option.
Okay.
So, imagine again, your four quarters.
For a quantum computer at rest, there are four quarters lying flat on the table.
A quantum computer that is in operation, those four
quarters are still on the table, but now they're spinning.
Ooh, okay.
And this one you can practice at home.
This is kind of fun.
Grab a quarter and spin it on a table.
When it's in motion, what is its value?
Is it a head or is it a tail?
It's indeterminate.
Exactly.
You could say things like, it's neither, or it's both, or
we're not going to know for sure when it lands, until it lands.
All of which is a good correlation to what is actually going on.
The quarter when spun, and this is actually kind of fun.
If you look at it closely enough, you can actually see,
you'll see a flash of heads and then a flash of tails.
And then a flash of heads, and then eventually it will settle and land.
This works if you flip it too, which is kind of cool.
So the way to make sense of this in your head is to consider
the quarter not as a basic unit of storage like a bit,
but as a system all on its own that has different states.
When the system is at rest, aka the quarter is
flat on the table, it has a value of either 1 or 2.
One or zero, head or tails.
When the system is in action, AKA doing processing or in
our purposes, spinning, then the superposition says that
the value of that qubit is the sum of the possible outcomes.
This is the only time I'm going to try to math.
So bear with me.
Well, we'll all math together.
It's going to be all right.
When the system is in action, it is about the possibility
of which of these two states is going to come up.
In the case of a quarter.
It's very simple.
It's 50 percent chance heads or 50 percent chance tails.
In the real world, somebody is screaming, I know, that's not actually true.
The coin always has a minuscule advantage
in the potential of it landing on heads.
Also in the way that you flip it, the
surface of the table, et cetera, et cetera.
But this is like one of those physics Formulas where we just assume
friction doesn't exist or, or that like air flow isn't a thing.
It's fine.
Assume gravity doesn't exist.
Okay, so this is a system.
A bit in a classical computer is a physical unit that is either static.
It's a, it's a switch, a light switch, up or down, and that's it.
Mm hmm.
A qubit is a system, and as such, it is not
described by zero or one until the system is at rest.
When the system is in action, it is described by
what's called the psi function, PSI, Greek letter.
The Greek letter psi is equal to alpha sub zero plus alpha, or beta, plus beta.
Sub 1, and what that means is the percentage chance of this qubit coming to
rest as 0 plus the percentage chance of this qubit coming to rest as beta, or 1.
So that would be like 100%?
Correct.
And if it doesn't add up to 100%, congratulations, you failed linear algebra.
Well, I did that anyway, but we don't need to bring that up.
I bring all this up, actually, is just to make people understand the
fundamental difference of how to think about a qubit versus a bit.
Because if you think about it as a system and not a light switch, you
get a little bit more mental freedom to think about why some of the more
crazy things I'm going to talk about in a second can possibly be true.
So you've got this function that it describes the system in
action, the psi function, alpha sub zero plus beta sub one.
Alpha and beta are complex numbers.
Very quickly, things have to be squared.
Like I said, there's a lot of math.
We don't have to get into it.
But the point is, the system in action, that value is
a probability calculation based on that alpha and beta.
When the system is in action, those four quarters are spinning simultaneously.
When the system is at rest, aka the algorithm
has completed, all four quarters collapse.
They are then unbalanced.
Back to being either a 0 or a 1.
And you have your answer.
So, what does this
mean?
Why does it matter?
I am wondering that.
I'm also thinking about the Mandelbrot set.
God bless you.
In short, classical computing can only be in one definite state at one time.
So, all four quarters can only be set in one way.
And then we do something.
Then you set them again, and you do it again.
Mm hmm.
This means that if we were to try to do some kind of process
based on maximizing the checking of all of these different
states, all 16 states, they would have to be done one at a time.
And that is exactly what classical CPUs do.
This is just something that they're extremely
good at, and they do it unbelievably fast.
Due to the nature of quantum computing, and the fundamental difference
imparted by the superposition of these systems in action, however,
a quantum computer can evaluate all 16 states at the same time.
Okay.
That is the miracle of quantum computing and the promise of it.
How do we know this?
Well, I know you're going to be mad, but you're
just going to have to trust me when I say math.
I could go into it, kind of.
But I won't.
But much like we talked about in the quantum mechanics primer, the
math works and the stuff I'm talking about is experimentally proven.
You can look up the algorithms pretty easily and the equations that
explain them, but basically what they do is exactly what I said above.
They mathematically show that the system in action
is considering all possible values simultaneously.
There are actually a number of algorithms that can be used to prove this.
And even easily set up to execute a quantum
program on a quantum computer to do it.
One of the most common is called Grover's Algorithm.
This, again, exists.
And, as we talked about in the State of Quantum episode from way back in May,
the only limitation is that you is the quantum computer error correction,
which at the moment is still enormously hard of a problem to manage.
Right now, quantum computers are still in a state where we
can only do processing against a limited number of qubits
for a limited amount of time, but that's a hardware problem.
So let's set aside the talk about error correction for now and talk
about The theoretical, because once the mechanical problems are
solved, it is going to be possible to do some really crazy stuff.
Does it make sense to stretch the analogy of the, the spinning quarters
to say sort of the hardware component of is you have to make sure that the
surface they're spinning on is absolutely flat and even and consistent for
all the quarters and that maybe you pump all the air out of the chamber
that they're spinning in because you want to remove air resistance.
And you also have to worry about.
Any magnets that are near the quarters that might inform their
spin, and you also want to shave the sides of the quarter so that
it's not weighted towards heads, as you indicated, like, those
are all the weird hardware things that maybe we could draw an
analogy over to what's happening in the quantum computer hardware.
That's a good point.
Yes, and I think that's a good way to describe it too, because While I'm talking
about each individual quarter as a system all by itself, when you try to use
quantum computers to solve a problem, all the qubits together are also a system.
And what that means is, if there is a problem with any piece
of that system, then the calculation completely falls apart.
So in your example, let's say you spun four quarters
on the table, but the table's not completely level.
One of the computers, or one of the computers, one of
the quarters falls off the table, The system is done.
You can't come
back
from
that.
Right.
You can't get meaningful output from that
because the system itself sort of crashed.
Exactly.
And to be fair,
again, this is something that has happened this in the history
of computing all the way back to when we invented computing.
It's just that with classical computers, we have really
solved so many of the problems with error correction.
It reminds me a lot of the move from vacuum tubes that we
talked about last week to transistors and what a change
that was because vacuum tubes would constantly fail.
So half of a Or probably more than a half of the operator's
job was just replacing and finding bad vacuum tubes.
And then suddenly they didn't need to do that anymore.
Yeah, I mean, you have to imagine that life was a little bit more
stressful for people working in a computer room where sometimes
small pieces of the computer would just spontaneously explode.
That's still possible.
Anyway.
All right,
so let's talk about some of the theoretical stuff.
Yeah.
Remember, all of this comes from powers of two.
With two qubits.
You have two to the second.
With four qubits, you have two to the fourth, so 16 combinations of data.
By the time we get up to 10 qubits, we now have 1, 024 possible combinations.
And because of superposition, all 1, 024 combinations can be processed
simultaneously, not sequentially like a classical computer does.
By the time you get to a shockingly small number of functional qubits,
like say 300, You're talking about being able to process a number of
different variations higher than the total number of atoms in the universe.
Oh.
Side point, thinking about exponentials is one of the weirdest
things that you have to learn to do when you do math at all, ever.
And I think a lot of people still don't grasp it, but if you're
curious and you want to see the power of exponential growth, I'm going
to throw a link in the show notes to a world famous, uh, 9 minute
video that came out in, I want to say 1977, called Powers of 10.
All this video does is shows a camera pulling back to the power of 10
distance away from a couple that is sitting on a blanket having a picnic.
Every 10 seconds they go back one more power of 10.
10 to the second, 10 to the third, 10 to the fourth, 10 to the fifth.
You will be shocked how quickly you leave earth.
Or maybe you won't.
Anyway, if people have never seen this before, I highly recommend it.
It's a little dated cause it came out in
the seventies, but it's still really cool.
A lot of bell bottoms.
I get it.
There's a lot of copycats out there.
So I always try to, you know, link people to the original.
All right.
Anyway, let's look at this from the way that it
is done from both classical and quantum computing.
Let's say you're trying to find a specific item in a list of N items.
N being any random large number.
A classical computer would basically just start at
the beginning of the list and try item number one.
If it doesn't work, then it goes to try number two.
If that doesn't work, then it tries number three.
Etc, etc, etc.
This is also known as brute forcing to find a solution.
Now this relies on the fact that everything about this list
is effectively random and there's no way to shortcut the sort.
Because I know for sure there are ways to do, like,
sorting and searching better than what I'm talking about.
But for certain types of unstructured databases, this is the only option.
Just picking up cards.
Nope.
Found it!
Correct.
A quantum computer, however, with a sufficient amount of functional qubits
in a system, would simply initialize the superposition of all of those
possible states, check them all at once, And mark the correct answer.
Even though processing by qubit is wildly slower than processing
by classical CPU, and even though the quantum algorithm requires
it to be run multiple times to be sure, this process is faster.
The classical operation will be slower once you cross a certain number of items.
No matter what, because the classical operation increases in speed by
a linear fashion, meaning the more things that you have to search, the
longer it's going to take based on the number of things you have to search.
The quantum computer, based off of Grover's algorithm, will complete with
a total number of runs equal to the square root of the number of values.
So if operation time is one second, and you have A hundred items.
Then a classical CPU will be done in 100 seconds, right?
It's a straight linear progression.
The same search in a quantum computer based on Grover's
algorithm will be completed in the square root of 100.
Which is A.
I should probably have checked that or had a calculator up.
Is it 10?
It might be 10.
That's what I said, A.
You're gonna smack me at some point.
I'm great at math, I think is what we've learned.
Indeed.
Now, think about this too.
The larger that the number is, the larger that N is in this example,
the more efficient the quantum computer is going to be at this thing.
Mm hmm.
So, this leads us into what people are always fearing, which is
quantum computing is going to destroy encryption as we know it.
Remember, many kinds of encryption, RSA encryption to
be specific, but there's a lot of them, is based on
trying to solve a math problem, like a division problem.
Just one with excruciatingly large numbers.
Obviously, I'm simplifying it, but honestly, I'm not simplifying
it by much.
Not by much.
That's pretty much what all modern cryptography
is based off of, is really large numbers.
Right.
Factors.
A quantum system with an appropriate number of fault tolerant qubits
will be able to hold all the possible numbers that could be the answer?
And process them simultaneously.
Out.
It should be said that there is plenty of research to say that the concerns
of quantum instantly rendering RSA security moot is a bit overblown.
A report from just last year from Fujitsu Labs pessimistically
estimated it would take 10, 000 fault tolerant qubits,
quote, about 104 days to successfully crack RSA 2048.
And there are some other people that even think that number is optimistic.
Still, 104 days is a hell of a lot better than the classical computer
estimate for cracking RSA2048, which is something like 28, 000 Million years.
Slightly longer.
So what's this IBM thing that you were mentioning,
that if people want to try it out for themselves?
So IBM is committed to educating people about quantum in
a way that is, it seems to me, honest and not cynical.
They have a website called learning.
quantum.
ibm.
com.
You can go there, you can create an account for free, you can
run through some of the classes that they have, the video on
demand type of classes, you can run jobs against their quantum
computers, and you can do ten minutes worth of quantum jobs a month.
Completely for free.
Wow.
Okay.
One of the classes is called the Fundamentals of Quantum
Computing and class number two, or lecture number two, I
guess I should say in that class is called Grover's Algorithm.
So it explains what their algorithm does.
It explains how to do the programming and
send the job to IBM's quantum computers.
And it gives you the interface for how to actually do it.
And what's cool is since this is a known solved problem, They also will
tell you how much time out of your 10 minutes of quantum computing per month
you're allowed to have for free this particular job is estimated to run.
When you do these things, realize that they're
going to be run on like 2, 3, 4, at the most.
This is proof of concept type of stuff, and that's fine.
These are also the systems that we can run in a stable way.
Because when you get to the numbers that we talked about a few
months ago, like four or five hundred or a thousand qubits, you
can't run a system that big because of the error correction problem.
And even if you did, it would take longer than 10 minutes to run.
And I think it's interesting you mentioned the whole Fujitsu thing and
the estimate of, was it 104 days with 10, 000 Fault tolerant qubits.
That's what the algorithms that we've developed so far.
Great point.
There's a really good chance, as computing does, that we will find more
efficient algorithms and we will find a way for qubits to process quicker.
The idea that we would have processors in our pockets that
ran at 3 gigahertz would have been ludicrous 40 years ago.
Yeah.
And now it's commonplace.
And I expect a similar thing will happen with
quantum, but maybe on a slightly different scale.
Yes, I would agree.
And something to keep in mind is, much like the development
of quantum mechanics as a science, it all starts as theory.
And then you get to the point where the equipment catches
up with the theory, and you can test these things.
And the second that those two things can work hand in hand, we will see,
no pun intended, quantum leaps forward in both equipment and algorithms.
That's essentially what happened with AI in the last five to ten years.
Yeah.
Is the hardware caught up with the theory.
And then, well, it remains to be seen whether it's
good or bad, but it certainly has accelerated.
It happened.
We were there.
Hooray.
Well, hey, thanks for listening or something.
I guess you found it worthwhile enough if you made it all the way to the end.
So congratulations to you, friend.
You accomplished something today.
Now you can go sit on the couch, eat a chili dog,
and while away your time with the Grover equation.
Maybe Elmo will show up too.
Who knows?
You can find more about the show by visiting our LinkedIn page.
Just search Chaos Lever or go to our website, ChaosLever.
com, where you'll find show notes, blog posts, and general tomfoolery.
We'll be back next week to see what fresh hell is upon us.
Ta ta for now.
I was really waiting for you to make, like, a Sesame Street
joke, and you just didn't, and I'm disappointed in you.
Well, the other one that I was going to talk about, but we
ran out of time, was Shor's algorithm, and then I was going to
make a lot of jokes about the beach, so I was just unprepared.
The
count
was right there.
Uh, uh, uh.