Contracting a separating bridge #
Contracting the bridge in bridgeGraph G H x y gives the vertex wedge
vertexWedge G H x y. This file proves the divisor-theoretic statement
behind that observation: merging the two bridge-endpoint coefficients
preserves degree, linear equivalence, winnability, and every rank condition.
The proofs are entirely at the level of divisors and firing scripts. In particular, no graph isomorphism or connectivity hypothesis is needed.
The declarations remain in the established MarkedGraphs namespace for API
compatibility.
Contract the bridge endpoints, using the left endpoint as the vertex of the resulting wedge.
Equations
- Utilities.contractBridgeVertex G H x y = Sum.elim Sum.inl (Utilities.wedgeRightVertex G H x y)
Instances For
Push a divisor through bridge contraction. The coefficients at the two bridge endpoints are added; every other coefficient is unchanged.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Divisor pushforward along contraction of the separating bridge.
Equations
- Utilities.bridgePushforward G H x y = Utilities.bridgePushforwardHom G H x y
Instances For
The canonical lift puts the coefficient of the common wedge vertex at the left bridge endpoint and puts zero at the right bridge endpoint.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Canonical lift of a wedge divisor across the contracted bridge.
Equations
- Utilities.bridgeCanonicalLift G H x y = Utilities.bridgeCanonicalLiftHom G H x y
Instances For
Bridge contraction preserves divisor degree.
The canonical lift also preserves degree.
Pushforward takes effective divisors to effective divisors.
A wedge divisor is effective exactly when its canonical lift is.
Restrict a firing script on the bridge graph to the left factor.
Equations
- Utilities.restrictLeftBridgeScript G H x y σ a = σ (Sum.inl a)
Instances For
Restrict a firing script on the bridge graph to the right factor.
Equations
- Utilities.restrictRightBridgeScript G H x y σ b = σ (Sum.inr b)
Instances For
After bridge contraction, normalize the right restriction of a firing
script by a constant so that its value at y agrees with the left value at
x, then glue the two restrictions.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Every bridge script is, up to a constant, the sum of its endpoint-constant factor extensions and a multiple of the left-side indicator.
Principal divisors on a bridge split into factor-principal parts plus the single elementary transfer across the bridge.
Pushing a zero-extended left divisor through bridge contraction gives its literal left lift to the wedge.
Pushing a zero-extended right divisor through bridge contraction gives its right lift to the wedge.
The contracted firing script has exactly the two factor-principal parts.
Bridge contraction sends every principal divisor to a principal divisor, with an explicit contracted firing script.
Every divisor on the bridge graph is linearly equivalent to the canonical
lift of its contraction. The sole correction is a transfer across the
bridge, witnessed by leftSideIndicator.
Linear equivalence descends through bridge contraction.
Pull a firing script on the wedge back to the bridge graph, assigning the common wedge value to both bridge endpoints.
Equations
- Utilities.expandWedgeScript G H x y σ = Sum.elim (fun (a : G.V) => σ (Sum.inl a)) fun (b : H.V) => σ (Utilities.wedgeRightVertex G H x y b)
Instances For
Contracting an endpoint-compatible lifted script recovers the original wedge script literally.
A canonical lift of a principal wedge divisor is principal on the bridge graph.
Canonical lift preserves linear equivalence from the wedge to the bridge.
Linear equivalence on the bridge graph is exactly linear equivalence of the contracted divisors.
Winnability is invariant under contraction of a separating bridge.
Every rank inequality is invariant under contraction of a separating bridge.
Baker--Norine rank itself is unchanged by contracting a separating bridge.