Čech cohomology is a way of defining cohomology groups (a topological invariant with algebraic structure) on a topological space. We give a rough description of the construction, in a very special case of a torus, and relate it to the construction of the nonstandard alphabets.

Fix a surface, say the two dimensional torus , and the abelian group with two elements. Fix also a covering of the torus by contractible open sets, e.g, by (small expansions of) the hexagons forming the tessellation of the torus depicted below.

In this covering, the open sets correspond to the hexagons, an intersection of two open sets is either empty, or corresponds to an edge, and an intersection of three open sets is either empty, or corresponds to a vertex.

An *n-cochain* is a mapping from the intersections of open sets to . Therefore, a 1-cochain maps the edges of to , and a 2-cochain maps the vertices of to . Two *n*-cochains may be added together, in a pointwise fashion, using the structure of .

A 1-cochain defines its *coboundary* , which is a 2-cochain associating to each vertex the sum of the values assigned by to the adjacent edges. A 2-cochain obtained in this way is called a 2-coboundary. For example, the coboundary of the 1-cochain which maps one edge to 1 and all others to 0 is the 2-coboundary which maps the endpoints of this edge to 1, and all other vertices to 0. More generally, 2-coboundaries are exactly those assignments which map an even number of vertices to 1. Two 2-cochains are *equivallent *if they differ by a 2-coboundary. The group of equivalence classees of 2-cochains is the 2nd cohomology group of the torus (with values in ).

Modulo equivalence, there are two 2-cochains: the ones with an even number of 0’s and the ones with an odd number of 1’s. Therefore, the 2nd cohomology group of the torus is isomorphic to .

To me, the second cohomology group of the torus bears a strong resemblance to the construction from our paper on nonstandard alphabets. That construction can be described roughly as follows.

Consider again the graph of the hexagonal tessellation of the torus. With each edge, associate a pair of atoms, called duals of each other. The dual of an atom is denoted . Let be a vertex and , , be the three unordered pairs of atoms associated with the edges adjacent to . Then with we associate a mapping such that for any . There are exactly two such mappings, and one of them – denoted – is chosen to be associated with . We may then view the graph as a labeled graph, where each edge is labeled by a pair of atoms, and each vertex is labeled by a mapping as above. The language consists of those graphs labeled like that, such that one can choose an atom from each edge, so that for every vertex , if are the atoms chosen from the adjacent edges. It turns out that is recognizable by a nondeterministic Turing machine with atoms, but not by a deterministic one.

To relate the language with the 2nd cohomology group of the torus, consider a graph labeled as above. Identify the elements of each pair of dual atoms with the elements of , in an arbitrary way. Define a 2-cochain on which associates with a vertex the value . Observe that modifying the identification of one pair with results in a 2-cochain which differs from exactly at two nodes. More generally, modifying the identification of an arbitrary number of pairs results in a 2-cochain which differs from by a 2-coboundary, so and are equivalent. Therefore, is uniquely defined from the labeled graph, up to equivalence. The labelled graph is in the language if and only if the mapping defined on the vertices is equivalent to the trivial mapping, i.e., is a coboundary.

In this sense, the language is the language of those 2-cochains which are 2-coboundaries.