Computer Calculations for Research

Here you will find the descriptions of my computer software projects. These were motivated by particular computations to support my research projects, and I am working to make the algorithms I've written usable to other mathematicians through open-source mathematics systems.

[the Sage car]

Building the car, not reinventing the wheel. (Image by Martin Albrecht)

Most of my software is designed for Sage, which incorporates a staggering number of open-source mathematics programs into a uniform and integrated context based on the programming language Python. This has been described as building the car instead of reinventing the wheel.

Interactive visualization of A(2)

This project is joint with Bob Bruner.

Our interactive diagram displays the Steenrod subalgebra \(\mathcal{A}(2)\) by its decomposition into eight left cosets of \(\mathcal{A}(1)\). The left action of \(Sq^1\), \(Sq^2\), and \(Sq^4\) is displayed upon clicking dots.

[A(2) diagram]

Left cosets of \(\mathcal{A}(2)\). Click for details and interactive diagram.

This has several useful features:

  • It is 'even-handed', giving 8 subsets of size 8.
  • It is well related to \(ko\)-theory.
  • It has a simple form, since \(\mathcal{A}(2)/\!/\mathcal{A}(1) = \mathcal{A}(2)/\mathcal{A}(2)(Sq^1,Sq^2)\) is concentrated in dimensions 0, 4, 6, 7, 10, 11, 13 and 17.

Calculations for Complex Oriented Cohomology Theories

The formal group law structure on complex oriented cohomology theories enables explicit computation of power operations and related structure for these topological objects. The goal of this project is to expand existing computer code to support further research related to these objects, in terms of certain power series computations. Developing algorithms for an open-source computer algebra system makes them available to other researchers, both for scientific review and further applications.

The Universal Case

We used calculations of the universal p-typical formal group laws for p ≤ 13 to study power operations on the complex cobordism spectrum, MU.

Example: Consider the ZZ/13 cyclic power operation on MU_(13). We compute a summand of P_{ZZ/13} [CCP^{24}] obtained from Quillen's map MU_(p) —> BP. The appearance of non-zero coefficients is an obstruction to induced power operations on BP. For further details, see the project on Power Operations and p-typicality.

\begin{align} MC_{24}(\xi) \equiv \; & 11v_1^{40}\xi^{744} + (6v_1^{41} + 6v_1^{27}v_2)\xi^{756}\\\\ & + O(\xi^{768}) \quad \text{mod } \langle 13 \rangle \xi \end{align}

Related calculations have allowed us to formulate the following conjecture for general primes p: That the first non-zero coefficient of MC_{2(p-1)} occurs at

\[ v_1^{3p+1} \xi^n, \qquad n = 5p^2 − 8p + 3. \]

A summer undergraduate project with Eddie Beck extends our results and confirms the conjecture for higher primes by improving the algorithm for our computaitons.

Computational packages:

A first draft of the necessary algorithms was developed with Mathematica 7. Although the Mathematica software was easy to get started with, we were not able to develop a version which was practical for primes greater than 5. We have developed another package using the open-source software Sage. With this package, we were able to expand our results to the primes 7, 11, and 13. Currently, there is a rough working version available (2010). Further work will expand this package to support calculations for a range of complex oriented cohomology theories (see below).

Expanding Functionality and Usability

This is work in progress.

The plan for this project is as follows:

  • Implement multivariate power series for Sage.
    This step was completed during the summer of 2011, when the code was merged into Sage version 4.7.1.
  • Implement Hopf algebroids for Sage.
    Independent effort has already begun in this direction; the focus here will be incorporating Hopf algebroids into Sage's category-theoretic framework so that the functionality integrates seamlessly with the rest of Sage's object types.
  • Implement complex oriented cohomology theories as a subclass of Hopf algebroids.
    This is the stage at which existing code from previous projects will be merged into this project.
  • Improve the basic algorithms and functionality so that other topologists can make use of the calculator. This was one goal of the undergraduate summer project with Eddie Beck (2011).

Weyl Group Calculations for Linkage of Dominant Weights

Two dominant weights, \(\lambda\) and \(\tau\), of a reductive algebraic group are linked over \(p > 0\) if they are in the same orbit of the affine Weyl group, \(W_p\). The Linkage Principle gives a (non-)linkage condition for vanishing of certain \(Ext^1\) groups between highest-weight modules, and thus an avenue for approaching calculations of Lie algebra cohomology by computer.

[E8 with thread / E8 con hilo tensado]

Construction showing a two-dimensional projection of the 248 8-dimensional root vectors of E8. The image comes from the series Hilorama de E8.

We developed a package available here for the computational algebra program GAP. This package determines whether given dominant weights are linked with each other at given primes; a future version will be extended to compute additional linkage data (e.g. strong linkage, very strong linkage), with potential applications to calculations of translation functors and other fine structure of modules over an algebraic group.

Composition factors of Weyl modules

[poset of composition factors]

Weyl module V(omega_148) for C_2185 at the prime 3.

Adamovich and Kleshchev-Sheth give combinatorial algorithms for determining the composition factors of certain algebraic groups and the symmetric groups. As part of the project on low-degree cohomology, we developed Sage code to implement these algorithms and draw the resulting posets of composition factors.

If you're interested in using it, the source code is completely documented (over 400 doctests) and available under the GPL. And if you have further questions or comments, I would love to hear from you! To use the code, just download the .py Sage source file, and load it into your Sage session. The .patch file is an alternative format; just ignore it if you don't know what it is.

Creative Commons License

The pages of nilesjohnson.net are licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported License.