StationQ / Liquid

The Language-Integrated Quantum Operations (LIQUi|>) Simulator
http://StationQ.github.io/Liquid
Other
440 stars 97 forks source link

Stabilizer Gaussian Elimination function #30

Closed antoineVa closed 8 years ago

antoineVa commented 8 years ago

Dear LIQUi|> Team,

I'm using the Stabilizer simulator, and more precisely the Gaussian function (stab.Gaussian).

Currently, the use of this function is bound to the Stabilizer object, so we would like to be able to call the Gaussian function on any Tableau and get a Tableau back (as an output)

Thank you,

Raja Nagarajan and Antoine Vaillant.

alan-geller commented 8 years ago

The Tableau property (undocumented) allows you to modify the state of the tableau once it's been created. It is described in the README file in the UserCode/DaveWecker folder.

I've added the following text to that README:

The elements of the xs, zs, and rs arrays are all mutable, so this property may also be used to set the tableau state; the showState function shows how stabilizers are represented in the arrays. Note that the contents of these arrays are not validated as they are set, so it is possible to create an invalid tableau this way.