## Homological computations

### Remember to vote up questions/answers you find interesting or helpful (requires 15 reputation points)

Suppose I have a group acting on some Hadamard manifold, and I want to understand as much as possible about the (co)homology of the quotient. In my case I can find a fundamental domain for the action and the side-pairing transformations. Is there some canned piece of software which will compute the homology groups (I know how to do this in principle, but rather not actually do all the work) and the cohomology ring structure (in my ignorance, I don't know how to do this even in principle, so references would certainly be appreciated)?

*EDIT

To elaborate slightly: think of the projective model of $\mathbb{H}^n,$ and a group (discrete, but not known a priori to act without fixed points), and construct the Dirichlet domain, which is a convex polytope, for which we have the side-pairing transformations. Now, clearly by triangulating the fundamental domain enough we get a simplicial decomposition of the quotient, but since all this is happening in high dimensions (five or higher), this is already a pain to program....

-

2
+1: I really hope this gets good answers. In this day and age we really should be able to get computers to do some of this work for us – David White Oct 7 2011 at 20:32
Can you give us the description of the fundamental domain and the glueing rule on the boundary? – Mariano Suárez-Alvarez Oct 7 2011 at 21:56

1
The website computop.org is a good source for computational topology software; maybe you'll find something there? – jc Oct 8 2011 at 4:06
@Mariano and @Vel: see the Edit for some more info... – Igor Rivin Oct 8 2011 at 9:55
@jc: thanks, will look! – Igor Rivin Oct 8 2011 at 9:57

## 2 Answers

What is the fundamental domain of the action? In case you can easily create a cubical or simplicial decomposition of this region, there is tons of software out there to help you with the grunt-work.

I would recommend the Computational Homology Project (CHomP) which is run by Konstantin Mischaikow's group at Rutgers. I believe he co-wrote the book on efficient homology computation. Here is a link to the CHomP website and some documentation, I think you will want to use the program called "homsimpl" in case of a simplicial decomposition and "homcubes" in the (highly!?) unlikely case that your fundamental domain can be represented as a union of axis-parallel cubes with integer vertices.

It's been a while since I have personally used this code, but I think it is dimension-independent. I know for a fact that it is written in C++, so you will need a compiler such as gcc to build it from source. That being said, binaries are available here for most non-obscure operating systems.

As far as the cup product computation is concerned, I suspect that you will run into some difficulties. For cubical complexes, there are results (pdf) of Kaczynski (also a co-author of the Computational Homology book) which give pseudo-code (see page 6) but I must confess that I have been unable to find a software implementation. For simplices the situation is considerably harder because in general the product of two simplices is not a simplex, and so there are technical difficulties in constructing the Kunneth map. It is difficult to see how software will bypass this issue for arbitrary complexes, but I would love to test-drive an implementation if one exists.

All the best with your computations!

-

Thanks! It is clear that in my case one can get the simplicial decomposition, but this requires more work (see edit). – Igor Rivin Oct 8 2011 at 9:55

### You can accept an answer to one of your own questions by clicking the check mark next to it. This awards 15 reputation points to the person who answered and 2 reputation points to you.

I'm not sure how much this will help you, but one person who seems pretty active in creating software to compute homology and cohomology is Robert Ghrist. You can find his website here and an MO post where I discuss his work here.

I'm also including some links below which I've used in the past to do some cohomology computations. These computations used spectral sequences, so this might not help you as much as Ghrist's work, but I figured it could not hurt to include these links. I'm sorry if this turns out not to help:

Bob Bruner's code and tables

Christian Nassau's website for more modern approaches to the same types of computations

-

@David: thanks! I am familiar with some of Rob's work; I don't think he has anything directly relevant, but I will certainly talk to him... – Igor Rivin Oct 8 2011 at 9:56
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 1, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.3, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9518275856971741, "perplexity_flag": "middle"}