Anders and Briegel in Python
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
Pete Shadbolt 040eec0a77 Remove `examples/wtf.py` il y a 8 ans
abp Add pics il y a 8 ans
bin PIP seems to be kinda working now il y a 8 ans
examples Remove `examples/wtf.py` il y a 8 ans
tests Fix nondeterministic error in measure_x il y a 8 ans
.gitignore Remove CHP for now -- it was only used for testing il y a 8 ans
README.md Update README il y a 8 ans
setup.py PIP seems to be kinda working now il y a 8 ans

README.md

abp

Python port of Anders and Briegel’ s method for fast simulation of Clifford circuits. Should do thousands of qubits without much trouble.

Install with pip:

$ pip install --user abp

demo

Visualization

abp comes with a tool to visualize graph states in a WebGL compatible web browser (Chrome, Firefox, Safari etc). It uses a client-server architecture to enable instant updates.

First, run abpserver in a terminal:

$ abpserver
Listening on port 5000 for clients..

Then browse to http://localhost:5001/ (in some circumstances abp will automatically pop a browser window).

Now, in another terminal, use abp.fancy.GraphState to run a Clifford circuit:

>>> from abp.fancy import GraphState
>>> g = GraphState(10)
>>> g = GraphState(range(10))
>>> for i in range(10):
...     g.act_hadamard(i)
... 
>>> g.update()
>>> for i in range(9):
...     g.act_cz(i, i+1)
... 
>>> g.update()

And you should see a visualization of the state:

demo

Testing

abp has a bunch of tests. You can run them all with nose:

$ nosetests
53 tests run in 39.5 seconds (53 tests passed)

Currently I use some reference implementations of CHP and graphsim which you won't have installed, hence some tests will fail with ImportErrors. You can ignore those :feelsgood:.