zxcalc / quantomatic

Quantomatic is a tool for doing automated graph rewriting.
http://quantomatic.github.io
151 stars 22 forks source link

Allow complicated edge data #246

Open hmillerbakewell opened 5 years ago

hmillerbakewell commented 5 years ago

The Hadamard "node" (in normal ZX) is actually used as an edge decoration. We should allow users to be able to specidy what edge decorations are, what their phase group is, and how to display it.

The Hadamard decoration's phase group is Boolean, and it should be blank if False and a yellow box if True. Additionally it needs to be matched on, and have a method for reducing a concatenation of edge decorations down to a singe decoration.