8:45 AM
0

We have ~24 tags on the main site without any tag excerpts, at the time of writing this post. It would be really helpful if the community members gradually start writing out the tag excerpts for the incomplete ones. See: What should a tag wiki excerpt contain?. Also, it is a request that whenever...

9:27 AM
wow, something got into the hot network questions, didn't it?

Yup ^^

can't say I'm too surprised it's a question like this that got to be the most upvoted one in the site.. still it's kind of disappointing

@glS Indeed it is disappointing, but at least it increased the site traffic a bit :P
I had initially voted to close it

How is that even possible?

@Nelimee The view counter is broken
3

The view counter on questions on the main site doesn't seem to get updated immediately as it does on other SE sites, or even in meta, here. I believe this is some software error on the developer's end. I've been actually observing this since Day 1 of the site, however I thought it would eventuall...

9:32 AM
And I did not voted for my own question, so this is 2 other persons x)

@Blue yes I can imagine. What's with the asker though? Is he banned or something? Why the rep cap to 1?

Ok! :)

2

This question is a continuation of Quantum phase estimation and HHL algorithm - knowledge on eigenvalues required?. In the question linked above, I asked about the necessity for HHL to have information on the eigenspectrum of the matrix $A$ considered. It came out that the HHL algorithm need...

@Nelimee one is me, and I can confirm I did indeed look at the question :P

@glS Well, the asker is infamous all over SE for spreading crackpot-ish ideas :P Check his posts on Physics SE
He presumably got banned here for going overboard with the comments
(based on what I observed at least)

9:33 AM
@Blue oh.. indeed the name did sound familiar

@glS You upvoted before reading the question? :p

@Nelimee After seeing so many bad questions on this site, on seeing any question with considerable amount of math (and based on an actual paper), I immediately click the upvote button, even before reading it ;)
The past few days have been disappointing w.r.t. quality of questions

@Nelimee well I didn't read all the details, but the title itself was enough for it to be an interesting question, as I already saw the other question of yours that (I assume) made you ask this one. I think it's an interesting question and I too would like to see it answered

Haha, there is no actual maths in the question :p But thanks ;)

@glS Same ^

9:36 AM
It seems really odd to me
I discovered this alone, and was shocked that no paper presented it
I'm currently thinking it may be intentional, just to avoid the problem :/
But it seems strange :(

@Blue I've just came back to the office after ~10 days of holidays and not access to a computer. I've got quite a backlog of questions to check out!
the site has been quite active

@glS Mainly because it had the tick-mark (by the OP). It might mislead the future visitors
Also, a way to discourage rob from writing nonsense

@Blue If we have shor-algorithm and quantum-fourier-transform tags, could we also have tags for HHL or quantum phase estimation?
Or this is just quantum-algorithm?

@Nelimee Sure, you could create tags for those
I'll later re-tag the previous ones

@Blue ok that's what I was wondering. It was flagged as low-quality and then deleted. I don't disagree, especially because it was accepted and Rob didn't seem to be willing to clarify anything in it

9:45 AM
Ha! I can create tags, wasn't expecting that :p

@Nelimee I was thinking the same. An HHL tag could be useful at this point
anyway, anything interesting happening the past days?

"hhl" / "hhl-algorithm" / "quantum-linear-systems" ?

hhl-algorithm sounds good

I'm for the second, but I prefer ask your opinion first :)

Cool!
@glS Not much. @Nelimee has been helping me understand the implementation of the HHL for 4*4 on QISKit. I just started learning the basics of QISKit! :D Oh, and this question needs some good answers: quantumcomputing.stackexchange.com/q/2595/26

9:50 AM

@Nelimee Heh, it's worth the advertisement. :P BTW did you do that implementation as a part of any course or just out of self-interest? Did you take any grad level course in quantum computing?

I did not take any course on quantum computing, but I'm pursuing my Master's thesis in this field and I did this implementation as a part of my research :)

Oh. Where are you pursuing your research at?

The idea was to have something to show at the end of the master thesis. As I am primarily an engineering student, the school likes to see some engineer work :p

Haha, I see :)

9:56 AM
The laboratory is a little original, enven in the world of research. It is called CERFACS (acronym of "European center of research and advanced formation in scientific computation", translation is mine and may be inaccurate).
And my advisor (as the laboratory) has no prior "real" experience with quantum computing
It was a research work to introduce QC in the laboratory and see if it could be useful for their needs
So I spent the first month learning QC basics, and then slipped to the algorithms oriented towards scientific computation
Especially computational fluid dynamics

Ah, I saw the cerfacs.fr/en website. They didn't seem to include QC in their research area, so I thought you might be pursuing it elsewhere. So that clears it. Interesting :)

Yes it is!
(I'll go eat soon, see you later)

See you!

So yeah, basically I'm the most advanced in QC in the laboratory :p

Haha :P

9:59 AM
My advisor only looked at it for a year as something interesting and that is all :p

Here, the professor under whom I'm working in the summer meets us only once in two/three weeks. But luckily there are a lot of other undergrads here who are also interested in QC, so we are sort of learning together. The goal is to make something original, but still a long way to go for that :P
We basically made groups of 4-5 students. There are ~60 in total. Our group's topic was Quantum machine learning, and we spent the first three weeks learning the basics of neural networks
So, although we couldn't do anything very productive till now, but at least I'm happy I got to learn a bit of neural network stuff (which I find very interesting!)

10:39 AM
@Blue I saw that question. It's a very interesting one, but not so easy to answer I feel.

0

I read the solovay-kitaev algorithm for approximation of arbitrary single qubit unitaries.However while implementing the algorithm I am stuck with the basic approximation of depth 0 of the recursion .can someone help me on how to implement the basic approximation such that given any 2X2 matrix i...

1 hour later…
12:00 PM
...this is amusing. And sort-of quantum-y.

What's the use of the classical register in this circuit?
I'm not sure how the measurement gate works in QISKit
@Nelimee You around?

The classical registers are represented by doubled-lines, and the 3 last gates in your circuit are measuring qubit n°i in the computational basis and storing the result of the measurement into the classical bit n°i

@Nelimee How does it store the result? Say $c0_0$ will store the output $0$ with $0.5$ probability if $q0_0$ is in the Hadamard state?

It depends on what you do with the circuit
If you launch it on a real quantum chip, it will measure 1 with 50% probability, same for 0
If you simulate it on the qasm_simulator, then the behaviour should be approximately the same as on the quantum chips (real chips have errors at each gates and decoherence, simulators don't)
You cannot simulate measurements with the unitary_simulator or with the statevector_simulator I think

12:17 PM
@Nelimee Don't you mean the converse of "If you launch it on a real quantum chip, it will measure 1 with 50% probability, same for 0" ?
"f you simulate it on the qasm_simulator, then the behavior should be approximately the same as on the quantum chips "
The simulator should give exact results, the real chip shouldn't (?)

Yep, you are right :)

Now, what is the QASM simulator?
I dunno
Can I use it from QISKit?

Yup

How many qubits and what gates does it support?
Can I run real algorithms on it?

It support all the gates, you can run real quantum algorithms on it and I think that the number of qubits is only limited by your memory

12:20 PM
@Nelimee Oh, awesome!

The simulator asks for 2**(2*number_of_qubits) * sizeof(double) bytes of RAM (at least)
I'm not sure about the formula, but you can check it if you want
Don't expect more than 15 qubits

Gotcha. But I'd like to use the IBM Q Experience 16 qubit, so I can use that too, instead of QASM, yes?

I tried 16 qubits with 50Go of RAM and I got an "InsufficientMemoryError"
Mhhhh

@Nelimee Ah, so how did you run your HHL program? Wasn't it designed for IBM 16 qubit?

QASM is the language used to describe your quantum circuits.
My HHL program only needs 7 qubits. I designed it for 7 qubits, so the simulation only needs to simulate 7 qubits

12:23 PM
@Nelimee I meant the QASM simulator :P

And the compiler is making the appropriate changes to my circuit when I want to run it on the 16 qubits chip

@Nelimee Oh, so you didn't try it on the IBM Q?

I did not for the moment, I just compiled it for the 16 qubits but I did not sent it
I expect the error-rates to be close to 99.999% so I will probably not send it anyway :p

I don't know how to "send" a QISKit program to IBM. Any references sources to learn about that?
@Nelimee Uh, why?
Decoherence time?

And the circuit is too long, executing the whole circuit would require ~400µs with the parameters of the IBM Q 16, but the coherence time for the qubits are not above ~40µs

12:26 PM
I see, makes sense

No, by "error-rates" I don't mean decoherence, this is an other source of error that was not counted in the 99.9999% :p
I got this number just by computing the cumulative errors introduced by the imperfect gates

@Nelimee Oh, I see (are those mentioned anywhere i.e. error rates of the IBM gates?)

Applying 100 times the X gate will not make an output of 0 100% of the time because of 1. decoherence and 2. the X gate is not perfect and has an error-rate
And you can access them with the backend instances in QISKit

@Nelimee Okay, thanks! Reading on :) I'll ask if I get stuck
Still in the QISKit tutorials


import qiskit
import Qconfig

qiskit.register(Qconfig.APItoken, Qconfig.config["url"])
ibmqx4 = qiskit.get_backend('ibmqx4')

print(ibmqx4.calibration)

But you need to setup your Qconfig and to have an IBM Q account

12:29 PM
Ah, yeah. I already made an IBM Q account and got the API
But if HHL won't work on it, better to just simulate it

12:41 PM
execute(name_of_circuits=None, backend='local_qasm_simulator', config=None, basis_gates=None, coupling_map=None, initial_layout=None, shots=1024, max_credits=3, seed=None, qobj_id=None, hpc=None, skip_translation=False)
I'm not sure what is the use of this part: "
execute(name_of_circuits=None, backend='local_qasm_simulator', config=None, basis_gates=None, coupling_map=None, initial_layout=None, shots=1024, max_credits=3, seed=None, qobj_id=None, hpc=None, skip_translation=False)"
Is it an output that just shows the value of the variables?
For the command: job = execute(circuit, backend)

It's the prototype of the function execute
i.e. the list of all its parameters with understandable names

@Nelimee Umm, then what is job = execute(circuit, backend)?

A call to the execute function with the parameters circuit and backend (the other parameters are left to their default value), and we recover the return value of the function call in the variable job

12:56 PM
You mean the circuit and backend have been set previously in the code? I'm just having some confusion about the difference between  job = execute(circuit, backend) and 
execute(name_of_circuits=None, backend='local_qasm_simulator', config=None, basis_gates=None, coupling_map=None, initial_layout=None, shots=1024, max_credits=3, seed=None, qobj_id=None, hpc=None, skip_translation=False)
Do we have to write both for the execution?
Or no, if we already set circuit and backend previously?
i.e. are all the variable parameters in the second function prototype name_of_circuits=None, backend='local_qasm_simulator', config=None, basis_gates=None, coupling_map=None, initial_layout=None, shots=1024, max_credits=3, seed=None, qobj_id=None, hpc=None, skip_translation=False) already included in the first circuit, backend?

You need to know a little about Python to understand the tutorial :)
The function prototype says that the function execute can take up to 12 parameters and that all of them have a default value.
When you call execute(circuit, backend), you give a value for the first and second parameters and you let all the other parameters take their default value

@Nelimee Oh, okhay, gotcha!
{'101': 1024}
No idea what the output means. What are 101 and 1024? :/

hi chat

Holla

101 is the output, you measured 1 for the first qubit, 0 for the second and 1 for the third
And 1024 is the number of times this results appeared
You performed your simulation 1024 times, and you got 1024 times the same result :)

1:09 PM
@Nelimee What does that mean? It wasn't specified anywhere the number of times the simulation was run (am I missing something?)
Where exactly do we specify the number of runs?

shots=1024 in the parameters of execute
job = execute(circuit, backend, shots=2048) and you will have 2048 samples

Ah, the shots name isn't really the perfect fit for the purpose, isn't it? :P
Got it though
Thanks

I'll admit, when I see the results of quantum measurements described as 0 or 1, there's a silly part of me that gets a little annoyed. the quintessential measurement in QM is that of spin components, and those get $\pm$ values
you can always map to 0,1 of course

Hehe
We're computer people here not physicists :P
We like 0 and 1

but there's a little bit of my brain that's like "it's up or down, dangit"

1:12 PM
(actually I'm neither XD)

part of the reason for that, I think, is that an unbiased coin with outcomes 1,-1 has expectation value 0
whereas when the outcomes are 0,1 the unbiased expectation is 1/2
which makes writing out standard deviations etc more tedious
(of course, assuming unbiased coins is itself only a special case. but i'm a physicist, we're biased towards simple special cases :P)

1:51 PM
Need a second opinion on something elementary
Suppose i have Alice and Bob measure properties A,B with values 0,1 and obtain the following stats:
P(AB=11) = P(AB=00) = p/2, P(AB=10)=P(AB=01) = (1-p)/2
so P(A=B) = p.
oh, and Alice/Bob are spatially separated. (think measuring separate spins of a singlet state)

$P(A=B) = P( (AB=11) \cup (AB=00) ) = P(AB=11) + P(AB=00) - P( (AB=11) \cap (AB=00) )$

I can model that in the following way: Prior to measurement, someone flips a coin to determine the value of A, and then picks B=A with probability p
And then writes down A,B on slips of paper to be read by Alice and Bob later
Does that represent a local realist model of these outcomes?
(realist = counterfactual definiteness)
Actually, I guess there'd be no way to see CFD here
since the only measurements considered are the two that are actually done
Okay, yeah, so the hidden variable is "which of the four AB outcomes is preselected"

2:18 PM
@Blue re: qubyte tag. i have been thinking about qubytes recently & that 8 qubits may not be the best representation. this seems non-standard & i haven't gotten around to asking if something like a 8-level qudit would be a better definition of a qubyte. i thought to reference this joke to help demonstrate my thinking: snopes.com/fact-check/grandmas-cooking-secret

1 hour later…
3:41 PM
0

i want to run a experiment like this: Generate a bunch of 12 random string password like: <Bb{Q,r2Qp8 Write an algorithm to randomly generate & compare value on quantum computer. If the value was found, return number of time it take to generate, let's say 6102111820800. The only available qu...

3:54 PM
import qiskit
from qiskit import available_backends, get_backend, execute,\
QuantumRegister, ClassicalRegister, QuantumCircuit, CompositeGate
from sympy import pi
from utils.gates.qpe import qpe
import utils.gates.hamiltonian_4x4
from utils.endianness import QRegisterBE, CRegister
from copy import deepcopy
import utils.gates.crzz
import numpy as np
import scipy.linalg as la
@Nelimee Is utils.gates.qpe a standard library?

Nope, everything in utils is done by me :)
This is why you cloned the repository in a folder named utils

@Nelimee Is it in the quantum-tools repository?

Yep
If you import utils.XXX.YYY.ZZZ then the corresponding file is in quantum-tools(or utils)/XXX/YYY/ZZZ.py
And  from utils.gates.qpe import qpe  means "import the qpe function from utils/gates/qpe.py"

@Nelimee Oh, makes sense! Reading on :)
What's the use of from copy import deepcopy  ?

copy is standard
And in the copy module there is a function called deepcopy that... deepcopy the data given in parameters :p

3:59 PM
Ah, the documentation for copy is here: docs.python.org/2/library/copy.html
Okaies

You use python3, not python2
Version 3 is incompatible with version 2 so always check for version 3 because it's the one you are using
QISKit only works with version 3.X (with X a minor version number I can't recall)

Right, right. There's a drop-list at the top-left to choose the version
Got it, okay
@Nelimee What's the use of endianness`?

Endianness is the order in which you should read the bits in a byte

classical bits?

0000'0001 means 1 in big-endian and 128 in little-endian
It's for classical bits, but I wanted to have it for quantum bits also
It's easier to interpret the outcomes

4:06 PM
Endianness refers to the sequential order in which bytes are arranged into larger numerical values when stored in memory or when transmitted over digital links. Endianness is of interest in computer science because two conflicting and incompatible formats are in common use: words may be represented in big-endian or little-endian format, depending on whether bits or bytes or other components are ordered from the big end (most significant bit) or the little end (least significant bit). In big-endian format, whenever addressing memory or sending/storing words bytewise, the most significant byte—the...
Oh, I need to read this up it seems

Before I wrote this, I was always wondering the endianness of my results: should I read this result in big or in little endian? Now I know I always use big-endian (arbitrary choice) and it is clear in the code because my quantum registers are instances of QRegisterBE (BE for Big-Endian)

I'm still reading what those words mean, but thanks ;)