We derive a perturbative expansion of knot invariants using quantum cluster algebras. This approach combines the Schrödinger representation of the quantum torus with quantum cluster mutation combinatorics. Explicit examples are worked out.
  • Wolfram Language 100%
Find a file
2026-10-12 09:06:05 +00:00
PDF_version.pdf Rename mathematicaimplementation.pdf to PDF_version.pdf 2026-03-27 08:45:53 +00:00
pert_invariants_via_quantum_clusters.nb Add files via upload 2026-03-16 14:33:33 +00:00
README.md Update README.md 2026-10-12 09:06:05 +00:00

Perturbed Alexander invariants via quantum cluster algebras

Mathematica program to derive a perturbative expansion of knot invariants

© 2026 Boudewijn Bosch


Acknowledgements

Boudewijn Bosch acknowledges support by the Dutch Research Council (NWO) under grant number 613.009.152.


Table of Contents


What is this program?

Using this program, a perturbed R-matrix is derived using the theory of quantum cluster algebras. The perturbed R-matrix can then be used to derive perturbed Alexander polynomials using the perturbed Gaussian formalism provided in the Mathematica code by Roland van der Veen and Dror Bar-Natan, available at https://www.rolandvdv.nl/PG/. The input is a Gauss code for a knot diagram, and the output is a perturbed Alexander invariant.


Getting Started

This package requires Mathematica along with the following dependencies:

  • NCAlgebra — a noncommutative algebra package for Mathematica
  • NCGBX — the noncommutative Gröbner basis package (ships with NCAlgebra)

Installing NCAlgebra

Starting with version 6, NCAlgebra is installed via its paclet distribution. In Mathematica, run:

PacletInstall["https://github.com/NCAlgebra/NC/blob/master/NCAlgebra-6.0.3.paclet?raw=true"]

Once installed, load NCAlgebra and NCGBX with:

<< NC`
<< NCAlgebra`
<< NCGBX`

Usage

The function \text{Pert}_{i,j} computes the perturbed R-matrix. This is automatically computed by evaluating all initialization cells.


Example Execution

Perturbed Alexander polynomials for the trefoil:

Z31 = hR15 hR62 hR37 C4 hv8 hv9 hv10;
Do[Z31 = Z31 //. hm[i, 1] -> 1, {i, 2, 10}]

Contributors

Boudewijn Bosch