Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Z box #164

Merged
merged 23 commits into from
Oct 5, 2023
Merged

Z box #164

merged 23 commits into from
Oct 5, 2023

Conversation

RazinShaikh
Copy link
Contributor

Basic support for the Z box generator. You can create, rewrite, draw, tensor contract, and save graphs with Z boxes. I have added the fusion rewrite, which works between two Z boxes or a Z box & Z spider. I have also added rewrite to convert a Z spider to Z box. Additional rewrites can be added in the future but that is conceptually straightforward.

@jvdwetering
Copy link
Collaborator

Very nice! Is this ready to be merged?

@RazinShaikh
Copy link
Contributor Author

I think it is but if you think I have missed something, please let me know.

@jvdwetering
Copy link
Collaborator

Maybe at some point we want to have a seperate file for all the ZXW rewrites, just like how all the H-box rules are in hrules.py and hsimplify.py, but that probably only makes sense once there are more rewrite rules.

@RazinShaikh
Copy link
Contributor Author

Yeah that would be good. For some rewrites, the Z box behaves almost the same as the Z spider with a slight modification on how phases are modified. For those, I would prefer to keep it in the same rewrite.

@jvdwetering jvdwetering merged commit 9349852 into zxcalc:master Oct 5, 2023
4 checks passed
@RazinShaikh RazinShaikh deleted the z-box branch October 5, 2023 13:09
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants