Win a copy of OCP Oracle Certified Professional Java SE 11 Programmer I Study Guide: Exam 1Z0-815 this week in the Programmer Certification forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Junilu Lacar
  • Jeanne Boyarsky
  • Bear Bibeault
Sheriffs:
  • Knute Snortum
  • Devaka Cooray
  • Tim Cooke
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Ron McLeod
  • Carey Brown
Bartenders:
  • Paweł Baczyński
  • Piet Souris
  • Vijitha Kumara

Do I need a quantum computer?

 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I don't know anything about quantum computing, but as I read some of posts, it is not 0 and 1.(If it is wrong, please point out)
Then, do I need new computer in order to quantum computing?
If no, should I have to new OS?

Thanks!
 
Marshal
Posts: 66237
250
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to the Ranch

If you go through the other posts in this forum (QC), you will find that there are onlly a few experimental quantum machines in existence at the moment.
 
Author
Posts: 28
10
C++
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Jay Ko wrote:I don't know anything about quantum computing, but as I read some of posts, it is not 0 and 1.(If it is wrong, please point out)
Then, do I need new computer in order to quantum computing?
If no, should I have to new OS?
Thanks!



Hi Jay, thanks for posting your question!
The first time you use a QC, you probably won't even know you've done it. Currently, when you use your phone's Maps app to plan a drive from LA to New York, it only takes a few seconds, which is amazing. It's fast because the route planning isn't actually done on your phone. It happens on a computer you never had to buy, in a server room in a building you've never had to think about. Similarly, the first useful QPUs will be in server rooms, performing computation (maybe even road trip planning) for people. They'll just get specific types of jobs done, more efficiently than a normal computer would have.

When you use an ATM, the transaction may be secured by a pair of QCs, just to combat hackers and increase security. At the University of Bristol in the UK, there's even a project where they've taken a quantum device and embedded it inside an ATM card, to send a secure data key directly to a larger QC located in the bank's server room. It's like the little encryption chip in your ATM card now, but cooler.

Eventually, computers, tablets, and phones that you buy will have QPUs build into them (just as they currently have GPUs for graphics), but they'll likely use updated versions of the same operating systems we use now.
 
Ranch Hand
Posts: 51
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Eric,

For now, the only reason for me to learn about QC algorithms would be curiosity.

However, do you see any applications of the concepts of QC algorithms in other areas like concurrent programming?
 
E Johnston
Author
Posts: 28
10
C++
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Michael Krimgen wrote:However, do you see any applications of the concepts of QC algorithms in other areas like concurrent programming?



Hi Michael,
The tricky thing about treating QC like classical forms of concurrency or parallelism is this: when you do things in parallel on a CPU, more work is done and you're able to save all of the results.
On a QPU, it's a bit different. When you execute multiple tasks in superposition, you can't get all of the results, but you can get things like the sum, or the average, or the parity. In general, the total amount of information you get from doing a million things in superposition is the same as the amount of information you get from just executing one, but you can get different information out, which would have required many runs on a classical computer.

The best illustration of this is known as the Deutsch-Jozsa problem.
Here's (loosely) how it goes:

Imagine you have a function which takes in one bit (0 or 1) and puts out one bit (0 or 1).
The function takes an hour to run. Using it, you answer two questions:
Question 1: If the input is 0, what's the output? - This one is easy. Just give it the input, and an hour later you're done.
Question 2: Is the output the same for 0 and 1, or different? - In this case, you need to run it twice to get an answer to your question.

Using a QPU function, you can run both in superposition. It runs all values simultaneously in a single run, and then you can transform the output to answer either Question 1 or Question 2, but not both. So you can find out whether the answers for 0 and 1 are different (Question 2), so you're 2x faster than your classical computer (yay), but on this case you collapse the state so that you don't actually get the specific output values. If you'd just run the classical function twice you'd have both answers.

(This is explained a bit better by Mercedes in chapter 14, and there's an accompanying code sample here.)

...so if someone tells you a QPU can "play all possible chess games at once" that's sort of true, but not as useful as it sounds. :]
 
Campbell Ritchie
Marshal
Posts: 66237
250
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
So that Bristol encryption card would send all possible passwords and some way to work out which the correct password is? Also, if anybody snooped the password in transit, would it become obvious immediately at the other end and allow us to repeat the encryption process?
 
E Johnston
Author
Posts: 28
10
C++
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Campbell Ritchie wrote:So that Bristol encryption card would send all possible passwords and some way to work out which the correct password is? Also, if anybody snooped the password in transit, would it become obvious immediately at the other end and allow us to repeat the encryption process?



Ah, nope. This card device implements something called QKD (Quantum Key Distribution).
There's a demo of this in chapter 2 in the book, in the Spy Hunter example.

Here's how it works:
  • Using four laser diodes and a random number generator, the card sends a series of single photons to the bank (via fiber optics in the ATM). Each photon is polarized in one of 4 directions, randomly.
  • Anyone intercepting the bitstream (even successfully) will receive only random bits. And (as you mentioned) they would be detected, as in the Spy Hunter code sample. If the random bitstream is compromised, then no data of value is sent.
  • If the random bitstream arrives intact, without being intercepted, then the card and the bank use it as a private one-time pad, which is just about the best encryption you can get.


  • ...so with QKD, no data of value is sent via the quantum channel at all.


     
    Let me tell you a story about a man named Jed. He made this tiny ad:
    Java file APIs (DOC, XLS, PDF, and many more)
    https://products.aspose.com/total/java
    • Post Reply Bookmark Topic Watch Topic
    • New Topic
    Boost this thread!