Finite bipartite ribbon graphs #
A finite bipartite ribbon graph consists of a finite set of edges, finite sets of black and white vertices, an endpoint of each colour for every edge, and a cyclic order on the edges incident to each vertex. The cyclic orders are encoded by two permutations of the common edge set. The two endpoint maps are surjective, which excludes isolated vertices, and requiring each incidence fibre to be a single cycle makes the encoding extensional: there is no unused cyclic-order data away from the incident edges.
The product of the two vertex rotations determines the face permutation, whose orbits are the
faces. Gluing a disc into each face gives a closed oriented surface, one for each connected
component, and eulerChar is its Euler characteristic |B| + |W| - |E| + |F|. This file also
provides morphisms, isomorphisms, automorphisms, connected components, vertex degrees, the two
incidence degree-sum formulas, and the copy of a ribbon graph in a higher universe.
References #
- S. K. Lando, A. K. Zvonkin, Graphs on Surfaces and Their Applications, Encyclopaedia of Mathematical Sciences 141, Springer, 2004, Chapter 1.
A finite bipartite ribbon graph, encoded by its two endpoint maps and the cyclic rotations of the common edge set around black and white vertices.
- E : Type u
The finite type of edges.
- B : Type u
The finite type of black vertices.
- W : Type u
The finite type of white vertices.
Finiteness of the edge set.
Finiteness of the black vertex set.
Finiteness of the white vertex set.
- decidableEqE : DecidableEq self.E
Decidable equality on edges.
- decidableEqB : DecidableEq self.B
Decidable equality on black vertices.
- decidableEqW : DecidableEq self.W
Decidable equality on white vertices.
The black endpoint of an edge.
The white endpoint of an edge.
- rotB : Equiv.Perm self.E
The cyclic rotation of edges around their black endpoints.
- rotW : Equiv.Perm self.E
The cyclic rotation of edges around their white endpoints.
- blackEnd_surjective : Function.Surjective self.blackEnd
Every black vertex is incident to an edge.
- whiteEnd_surjective : Function.Surjective self.whiteEnd
Every white vertex is incident to an edge.
The black rotation is a single cycle on every black incidence fibre.
The white rotation is a single cycle on every white incidence fibre.
Instances For
The black rotation preserves black endpoints.
The white rotation preserves white endpoints.
Permutations, faces, and connected components #
The face permutation is the inverse of the product of the two vertex rotations.
A face is an orbit of the face permutation on edges.
Equations
Instances For
The faces of a finite bipartite ribbon graph form a finite type, computably: lying in the same face is decided by iterating the face permutation.
Equations
The subgroup of edge permutations generated by the two vertex rotations.
Equations
Instances For
The rotation group is generated by the two vertex rotations.
The black rotation lies in the rotation group.
The white rotation lies in the rotation group.
A connected component is an orbit of the group generated by the two vertex rotations.
Equations
Instances For
The connected components of a finite bipartite ribbon graph form a finite type.
Equations
A bipartite ribbon graph is connected when it has an edge and its two rotations act jointly transitively on the edge set.
Equations
- Γ.IsConnected = (Nonempty Γ.E ∧ MulAction.IsPretransitive (↥Γ.rotationGroup) Γ.E)
Instances For
Connectedness of a bipartite ribbon graph: it has an edge, and the two rotations act jointly transitively on the edges.
A ribbon graph is connected exactly when it has one connected component.
Degrees and Euler characteristic #
The degree of a black vertex is the number of incident edges.
Equations
- Γ.blackDegree b = Fintype.card { e : Γ.E // Γ.blackEnd e = b }
Instances For
The degree of a black vertex is the number of edges whose black end it is.
The degree of a white vertex is the number of incident edges.
Equations
- Γ.whiteDegree w = Fintype.card { e : Γ.E // Γ.whiteEnd e = w }
Instances For
The degree of a white vertex is the number of edges whose white end it is.
Every black vertex has positive degree.
Every white vertex has positive degree.
The sum of the black vertex degrees is the number of edges.
The sum of the white vertex degrees is the number of edges.
The number of faces, counting every orbit of the face permutation.
Equations
- Γ.faceCount = Fintype.card Γ.Face
Instances For
The number of faces is the number of orbits of the face permutation.
The Euler characteristic |B| + |W| + F - |E| of the closed oriented surface obtained by
gluing a disc into each face of the ribbon graph (a disjoint union of closed surfaces when the
graph is disconnected).
Equations
- Γ.eulerChar = ↑(Fintype.card Γ.B) + ↑(Fintype.card Γ.W) + ↑Γ.faceCount - ↑(Fintype.card Γ.E)
Instances For
The Euler characteristic counts vertices of both colours and faces against edges.
Morphisms and isomorphisms #
A morphism of bipartite ribbon graphs maps edges and both colours of vertices, preserving incidences and intertwining both rotations.
The map on edges.
The map on black vertices.
The map on white vertices.
Black incidence is preserved.
White incidence is preserved.
- map_rotB : Function.Semiconj self.edge ⇑Γ.rotB ⇑Δ.rotB
The black rotations are intertwined.
- map_rotW : Function.Semiconj self.edge ⇑Γ.rotW ⇑Δ.rotW
The white rotations are intertwined.
Instances For
The identity morphism of a bipartite ribbon graph.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Composition of morphisms of bipartite ribbon graphs.
Equations
Instances For
The identity morphism fixes every edge.
The identity morphism fixes every black vertex.
The identity morphism fixes every white vertex.
A composite morphism maps an edge by the two edge maps in turn.
A composite morphism maps a black vertex by the two black-vertex maps in turn.
A composite morphism maps a white vertex by the two white-vertex maps in turn.
A morphism is determined by its edge map: every vertex is the end of an edge.
The identity morphism is a left identity for composition.
The identity morphism is a right identity for composition.
Composition of morphisms is associative.
An isomorphism of bipartite ribbon graphs is an equivalence on edges and on each colour of vertices that preserves incidences and intertwines both rotations.
The equivalence on edges.
The equivalence on black vertices.
The equivalence on white vertices.
Black incidence is preserved.
White incidence is preserved.
- map_rotB : Function.Semiconj ⇑self.edge ⇑Γ.rotB ⇑Δ.rotB
The black rotations are intertwined.
- map_rotW : Function.Semiconj ⇑self.edge ⇑Γ.rotW ⇑Δ.rotW
The white rotations are intertwined.
Instances For
The morphism underlying an isomorphism of bipartite ribbon graphs.
Equations
Instances For
The morphism underlying an isomorphism has the same edge map.
The morphism underlying an isomorphism has the same black-vertex map.
The morphism underlying an isomorphism has the same white-vertex map.
The identity isomorphism.
Equations
- TauCeti.BipartiteRibbonGraph.Iso.refl Γ = { edge := Equiv.refl Γ.E, black := Equiv.refl Γ.B, white := Equiv.refl Γ.W, map_blackEnd := ⋯, map_whiteEnd := ⋯, map_rotB := ⋯, map_rotW := ⋯ }
Instances For
The inverse of a ribbon-graph isomorphism.
Equations
Instances For
Composition of ribbon-graph isomorphisms.
Equations
Instances For
The identity isomorphism fixes every edge.
The identity isomorphism fixes every black vertex.
The identity isomorphism fixes every white vertex.
The inverse isomorphism maps edges by the inverse edge equivalence.
The inverse isomorphism maps black vertices by the inverse black-vertex equivalence.
The inverse isomorphism maps white vertices by the inverse white-vertex equivalence.
A composite isomorphism maps an edge by the two edge equivalences in turn.
A composite isomorphism maps a black vertex by the two black-vertex equivalences in turn.
A composite isomorphism maps a white vertex by the two white-vertex equivalences in turn.
Relabeling by a ribbon-graph isomorphism conjugates the black rotation to the target's.
Relabeling by a ribbon-graph isomorphism conjugates the white rotation to the target's.
Relabeling by a ribbon-graph isomorphism conjugates the face permutation to the target's.
Conjugating by an isomorphism carries the source rotation group onto the target one.
An isomorphism conjugates the groups generated by the two vertex rotations.
Equations
Instances For
The induced equivalence of rotation groups conjugates a permutation by the edge equivalence.
An isomorphism relabels the connected components of a bipartite ribbon graph.
Equations
Instances For
The relabelling of connected components sends the component of an edge to the component of its image.
Connectedness is invariant under isomorphism.
An isomorphism relabels the faces of a bipartite ribbon graph.
Equations
- f.faceEquiv = Quotient.congr f.edge ⋯
Instances For
The relabelling of faces sends the face of an edge to the face of its image.
An isomorphism preserves the degree of each black vertex.
An isomorphism preserves the degree of each white vertex.
Isomorphic bipartite ribbon graphs have the same number of faces.
Isomorphic bipartite ribbon graphs have the same Euler characteristic.
An isomorphism is determined by its edge equivalence: every vertex is the end of an edge.
The identity isomorphism is a left identity for composition.
The identity isomorphism is a right identity for composition.
Composing the inverse of an isomorphism with it gives the identity.
Composing an isomorphism with its inverse gives the identity.
Composition of isomorphisms is associative.
An edge bijection intertwining both rotations is the edge map of an isomorphism. The vertex maps are forced, the vertices of each colour being the cycles of the corresponding rotation.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The isomorphism built from an edge bijection has that bijection as its edge map.
The group of automorphisms of a bipartite ribbon graph.
Instances For
The automorphisms of a bipartite ribbon graph form a group under composition.
Equations
- One or more equations did not get rendered due to their size.
The identity automorphism acts trivially on edges.
Automorphisms multiply by composing their edge permutations.
The inverse automorphism acts on edges by the inverse permutation.
Universe lifting #
The copy of a ribbon graph in a higher universe, with edges and vertices of both colours
wrapped in ULift.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The number of edges is unchanged by universe lifting.
A ribbon graph is isomorphic to its copy in a higher universe, by ULift.down.
Equations
- Γ.uliftIso = { edge := Equiv.ulift, black := Equiv.ulift, white := Equiv.ulift, map_blackEnd := ⋯, map_whiteEnd := ⋯, map_rotB := ⋯, map_rotW := ⋯ }
Instances For
The universe-lifting isomorphism sends a lifted edge to the edge it wraps.
The universe-lifting isomorphism sends a lifted black vertex to the vertex it wraps.
The universe-lifting isomorphism sends a lifted white vertex to the vertex it wraps.