Two-pole joins #
This file packages the graph obtained by joining two pointed graphs at two
ordered pairs of poles. One cross-edge is installed as a separating bridge;
the second is then an addEdge. This presentation exposes the unique seam
phase created by the second edge while keeping divisors on the two factors as
literal functions on a sum type.
The API is deliberately divisor-generic. sumDivisor combines arbitrary
factor divisors, phase records the integral seam orbit, and the canonical
specialization identifies the residual of the local canonical sum with the
four pole chips. In genus two plus genus two, Riemann--Roch therefore says
that the two degree-four candidates have exactly the same rank.
A graph equipped with two ordered poles. The poles are allowed to coincide; the two cross-edges of a join are nevertheless loopless because they run between the two summands.
- first : G.V
The first attachment pole, used for the bridge retained in the lower-genus presentation.
- second : G.V
The second attachment pole, used for the additional cross-edge in the two-pole join.
Instances For
The lower-genus presentation of a two-pole join: retain only the first cross-edge, which is a separating bridge.
Equations
- Utilities.TwoPole.bridge A B p q = Utilities.bridgeGraph A B p.first q.first
Instances For
Join two graphs by matching their first poles and their second poles.
Equations
- Utilities.TwoPole.join A B p q = Utilities.addEdge (Utilities.TwoPole.bridge A B p q) (Sum.inl p.second) (Sum.inr q.second) ⋯
Instances For
Add divisors on the two factors by placing them on the two summands. The
same function is a divisor on both bridge and join, since addEdge keeps
the vertex type unchanged.
Equations
- Utilities.TwoPole.sumDivisor A B p q D E = Sum.elim D E
Instances For
The seam phase orbit #
Translate a divisor through the integral seam orbit created by the second cross-edge. This is the phase coordinate that has to be chosen when the one-bridge seed is lifted to a genuine two-pole join.
Equations
- Utilities.TwoPole.phase A B p q D n = D + n • Utilities.seamDivisor (Sum.inl p.second) (Sum.inr q.second)
Instances For
The canonical divisor of the bridge presentation is the sum of the two factor canonical divisors plus one chip at each bridge endpoint.
The four pole chips, regarded as a divisor on the two-pole join.
Equations
Instances For
The sum of the two local canonical divisors, with no pole chips added.
Equations
- Utilities.TwoPole.canonicalSum A B p q = Utilities.TwoPole.sumDivisor A B p q (canonicalDivisor A) (canonicalDivisor B)
Instances For
A two-pole join of connected factors is connected.
Canonical bookkeeping for a two-pole join. The global canonical divisor is the local canonical sum plus exactly the four pole chips.
The four pole chips are literally the canonical complement of the local canonical sum.
General Riemann--Roch comparison between the two canonical halves of a two-pole join.
The genus-two K_A+K_B duality lemma. On a two-pole join of two
connected genus-two graphs, the local canonical sum and the four pole chips
have equal rank. Thus either one may be used as the unmarked degree-four
witness.