This repository was created whilst working on my 2023 LMS URB project: Computational searches for fractional Calabi-Yau algebras, supervised by Dr Joseph Grant (UEA).
There are two collections of code (written in Python and GAP) contained in py_src
and gap_src
respectively.
Due to speed issues, the GAP code was eventually abandoned in favour of Python. As a result, the focal point of this repository is the Python code. The GAP code will not be documented nor explained, but is included for completeness.
Given
It is known that, if
This is implemented in two different ways: (1) by testing whether the matrix obtained from the projective resolution of the injectives has finite order, and (2) by repeatedly applying the Serre functor until it is isomorphic to a shift, hence obtaining the Calabi-Yau dimension of the algebra.
This code has been written and tested for Python 3.10.12, though probably works on other versions.
NumPy is the only required library.
The best place to get started is by following the interactive tutorial tutorial.ipynb
(requires Jupyter) in the py_src
directory.