Anders and Briegel in Python
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
Pete Shadbolt f218fbfb5a Create README.md 8年前
abp PIP seems to be kinda working now 8年前
bin PIP seems to be kinda working now 8年前
examples Very test passing 8年前
tests Fix nondeterministic error in measure_x 8年前
.gitignore Remove CHP for now -- it was only used for testing 8年前
README.md Create README.md 8年前
demo.gif Add demo GIF 8年前
setup.py PIP seems to be kinda working now 8年前

README.md

abp

Python port of Anders and Briegel’ s method for fast simulation of Clifford circuits.

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 fairly rigorous test suite. You can run all the tests with nose:

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:.