Atlas of subfactors

From ScottWiki
Jump to: navigation, search

This is the home of the nascent "Atlas of subfactors". We're aiming to enumerate all the small rank small index subfactors by computer.

Along the same lines we'll also enumerate unitary spherical fusion category of small rank which are tensor generated by an object of small dimension.

Our project has several independent parts:

  • Enumerate all possiple fusion graphs (aka principal and dual-principal graphs) of small rank and small index.
    • Implemented for subfactors, mostly implemented for self-dual objects in fusion categories
  • Implement known tests in the literature which allow you to eliminate possible fusion graphs. For example:
    • objects of dimension smaller than 2 are given by the Beraha numbers
    • all dimensions must be algebraic integers
    • the index must be a cyclotomic number
    • tests from Jones' "Annular Structure of Subfactors" and "Quadratic Tangles"
  • For any fusion graphs that pass all the known tests solve for all possible fusion rules
    • In the subfactor case we have a working program
  • Given a fusion graph find generators and relations in the bipartite graph planar algebras (see Emily's upcoming Haagerup paper)
    • Incomplete, but a lot of progress has been made!
  • Take all known constructions of Subfactors and find them in the lists that we have produced.
    • Not started yet, but Scott's Quantum Groups package will be useful.

Getting started

The mathematica code we have thus far can be found here. You can either download individual notebooks, or, if you have subversion, obtain a local working copy with the command

svn checkout

The notebook bigraph3.nb is currently the best place to start; most examples below are taken from this.


Here's some examples of what we can already do.


The principal and dual princiapl graphs of a subfactor encode the fusion rules for the tensor generator. In the subfactor setting these are always bipartite graphs, or bigraphs.

The function FindAllBigraphs takes two arguments; a maximum dimension (for the generating object), and a maximum rank. More documentation of the code below can be found in Entering a (graded bipartite) graph and Computing properties of graphs

Start by loading the FusionAtlas` package

In[1]:= <<FusionAtlas`

Loading FusionAtlas` version 0

Now, let's say we want all bipartite graphs having 5 or fewer vertices, with dimension less than or equal to 2. The option "Verbose" -> True explains how other bigraphs were ruled out.

In[2]:= FindAllBigraphs[2, 5, "Verbose" -> True]
Out[2]= {Allowed bigraphs -> {GradedBigraph[{{1}}], GradedBigraph[{{1}}, {{1}}], GradedBigraph[{{1}}, {{1}, {1}}], GradedBigraph[{{1}}, {{1}, {1}, {1}}], GradedBigraph[{{1}}, {{1}}, {{1}}], GradedBigraph[{{1}}, {{1}}, {{1}}, {{1}}]}, Disallowed bigraphs -> {{GradedBigraph[{{1}}, {{1}}, {{1}, {1}}], Bimodule dimensions less than 2 must satisfy the GHJ condition.}, {GradedBigraph[{{1}}, {{1}, {1}}, {{1, 0}}], All bimodule dimensions must be at least 1.}}}

The first argument of FindAllBigraphs can also be a range. Here we find all bigraphs with dimension between 2 and 2.1, with rank at most 10.

In[3]:= FindAllBigraphs[{2, 2.1}, 10]
Out[3]= {GradedBigraph[{{1}}, {{1}}, {{1}}, {{1}, {1}}, {{1, 0}, {1, 0}}], GradedBigraph[{{1}}, {{1}}, {{1}}, {{1}, {1}}, {{1, 0}, {0, 1}}, {{1, 0}, {0, 1}}]}

The function DisplayBigraph makes it easy to see which graph a sequence of matrices represents. For example, the two above are the dual Haagerup and Haagerup principal graphs:

In[5]:= DisplayBigraph[GradedBigraph[{{1}}, {{1}}, {{1}}, {{1}, {1}}, {{1, 0}, {1, 0}}]]
Atlas of subfactors Out 4.gif
Out[5]= -Graphics-
In[7]:= DisplayBigraph[GradedBigraph[{{1}}, {{1}}, {{1}}, {{1}, {1}}, {{1, 0}, {0, 1}}]]
Atlas of subfactors Out 6.gif
Out[7]= -Graphics-


The function GraphsByGlobalDimension[D, k] finds all bigraphs with global dimension at most D, with no more than k vertices with dimension 1. (All bigraphs with index < 4 are ignored.)

Todo list

  • Tensor-solver
    • Make the tensor-solver work for fusion graphs. (Currently it only accepts bifusion graphs.)
    • Re-expansion
  • Extract the fusion graph for the even part from a bifusion graph.
  • Make google see this page
  • Do something so that qBinomial in the KnotTheory package and the FusionAtlas package aren't in conflict
  • Modify the cyclotomic test so that it only checks the square of the dimension of the generator (ie, the index)