In my previous post about combinatorial Heegaard floer homology, I described the basic structure for how we will define the Homology groups . We need an Abelian group with a relative grading and a boundary map that sends each graded subgroup into the subgroup one index lower, and whose square is zero. The homology group is then defined as the kernel of quotiented by the image of . Last time I described the group : Given a Heegaard diagram for a given 3-manifold, consisting of loops , then is a direct product of copies of , with one copy for each pairing of the curves. (A pairing is a collection of points such that each contains exactly one of the points and each contains exactly one point.) In this post, I will describe the grading on this group and the boundary map .
In fact, there are two relative gradings that we will need to define. Given two pairings , the first relative grading associates to an element of the homology of the ambient 3-manifold . The second associates to this pair an integer. In both cases, switching the order of the pairing will give us the negative of the original.
To get an element of the first homology of from two pairings, we use the following construction: Each contains a point in and a point in , which cut into two arcs. Choose one of these arcs in each , and a similar arc in each . The union of all these arcs is a collection of simple closed curves in the Heegaard surface. Further, we can orient these curves by having each arc in each point towards the point in and having each arc in a point towards the point in . (Or the other way around, as long as we choose a convention in advance.) Since the Heegaard surface is embedded in , this collection of oriented loops in the Heegaard surface gives us a collection of oriented loops in , which defines an element of the first homology. Note that if we had chosen a different arc in one of the s, the new collection of loops would result from pushing an arc across a disk, and would thus define the same homology class. So this homology class is well defined, independent of our choices at the beginning.
This gives us our first relative grading, which splits the generators of into equivalence classes, where two pairings are equivalent if they define the trivial homology class. We will define our second grading on each of these equivalence classes. But first we need a few more definitions.
Recall that the union of the Heegaard diagram curves cut the Heegaaard diagram into a collection of regions, one of which contains a marked point. A positive domain is a non-negative integer-weighted sum of the complementary regions that don’t contain the marked point. In other words, we write a non-negative integer in each complementary region, making sure to write a zero in the marked region. Below, I’ll drop the adjective positive, and just say domain to mean a positive domain.
A region will define a (possibly negative) integer weighted sum of points in as follows: Choose an orientation on the Heegaard surface . The boundary a region , is a collection of subarcs of the and curves, and an orientation is induced on each of these arcs from the orientation on that comes from . Define to be the positive positive endpoints of the arcs minus the negative endpoints of the arcs. (Notice that in addition to choosing an orientation on we have also chosen the curves over the curves.) Given a domain , we define .
So is a weighted sum of points in the intersection between the two sets of Heegaard diagram curves. A generator for is also a sum of such points of intersection. If we can define a domain such that (where and are generators for ) then we will define the Maslov index of by a formula in terms of the domain . You can read about this formula in Lipshitz’s paper . Even though it’s a very simple formula, I’m going to skip the details right now for reasons that I’ll explain below.
We want the Maslov index to be defined for any pair of generators whose homology grading is trivial. Given such a pair , the collection of loops in they define is homology trivial in , so they bound an immersed, orientable surface . Because the union of and the disks bounded by the curves cut into two balls, the surface can be homotoped into the union of and these disks. Moreover, we can do this in a way that avoids the marked region in . Then the intersection of with will define a domain in , and it is straightforward to check that .
Now that we have the Maslov index, we want to define a boundary map that sends each generator into the subspace of spanned by the generators with Maslov index one less than . To do this, one defines a function called the count that assigns an integer to each domain . Then we define to be the sum of all the generators such that there is a domain with Malov index and count equal to one, and with .
So to understand the boundary map, we only need to know which domains have Maslov index and count equal to one. This is where Sarkar-Wang and the nice Heegaard diagrams come in. Sarkar and Wang  showed that if one has a nice Heegaard diagram (which I defined at the end of my last post) then a domain will have Maslov index and count equal to one if and only if each region in the domain has weight one or zero and the union of the regions with weight one forms a bigon or quadrilateral with no points of or in their interior. In the case of a bigon, will be related to by replacing one corner of the bigon with the other corner. For a quadrilateral, will contain two diagonal corners, and will result from replacing those two corners with the other two diagonal corners. In both cases, all the remaining points of and will coincide.
Once all the dust has settled, there is a beautifully simple algorithm for calculating the homology: Given a Heegaard diagram, one can enumerate all the pairings. Deciding if two pairings define the trivial homology group of the manifold can be done via the Heegaard diagram. Then one only needs to enumerate the quadrilateral and bigon domains, in order to define the boundary map. It’s not necessarily something I would want to do by hand, but it is a whole lot simpler than trying to classify holomorphic disks.