fⁿ on a degree-one chart is (f / g)ⁿ #
The bridge between #585's two halves. ChartExtension.lean clears a power of f / g on the
chart through g; TwistSection.lean multiplies by the global section fⁿ of O(n). This file
says those are the same thing, so the halves meet with no correction factor.
Why this comes before the glue, not after #
The chart step produces, for each chart gᵢ, a section over D₊(gᵢ) obtained by clearing
(f / gᵢ)ⁿ — a different scalar on each chart. Those sections are not sections of any one sheaf,
so there is nothing to glue yet. Twisting is what makes them comparable: each becomes a section of
F(n), and F(n) is one sheaf. So the bridge is a precondition for gluing rather than a
finishing step, which is the opposite of the order the obvious reading of #585 suggests.
The computation #
intShiftZeroLinearEquiv_apply_mk fed the constant fraction fⁿ / 1 at d = n gives
d.toNat = n and (-d).toNat = 0, hence fⁿ · g⁰ over 1 · gⁿ. Cleaning that to fⁿ / gⁿ is
DegreeZeroLocalization.ext and simp: the deg fields differ (0 + n against n) and it does
not matter, because the embedding into LocalizedModule reads only numerator and denominator.
fⁿ / gⁿ is (HomogeneousLocalization.Away.isLocalizationElem hg hf) ^ n — exactly the scalar
exists_pow_smul_eq_res_chart clears.
The section level is a one-liner #
Both sectionOfMem and the chart trivialization are defined pointwise, so
intShiftSectionLinearEquivOn_sectionOfMem is the fibre statement applied at hU x.2 and nothing
else. The same thing happened in #584's chartModuleTwistSectionEquiv_sectionTwistMul: in this
construction, lifting from fibres to sections is free, and the cost is always in the fraction
identity underneath.
Scope #
The scalar identity, at a localization and on sections. The glue — one n across a finite cover
of degree-one charts, a second exponent for the overlaps, and the assembly of the twisted local
sections into a global section of F(N) — is not here; it is
Proj/Modules/Glue.lean's exists_globalSection_twistBy.
The chart trivialization sends the global section fⁿ of O(n) to the fraction
fⁿ / gⁿ.
fⁿ / gⁿ is (f / g)ⁿ, which is exactly the scalar the chart extension step clears — so the two
halves of #585 meet with no correction factor.
The bridge on sections: over an open inside D₊(g), trivializing the global section fⁿ
of O(n) gives the fraction fⁿ / gⁿ at every point.
The degree-zero fraction fⁿ / gⁿ at a point of D₊(g).
frac at a = fⁿ, b = gⁿ, both of degree n. #825 made this a definition rather than a
second HomogeneousLocalization.mk with a rfl lemma bridging the two.
Equations
- AlgebraicGeometry.Proj.fracPow 𝒜 hf hg n hx = AlgebraicGeometry.Proj.frac 𝒜 ⋯ ⋯ ⋯
Instances For
Rescaling the section gⁿ of O(n) by fⁿ/gⁿ gives the section fⁿ.
(fⁿ/gⁿ) · (gⁿ/1) = fⁿ/1, at every point of an open inside D₊(g).
This is the identity that makes the per-chart extensions of #585 glue, on the
route that never trivializes: taking the section of F(n) over D₊(g) to be
twistBy gⁿ applied to the chart extension, its restriction to D₊(g) ⊓ D₊(f)
is twistBy gⁿ of (f/g)ⁿ • s, and this says that is twistBy fⁿ of s —
the same object for every chart, so agreement is immediate and no transition
function appears.