From 1e85bd34e0748f2feab9de9029a7a235321ca162 Mon Sep 17 00:00:00 2001 From: HechtiDerLachs Date: Tue, 8 Oct 2024 22:44:31 +0200 Subject: [PATCH] More AbsWeilDivisor. --- .../MorphismFromRationalFunctions/Methods.jl | 2 +- .../Schemes/Divisors/WeilDivisor.jl | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/AlgebraicGeometry/Schemes/CoveredSchemes/Morphisms/MorphismFromRationalFunctions/Methods.jl b/src/AlgebraicGeometry/Schemes/CoveredSchemes/Morphisms/MorphismFromRationalFunctions/Methods.jl index b4b10284f6f5..3416ba8a6966 100644 --- a/src/AlgebraicGeometry/Schemes/CoveredSchemes/Morphisms/MorphismFromRationalFunctions/Methods.jl +++ b/src/AlgebraicGeometry/Schemes/CoveredSchemes/Morphisms/MorphismFromRationalFunctions/Methods.jl @@ -574,7 +574,7 @@ function pushforward(Phi::MorphismFromRationalFunctions, D::AbsAlgebraicCycle) error("not implemented") end -function pushforward(Phi::MorphismFromRationalFunctions, D::WeilDivisor) +function pushforward(Phi::MorphismFromRationalFunctions, D::AbsWeilDivisor) is_isomorphism(Phi) || error("method not implemented unless for the case of an isomorphism") #is_proper(Phi) || error("morphism must be proper") all(is_prime, components(D)) || error("divisor must be given in terms of irreducible components") diff --git a/src/AlgebraicGeometry/Schemes/Divisors/WeilDivisor.jl b/src/AlgebraicGeometry/Schemes/Divisors/WeilDivisor.jl index 0e4af4ca0e0e..9275a72e3b2c 100644 --- a/src/AlgebraicGeometry/Schemes/Divisors/WeilDivisor.jl +++ b/src/AlgebraicGeometry/Schemes/Divisors/WeilDivisor.jl @@ -5,12 +5,12 @@ underlying_cycle(D::AbsWeilDivisor) = underlying_cycle(underlying_divisor(D)) underlying_cycle(D::WeilDivisor) = D.C ### type getters -scheme_type(D::WeilDivisor{S, U, V}) where{S, U, V} = S -scheme_type(::Type{WeilDivisor{S, U, V}}) where{S, U, V} = S -coefficient_ring_type(D::WeilDivisor{S, U, V}) where{S, U, V} = U -coefficient_ring_type(::Type{WeilDivisor{S, U, V}}) where{S, U, V} = U -coefficient_type(D::WeilDivisor{S, U, V}) where{S, U, V} = V -coefficient_type(::Type{WeilDivisor{S, U, V}}) where{S, U, V} = V +scheme_type(D::AbsWeilDivisor{S, U}) where{S, U} = S +scheme_type(::Type{AbsWeilDivisor{S, U}}) where{S, U} = S +coefficient_ring_type(D::AbsWeilDivisor{S, U}) where{S, U} = U +coefficient_ring_type(::Type{AbsWeilDivisor{S, U}}) where{S, U} = U +coefficient_type(D::AbsWeilDivisor{S, U}) where{S, U} = elem_type(U) +coefficient_type(::Type{AbsWeilDivisor{S, U}}) where{S, U} = elem_type(U) @doc raw""" WeilDivisor(X::CoveredScheme, R::Ring) @@ -352,7 +352,7 @@ function intersect(D::AbsWeilDivisor, E::AbsWeilDivisor; end -function pushforward(inc::CoveredClosedEmbedding, W::WeilDivisor) +function pushforward(inc::CoveredClosedEmbedding, W::AbsWeilDivisor) X = domain(inc) Y = codomain(inc) X === ambient_scheme(W) || error("divisor not defined on the domain") @@ -420,7 +420,7 @@ end @doc raw""" - is_in_linear_system(f::VarietyFunctionFieldElem, D::WeilDivisor; regular_on_complement::Bool=true, check::Bool=true) -> Bool + is_in_linear_system(f::VarietyFunctionFieldElem, D::AbsWeilDivisor; regular_on_complement::Bool=true, check::Bool=true) -> Bool Return whether the rational function `f` is in the linear system ``|D|``, i.e. if $(f) + D \geq 0$.