Dual graphs of nodal curves #
The dual graph of a proper nodal curve X over an algebraically closed field records how
the curve is assembled from smooth pieces. Its vertices are the irreducible components of the
normalization of X, its edges are the nodes of X, and the two endpoints of an edge are the
components carrying the two branches of the node; when both branches lie on one component the
edge is a loop. Each vertex is labelled by the genus of its normalized component, and each
marking of a pointed curve is attached to the component on which it lies.
This file introduces that combinatorial structure, TauCeti.DualGraph, together with the
numerical invariants through which the geometry of the curve is read off from it:
- the valence of a vertex, the number of branches of nodes on the component, so that a loop counts twice;
- the first Betti number
b₁ = #edges - #vertices + 1of the connected graph and the arithmetic genuspₐ = ∑ᵥ gᵥ + b₁encoded by the graph; - the log-canonical degree
2gᵥ - 2 + val(v) + n(v)of a vertex carryingn(v)markings, which is the degree ofω_X(s₁ + ⋯ + sₙ)on the corresponding component.
A pointed nodal curve is stable exactly when every component has positive log-canonical degree,
and semistable when none has negative degree; TauCeti.DualGraph.IsStable and
TauCeti.DualGraph.IsSemistable are these conditions on the graph.
Main results #
TauCeti.DualGraph.sum_valence: the handshake identity∑ᵥ val(v) = 2 · #edges.TauCeti.DualGraph.card_vertex_le_card_edge_add_one: a connected graph has at most one more vertex than it has edges, so the first Betti number is computed without truncation (TauCeti.DualGraph.firstBetti_add_card_vertex).TauCeti.DualGraph.sum_logCanonicalDegree: the log-canonical degrees add up to2pₐ - 2 + n, the total degree ofω_X(s₁ + ⋯ + sₙ).TauCeti.DualGraph.IsStable.card_vertex_leandTauCeti.DualGraph.IsStable.card_edge_le: a stable graph of genusgwithnmarkings has at most2g - 2 + nvertices and at most3g - 3 + nedges.TauCeti.DualGraph.isSemistable_iff_forall_not_isRationalTail: an unmarked graph of arithmetic genus at least one is semistable exactly when it has no rational tails, andTauCeti.DualGraph.isStable_iff_forall_not_isRationalTail_and_not_isRationalBridge: an unmarked graph of arithmetic genus at least two is stable exactly when it has neither rational tails nor rational bridges.TauCeti.DualGraph.isRationalTail_or_isRationalBridge_of_logCanonicalDegree_nonpos: a vertex of nonpositive log-canonical degree other than the only vertex is a rational tail with at most one marking or an unmarked rational bridge. In the stable range2g - 2 + n > 0, a vertex of log-canonical degree zero is a rational tail with exactly one marking or an unmarked rational bridge (TauCeti.DualGraph.isRationalTail_or_isRationalBridge_of_logCanonicalDegree_eq_zero).
Reindexing #
TauCeti.DualGraph.reindex reindexes the markings along a map e : κ → ι, keeping the curve and
taking the e i-th marking as the new i-th marking. Along an equivalence it reorders the
markings and preserves log-canonical degrees, stability and semistability; along
some : ι → Option ι it forgets the marking none.
Implementation notes #
An edge carries an ordered pair of endpoints, so the two branches of a node are always two distinct half-edges, even for a loop. Valence counts half-edges, which is what makes a loop contribute two, matching the two points of the normalization lying over a self-node.
Rational tails and rational bridges are defined without reference to markings, as in the unpointed theory of the Stacks Project; the characterizations of stability through them are stated for unmarked graphs.
References #
- Stacks, Tag 0E6X (semistable curves) and Stacks, Tag 0E73 (stable curves).
- E. Arbarello, M. Cornalba and P. A. Griffiths, Geometry of Algebraic Curves, Volume II, Chapter X, for dual graphs of pointed nodal curves.
The dual graph of a proper nodal curve over an algebraically closed field, with markings
indexed by ι.
Vertex is the finite nonempty set of irreducible components of the normalization, Edge is the
finite set of nodes, endpoint e 0 and endpoint e 1 are the components carrying the two
branches of the node e, genus v is the genus of the normalized component v, and marking i
is the component carrying the i-th marking. The curve is connected, so the graph is.
- Vertex : Type u
The finite nonempty type of vertices: the components of the normalization.
The vertices form a finite type.
- vertexDecidableEq : DecidableEq self.Vertex
Equality of vertices is decidable.
There is at least one vertex.
- Edge : Type u
The finite type of edges: the nodes.
The edges form a finite type.
- edgeDecidableEq : DecidableEq self.Edge
Equality of edges is decidable.
The components carrying the two branches of a node.
The genus of a normalized component.
- marking : ι → self.Vertex
The component carrying a marking.
- connected (v w : self.Vertex) : Relation.ReflTransGen (fun (v w : self.Vertex) => ∃ (e : self.Edge), self.endpoint e 0 = v ∧ self.endpoint e 1 = w ∨ self.endpoint e 0 = w ∧ self.endpoint e 1 = v) v w
Any two vertices are joined by a chain of edges.
Instances For
Adjacency and connectedness #
Any two vertices are joined by a chain of adjacencies.
The simple graph on the vertices joining two distinct vertices when some edge does.
Instances For
The simple graph underlying a dual graph is connected.
A connectivity criterion for a graph built on the image of a surjection φ from the vertices
of G: it suffices that each edge of G is either collapsed by φ or carried by φ to an edge
of the new graph, in either orientation.
A connected graph has at most one more vertex than it has edges.
Valence and markings #
The handshake identity: the valences add up to twice the number of edges.
Every marking lies on exactly one component.
Betti number and arithmetic genus #
The first Betti number #edges - #vertices + 1 of the connected graph.
Instances For
The first Betti number is computed without truncation.
The arithmetic genus encoded by the graph: the sum of the genera of the components and the first Betti number.
Instances For
A component's genus is at most the arithmetic genus of the whole graph.
The arithmetic genus in terms of the numbers of vertices and edges.
If every edge at v is a loop, the graph has the single vertex v, and twice its arithmetic
genus is 2 g(v) + val(v).
Log-canonical degree and stability #
The log-canonical degree 2 g(v) - 2 + val(v) + n(v) of a vertex carrying n(v) markings.
This is the numerical value that the degree of ω_X(s₁ + ⋯ + sₙ) takes on the corresponding
component of a pointed nodal curve.
Instances For
The log-canonical degrees add up to 2pₐ - 2 + n.
A vertex has nonpositive log-canonical degree exactly when it is a rational component with at most two special points, or a component of genus one with none.
A vertex has negative log-canonical degree exactly when it is a rational component with at most one special point.
A stable graph of genus g with n markings has at most 2g - 2 + n vertices.
A stable graph of genus g with n markings has at most 3g - 3 + n edges.
The stable range: a stable graph of genus g with n markings has 2g - 2 + n > 0.
Rational tails and rational bridges #
A rational tail has log-canonical degree -1 + n(v).
A rational bridge has log-canonical degree n(v).
If a vertex of valence two carries a loop e, the loop accounts for both half-edges at the
vertex: an edge has an endpoint there exactly when it is e.
A vertex of nonpositive log-canonical degree in a graph with at least one other vertex is a rational tail with at most one marking or an unmarked rational bridge.
In the stable range 2g - 2 + n > 0, a vertex of log-canonical degree zero is a rational tail
carrying exactly one marking or an unmarked rational bridge.
An unmarked graph of arithmetic genus at least one is semistable exactly when it has no rational tails.
An unmarked graph of arithmetic genus at least two is stable exactly when it has neither rational tails nor rational bridges.
Reindexing the markings #
The dual graph with markings reindexed along e : κ → ι: the same curve, with the e i-th
marking of G as its i-th marking. Along an equivalence this reorders the markings, and along
some : ι → Option ι it forgets the marking none.
Instances For
Reindexing the markings does not change the arithmetic genus.