6
$\begingroup$

I saw 2 efforts in that direction: WSS17 and WSS16, but I am not sure if there is something in the latest Mathematica that actually allows users to simulate quantum gates.

Can anyone please point me to the current state of the art way to do Quantum Computing in Mathematica?

$\endgroup$
5
  • $\begingroup$ There isn't anything documented in the current version. I would comment on those W Community threads and ask for the package. $\endgroup$
    – Szabolcs
    Jan 29 '18 at 20:35
  • $\begingroup$ @Szabolcs any 3rd parties alternatives. $\endgroup$
    – 0x90
    Jan 29 '18 at 20:37
  • $\begingroup$ I think it really depends on what you mean with "Doing QC in MMA". If you mean using MMA as an interface to program a QC (e.g. the IBM experience or the Rigetti machine), I'm not aware of anything in that direction. Instead, if you mean using MMA for simulating small quantum algorithms with your "classical laptop", there are some packages around (e.g. link ) but I'm not a big fan of those. Also, it really depends on what kind of QC are you interested in. I personally write my own codes/packages and atm I think is the best solution. $\endgroup$
    – Fraccalo
    Jul 31 '18 at 13:38
  • $\begingroup$ @Fraccalo simulating stuff. $\endgroup$
    – 0x90
    Jul 31 '18 at 13:52
  • 1
    $\begingroup$ This April fools post actually has some relevant info in the “Quantum” section. blog.stephenwolfram.com/2018/04/… $\endgroup$
    – Chip Hurst
    Jul 31 '18 at 15:24
6
$\begingroup$

As Mathematica has most necessary matrix algebra functions (crucially the matrix exponential) built in natively (both for symbolic and numerics) it is quite simple to roll most things yourself. For more complicated manipulations QuantumUtils is useful (disclaimer this was made by some colleagues).

I should point out that the focus of this library is not on building and simulating algorithms (although possible) but the description and manipulation of quantum channels and hamiltonians. Hamiltonian simulation and GRAPE pulse design is also baked in.

$\endgroup$
6
  • 1
    $\begingroup$ Do you want to elaborate more or show some example? $\endgroup$
    – 0x90
    Aug 1 '18 at 11:46
  • 4
    $\begingroup$ @0x90 The question is very broad, so a broad answer is all I'd expect. $\endgroup$
    – Jens
    Aug 1 '18 at 15:03
  • $\begingroup$ @Jens maybe, but in the answer there is a specific link to a library an example in such a popular answer is reasonable thing to expect. $\endgroup$
    – 0x90
    Aug 2 '18 at 12:46
  • 1
    $\begingroup$ @0x90 As Jens points out, it's hard to show specific examples. For example, HadamardMatrix[2].{{1}, {0}} if you want is already a quantum circuit, and it's done with a built-in MMA function. Also, you have PauliMatrix[n] that gives you basic single qubit operations. And if you also add a CNOT ({{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 0, 1}, {0, 0, 1, 0}}) you can simulate a universal quantum computer with your pc, all without any external library :D $\endgroup$
    – Fraccalo
    Aug 4 '18 at 8:43
  • 1
    $\begingroup$ @Fraccalo And don't forget the secret sauce, KroneckerProduct for multi-"qbit" states, see my answer here $\endgroup$
    – Jens
    Aug 5 '18 at 3:55
2
$\begingroup$

Completely out of my domain of expertise, however I stumbled across the "Live CEOing" videos Wolfram is doing on YouTube. Quantum computing seems to be a focus. For example:

https://www.youtube.com/watch?v=-1VX6dDrb_Y

Looks to be destined for the Wolfram Language and Mathematica in the future. Not sure if it is of interest to you, but thought I would mention it. Clearly not something available now though.

$\endgroup$
4
  • 1
    $\begingroup$ This does not provide an answer to the question. Once you have sufficient reputation you will be able to comment on any post; instead, provide answers that don't require clarification from the asker. - From Review $\endgroup$
    – corey979
    Aug 1 '18 at 14:34
  • 1
    $\begingroup$ @corey979 I don't know I will let community decide. Kind of a comment but anwers the question. $\endgroup$
    – Kuba
    Aug 1 '18 at 15:26
  • $\begingroup$ Yes, I would have posted a comment to the original post, rather than an "answer", but the site doesn't let me for the reasons you state. Apologies if that has somehow broken site rules. $\endgroup$
    – flyingmind
    Aug 1 '18 at 17:20
  • 1
    $\begingroup$ The question is also pretty broad, so I figured an answer such as this was not totally out of scope / interest. Oh well. Next time. $\endgroup$
    – flyingmind
    Aug 1 '18 at 17:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.