Hi, everyone, welcome.
We're very happy to have
Jamie Sikora here today.
Jamie got his PhD of Waterloo,
he has done postdocs in Paris,
Singapore.
Singapore, I was gonna get the order out,
I was trying to get the order right
Paris, Singapore and he is
now at the world renowned
Perimeter Institute.
It's like the Perimeter Institute for--
Theoretical physics.
Theoretical physics,
and, yeah, he's gonna tell
us something about this.
And I also wanted to add
that he is literally writing
the book on programming
and quantum theory.
So you can ask about later
if he doesn't mention
some of it in his talk.
So please join me in welcoming in CU.
[students claps]
Good, thank you very much
for the nice introduction.
Of course, thank you all for coming.
I know this is not the typical
time to have a seminar.
So I appreciate everyone
sharing your Thursday
or Tuesday with me.
I'm going to be talking about
quantum resources, okay?
So I'm guessing not everyone
here studies quantum a lot.
So anyway, it's going to be a very gentle
introduction to quantum, okay?
I'm going to avoid all the funny notation,
all these technical things,
I'm gonna really talk with my hands
through the quantum parts. Okay?
That being said, if there's any questions,
do feel free just to shout out.
And this is work in progress as well.
So, we're writing it up now.
But if you have any ideas
or anything like that,
please let me know, any strong feelings.
Very happy to hear all these things.
And what I'm going to
be talking about as well
is a tool that can be
used in quantum theory,
but it doesn't have to be
used in quantum theory.
So if anyone has any
ideas, maybe relating to
their own research or something,
I'm always very happy to hear about this.
Okay, so quantum resources,
what are they and how much are they worth?
So here's the plan.
I'm going to spend the
first half of the talk
maybe not quite half,
but chunk of the talk,
talking about in economists viewpoint
on optimization problems.
And how to assign values to resources.
So this is going to be...
So this is going to be
a mathematical tool.
I'm going to just talk about
it, develop some theory,
and then I'm going to apply it to quantum.
So the quantum things
I'm going to apply to
is quantum physics.
So we're building a quantum computer.
Updating quantum hardware,
learning quantum states
and why I think it's cool.
And hopefully, I'll convince
you that it's also cool.
Creating quantum entanglement.
So that's cool, it's a
couple of buzzwords there.
And distance measures.
And this is joint work with Gary Au, okay?
At the University of Saskatchewan.
So here's the overall theme of the talk.
So we have quantum, we
have economics, okay?
So people quantum is like a billion dollar
industry right now.
People are spending tones of money.
It's not generating billions
of dollars right now.
But people are spending
tones of money on it.
So economics is the theory
of spending money, right?
So we're basically going to be looking at,
making wise economics decisions
when it comes to quantum.
That's kind of like the theme anyway.
So here's real life before I start talking
about quantum stuff.
Now, quantum is real, but this
is a real life application.
Here's an employee, there's a boss.
And, this is a real job.
So I just solved the
computation you asked me for,
like, you could imagine it took two months
to solve some really big computation.
And the boss is like, that's great.
But in the last two months,
some of the data has changed.
Okay, so the employee
said cause he just wasted
all this computation time.
The question is, do we have
to do this computation again?
And of course, the answer depends on
what computation was ran,
and what the boss wants
from the computation.
So you might have to he may not okay,
so this is going to be something
we're going to look at.
And of course, these
things happen all the time.
So imagine if you work
for an airline company,
you're dealing with
thousands of employees, okay?
You're dealing with hundreds of planes,
and there's certain constraints
that you need. Okay?
So you can solve for the best way
to allocate all your resources.
And there's constraints,
like one person cannot
work for 200 hours in a rho. Okay?
Even though you think
that would be optimal,
it's just not feasible.
It's not gonna work.
You need airplanes out there on the tarmac
at the right spots at the
right time, all this stuff.
So there's lots of moving parts.
You could solve these things,
but it could take a long time.
Why do you do it?
Well, you're going to save
the company a lot of money.
But, things happen in real
time in the real world.
Okay, so you just can't sit for two months
and just solve something, right?
So we're going to look at
what kind of computations
need to be redone or what
doesn't have to be redone.
So here's a small thing.
But this is resource management up there,
it's kinda hard to read.
So here's a factory,
and they're just going
to make two commodities.
Two things, orange juice and apple juice.
So orange juice brings in $3 per unit,
and apple juice brings in $4.
I just totally made up these numbers.
So don't read too much into it.
But the question is, how much orange juice
and apple juice should you make?
Well, for everything I've told you so far,
you should just make an
infinite amount of juice,
because then you have an
infinite amount of money
and life would be swell.
But you can't make an
infinite amount of juice,
doesn't make any sense.
Because there's resources,
there's water, there's fruit,
electricity, staff and labor,
all these things go into making juice.
But what you can do is given
a set amount of resources,
you can solve for the best
way to produce the juice
that you'll make the most amount of money.
Okay, so this is called a linear program.
It's a very particular
kind of optimization.
And what we're going to do is let x and y
be the amount of orange juice,
you make and apple juice.
And these are non negative,
cause we're only going to make
a non negative amount of juice.
And this was the formula
that I had before,
three x plus four y.
This is the amount of
money you'll bring in.
But what constrains you from
making an infinite amount
of juice are the resources.
So right here, so these numbers
don't really mean anything,
I just threw them in there.
But there's three here,
suppose you have three
units of electricity.
Or five units of water, six units of fruit
and six units of labor,
six people working.
It's okay.
So there's inequalities here,
it's okay if you don't
use all the resources,
if you're not gonna make that much,
if you're not gonna make
an optimal amount of money,
then it's okay not to use the resources,
but you can use more than what you have.
So, you can solve this
and you can find out
the optimal production plan. Okay?
But suppose you did this,
suppose you took a long time to solve,
some of the information
changed a little bit.
So here's the big question.
It's gonna kind of
motivate this line of work.
How much would you pay for more labor?
Or how much would you pay
for more water or whatever?
So there's three cases just
to get us thinking about it.
One, it's very valuable.
So labor was a bottleneck
in your production.
So if you were to get more
labor, you would make more money.
Okay, plain and simple.
One, it's not valuable.
You're not using all that you have,
suppose you already have
an optimal production plan.
But you have people in
the back playing checkers,
you're just not using them all.
So you would not be...
there's no incentive to hire more people.
And three is the boundary case,
you're using all that you have,
so no one's playing checkers,
but if you had more people
come join your company,
they would have nothing to do.
So that's kinda like the boundary case.
So here's the solution,
you could just put a plus one here,
for one more unit of labor,
whatever that may be.
And you could solve it again.
Well, if you want two more,
you could solve it again,
and so on and so forth.
But remember, these things
could take a very long
time to solve.
So maybe don't want to
keep solving these things.
So here's a softer
question I'm going to ask,
what were the instantaneous
change in profit?
So as you start getting a
little bit more labor, okay?
Let's say hours of labor, okay?
What is the instantaneous
change in the profit?
Yeah, so this is called the shadow price.
So this is the shadow price of labor.
So let's go back to our example.
So here's a wholesaler and the
wholesaler is going to offer
the juice company some kind of deal.
He's going to say I'll sell
your $3 per unit of water.
And the question is, should you accept it,
or should you not accept it?
It's really yes or no answer.
You either buy it or you don't.
So, the question is, yeah,
should you buy any water?
And the shadow price is the maximum price
at which the boss will say yes.
So imagine if it's really, really cheap,
and you'll make more money, then you'd be,
you'd want to buy it,
if it's really, really expensive,
you would not buy it.
So at some point, the
answer is going to switch
from yes to no.
And that is going to be the shadow price.
We can also talk about selling resources,
I'm not gonna go into detail in this talk.
If you're interested,
please come talk to me.
Right, so what we're going to do now,
so far, I've wrote up a linear program,
and I said okay, this
is what it looks like
in the real world,
should you buy more labor or whatever.
I'm gonna introduce a
little bit of math now.
So this is a general linear program.
Many of you have probably seen one before.
So right here x is going to
be some fixed size vector
or non negative entries.
Okay, so you could have as
many entries as you want,
you could have apple juice, orange juice,
grapefruit juice, whatever.
This is some linear functions.
So you can think of as profit,
and there's all these
constraints, whatever they may be,
this doesn't pertain to orange juice.
This is not the mathematical
theory of orange juice.
This can be modeled many, many problems.
So now, with linear programming,
there's this thing called duality theory.
So I'm going to introduce
a little bit of math,
just to see where the
shadow prices come from.
So each constraint is going
to have a dual variable.
You can think of them as
Lagrange multipliers if you want.
But in general, I'm just gonna
call them dual variables.
And there's this thing
called a dual program.
And throughout my talk,
every time I show you a dual problem,
I'm going to just show
you this magic wand,
because I'm not gonna tell
you where it came from
or how I got it. Okay?
It's just gonna appear like magic.
If you're interested,
please come talk to me.
I'm very happy to show you
but it's just magic, okay?
So the dual program is
going to look like this.
You're going to minimize this sum bi yi,
so the B's are on the constraints
are going to go upstairs.
These A's kind of stay where they are.
And the C is upstairs here,
the thing you want to maximize
and now it's coming down
into the constraint.
Okay, so that's called a dual program.
Notice there's no X's involved.
What I've done is I said hey,
here's a bunch of dual variables.
Here's a new optimization
problem, and that's it.
I've just defined it.
Now, there's lots of reasons to look at
this optimization problem,
but I'm going to have one
very particular reason.
So, suppose you had an optimal solution
to this dual program okay?
The Shadow price for
each resource is given
by the optimal dual solution.
So, you have y one two y m star,
so you solve it and let's say,
I want the shadow price for B two,
which is some kind of resource,
y two star is going to tell
you that shadow price okay?
And the instantaneous change of profit
is this Yi star times epsilon.
So as you start buying more of resource i,
this is the amount of
money you're going to see.
And you can look at like
some you have some kind
of big groupon,
so, if someone's offering you,
this much more resource one,
this much more resource two,
you can calculate what you're
changing profit up here,
as you get all these resources, okay?
So it's like some bundle deal.
And it's pretty much the
simplest thing you could imagine.
It's just this linear
combination of the dual variables
and how much more each one
is offering these epsilon Is.
And there's going to be some issue,
what if there's more
than one dual solution,
then we minimize,
but that's just a technical thing.
Just suppose you have an
optimal solution. Okay?
And they give you the shadow price.
And the nice thing is,
whenever you solve these linear programs,
let's say in practice or
for research or whatever,
the dual variable is something
you're given for free
almost all the time.
So the shadow price is free information.
If you don't care about
how these resources change,
or whatever you just want
to solve and move on,
that's totally fine.
But if you care about
how your profit changes
as you move things around,
then this is free information.
I keep talking about rates of change
and stuff like that.
So if you wanna get technical,
it's really just a
directional derivative. Okay?
So here's a nice function,
this is a function of B,
and you solve this
optimization problem, okay?
To have B one up to B m. Okay?
So what this function does it say,
here is, let's say a basket
is a basket of resources,
so much water, so much fruit, whatever,
this function is going to
output the maximum amount
of money you can make
with these resources.
So it's a very nice well defined function.
And you can look at how
the function changes
in the direction of T.
And you just look at the
dual optimal solution
and you take the inner product with T.
Okay, so this y star is
given to you for free,
so it's just a very simple inner product
that you can compute.
Any questions at this point?
It's not gonna get this
is the technical part.
Once it's done, I'm
just gonna sweep it all
under the carpet anyway,
so, but the same questions,
feel free to shout out.
Okay so that was something that was known.
If you look up shadow prices,
you can find this stuff.
What I needed was a matrix variable.
So I'm going to generalize
this linear program
to something called a
semi definite program.
And what this is it's a
maximization over a matrix variable.
Why do I want to matrix variable?
Well, when I go to quantum eventually,
everything basically involves matrices.
So I needed to kind of
upgrade that previous theorem.
So this means x is positive semi definite,
so as non negative eigenvalues,
before I had non negative vectors.
But the right notion of
non negativity for matrices
is usually bounding eigenvalues.
At least when it comes to quantum theory.
This is going to be some super operator.
So you input a matrix is going
to output another matrix.
And this has to be less
than or equal to b,
which means that b minus this thing
is non negative eigenvalues.
And this inner product,
CX is just the trace
of C times x.
So this is called the Hilbert
Schmidt inner product.
So if you're comfortable
with the linear program,
then all I'm doing is making
the variable into a matrix now.
And basically, everything
else conceptually is the same.
[student mumbles]
So the super operator can be
anything, it has to be linear.
You're going to input a Hermitian matrix.
I'm going to need complex
values for quantum theory,
it's a matrix,
and it's going to output
another Hermitian matrix,
but that's it, it could
be a different size.
So the simplest one is just the trace.
The trace is a nice super operator.
Yeah, or you could just add
something to it if you want.
It can be very simple.
Any other questions?
So let's jump to the matrix thing.
Yeah?
[student mumbles]
That's right.
[student mumbles]
That's right, that's right. Exactly, yeah.
So another way to write this,
you could just have a bunch
of trace in our products,
and then...
well, let's suppose this was equal to b,
just for simplicity,
it'd be a bunch of trace
in our products equal to b,
just like if you do this
for linear programming,
then that makes sense naturally.
I'm not actually going to do too much
with the semi definite
programs other than show them
and point to them and keep
saying they're interesting.
But I'm not actually going
to do much math with them.
So it's totally okay.
So, we had to extend what was
known for linear programming
to semi definite programming,
so we get to apply to quantum theory.
There's a line here, it's
just some mumbo jumbo,
don't worry about it.
But this function is the same one we had
for linear programming okay?
So this is just a math
just to make it work.
It's, whenever you go to matrix variables,
you need this extra math.
Right here, you have some
B here, so it's a matrix.
So it's kind of hard
to think of it as some
allotment of resources now,
but it's still just some matrix.
You plug it in, and you
get some value there,
whatever that value may be, okay?
Then you can look at the
directional derivative,
as you change this B here.
I'm going to start
calling it a shadow price,
I don't wanna keep saying
directional derivative,
especially in the
computer science program,
I'm not sure how people
feel about calculus.
But this was really neat too,
because, semi definite programming
is something I look at every day.
It's like my favorite
thing to do in research.
And then I found a way to
differentiate for free,
so I thought that was really cool.
Right, so now we can look at
how things change as B changes.
So let's come back to
the real life example,
before I get to quantum.
Do we have to do the computation again?
So here's an example of
some time where you don't.
The boss says, well, the data did change,
now, what I really want to know
is whether I should buy
more water at $3 per unit,
because that was the
deal the wholesaler gave.
So the employee goes back
to the person who took
who solved the problem,
and said, Well, what I really want to know
is whether I should buy this water,
employee looks up the dual
variable, which he had for free,
didn't know he's going to need it,
but it was just laying around.
And then says, well,
the shadow price is $2.
Okay, so you'd lose money if you did that.
If it costs $3, but you're only going
to start making $2 from it,
then you should not do it.
So you could answer the question,
no, you should not buy the water. Okay?
And let's see.
Okay, so before I get to quantum theory,
shadow prices are, this
is concept in economics.
And what it does in a nutshell,
is it assign some value to something
that doesn't have a market value.
So if I'm running a company
and you're running a company,
how much of resources worth to me
is going to be different to
how much it's worth to you?
And it also depends on how
I'm running the company, okay?
So it's really like right
now for this person,
how much is something worth to them?
That's what shadow pricing does.
They can also help answer
difficult or awkward questions.
Here's the awkward question,
should a companies spend X dollars a year
to save y tones of carbon emissions?
Now, of course, you should
invest as much money
to reduce carbon emissions
as much as possible,
because no one likes to
breathe poison, right?
But if you're a small company,
maybe you're worth a million dollars.
You don't want to spend $10 million,
just to save carbon emissions.
Well, that makes no sense.
But if you're a big company like Microsoft
or Google or something,
maybe they do want that good
public image or something.
So maybe they will spend
millions of dollars
to reduce carbon emissions, okay?
Here's an even more awkward question.
Should the government spend X
dollars to build safer roads,
which will save y lives per year?
Now, what's the value of a human life?
You know, it's infinity dollars, right?
But, no government has an infinite amount
of money to spend. Right?
So we live in a world
with limited resources,
and you have to make the best decisions
on how to spend those resources, okay?
So that's where shadow
pricing can come in handy.
So I'm going to move on to quantum.
I think there's some time for questions,
any questions about shadow pricing?
Any, yeah?
STUDENT: You said you get
the shadow price for free?
Yeah.
STUDENT: So you have a
linear program to solve,
you have [mumbles]
Right so, usually, the way algorithms work
is they give you a dual solution for free,
and this dual solution
will kind of certify
the optimality of your solution.
[student mumbles]
So for a linear program,
if you solve the primal,
the original problem and
you solve the dual problem,
they'll always be equal,
assuming they're both finite.
For a semi definite program
there, it's not the case.
And there was a line there
that I said don't worry about.
That's that line says,
that line says that they're equal.
A question, yeah?
[student mumbles]
Yeah, so what this does,
I keep mentioning these derivatives,
what it's doing is giving you some kind of
linear approximation to
your optimal solution.
So if even if you have
any kind of function,
and you have some linear approximation,
you start taking advantage of it.
So you start moving around,
now you're losing all that
information that you had.
So it's really like the
instantaneous change.
For linear program this is nice though,
because usually there's
some positive amount
that you can actually
move in that direction.
So this linear approximation is actually
going to be an exact approximation.
We don't know for how long
but for a little while.
STUDENT: Yeah.
Yeah. Any more questions?
Hmm?
STUDENT: Is it always a lower bound?
So if there's optimal solutions,
then you're supposed
to maximize or minimize
over these dual solutions.
But if someone just gives you
one, say from an algorithm,
this will give you a
bound on the shadow price.
Was that what you meant
by lower bound door?
STUDENT: I meant [mumbles]
Oh,
[student coughs]
it's probably I think
you could construct cases
where it's not.
But it could be, I'd
have to think about it.
That's a very bad answer. [laughs]
Yeah?
STUDENT: If you're making
a convex option and--
That's what I was thinking of as convex--
[student mumbles]
Yeah, this function f of
b is going to be convex,
so I think it will be a low round.
Whether it's like a
supporting lower bound,
I'm not sure, just is probably.
Any the other question
before going to quantum?
Okay, so now what I'm
going to do is introduce
a handful of quantum problems depending on
how much time I have.
And each one I'm going to write
as an optimization problem.
So simulating quantum
systems/building a quantum computer.
So here's a snapshot of modern physics,
make things really, really cold
and see what happens, okay?
Of course, this doesn't do physics justice
but there's some truth in that.
So here's some neat things that happen
whenever physicists
start making things cold.
So this is helium, helium is
usually not a liquid, okay?
But if you freeze it down to 4K,
which is really cold, they'll turn liquid.
And if you freeze a little
bit more to 2.17 Kelvin,
then it turns into a super fluid.
What's a super fluid?
Well, it's a fluid that
has zero viscosity,
like hard zero, okay?
So you have this bowl, it's a super fluid.
You'll see the liquid
starts creeping up the sides
going around the corners and
dripping down the bottom here.
So little drop there,
it's kind of hard to see.
So neat things are happening.
If, let's say instead of Helium,
you just make some metals
really, really cold.
Now they'll turn superconducting.
Superconducting means the
metal has zero resistance.
So this thing is going to start with,
rejecting changes in magnetic field, okay?
So this is a fun thing I
like to do at summer camps,
so high school students just freeze it.
Usually I don't get down to 40 K,
usually I use like liquid
nitrogen, something like that.
And then you'll have a
track here of with magnets.
And this thing will just levitate. Okay?
And since there's zero resistance,
just give it a flick, and
they'll just keep zipping around.
It's really cool.
But what's neat is if you take this track
while it's zipping around,
you turn it upside down,
it'll just keep zipping around, okay?
Because it's rejecting the
changes in magnetic field.
So it doesn't wanna get close to,
it doesn't want to move
farther away either.
This is something really
neat to show people.
So, science fairs and
stuff, it's interesting,
but we wanna build quantum computers.
Okay, so, this is a four
qubit chip from IBM, okay?
They have a lot more qubits now,
but this is from a couple years ago.
And whenever you make
metal superconducting
and you have this computer
chip, neat things will happen.
And by neat things I mean now
you can build quantum bits
or quantum qubits.
Qubits are kind of neat.
But what we're going to do,
is we're going to look
at the physics behind it
just for a little bit, then
I'm gonna translate into math.
So if you have a physics experiment,
let's say a quantum computer, okay?
The interactions of the physics
are governed by a thing
called the Hamiltonian.
A Hamiltonian is just some really,
really big Hermitian matrix, okay?
And at very low temperatures,
this quantum system is going
to go into its ground state,
like the liquid helium
or the superconducting,
the places where neat things happen.
And the ground state is just...
the Eigenspace correspond
to its smallest eigenvalue.
Okay, so it could be degenerate,
there could be lots of
Eigenvectors and eigenspace.
But nonetheless, it's a nice eigenspace.
So that's great.
What I care about for the optimization,
is I wanted to compute what's
called its ground energy.
So the ground energy is just going to be
the smallest eigenvalue
of the Hamiltonian.
So, one way to compute
a smallest eigenvalue,
is to solve this semi definite program.
When a maximize lambda,
such a lambda identity is less than h.
And lambda, I'm saying is not negative,
doesn't really matter.
But this will give you
the smallest eigenvalue,
and this Hamiltonian this
H here is very, very large.
For each qubit you have,
if you have n cubits
it's h will be two to
the n by two to the N.
So it's going exponential.
So if you solve this
SDP this optimization,
you probably only want to do it once.
What if we perturb the Hamiltonian?
I wanna change this Hermitian matrix.
Why do you want do that?
Well, if you have some quantum experiment,
quantum computer or whatever,
you probably want to do
something with it. Right?
If you just have a computer
and you're not doing anything,
it's not computing anything.
So we're going to change the Hamiltonian
towards a different direction H prime.
So you could like shoot lasers
at it, micrhoave pulses,
changing magnetic field,
all these really cool physics terms.
They apply here.
So you're going to
change what's happening.
And this is what's happening
inside a quantum computer.
You have some state, then you say,
"oh, well, what I want to do is factor
"or I want to do this or that."
So you have to change things around.
And that's going to do the computation.
So I wanna know the shadow price of this.
So here's the magic wand.
Going to define the dual,
dual looks like this.
Minimize y in a pact with H,
the trace of y has to be
larger or equal to one
and has to be positive semi definite.
Okay, so I'm not gonna
explain where that came from,
I'm happy to chat about
later if anyone's interested.
So this dual is great.
And from that, if you solve it,
you'll get an optimal y
star, okay, right here.
And you just take the
inner product with H prime
and H prime, it was the
direction you wanted to move.
So this gives you the shadow energy.
I'm not talking about money anymore,
I'm talking about what's happening
inside this quantum computer.
So that's a shadow energy.
And we can continue doing this,
we can compute the second
smallest eigenvalue,
third smallest eigenvalue.
And you'll get a whole
spectrum of eigenvalues.
Physicists like to write them like this.
So here's the smallest one,
there's the largest
one, there's going to be
possibly exponentially many.
But one thing we care about,
and at least some quantum experiments,
is this what's called a spectral gap.
Okay, we want the gap to be large,
if it's small, your computation
could just get thrhon off.
So we have a spectral gap.
But we have a handle now
on the shadow energies.
So right here, the second smallest one
is decreasing at large rate
and the smallest one is increasing,
then if you were to
move in that direction,
or let's say do that thing
in the quantum computer,
that would be bad.
It'll thrho off your computation.
This would be good,
it's preserving the gap.
And this is okay, it's not increasing it,
but it's preserving it.
And again, this is free information.
So if you go ahead and
calculate those energies,
you'll get for free whether or not
you should move in this direction.
[student mumbles]
Right, right.
So I didn't say,
STUDENT: Okay.
So you have to trust me,
but there's some kind of
computations that
require this to be large.
And the reason is, you're
going to encode information
in these Eigenvalues.
I think it's actually encoded
into the smallest one.
And as you do your computation,
you want it to go in a certain path.
And then at the very end,
this eigenvalue is going
to give you your answer.
Let's say you're factoring something,
and say the factor is this, okay?
If these ever cross, it's just
going to mess everything up,
and it will not go on that
nice path that I described.
It's not obvious at all what I'm saying.
But that's the answer, yeah.
[student mumbles]
You don't need to.
But if you did, so this is
kind of a warm up example,
I admit. Yeah.
But again, these are exponentially large.
So, you know, you might want to...
there's probably better algorithms
that just go directly to it.
There's actually quantum
algorithms that'll do it as well.
But yeah.
Yeah, any more questions?
Oh, I should say, if
there's any questions,
just feel free to shout out.
Also, I'm going to be
switching my applications
quite rapidly.
So something I start saying doesn't make
any sense to you at all,
and you don't want ask questions,
just hang on for a few minutes.
I'll probably talk about something else.
So you can jump right back in.
Like right now.
So this is the second example.
How much does it cost to
update noisy quantum hardware?
So this is a D wave machine,
this is a Canadian
company that's been making
quantum computers for some time now.
And we wanna know whether
they want to spend
this funny Canadian money
to build a large one,
a better one.
So the question is
what's inside this thing?
The answer is no one knows.
Which is a bit of a joke we use.
Whenever you bought one of
these things they used to...
I don't know how much they are now,
but they used to be $10 million.
And if you bought one they
would make you sign a contract
saying you're not going to open this up
to see what's inside. Okay?
And this thing's big.
This is like, old school
computers, like it'll fill a room,
but you're not opening it up.
But, from a theoretical standpoint,
I know what's inside.
Just some quantum operation.
Phi here.
Or at least that's what
they want to be inside.
This is, what they want.
This is what they're trying to build.
Of course, we don't have these
very good quantum computers yet,
so it's, we don't have the ideal thing.
Okay, what we have is
a noisy version of it.
So the question is how much would you pay
for a better quantum computer?
A big better quantum process.
So we're at some particular point,
and we wanna upgrade it to a better one.
So here's some of this
funny quantum notation.
I'm not going to use it at all,
but I'll just kinda point to it,
and I'll say what it means.
So this is going to calculate
the worst case probability of error.
If you give it some x,
this is the probability
that it's going to say,
an incorrect value.
Say, suppose I wanted to factor
some large composite number,
this is the probability
that's going to give you
the wrong number.
So the input is x...
So this is some of the
funny quantum notation
I was telling you about.
So you stick it into
your quantum computer,
and this inner product is the probability
that you get an incorrect answer.
And this some funny norm,
it's called the diamond norm.
And this is a norm on
super operators, okay?
And what I'm going to
do is bounded by delta
and delta is going to be the noise.
So if you're trying to
build a quantum computer,
your worst enemy is noise.
In one word, you want to reduce noise.
And this is very, very, very hard.
But suppose we wanna get a handle on how
the quantum computation will work.
Whenever you do decrease it,
it's going to look like that.
So this is what you want to happen.
And you're in some kind
of norm ball around it.
If this norm ball is small,
then you're going to be very
close to what you really want,
the ideal setting.
But you're...
let's say, if it's not that
small, you could be far away.
So the question is, how much
does it increase or decrease
as you decrease the noise?
And this is not a semi definite program
the way I've written it.
But you can just turn it into one.
You look into a paper,
and you find out how to do a
deal with this norm basically.
And this--
STUDENT: What did you say m was?
Sorry, what am I looking at?
STUDENT: M in the maximize.
Oh, okay, so this m here is a measurement.
So you have a quantum
state, it's wherever,
this m here is going to be a measurement,
and f of x is the outcome
of the measurement.
So you're just going to measure
and it's going to spit out F of X.
And this identity minus is that...
So, with this is the
probability being correct,
and identity minus
probability being incorrect.
Why do I worry about that?
Well, I want it to be
a maximization problem,
cause that's the theorem I developed.
Yeah, mh hmm?
[student mumbles]
That's a very good question.
So this is not the way everyone
would want to calculate
whether or not they should
upgrade their quantum computer.
This is just some kind
of simplified snap shot.
So what I would do here,
so x is a particular input,
so what I would do is probably
just take some random sample.
So we take some random sample,
do it uniformly at random,
then this will give you
bound on the error for that.
And hopefully that would
be a good representation.
Yeah, that's a very good question.
[student mumbles]
Mh hmm?
STUDENT: Do you know phi value,
cause phi is the ideal [mumbles]
You know phi, here, this
is what you want it to do.
Phi prime can be...
is anything your quantum
computer could do,
being bounded.
so phi prime is the...
Oh, sorry, there should be a L prime here,
just knows that.
But phi Prime's the variable here.
Yeah, and this is not
saying this is exactly
what your quantum computer is doing,
but it's saying if this
is the bound on the noise,
this is what it could be doing,
with no other information.
Yeah, mh hmm?
[student mumbles]
You could, right now this
could be for single x,
and this will give you a
value for that single x.
But it may not be a good representative.
So you could just do a
random sample if you want.
And then this will be
a nice linear function
on upstairs as well.
And you could still solve that as well.
Of course, there's going
to be many, many inputs,
so you probably don't want to do them all.
There's nothing stopping you,
I guess from doing them all.
If you could calculate the inner product.
But yeah, mh hmm?
[student mumbles]
You can do it efficiently,
and it was just shown...
So the diamond norm, it
also goes by other...
If you look at operator algebras,
it's also called the
completely bounded norm.
And it was just shown maybe 2012 ish,
they can write it as a
semi definite program,
and therefore, you can compute it quickly.
Oh, maybe I should have mentioned that,
the semi definite programs.
You can compute them in polynomial time,
in the size of the matrix. Yeah.
STUDENT: And how big is the matrix?
How big is the matrix?
STUDENT: Yeah.
Usually they're going to
be exponentially large.
STUDENT: Can you give a number?
Give you a number?
STUDENT: Yeah--
Five, every number is exponentially large.
[laughs]
STUDENT: Because you need
to solve it, correct?
If you want to solve it,
and you want to use a
off the shelf SDP solver,
you're probably going to be bounded maybe
to 1000 by 1000 matrix variable,
maybe it's a little bit better nowadays.
It's probably less than 10,000 by 10,000.
So yeah.
STUDENT: It's not that big.
It's not that big, but you know,
these solvers will take a long time.
So right now I'm more
concerned about a computation
that takes a long time that
you don't want to solve again.
[student mumbles]
Yeah, yeah. So this also depends on
the algorithm you're
using and all this stuff.
So some will be faster
others a little bit slow.
That's a good question. Hm mmh?
STUDENT: Thanks for taking
all these questions--
Yeah, of course.
STUDENT: So I guess, I
would actually be given
like a quantum circuit,
and then I could write
down this huge matrix
from it if I wanted to is that the way--
Yeah. Right.
So this super operator will be given to...
There's lots of ways to
represent a super operator.
But usually, it's like a
collection of matrices,
or one big matrix that's
going to encompass them all.
How you write a super operator
is a very interesting question.
STUDENT: And I'm especially
curious because if I'm given
the super operator in a very compact form,
like just some small circuit,
wondering if you can solve
semi definite programs
without having to extend it out into--
If it's given by a small circuit?
STUDENT: Or something small.
You mean like some kind
of succinct representation
or something?
Yeah, there might be
some kind of shortcuts.
Also some different programming is a way
to compute these things,
but I'm not gonna say
it's always the best.
So if your data is given to you
in a particular structured way,
you may want to use this
particular structure algorithm.
But this is just one big hammer
that seems to work on almost
every quantum problem.
So all I'm doing is
swinging the hammer around.
Any more questions?
STUDENT: May I ask another?
Yeah, of course.
STUDENT: So this supercomputer is supposed
to do what exactly?
I mean you can deduce phi,
but then it's only supposed
to do some matrix manipulation?
What is the role of this computer?
Okay, okay.
So let's kind of parse what you're saying.
So you have a quantum computer,
and what I'm doing now is
using a classical computer
to solve this SDP,
and this SDP is going to tell you how good
the quantum computers operating.
STUDENT: And this phi is
coming from somewhere [mumbles]
Yeah, yeah.
So what you could do is
crack open a quantum textbook
and say, this is what Shor's
factoring algorithm looks like.
And then you could just do the math,
you can compute what this is.
And then this delta is gonna
be very large, probably,
because we don't really
have quantum computers
to factor yet.
At least I don't.
Maybe some secret government lab does.
STUDENT: Maybe it's just
a similar questions.
So the question could be like,
if I'm able to write down
phi doesn't mean that
I can just simulate the quantum computer
and I don't actually need it?
No, no, no, what you're doing is
you're calculating an error.
STUDENT: Okay.
Yeah.
So you have a quantum computer,
and you're calculating the probability
that's going to make an error.
You're not simulating it, definitely.
You can simulate a quantum computer
if you have exponential classical time.
But that's not what I'm doing.
STUDENT: But these are those
exponentially large so.
[laughs]
Right.
If you wanted to Yeah.
But again, these are not
good quantum computers.
So simulating them is probably
not something you want to do.
But this is a big problem,
like whenever people come
to the newspaper and say,
"I have a quantum computer."
You always have a bunch of people saying
it's not doing anything quantum,
here's a classical algorithm that does it.
This is a big tug of war. Yeah.
Okay, so maybe I'll move along.
Oh, yeah so this is
what a quantum computer
actually looks like.
So a little bit blurry
with this resolution,
but it'll be just like this little chip,
like a computer chip.
And you have all these things that's
going to do something to that chip,
and then you put this little
machine so it'll be like this,
and you put into a
huge, huge, huge vacuum.
So it gets like four Kelvin or 10 Kelvin.
Okay, learning quantum states.
So suppose Alice has a
basket of quantum states,
she's going to close her
eyes, choose one at random,
pick it out and send it to Bob.
Maybe through quantum email or whatever.
Bob now is holding this quantum state,
and he wants to learn what state he has.
And the thing about quantum
states like you can hold them,
not really but you can have one,
but you can't look at what it is.
It's not like a piece of paper
where it's just written down.
If you look at it, and you
try to infer any information,
it's going to collapse,
it's going to fall apart.
And there's different
ways of looking at it,
so this is called a measurement.
So what Bob wants to do is
perform the best measurement
or the best way of looking at
the state infer what he has.
So why do people care about this problem?
So building quantum computers,
you can more or less trust
me, people are interested.
Why do people care about this?
Well, you have a BB quantum
machine learning problem.
So you have some state, it's
could encode information.
So there's this whole branch
called quantum information.
You could have some information
code in the quantum state,
you send it to your quantum
computer and you want your,
depending on whose team you're on,
you may or may not want
your quantum computer
to learn what the state is.
There's cryptography, so
you can buy these machines.
This is an ID Quantic from Switzerland.
They used to cost about 100 K,
I don't know how much they are now.
But anyway, if you buy them,
you can send secret
messages to each other.
So depending on who you are,
you may or may not want to
learn the quantum states.
If you're Bob, the person
who is supposed to receive
the message,
you may want them to be able
to learn what's happening.
If you're an eavesdropper,
you may want them to not
learn what's happening.
So being able to learn or not
learn could be good or bad,
depending on context.
Cryptography, you start
sending secret messages.
And there's Alice, who is
in an online quantum casino.
You don't want the casino
to be able to learn
too much information
about what's happening,
or else maybe they could,
get extra money from you,
cheat you out of your money.
You can...
so this is one of my
favorite things to do,
you can look at quantum money.
So here's a building that makes money,
here's money, you can put a
quantum state inside the money.
How you actually do this, I don't know.
But in theory you could,
and then you send it out
to people who like money
and want to counterfeit them.
The person counterfeiting
if they don't know,
if they can't learn what that state is,
then they cannot make two copies of it.
This is called the no cloning theorem.
And this is physically unaffordable money.
It's just not inconvenient.
If you have enough money, you
can just copy these things.
But physically you can't.
That's quantum.
Quantum algorithms, so this is Peter Shor.
Peter Shor found a way to factor
efficiently back in the 90s.
And this is the reason a lot of people
care about quantum computers,
especially from the
computer science aspect.
What you have here is this
is another quantum computer,
you put in the factor,
let's say you want to
factor some big number,
you keep hitting it,
it's just going to keep
spitting out quantum states.
And then what Peter Shor did
was found an efficient way
to take all these and learn
the information inside
and then you get your factor.
So this is one way to look at
Shor's factoring algorithm.
And of course, factoring
is bad because then
you can break email,
or most modern cryptography.
The same almost same algorithm
also solves discrete logs,
which will break elliptic
curve cryptography.
So we need to reimagine
a lot of cryptography.
So here's the quantum states.
If Bob wants to learn what he has,
you can write this as
this optimization problem.
It's a bit messy.
So I'm just going to point to it and say,
yeah, it's an optimization.
So here's the quantum states,
quantum states you can
represent as matrices.
So that's nice.
That's the minimum error above guessing.
The dual you can get for free,
sorry, the deal is not for free,
you just write down the duel,
you get the solution for free.
So it's a little more
complicated, but we can handle it.
And now we can start asking questions.
What are the shadow prices?
So what if we change one
of the quantum states?
You change some rho to some other rho,
maybe you're doing
you're in some laboratory
and you actually want to change
the states for some purpose.
And this for free, you can
get the shadow guessing error.
So now you can also change one state,
but you can change them all as well.
If you have 10 states,
you can change each one individually
in different directions.
And this will give you
the shadow guessing error.
So whether this error has
higher or low shadow price
will be good or bad
depending on the context.
Whether it's like crypto
or algorithms or whatever.
How much time do I have?
Okay, I can explain
entanglement in five minutes.
So entanglement.
So in particular creating
quantum entanglement.
So what does this mean?
So you have two particles,
electrons, photons,
whatever you want.
And there's this concept of entanglement.
So usually people draw them
really cool diagrams like this,
like they're connected
by slinkys or string
or something like that.
The thing is, classically,
it doesn't make any sense
to think of it that way.
They are connected in some kind
of information kind of way.
But we're just going to look
at the mathematical properties.
And entanglement is at the heart of many
or most quantum problems, okay?
So if we take nothing away,
else away from this talk,
just know that if you
go to a quantum seminar,
even if you don't understand
anything that's happening,
just ask the speaker,
"What if you add entanglement?"
Is always a brilliant question.
You're like, oh, yeah, this thing.
Nine times out of 10, it works.
If it doesn't work, just say,
"Oh, no. I mean, if you
remove entanglement?"
One of those will always work, trust me.
So entanglement is just everywhere,
you can take almost any problem,
just add entanglement, spice it up.
Mathematically, what it means is you have
a quantum state here, it's a matrix,
and you want to write it in this form,
as a sum of tensor
product of these matrices.
I'm not actually gonna
work with the definition,
but I think it's nice to present.
So it's not entangled if
you read it like that.
So one defines entanglement from,
concerning what it's not.
So it's kind of weird, but...
and this problem is NP hard.
So I give you the matrix,
and I say is it entangled or
not, it's an NP hard problem.
So it's it's tricky.
So here's the NP, this is one
way to deal with MPI problems,
you can create a sequence
of optimization problems.
So they're going to look like this.
Here's your rho, that's the state you want
to whether it's untangled or not.
And it's going to give
you a sequence of numbers.
It's parametrized by this k here.
So I'm sweeping a lot of flavor into this,
this is a subspace,
I'm sweeping a lot of
information under the rug.
But as you increase K,
it's going to get more and more complex,
and you can keep solving it
and keep getting these values.
So you have a sequence of real numbers.
If that sequence stays
at one, the entire time,
your state is not entangled.
But if it is entangled, at
some point in the sequence,
we don't know when but at some point,
it's going to dip below
one and stay there.
So if you have a lot
of time on your hands,
you can get a pretty good estimate
of whether or not it's untangled.
This is known as a STP hierarchy.
And we can use this sequence
of optimization problems
to get a handle on the shadow
price for entanglement.
So the question is, what if
we change rho to rho plus t?
We're going to change the state,
are we going to create entanglement?
Are we going to remove entanglement?
That's what we wanna know.
So here's our sequence
of optimization problems.
Here's the duel, some nice thing here.
And now we can compute
the shadow entanglement.
So if you change it to rho plus T,
one sec.
Oh, this should be a T just realized it.
But yeah, you have the dual solution,
the inner property of that and
the direction you're moving,
is going to give you
the shadow entanglement.
So far what I've said they've been kind of
application based like
whether or not you should
upgrade a computer or create entanglement,
but you can actually start
proving analytic properties
using these things as well.
So the identity is a quantum state,
it's not a very good one.
So think about uniform
probability distribution.
It's not a very good one.
But it's an okay distribution.
The identity is basically the equivalent
into a quantum state.
Doesn't have much flavor to it at all.
But if you look at this, it
has zero shadow entanglement.
So identity is not entangled,
but if you move in any direction,
then you're going to stay
the shadow entanglement
is going to be zero.
What does that mean?
Well, if you're here and
you move in any direction,
if you're going to stay in the set,
that means you're interior.
So you can actually prove
the identity is interior
to these symmetric extensions,
which are like entanglement.
So you can get some kind of
complex geometry stuff for free.
And I think I am running out of time.
I'll just say what it is.
I won't go into any of the details,
but you can also look at distance measures
between quantum states.
So if you have rho and a sigma,
how close are they to each other?
Or can I confuse the two?
And I'll just say why it's interesting.
So if you're in a lab,
and you're supposed to
be creating one state,
but your lab equipment
is actually creating
a different state, that's not good,
unless they're close to each other.
Mathematicians care about this,
because there's norms involved.
That's the short answer.
Physicists and computer scientists
care about this because they,
there's a lot of applications,
sometimes you just,
it's just good enough to look at
states are close to each other.
So I'll just look,
I'll just, I'll end with
these functions right here.
So this is the fidelity function.
So this is if you're given two states,
this is...
it's not a distance measure, per se,
it's more of a similarity distance.
Because if they're the same,
it gives you one, not zero.
So that's a very nice function.
And here's another one,
it's called the trace distance.
So it's a kind of a normal
distance you put on matrices,
and what we can compute
is the shadow distance.
Yeah, the shadow distance.
So as your states move around,
as one state moves in that direction,
another state might move in a completely
different direction.
You can compute how the
distances will change
as they start moving these directions.
And this is a quick crypto application,
but maybe I'll skip that
in the interest of time.
Maybe I'll summarize in 30 seconds.
So just to summarize
everything what I did,
I developed this mathematical tool
to give shadow prices and it
has nothing to do with quantum.
You can also use this outside
of quantum theory if you want.
Right, and this particular
kind of optimization
is everywhere in quantum.
This is just a few pieces,
this is just some of my
more favorite applications,
but like there's a tone of them,
they're all over the place.
And the shadow prices are given for free.
So if you solve the optimization,
this will be free information.
So it's up to you whether or
not you want that information.
But if you did want it, it's free.
And that's the end of my talk, thank you.
[audience claps]
