From f7d9619aada690689481052710c9bdc914d0eef2 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 18 May 2024 08:38:39 -0700 Subject: [PATCH 1/9] src/sage/schemes: Deprecate is_... functions --- src/sage/schemes/affine/affine_space.py | 2 ++ src/sage/schemes/berkovich/berkovich_space.py | 4 ++++ src/sage/schemes/elliptic_curves/ell_generic.py | 2 ++ src/sage/schemes/generic/algebraic_scheme.py | 2 ++ src/sage/schemes/generic/ambient_space.py | 3 +++ src/sage/schemes/generic/divisor_group.py | 2 ++ src/sage/schemes/generic/homset.py | 2 ++ src/sage/schemes/generic/hypersurface.py | 3 +++ src/sage/schemes/generic/scheme.py | 5 +++++ .../schemes/hyperelliptic_curves/hyperelliptic_generic.py | 2 ++ src/sage/schemes/plane_quartics/quartic_generic.py | 3 +++ src/sage/schemes/product_projective/space.py | 2 ++ src/sage/schemes/projective/projective_space.py | 2 ++ src/sage/schemes/toric/chow_group.py | 2 ++ src/sage/schemes/toric/fano_variety.py | 2 ++ src/sage/schemes/toric/sheaf/klyachko.py | 2 ++ src/sage/schemes/toric/variety.py | 2 ++ 17 files changed, 42 insertions(+) diff --git a/src/sage/schemes/affine/affine_space.py b/src/sage/schemes/affine/affine_space.py index 05d3c5b59e3..6c84b2eeb72 100644 --- a/src/sage/schemes/affine/affine_space.py +++ b/src/sage/schemes/affine/affine_space.py @@ -52,6 +52,8 @@ def is_AffineSpace(x) -> bool: sage: is_AffineSpace(Spec(ZZ)) False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_AffineSpace is deprecated; use 'isinstance(..., AffineSpace_generic)' instead") return isinstance(x, AffineSpace_generic) diff --git a/src/sage/schemes/berkovich/berkovich_space.py b/src/sage/schemes/berkovich/berkovich_space.py index 100c2807b9d..932d5436213 100644 --- a/src/sage/schemes/berkovich/berkovich_space.py +++ b/src/sage/schemes/berkovich/berkovich_space.py @@ -62,6 +62,8 @@ def is_Berkovich(space) -> bool: sage: is_Berkovich(B) True """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_Berkovich is deprecated; use 'isinstance(..., Berkovich)' instead") return isinstance(space, Berkovich) @@ -81,6 +83,8 @@ def is_Berkovich_Cp(space) -> bool: sage: is_Berkovich(B) True """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_Berkovich_Cp is deprecated; use 'isinstance(..., Berkovich_Cp)' instead") return isinstance(space, Berkovich_Cp) diff --git a/src/sage/schemes/elliptic_curves/ell_generic.py b/src/sage/schemes/elliptic_curves/ell_generic.py index 4719b914bde..ecf78ac0998 100644 --- a/src/sage/schemes/elliptic_curves/ell_generic.py +++ b/src/sage/schemes/elliptic_curves/ell_generic.py @@ -102,6 +102,8 @@ def is_EllipticCurve(x): sage: is_EllipticCurve(0) False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_EllipticCurve is deprecated; use 'isinstance(..., EllipticCurve_generic)' instead") return isinstance(x, EllipticCurve_generic) diff --git a/src/sage/schemes/generic/algebraic_scheme.py b/src/sage/schemes/generic/algebraic_scheme.py index 172256fa6a1..b54bac70fd5 100644 --- a/src/sage/schemes/generic/algebraic_scheme.py +++ b/src/sage/schemes/generic/algebraic_scheme.py @@ -190,6 +190,8 @@ def is_AlgebraicScheme(x): sage: is_AlgebraicScheme(S) False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_AlgebraicScheme is deprecated; use 'isinstance(..., AlgebraicScheme)' instead") return isinstance(x, AlgebraicScheme) diff --git a/src/sage/schemes/generic/ambient_space.py b/src/sage/schemes/generic/ambient_space.py index 52b3f1e0e39..f768e86c08f 100644 --- a/src/sage/schemes/generic/ambient_space.py +++ b/src/sage/schemes/generic/ambient_space.py @@ -32,8 +32,11 @@ def is_AmbientSpace(x): sage: is_AmbientSpace(P.subscheme([x + y + z])) False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_AmbientSpace is deprecated; use 'isinstance(..., AmbientSpace)' instead") return isinstance(x, AmbientSpace) + class AmbientSpace(Scheme): """ Base class for ambient spaces over a ring. diff --git a/src/sage/schemes/generic/divisor_group.py b/src/sage/schemes/generic/divisor_group.py index 5dfd66a1bb9..1bf38bfbe67 100644 --- a/src/sage/schemes/generic/divisor_group.py +++ b/src/sage/schemes/generic/divisor_group.py @@ -79,6 +79,8 @@ def is_DivisorGroup(x): sage: is_DivisorGroup('not a divisor') False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_DivisorGroup is deprecated; use 'isinstance(..., DivisorGroup_generic)' instead") return isinstance(x, DivisorGroup_generic) diff --git a/src/sage/schemes/generic/homset.py b/src/sage/schemes/generic/homset.py index 6fca9c1e257..061ec94a5ea 100644 --- a/src/sage/schemes/generic/homset.py +++ b/src/sage/schemes/generic/homset.py @@ -73,6 +73,8 @@ def is_SchemeHomset(H): sage: is_SchemeHomset('a string') False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_SchemeHomset is deprecated; use 'isinstance(..., SchemeHomset_generic)' instead") return isinstance(H, SchemeHomset_generic) diff --git a/src/sage/schemes/generic/hypersurface.py b/src/sage/schemes/generic/hypersurface.py index f4991527c78..5c07128e8ae 100644 --- a/src/sage/schemes/generic/hypersurface.py +++ b/src/sage/schemes/generic/hypersurface.py @@ -48,8 +48,11 @@ def is_Hypersurface(self): sage: is_Hypersurface(H) False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_Hypersurface is deprecated; use 'isinstance(..., (ProjectiveHypersurface, AffineHypersurface))' instead") return isinstance(self, (ProjectiveHypersurface, AffineHypersurface)) + class ProjectiveHypersurface(AlgebraicScheme_subscheme_projective): """ The projective hypersurface defined by the given polynomial. diff --git a/src/sage/schemes/generic/scheme.py b/src/sage/schemes/generic/scheme.py index 2c0e3100c86..88a241037e9 100644 --- a/src/sage/schemes/generic/scheme.py +++ b/src/sage/schemes/generic/scheme.py @@ -49,6 +49,8 @@ def is_Scheme(x): sage: is_Scheme(X) True """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_Scheme is deprecated; use 'isinstance(..., Scheme)' or categories instead") return isinstance(x, Scheme) @@ -799,8 +801,11 @@ def is_AffineScheme(x): sage: is_AffineScheme(E) True """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_AffineScheme is deprecated; use 'isinstance(..., AffineScheme)' instead") return isinstance(x, AffineScheme) + class AffineScheme(UniqueRepresentation, Scheme): """ Class for general affine schemes. diff --git a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py index c18732064d4..beee5720186 100644 --- a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py +++ b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py @@ -53,6 +53,8 @@ def is_HyperellipticCurve(C): sage: is_HyperellipticCurve(C) True """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_HyperellipticCurve is deprecated; use 'isinstance(..., HyperellipticCurve_generic)' instead") return isinstance(C, HyperellipticCurve_generic) diff --git a/src/sage/schemes/plane_quartics/quartic_generic.py b/src/sage/schemes/plane_quartics/quartic_generic.py index ac2cdd84d82..2e525749d86 100644 --- a/src/sage/schemes/plane_quartics/quartic_generic.py +++ b/src/sage/schemes/plane_quartics/quartic_generic.py @@ -34,8 +34,11 @@ def is_QuarticCurve(C): True """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_QuarticCurve is deprecated; use 'isinstance(..., QuarticCurve_generic)' instead") return isinstance(C, QuarticCurve_generic) + class QuarticCurve_generic(projective_curve.ProjectivePlaneCurve): # DRK: Note that we should check whether the curve is diff --git a/src/sage/schemes/product_projective/space.py b/src/sage/schemes/product_projective/space.py index 2b4e60905df..8a41a857dfe 100644 --- a/src/sage/schemes/product_projective/space.py +++ b/src/sage/schemes/product_projective/space.py @@ -77,6 +77,8 @@ def is_ProductProjectiveSpaces(x): sage: is_ProductProjectiveSpaces(ProductProjectiveSpaces([1, 2, 3], ZZ, 'x')) True """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_ProductProjectiveSpaces is deprecated; use 'isinstance(..., ProductProjectiveSpaces_ring)' instead") return isinstance(x, ProductProjectiveSpaces_ring) diff --git a/src/sage/schemes/projective/projective_space.py b/src/sage/schemes/projective/projective_space.py index 5c55a62106e..272e7dbb602 100644 --- a/src/sage/schemes/projective/projective_space.py +++ b/src/sage/schemes/projective/projective_space.py @@ -146,6 +146,8 @@ def is_ProjectiveSpace(x): sage: is_ProjectiveSpace(Spec(ZZ)) False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_ProjectiveSpace is deprecated; use 'isinstance(..., ProjectiveSpace_ring)' instead") return isinstance(x, ProjectiveSpace_ring) diff --git a/src/sage/schemes/toric/chow_group.py b/src/sage/schemes/toric/chow_group.py index 482bd5ce81b..4b48f72a39d 100644 --- a/src/sage/schemes/toric/chow_group.py +++ b/src/sage/schemes/toric/chow_group.py @@ -1220,6 +1220,8 @@ def is_ChowGroup(x) -> bool: sage: is_ChowGroup('Victoria') False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_ChowGroup is deprecated; use 'isinstance(..., ChowGroup_class)' instead") return isinstance(x, ChowGroup_class) diff --git a/src/sage/schemes/toric/fano_variety.py b/src/sage/schemes/toric/fano_variety.py index d6cbe751274..fbc2b24dfed 100644 --- a/src/sage/schemes/toric/fano_variety.py +++ b/src/sage/schemes/toric/fano_variety.py @@ -179,6 +179,8 @@ def is_CPRFanoToricVariety(x): sage: is_CPRFanoToricVariety(ProjectiveSpace(2)) False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_CPRFanoToricVariety is deprecated; use 'isinstance(..., CPRFanoToricVariety_field)' instead") return isinstance(x, CPRFanoToricVariety_field) diff --git a/src/sage/schemes/toric/sheaf/klyachko.py b/src/sage/schemes/toric/sheaf/klyachko.py index 4325e77f186..fba912d12bc 100644 --- a/src/sage/schemes/toric/sheaf/klyachko.py +++ b/src/sage/schemes/toric/sheaf/klyachko.py @@ -71,6 +71,8 @@ def is_KlyachkoBundle(X): sage: is_KlyachkoBundle('test') False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_KlyachkoBundle is deprecated; use 'isinstance(..., KlyachkoBundle_class)' instead") return isinstance(X, KlyachkoBundle_class) diff --git a/src/sage/schemes/toric/variety.py b/src/sage/schemes/toric/variety.py index 6a6a8d3252a..378fd094bf4 100644 --- a/src/sage/schemes/toric/variety.py +++ b/src/sage/schemes/toric/variety.py @@ -361,6 +361,8 @@ def is_ToricVariety(x): sage: is_ToricVariety(ProjectiveSpace(2)) False """ + from sage.misc.superseded import deprecation + deprecation(38022, "the function is_ToricVariety is deprecated; use 'isinstance(..., ToricVariety_field)' instead") return isinstance(x, ToricVariety_field) From d42a0833045c3dfa51a9d0be5cbac081af0a4b62 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 18 May 2024 20:06:47 -0700 Subject: [PATCH 2/9] for a in "CLASS='AffineSpace|QuarticCurve|HyperellipticCurve|EllipticCurve|DivisorGroup|SchemeHomset';SUFFIX='_generic'" "CLASS='Berkovich|Berkovich_Cp|AlgebraicScheme|AmbientSpace|Scheme|AffineScheme';SUFFIX=" "CLASS='ProjectiveSpace|ProductProjectiveSpaces';SUFFIX='_ring'" "CLASS='ToricVariety|CPRFanoToricVariety';SUFFIX='_field'" "CLASS='ChowGroup|KlyachkoBundle';SUFFIX='_class'" ; do eval "$a"; git --no-pager grep -l -E 'is_('$CLASS')' | xargs sed -E -i.bak 's/import is_('$CLASS')$/import \1'$SUFFIX'/;/^ +/s/is_('$CLASS')[(]([^()]*([(][^()]*[)])?[^()]*)[)]/isinstance(\2, \1'$SUFFIX')/g'; done --- src/sage/categories/schemes.py | 16 ++++++------ .../dynamics/arithmetic_dynamics/affine_ds.py | 14 +++++----- .../arithmetic_dynamics/berkovich_ds.py | 14 +++++----- .../arithmetic_dynamics/generic_ds.py | 8 +++--- .../product_projective_ds.py | 4 +-- .../arithmetic_dynamics/projective_ds.py | 26 +++++++++---------- .../projective_ds_helper.pyx | 4 +-- src/sage/schemes/affine/affine_homset.py | 8 +++--- src/sage/schemes/affine/affine_point.py | 8 +++--- .../schemes/affine/affine_rational_point.py | 20 +++++++------- src/sage/schemes/affine/affine_space.py | 6 ++--- src/sage/schemes/berkovich/berkovich_space.py | 14 +++++----- src/sage/schemes/curves/affine_curve.py | 6 ++--- src/sage/schemes/curves/constructor.py | 14 +++++----- src/sage/schemes/curves/projective_curve.py | 6 ++--- .../elliptic_curves/ell_curve_isogeny.py | 6 ++--- src/sage/schemes/elliptic_curves/ell_field.py | 16 ++++++------ .../elliptic_curves/ell_finite_field.py | 4 +-- .../schemes/elliptic_curves/ell_generic.py | 8 +++--- .../elliptic_curves/ell_number_field.py | 4 +-- .../elliptic_curves/ell_rational_field.py | 4 +-- src/sage/schemes/elliptic_curves/heegner.py | 4 +-- src/sage/schemes/elliptic_curves/height.py | 4 +-- src/sage/schemes/elliptic_curves/jacobian.py | 4 +-- .../elliptic_curves/weierstrass_morphism.py | 10 +++---- src/sage/schemes/generic/algebraic_scheme.py | 22 ++++++++-------- src/sage/schemes/generic/ambient_space.py | 8 +++--- src/sage/schemes/generic/divisor.py | 8 +++--- src/sage/schemes/generic/divisor_group.py | 4 +-- src/sage/schemes/generic/homset.py | 16 ++++++------ src/sage/schemes/generic/scheme.py | 24 ++++++++--------- .../hyperelliptic_generic.py | 4 +-- .../hyperelliptic_curves/jacobian_homset.py | 4 +-- .../hyperelliptic_curves/monsky_washnitzer.py | 8 +++--- .../schemes/jacobians/abstract_jacobian.py | 2 +- .../plane_quartics/quartic_constructor.py | 2 +- .../schemes/plane_quartics/quartic_generic.py | 4 +-- src/sage/schemes/product_projective/homset.py | 4 +-- .../schemes/product_projective/morphism.py | 4 +-- src/sage/schemes/product_projective/point.py | 8 +++--- .../product_projective/rational_point.py | 16 ++++++------ src/sage/schemes/product_projective/space.py | 4 +-- .../schemes/projective/projective_homset.py | 8 +++--- .../schemes/projective/projective_morphism.py | 8 +++--- .../schemes/projective/projective_point.py | 12 ++++----- .../projective/projective_rational_point.py | 20 +++++++------- .../schemes/projective/projective_space.py | 8 +++--- .../projective/projective_subscheme.py | 4 +-- src/sage/schemes/toric/chow_group.py | 12 ++++----- src/sage/schemes/toric/divisor.py | 4 +-- src/sage/schemes/toric/fano_variety.py | 14 +++++----- src/sage/schemes/toric/homset.py | 4 +-- src/sage/schemes/toric/morphism.py | 4 +-- src/sage/schemes/toric/sheaf/constructor.py | 8 +++--- src/sage/schemes/toric/sheaf/klyachko.py | 4 +-- src/sage/schemes/toric/variety.py | 10 +++---- 56 files changed, 247 insertions(+), 247 deletions(-) diff --git a/src/sage/categories/schemes.py b/src/sage/categories/schemes.py index 0d62237a636..cb1133a2192 100644 --- a/src/sage/categories/schemes.py +++ b/src/sage/categories/schemes.py @@ -139,8 +139,8 @@ def _call_(self, x): To: Rational Field """ - from sage.schemes.generic.scheme import is_Scheme - if is_Scheme(x): + from sage.schemes.generic.scheme import Scheme + if isinstance(x, Scheme): return x from sage.schemes.generic.morphism import is_SchemeMorphism if is_SchemeMorphism(x): @@ -197,9 +197,9 @@ def _repr_object_names(self): sage: Schemes(Spec(ZZ)) # indirect doctest Category of schemes over Integer Ring """ - from sage.schemes.generic.scheme import is_AffineScheme + from sage.schemes.generic.scheme import AffineScheme base = self.base() - if is_AffineScheme(base): + if isinstance(base, AffineScheme): base = base.coordinate_ring() return f"schemes over {base}" @@ -228,8 +228,8 @@ def __init__(self, base): sage: AbelianVarieties(Spec(QQ)) Category of abelian varieties over Rational Field """ - from sage.schemes.generic.scheme import is_AffineScheme - if is_AffineScheme(base): + from sage.schemes.generic.scheme import AffineScheme + if isinstance(base, AffineScheme): base = base.coordinate_ring() if base not in Fields(): raise ValueError('category of abelian varieties is only defined over fields') @@ -331,8 +331,8 @@ def __init__(self, base): sage: Jacobians(Spec(QQ)) Category of Jacobians over Rational Field """ - from sage.schemes.generic.scheme import is_AffineScheme - if is_AffineScheme(base): + from sage.schemes.generic.scheme import AffineScheme + if isinstance(base, AffineScheme): base = base.coordinate_ring() if base not in Fields(): raise ValueError('category of Jacobians is only defined over fields') diff --git a/src/sage/dynamics/arithmetic_dynamics/affine_ds.py b/src/sage/dynamics/arithmetic_dynamics/affine_ds.py index 6938068bbc6..a1e4bc1700d 100644 --- a/src/sage/dynamics/arithmetic_dynamics/affine_ds.py +++ b/src/sage/dynamics/arithmetic_dynamics/affine_ds.py @@ -50,7 +50,7 @@ class initialization directly. from sage.schemes.affine.affine_morphism import SchemeMorphism_polynomial_affine_space from sage.schemes.affine.affine_morphism import SchemeMorphism_polynomial_affine_space_field from sage.schemes.affine.affine_morphism import SchemeMorphism_polynomial_affine_space_finite_field -from sage.schemes.affine.affine_space import is_AffineSpace +from sage.schemes.affine.affine_space import AffineSpace_generic from sage.schemes.affine.affine_space import AffineSpace from sage.schemes.affine.affine_subscheme import AlgebraicScheme_subscheme_affine from sage.schemes.generic.morphism import SchemeMorphism_polynomial @@ -246,7 +246,7 @@ def __classcall_private__(cls, morphism_or_polys, domain=None): R = morphism.base_ring() polys = list(morphism) domain = morphism.domain() - if not is_AffineSpace(domain) and not isinstance(domain, AlgebraicScheme_subscheme_affine): + if not isinstance(domain, AffineSpace_generic) and not isinstance(domain, AlgebraicScheme_subscheme_affine): raise ValueError('"domain" must be an affine scheme') if domain != morphism_or_polys.codomain(): raise ValueError('domain and codomain do not agree') @@ -295,7 +295,7 @@ def __classcall_private__(cls, morphism_or_polys, domain=None): R = domain.base_ring() if isinstance(R, sage.rings.abc.SymbolicRing): raise TypeError("symbolic ring cannot be the base ring") - if not is_AffineSpace(domain) and not isinstance(domain, AlgebraicScheme_subscheme_affine): + if not isinstance(domain, AffineSpace_generic) and not isinstance(domain, AlgebraicScheme_subscheme_affine): raise ValueError('"domain" must be an affine scheme') if R not in Fields(): @@ -523,8 +523,8 @@ def dynatomic_polynomial(self, period): sage: G.dehomogenize(1).dynatomic_polynomial(2) (1/4*c + 1/4)*x^2 + (-c - 1/2)*x + c + 1 """ - from sage.schemes.affine.affine_space import is_AffineSpace - if not is_AffineSpace(self.domain()): + from sage.schemes.affine.affine_space import AffineSpace_generic + if not isinstance(self.domain(), AffineSpace_generic): raise NotImplementedError("not implemented for subschemes") if self.domain().dimension_relative() > 1: raise TypeError("does not make sense in dimension >1") @@ -1065,8 +1065,8 @@ def cyclegraph(self): """ V = [] E = [] - from sage.schemes.affine.affine_space import is_AffineSpace - if is_AffineSpace(self.domain()): + from sage.schemes.affine.affine_space import AffineSpace_generic + if isinstance(self.domain(), AffineSpace_generic): for P in self.domain(): V.append(str(P)) Q = self(P) diff --git a/src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py b/src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py index 5559a48ecce..46fe9d6537e 100644 --- a/src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py +++ b/src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py @@ -34,11 +34,11 @@ from sage.rings.infinity import Infinity from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ -from sage.schemes.affine.affine_space import is_AffineSpace +from sage.schemes.affine.affine_space import AffineSpace_generic from sage.schemes.berkovich.berkovich_space import (Berkovich_Cp_Affine, Berkovich_Cp_Projective, is_Berkovich_Cp, Berkovich_Element_Cp_Affine) -from sage.schemes.projective.projective_space import is_ProjectiveSpace +from sage.schemes.projective.projective_space import ProjectiveSpace_ring from sage.structure.element import Element lazy_import('sage.rings.padics.padic_base_generic', 'pAdicBaseGeneric') @@ -241,7 +241,7 @@ def __classcall_private__(cls, dynamical_system, domain=None, ideal=None): 2*3^7 + 2*3^8 + 2*3^9 + 2*3^10 + 2*3^11 + 2*3^12 + 2*3^13 + 2*3^14 + 2*3^15 + 2*3^16 + 2*3^17 + 2*3^18 + 2*3^19 + 2*3^20 + O(3^21)) """ - if not (is_Berkovich_Cp(domain) or domain is None): + if not (isinstance(domain, Berkovich_Cp) or domain is None): raise TypeError('domain must be a Berkovich space over Cp, not %s' % domain) if isinstance(domain, Berkovich_Cp_Affine): @@ -269,7 +269,7 @@ def __classcall_private__(cls, dynamical_system, domain=None, ideal=None): if not isinstance(morphism_domain.base_ring(), pAdicBaseGeneric): if morphism_domain.base_ring() in NumberFields(): if domain is None and ideal is not None: - if is_AffineSpace(morphism_domain): + if isinstance(morphism_domain, AffineSpace_generic): domain = Berkovich_Cp_Affine(morphism_domain.base_ring(), ideal) else: domain = Berkovich_Cp_Projective(morphism_domain, ideal) @@ -281,7 +281,7 @@ def __classcall_private__(cls, dynamical_system, domain=None, ideal=None): raise ValueError('base ring of domain of dynamical_system must be p-adic or a number field ' 'not %s' % morphism_domain.base_ring()) - if is_AffineSpace(morphism_domain): + if isinstance(morphism_domain, AffineSpace_generic): return DynamicalSystem_Berkovich_affine(dynamical_system, domain) return DynamicalSystem_Berkovich_projective(dynamical_system, domain) @@ -531,7 +531,7 @@ def __classcall_private__(cls, dynamical_system, domain=None): raise TypeError('affine dynamical system passed to projective constructor') R = dynamical_system.base_ring() morphism_domain = dynamical_system.domain() - if not is_ProjectiveSpace(morphism_domain): + if not isinstance(morphism_domain, ProjectiveSpace_ring): raise TypeError('the domain of dynamical_system must be projective space, not %s' % morphism_domain) if morphism_domain.dimension_relative() != 1: raise ValueError('domain was not relative dimension 1') @@ -1015,7 +1015,7 @@ def __classcall_private__(cls, dynamical_system, domain=None): raise TypeError('projective dynamical system passed to affine constructor') R = dynamical_system.base_ring() morphism_domain = dynamical_system.domain() - if not is_AffineSpace(morphism_domain): + if not isinstance(morphism_domain, AffineSpace_generic): raise TypeError('the domain of dynamical_system must be affine space, not %s' % morphism_domain) if morphism_domain.dimension_relative() != 1: raise ValueError('domain not relative dimension 1') diff --git a/src/sage/dynamics/arithmetic_dynamics/generic_ds.py b/src/sage/dynamics/arithmetic_dynamics/generic_ds.py index 0afff17895c..be678cca40a 100644 --- a/src/sage/dynamics/arithmetic_dynamics/generic_ds.py +++ b/src/sage/dynamics/arithmetic_dynamics/generic_ds.py @@ -34,9 +34,9 @@ class initialization directly. from sage.misc.lazy_import import lazy_import from sage.rings.finite_rings.finite_field_base import FiniteField from sage.rings.rational_field import QQ -from sage.schemes.affine.affine_space import is_AffineSpace +from sage.schemes.affine.affine_space import AffineSpace_generic from sage.schemes.affine.affine_subscheme import AlgebraicScheme_subscheme_affine -from sage.schemes.berkovich.berkovich_space import is_Berkovich_Cp +from sage.schemes.berkovich.berkovich_space import Berkovich_Cp from sage.schemes.generic.morphism import SchemeMorphism_polynomial lazy_import('sage.rings.algebraic_closure_finite_field', 'AlgebraicClosureFiniteField_generic') @@ -165,10 +165,10 @@ def __classcall_private__(cls, morphism_or_polys, domain=None, names=None): if isinstance(morphism_or_polys, SchemeMorphism_polynomial): domain = morphism_or_polys.domain() if domain is not None: - if is_AffineSpace(domain) or isinstance(domain, AlgebraicScheme_subscheme_affine): + if isinstance(domain, AffineSpace_generic) or isinstance(domain, AlgebraicScheme_subscheme_affine): from sage.dynamics.arithmetic_dynamics.affine_ds import DynamicalSystem_affine return DynamicalSystem_affine(morphism_or_polys, domain) - if is_Berkovich_Cp(domain): + if isinstance(domain, Berkovich_Cp): from sage.dynamics.arithmetic_dynamics.berkovich_ds import DynamicalSystem_Berkovich return DynamicalSystem_Berkovich(morphism_or_polys,domain) diff --git a/src/sage/dynamics/arithmetic_dynamics/product_projective_ds.py b/src/sage/dynamics/arithmetic_dynamics/product_projective_ds.py index 44565197717..706bb28cbef 100644 --- a/src/sage/dynamics/arithmetic_dynamics/product_projective_ds.py +++ b/src/sage/dynamics/arithmetic_dynamics/product_projective_ds.py @@ -327,8 +327,8 @@ def cyclegraph(self): """ V = [] E = [] - from sage.schemes.product_projective.space import is_ProductProjectiveSpaces - if is_ProductProjectiveSpaces(self.domain()): + from sage.schemes.product_projective.space import ProductProjectiveSpaces_ring + if isinstance(self.domain(), ProductProjectiveSpaces_ring): for P in self.domain(): V.append(str(P)) Q = self(P) diff --git a/src/sage/dynamics/arithmetic_dynamics/projective_ds.py b/src/sage/dynamics/arithmetic_dynamics/projective_ds.py index 4b42ad87b1f..c9e7674cbc6 100644 --- a/src/sage/dynamics/arithmetic_dynamics/projective_ds.py +++ b/src/sage/dynamics/arithmetic_dynamics/projective_ds.py @@ -103,7 +103,7 @@ class initialization directly. from sage.rings.rational_field import QQ from sage.rings.real_mpfr import RealField from sage.schemes.generic.morphism import SchemeMorphism_polynomial -from sage.schemes.product_projective.space import is_ProductProjectiveSpaces +from sage.schemes.product_projective.space import ProductProjectiveSpaces_ring from sage.schemes.projective.projective_morphism import ( SchemeMorphism_polynomial_projective_space, SchemeMorphism_polynomial_projective_space_field, @@ -374,7 +374,7 @@ def __classcall_private__(cls, morphism_or_polys, domain=None, names=None): polys = list(morphism_or_polys) if domain != morphism_or_polys.codomain(): raise ValueError('domain and codomain do not agree') - if not is_ProjectiveSpace(domain) and not isinstance(domain, AlgebraicScheme_subscheme_projective): + if not isinstance(domain, ProjectiveSpace_ring) and not isinstance(domain, AlgebraicScheme_subscheme_projective): raise ValueError('"domain" must be a projective scheme') if R not in Fields(): return typecall(cls, polys, domain) @@ -430,7 +430,7 @@ def __classcall_private__(cls, morphism_or_polys, domain=None, names=None): if isinstance(R, sage.rings.abc.SymbolicRing): raise TypeError("the base ring cannot be the Symbolic Ring or a symbolic subring") - if is_ProductProjectiveSpaces(domain): + if isinstance(domain, ProductProjectiveSpaces_ring): splitpolys = domain._factors(polys) for split_poly in splitpolys: split_d = domain._degree(split_poly[0]) @@ -451,7 +451,7 @@ def __classcall_private__(cls, morphism_or_polys, domain=None, names=None): msg = 'polys (={}) must be of the same degree' raise ValueError(msg.format(polys)) - if not is_ProjectiveSpace(domain) and not isinstance(domain, AlgebraicScheme_subscheme_projective): + if not isinstance(domain, ProjectiveSpace_ring) and not isinstance(domain, AlgebraicScheme_subscheme_projective): raise ValueError('"domain" must be a projective scheme') if R not in Fields(): return typecall(cls, polys, domain) @@ -1264,7 +1264,7 @@ def arakelov_zhang_pairing(self, g, **kwds): if n <= 0: raise ValueError("Period must be a positive integer.") - if not (is_ProjectiveSpace(f_domain) and is_ProjectiveSpace(g_domain)): + if not (isinstance(f_domain, ProjectiveSpace_ring) and isinstance(g_domain, ProjectiveSpace_ring)): raise NotImplementedError("Not implemented for subschemes.") if f_domain.dimension_relative() > 1: @@ -1804,7 +1804,7 @@ def primes_of_bad_reduction(self, check=True): sage: f.primes_of_bad_reduction() # needs sage.rings.function_field [5, 37, 2239, 304432717] """ - if (not is_ProjectiveSpace(self.domain())) or (not is_ProjectiveSpace(self.codomain())): + if (not isinstance(self.domain(), ProjectiveSpace_ring)) or (not isinstance(self.codomain(), ProjectiveSpace_ring)): raise NotImplementedError("not implemented for subschemes") K = FractionField(self.codomain().base_ring()) #The primes of bad reduction are the support of the resultant for number fields @@ -3771,7 +3771,7 @@ def critical_subscheme(self): TypeError: the function is not a morphism """ PS = self.domain() - if not is_ProjectiveSpace(PS): + if not isinstance(PS, ProjectiveSpace_ring): raise NotImplementedError("not implemented for subschemes") if not self.is_morphism(): raise TypeError("the function is not a morphism") @@ -4080,7 +4080,7 @@ def is_dynamical_belyi_map(self): False """ P = self.codomain() - if not is_ProjectiveSpace(P): + if not isinstance(P, ProjectiveSpace_ring): raise NotImplementedError('only implemented for dynamical systems on projective space') if P.dimension_relative() != 1: raise NotImplementedError('only implemented for maps on projective space of dimension 1') @@ -5238,7 +5238,7 @@ def multiplier_spectra(self, n, formal=False, type='point', use_algebraic_closur if (n < 1): raise ValueError("period must be a positive integer") - if not is_ProjectiveSpace(PS): + if not isinstance(PS, ProjectiveSpace_ring): raise NotImplementedError("not implemented for subschemes") if PS.dimension_relative() > 1: @@ -5746,7 +5746,7 @@ def sigma_invariants(self, n, formal=False, embedding=None, type='point', if n < 1: raise ValueError("period must be a positive integer") dom = self.domain() - if not is_ProjectiveSpace(dom): + if not isinstance(dom, ProjectiveSpace_ring): raise NotImplementedError("not implemented for subschemes") if self.degree() <= 1: raise TypeError("must have degree at least 2") @@ -6397,7 +6397,7 @@ def _is_preperiodic(self, P, err=0.1, return_period=False): True """ codomain = self.codomain() - if not is_ProjectiveSpace(codomain): + if not isinstance(codomain, ProjectiveSpace_ring): # in order to calculate the canonical height, we need # this map to be a morphism of projective space ambient_space = codomain.ambient_space() @@ -6516,7 +6516,7 @@ def postcritical_set(self, check=True): sage: g.postcritical_set() [(1 : 0), (0 : 1), (a + 2 : 1)] """ - if not is_ProjectiveSpace(self.domain()): + if not isinstance(self.domain(), ProjectiveSpace_ring): raise ValueError('must be a dynamical system on projective space') if self.domain().dimension_relative() != 1: raise ValueError('must be defined on projective space of dimension 1') @@ -9106,7 +9106,7 @@ def cyclegraph(self): """ V = [] E = [] - if is_ProjectiveSpace(self.domain()): + if isinstance(self.domain(), ProjectiveSpace_ring): for P in self.domain(): V.append(P) try: diff --git a/src/sage/dynamics/arithmetic_dynamics/projective_ds_helper.pyx b/src/sage/dynamics/arithmetic_dynamics/projective_ds_helper.pyx index f05806f4935..08efef94554 100644 --- a/src/sage/dynamics/arithmetic_dynamics/projective_ds_helper.pyx +++ b/src/sage/dynamics/arithmetic_dynamics/projective_ds_helper.pyx @@ -82,8 +82,8 @@ cpdef _fast_possible_periods(self, return_points=False): raise TypeError("must be prime field") PS = self.domain() - from sage.schemes.projective.projective_space import is_ProjectiveSpace - if not is_ProjectiveSpace(PS) or PS != self.codomain(): + from sage.schemes.projective.projective_space import ProjectiveSpace_ring + if not isinstance(PS, ProjectiveSpace_ring) or PS != self.codomain(): raise NotImplementedError("must be an endomorphism of projective space") p = PS.base_ring().order() diff --git a/src/sage/schemes/affine/affine_homset.py b/src/sage/schemes/affine/affine_homset.py index b6570bd6f6d..a54d4d68c3c 100644 --- a/src/sage/schemes/affine/affine_homset.py +++ b/src/sage/schemes/affine/affine_homset.py @@ -261,10 +261,10 @@ def points(self, **kwds): may be computed partially or incorrectly. [(0.0, 0.0)] """ - from sage.schemes.affine.affine_space import is_AffineSpace + from sage.schemes.affine.affine_space import AffineSpace_generic X = self.codomain() - if not is_AffineSpace(X) and X.base_ring() in Fields(): + if not isinstance(X, AffineSpace_generic) and X.base_ring() in Fields(): if hasattr(X.base_ring(), 'precision'): numerical = True verbose("Warning: computations in the numerical fields are inexact;points may be computed partially or incorrectly.", level=0) @@ -436,7 +436,7 @@ def numerical_points(self, F=None, **kwds): ... ValueError: tolerance must be positive """ - from sage.schemes.affine.affine_space import is_AffineSpace + from sage.schemes.affine.affine_space import AffineSpace_generic if F is None: F = CC if F not in Fields() or not hasattr(F, 'precision'): @@ -446,7 +446,7 @@ def numerical_points(self, F=None, **kwds): raise TypeError('base ring must be a number field') AA = X.ambient_space().change_ring(F) - if not is_AffineSpace(X) and X.base_ring() in Fields(): + if not isinstance(X, AffineSpace_generic) and X.base_ring() in Fields(): # Then X must be a subscheme dim_ideal = X.defining_ideal().dimension() if dim_ideal != 0: # no points diff --git a/src/sage/schemes/affine/affine_point.py b/src/sage/schemes/affine/affine_point.py index 00779dbb2d6..4e09c1e133a 100644 --- a/src/sage/schemes/affine/affine_point.py +++ b/src/sage/schemes/affine/affine_point.py @@ -372,8 +372,8 @@ def intersection_multiplicity(self, X): ... TypeError: this point must be a point on an affine subscheme """ - from sage.schemes.affine.affine_space import is_AffineSpace - if is_AffineSpace(self.codomain()): + from sage.schemes.affine.affine_space import AffineSpace_generic + if isinstance(self.codomain(), AffineSpace_generic): raise TypeError("this point must be a point on an affine subscheme") return self.codomain().intersection_multiplicity(X, self) @@ -397,8 +397,8 @@ def multiplicity(self): sage: Q2.multiplicity() # needs sage.libs.singular 2 """ - from sage.schemes.affine.affine_space import is_AffineSpace - if is_AffineSpace(self.codomain()): + from sage.schemes.affine.affine_space import AffineSpace_generic + if isinstance(self.codomain(), AffineSpace_generic): raise TypeError("this point must be a point on an affine subscheme") return self.codomain().multiplicity(self) diff --git a/src/sage/schemes/affine/affine_rational_point.py b/src/sage/schemes/affine/affine_rational_point.py index 4ac17a60d79..9eacf85b30d 100644 --- a/src/sage/schemes/affine/affine_rational_point.py +++ b/src/sage/schemes/affine/affine_rational_point.py @@ -54,7 +54,7 @@ from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ -from sage.schemes.generic.scheme import is_Scheme +from sage.schemes.generic.scheme import Scheme def enum_affine_rational_field(X, B): @@ -108,9 +108,9 @@ def enum_affine_rational_field(X, B): - Raman Raghukul 2018: updated. """ - from sage.schemes.affine.affine_space import is_AffineSpace - if is_Scheme(X): - if not is_AffineSpace(X.ambient_space()): + from sage.schemes.affine.affine_space import AffineSpace_generic + if isinstance(X, Scheme): + if not isinstance(X.ambient_space(), AffineSpace_generic): raise TypeError("ambient space must be affine space over the rational field") X = X(X.base_ring()) elif not is_AffineSpace(X.codomain().ambient_space()): @@ -215,9 +215,9 @@ def enum_affine_number_field(X, **kwds): B = kwds.pop('bound') tol = kwds.pop('tolerance', 1e-2) prec = kwds.pop('precision', 53) - from sage.schemes.affine.affine_space import is_AffineSpace - if is_Scheme(X): - if not is_AffineSpace(X.ambient_space()): + from sage.schemes.affine.affine_space import AffineSpace_generic + if isinstance(X, Scheme): + if not isinstance(X.ambient_space(), AffineSpace_generic): raise TypeError("ambient space must be affine space over a number field") X = X(X.base_ring()) elif not is_AffineSpace(X.codomain().ambient_space()): @@ -289,9 +289,9 @@ def enum_affine_finite_field(X): - John Cremona and Charlie Turner (06-2010) """ - from sage.schemes.affine.affine_space import is_AffineSpace - if is_Scheme(X): - if not is_AffineSpace(X.ambient_space()): + from sage.schemes.affine.affine_space import AffineSpace_generic + if isinstance(X, Scheme): + if not isinstance(X.ambient_space(), AffineSpace_generic): raise TypeError("ambient space must be affine space over a finite field") X = X(X.base_ring()) elif not is_AffineSpace(X.codomain().ambient_space()): diff --git a/src/sage/schemes/affine/affine_space.py b/src/sage/schemes/affine/affine_space.py index 6c84b2eeb72..29c1b07d677 100644 --- a/src/sage/schemes/affine/affine_space.py +++ b/src/sage/schemes/affine/affine_space.py @@ -44,12 +44,12 @@ def is_AffineSpace(x) -> bool: EXAMPLES:: - sage: from sage.schemes.affine.affine_space import is_AffineSpace - sage: is_AffineSpace(AffineSpace(5, names='x')) + sage: from sage.schemes.affine.affine_space import AffineSpace_generic + sage: isinstance(AffineSpace(5, names='x'), AffineSpace_generic) True sage: is_AffineSpace(AffineSpace(5, GF(9, 'alpha'), names='x')) # needs sage.rings.finite_rings True - sage: is_AffineSpace(Spec(ZZ)) + sage: isinstance(Spec(ZZ), AffineSpace_generic) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/berkovich/berkovich_space.py b/src/sage/schemes/berkovich/berkovich_space.py index 932d5436213..b4bf87a7c90 100644 --- a/src/sage/schemes/berkovich/berkovich_space.py +++ b/src/sage/schemes/berkovich/berkovich_space.py @@ -35,7 +35,7 @@ from sage.schemes.berkovich.berkovich_cp_element import (Berkovich_Element_Cp_Affine, Berkovich_Element_Cp_Projective) from sage.structure.parent import Parent -from sage.schemes.affine.affine_space import is_AffineSpace +from sage.schemes.affine.affine_space import AffineSpace_generic from sage.schemes.projective.projective_space import is_ProjectiveSpace, ProjectiveSpace from sage.structure.unique_representation import UniqueRepresentation from sage.categories.number_fields import NumberFields @@ -58,8 +58,8 @@ def is_Berkovich(space) -> bool: EXAMPLES:: sage: B = Berkovich_Cp_Projective(3) - sage: from sage.schemes.berkovich.berkovich_space import is_Berkovich - sage: is_Berkovich(B) + sage: from sage.schemes.berkovich.berkovich_space import Berkovich + sage: isinstance(B, Berkovich) True """ from sage.misc.superseded import deprecation @@ -79,8 +79,8 @@ def is_Berkovich_Cp(space) -> bool: EXAMPLES:: sage: B = Berkovich_Cp_Projective(3) - sage: from sage.schemes.berkovich.berkovich_space import is_Berkovich - sage: is_Berkovich(B) + sage: from sage.schemes.berkovich.berkovich_space import Berkovich + sage: isinstance(B, Berkovich) True """ from sage.misc.superseded import deprecation @@ -437,7 +437,7 @@ def __init__(self, base, ideal=None): base = Qp(base) # change to Qpbar else: raise ValueError("non-prime passed into Berkovich space") - if is_AffineSpace(base): + if isinstance(base, AffineSpace_generic): base = base.base_ring() if base in NumberFields(): if ideal is None: @@ -634,7 +634,7 @@ def __init__(self, base, ideal=None): raise ValueError("non-prime passed into Berkovich space") if base in NumberFields() or isinstance(base, sage.rings.abc.pAdicField): base = ProjectiveSpace(base, 1) - if not is_ProjectiveSpace(base): + if not isinstance(base, ProjectiveSpace_ring): try: base = ProjectiveSpace(base) except (TypeError, ValueError): diff --git a/src/sage/schemes/curves/affine_curve.py b/src/sage/schemes/curves/affine_curve.py index efbc690b543..07bce6be708 100644 --- a/src/sage/schemes/curves/affine_curve.py +++ b/src/sage/schemes/curves/affine_curve.py @@ -209,7 +209,7 @@ def __init__(self, A, X): sage: C = Curve([x^2 - z, z - 8*x], A); C Affine Curve over Finite Field of size 7 defined by x^2 - z, -x + z """ - if not is_AffineSpace(A): + if not isinstance(A, AffineSpace_generic): raise TypeError("A (={}) must be an affine space".format(A)) Curve_generic.__init__(self, A, X) @@ -299,7 +299,7 @@ def __init__(self, A, f): Affine Plane Curve over Complex Field with 53 bits of precision defined by x^2 + y^2 """ - if not (is_AffineSpace(A) and A.dimension != 2): + if not (isinstance(A, AffineSpace_generic) and A.dimension != 2): raise TypeError("Argument A (= %s) must be an affine plane." % A) super().__init__(A, [f]) @@ -998,7 +998,7 @@ def projection(self, indices, AS=None): if len(set(indices)) < len(indices): raise ValueError("(=%s) must be a list or tuple of distinct indices or variables" % indices) if AS is not None: - if not is_AffineSpace(AS): + if not isinstance(AS, AffineSpace_generic): raise TypeError("(=%s) must be an affine space" % AS) if AS.dimension_relative() != len(indices): raise TypeError("(=%s) must have dimension (=%s)" % (AS, len(indices))) diff --git a/src/sage/schemes/curves/constructor.py b/src/sage/schemes/curves/constructor.py index 3564cfd73cc..79ec4fe406d 100644 --- a/src/sage/schemes/curves/constructor.py +++ b/src/sage/schemes/curves/constructor.py @@ -46,8 +46,8 @@ from sage.structure.all import Sequence -from sage.schemes.generic.ambient_space import is_AmbientSpace -from sage.schemes.generic.algebraic_scheme import is_AlgebraicScheme +from sage.schemes.generic.ambient_space import AmbientSpace +from sage.schemes.generic.algebraic_scheme import AlgebraicScheme from sage.schemes.affine.affine_space import AffineSpace, is_AffineSpace from sage.schemes.projective.projective_space import ProjectiveSpace, is_ProjectiveSpace from sage.schemes.plane_conics.constructor import Conic @@ -233,10 +233,10 @@ def Curve(F, A=None): 0 """ if A is None: - if is_AmbientSpace(F) and F.dimension() == 1: + if isinstance(F, AmbientSpace) and F.dimension() == 1: return Curve(F.coordinate_ring().zero(), F) - if is_AlgebraicScheme(F): + if isinstance(F, AlgebraicScheme): return Curve(F.defining_polynomials(), F.ambient_space()) if isinstance(F, (list, tuple)): @@ -291,7 +291,7 @@ def Curve(F, A=None): else: raise TypeError("F (={}) must be a multivariate polynomial".format(F)) else: - if not is_AmbientSpace(A): + if not isinstance(A, AmbientSpace): raise TypeError("ambient space must be either an affine or projective space") if not isinstance(F, (list, tuple)): F = [F] @@ -304,7 +304,7 @@ def Curve(F, A=None): k = A.base_ring() - if is_AffineSpace(A): + if isinstance(A, AffineSpace_generic): if n == 1: if A.coordinate_ring().ideal(F).is_zero(): if isinstance(k, FiniteField): @@ -337,7 +337,7 @@ def Curve(F, A=None): return AffinePlaneCurve_field(A, F) return AffinePlaneCurve(A, F) - elif is_ProjectiveSpace(A): + elif isinstance(A, ProjectiveSpace_ring): if n == 1: if A.coordinate_ring().ideal(F).is_zero(): if isinstance(k, FiniteField): diff --git a/src/sage/schemes/curves/projective_curve.py b/src/sage/schemes/curves/projective_curve.py index 1cc7fce0906..dd265a9a433 100644 --- a/src/sage/schemes/curves/projective_curve.py +++ b/src/sage/schemes/curves/projective_curve.py @@ -215,7 +215,7 @@ def __init__(self, A, X, category=None): sage: loads(dumps(C)) == C True """ - if not is_ProjectiveSpace(A): + if not isinstance(A, ProjectiveSpace_ring): raise TypeError("A (=%s) must be a projective space" % A) Curve_generic.__init__(self, A, X, category=category) @@ -419,7 +419,7 @@ def projection(self, P=None, PS=None): if self.base_ring() not in Fields(): raise TypeError("this curve must be defined over a field") if PS is not None: - if not is_ProjectiveSpace(PS): + if not isinstance(PS, ProjectiveSpace_ring): raise TypeError("(=%s) must be a projective space" % PS) if PS.dimension_relative() != n - 1: raise TypeError("(=%s) must have dimension (=%s)" % (PS, n - 1)) @@ -621,7 +621,7 @@ def __init__(self, A, f, category=None): sage: loads(dumps(C)) == C True """ - if not (is_ProjectiveSpace(A) and A.dimension != 2): + if not (isinstance(A, ProjectiveSpace_ring) and A.dimension != 2): raise TypeError("the ambient space is not a projective plane") super().__init__(A, [f], category=category) diff --git a/src/sage/schemes/elliptic_curves/ell_curve_isogeny.py b/src/sage/schemes/elliptic_curves/ell_curve_isogeny.py index 3dc8ea0f11e..c3cdd991e58 100644 --- a/src/sage/schemes/elliptic_curves/ell_curve_isogeny.py +++ b/src/sage/schemes/elliptic_curves/ell_curve_isogeny.py @@ -94,7 +94,7 @@ from sage.rings.fraction_field import FractionField from sage.schemes.elliptic_curves.constructor import EllipticCurve -from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve +from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic from sage.schemes.elliptic_curves.weierstrass_morphism \ import WeierstrassIsomorphism, _isomorphisms, baseWI, negation_morphism @@ -1042,7 +1042,7 @@ def __init__(self, E, kernel, codomain=None, degree=None, model=None, check=True to Elliptic Curve defined by y^2 + x*y = x^3 - x^2 - 5252*x - 178837 over Rational Field """ - if not is_EllipticCurve(E): + if not isinstance(E, EllipticCurve_generic): raise ValueError("given E is not an elliptic curve") if not isinstance(kernel, list) and kernel in E: @@ -1854,7 +1854,7 @@ def __setup_post_isomorphism(self, codomain, model): codomain = compute_model(oldE2, model) else: # codomain is not None - if not is_EllipticCurve(codomain): + if not isinstance(codomain, EllipticCurve_generic): raise ValueError("given codomain is not an elliptic curve") if not oldE2.is_isomorphic(codomain): diff --git a/src/sage/schemes/elliptic_curves/ell_field.py b/src/sage/schemes/elliptic_curves/ell_field.py index 3efa79ff759..237c838b3d4 100644 --- a/src/sage/schemes/elliptic_curves/ell_field.py +++ b/src/sage/schemes/elliptic_curves/ell_field.py @@ -444,10 +444,10 @@ def is_quadratic_twist(self, other): sage: E1.is_isomorphic(E2) True """ - from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve + from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic E = self F = other - if not is_EllipticCurve(E) or not is_EllipticCurve(F): + if not isinstance(E, EllipticCurve_generic) or not isinstance(F, EllipticCurve_generic): raise ValueError("arguments are not elliptic curves") K = E.base_ring() zero = K.zero() @@ -543,10 +543,10 @@ def is_quartic_twist(self, other): sage: (D/12345).is_perfect_power(4) True """ - from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve + from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic E = self F = other - if not is_EllipticCurve(E) or not is_EllipticCurve(F): + if not isinstance(E, EllipticCurve_generic) or not isinstance(F, EllipticCurve_generic): raise ValueError("arguments are not elliptic curves") K = E.base_ring() zero = K.zero() @@ -612,10 +612,10 @@ def is_sextic_twist(self, other): sage: (D/12345).is_perfect_power(6) True """ - from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve + from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic E = self F = other - if not is_EllipticCurve(E) or not is_EllipticCurve(F): + if not isinstance(E, EllipticCurve_generic) or not isinstance(F, EllipticCurve_generic): raise ValueError("arguments are not elliptic curves") K = E.base_ring() zero = K.zero() @@ -2065,8 +2065,8 @@ def is_isogenous(self, other, field=None): ... NotImplementedError: Only implemented for isomorphic curves over general fields. """ - from .ell_generic import is_EllipticCurve - if not is_EllipticCurve(other): + from .ell_generic import EllipticCurve_generic + if not isinstance(other, EllipticCurve_generic): raise ValueError("Second argument is not an Elliptic Curve.") if self.is_isomorphic(other): return True diff --git a/src/sage/schemes/elliptic_curves/ell_finite_field.py b/src/sage/schemes/elliptic_curves/ell_finite_field.py index f67e15b5627..5ffd2dc6c0e 100644 --- a/src/sage/schemes/elliptic_curves/ell_finite_field.py +++ b/src/sage/schemes/elliptic_curves/ell_finite_field.py @@ -1252,8 +1252,8 @@ def is_isogenous(self, other, field=None, proof=True): sage: E1.is_isogenous(E7,GF(13^30,'j')) False """ - from .ell_generic import is_EllipticCurve - if not is_EllipticCurve(other): + from .ell_generic import EllipticCurve_generic + if not isinstance(other, EllipticCurve_generic): raise ValueError("Second argument is not an Elliptic Curve.") if self.is_isomorphic(other): return True diff --git a/src/sage/schemes/elliptic_curves/ell_generic.py b/src/sage/schemes/elliptic_curves/ell_generic.py index ecf78ac0998..e8221457a45 100644 --- a/src/sage/schemes/elliptic_curves/ell_generic.py +++ b/src/sage/schemes/elliptic_curves/ell_generic.py @@ -95,11 +95,11 @@ def is_EllipticCurve(x): EXAMPLES:: - sage: from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve + sage: from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic sage: E = EllipticCurve([1,2,3/4,7,19]) - sage: is_EllipticCurve(E) + sage: isinstance(E, EllipticCurve_generic) True - sage: is_EllipticCurve(0) + sage: isinstance(0, EllipticCurve_generic) False """ from sage.misc.superseded import deprecation @@ -2910,7 +2910,7 @@ def is_isomorphic(self, other, field=None): sage: E.is_isomorphic(F.change_ring(CC)) False """ - if not is_EllipticCurve(other): + if not isinstance(other, EllipticCurve_generic): return False if field is None: if self.base_ring() != other.base_ring(): diff --git a/src/sage/schemes/elliptic_curves/ell_number_field.py b/src/sage/schemes/elliptic_curves/ell_number_field.py index b0c07df78b6..298cf9277d7 100644 --- a/src/sage/schemes/elliptic_curves/ell_number_field.py +++ b/src/sage/schemes/elliptic_curves/ell_number_field.py @@ -92,7 +92,7 @@ import sage.rings.abc from .ell_field import EllipticCurve_field -from .ell_generic import is_EllipticCurve +from .ell_generic import EllipticCurve_generic from .ell_point import EllipticCurvePoint_number_field from .constructor import EllipticCurve from sage.rings.integer_ring import ZZ @@ -3176,7 +3176,7 @@ def is_isogenous(self, other, proof=True, maxnorm=100): sage: EK.is_isogenous(EcK) # long time (about 3.5 s) True """ - if not is_EllipticCurve(other): + if not isinstance(other, EllipticCurve_generic): raise ValueError("Second argument is not an Elliptic Curve.") if self.is_isomorphic(other): return True diff --git a/src/sage/schemes/elliptic_curves/ell_rational_field.py b/src/sage/schemes/elliptic_curves/ell_rational_field.py index ce77cdca614..44e26cb6f1f 100644 --- a/src/sage/schemes/elliptic_curves/ell_rational_field.py +++ b/src/sage/schemes/elliptic_curves/ell_rational_field.py @@ -52,7 +52,7 @@ from . import constructor from . import BSD -from .ell_generic import is_EllipticCurve +from .ell_generic import EllipticCurve_generic from . import ell_modular_symbols from .ell_number_field import EllipticCurve_number_field from . import ell_point @@ -4985,7 +4985,7 @@ def is_isogenous(self, other, proof=True, maxp=200): sage: E.is_isogenous(EE) False """ - if not is_EllipticCurve(other): + if not isinstance(other, EllipticCurve_generic): raise ValueError("Second argument is not an Elliptic Curve.") if other.base_field() is not QQ: raise ValueError("If first argument is an elliptic curve over QQ then the second argument must be also.") diff --git a/src/sage/schemes/elliptic_curves/heegner.py b/src/sage/schemes/elliptic_curves/heegner.py index f0ad1420bcf..868f28d025d 100644 --- a/src/sage/schemes/elliptic_curves/heegner.py +++ b/src/sage/schemes/elliptic_curves/heegner.py @@ -5762,8 +5762,8 @@ def kolyvagin_reduction_data(E, q, first_only=True): sage: kolyvagin_reduction_data(EllipticCurve('2350g1'), 5, first_only=False) (19, 239, -311, 19, 6480, 85680) """ - from .ell_generic import is_EllipticCurve - if not is_EllipticCurve(E): + from .ell_generic import EllipticCurve_generic + if not isinstance(E, EllipticCurve_generic): raise TypeError("E must be an elliptic curve") q = ZZ(q) diff --git a/src/sage/schemes/elliptic_curves/height.py b/src/sage/schemes/elliptic_curves/height.py index 7ddd080d5b1..920cf47b676 100644 --- a/src/sage/schemes/elliptic_curves/height.py +++ b/src/sage/schemes/elliptic_curves/height.py @@ -805,8 +805,8 @@ def __init__(self, E): ValueError: EllipticCurveCanonicalHeight class can only be created from an elliptic curve defined over a number field """ - from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve - if is_EllipticCurve(E): + from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic + if isinstance(E, EllipticCurve_generic): self.E = E from sage.rings.number_field.number_field_base import NumberField K = E.base_ring() diff --git a/src/sage/schemes/elliptic_curves/jacobian.py b/src/sage/schemes/elliptic_curves/jacobian.py index fcd941b4276..9099a803afc 100644 --- a/src/sage/schemes/elliptic_curves/jacobian.py +++ b/src/sage/schemes/elliptic_curves/jacobian.py @@ -111,8 +111,8 @@ def Jacobian(X, **kwds): else: return Jacobian_of_equation(X, **kwds) - from sage.schemes.generic.scheme import is_Scheme - if is_Scheme(X) and X.dimension() == 1: + from sage.schemes.generic.scheme import Scheme + if isinstance(X, Scheme) and X.dimension() == 1: return Jacobian_of_curve(X, morphism=morphism, **kwds) diff --git a/src/sage/schemes/elliptic_curves/weierstrass_morphism.py b/src/sage/schemes/elliptic_curves/weierstrass_morphism.py index 878b5a78d82..30a2e4bd538 100644 --- a/src/sage/schemes/elliptic_curves/weierstrass_morphism.py +++ b/src/sage/schemes/elliptic_curves/weierstrass_morphism.py @@ -295,8 +295,8 @@ def _isomorphisms(E, F): sage: all({iso2*iso1 for iso1 in Iso} == set(Aut) for iso2 in F.isomorphisms(E)) True """ - from .ell_generic import is_EllipticCurve - if not is_EllipticCurve(E) or not is_EllipticCurve(F): + from .ell_generic import EllipticCurve_generic + if not isinstance(E, EllipticCurve_generic) or not isinstance(F, EllipticCurve_generic): raise ValueError("arguments are not elliptic curves") j = E.j_invariant() @@ -459,13 +459,13 @@ def __init__(self, E=None, urst=None, F=None): sage: type(iso.degree()) # needs sage.rings.finite_rings """ - from .ell_generic import is_EllipticCurve + from .ell_generic import EllipticCurve_generic if E is not None: - if not is_EllipticCurve(E): + if not isinstance(E, EllipticCurve_generic): raise ValueError("first argument must be an elliptic curve or None") if F is not None: - if not is_EllipticCurve(F): + if not isinstance(F, EllipticCurve_generic): raise ValueError("third argument must be an elliptic curve or None") if urst is not None: if len(urst) != 4: diff --git a/src/sage/schemes/generic/algebraic_scheme.py b/src/sage/schemes/generic/algebraic_scheme.py index b54bac70fd5..e7c836eec7f 100644 --- a/src/sage/schemes/generic/algebraic_scheme.py +++ b/src/sage/schemes/generic/algebraic_scheme.py @@ -157,20 +157,20 @@ def is_AlgebraicScheme(x): sage: V = A2.subscheme([x^2 + y^2]); V Closed subscheme of Affine Space of dimension 2 over Rational Field defined by: x^2 + y^2 - sage: from sage.schemes.generic.algebraic_scheme import is_AlgebraicScheme - sage: is_AlgebraicScheme(V) + sage: from sage.schemes.generic.algebraic_scheme import AlgebraicScheme + sage: isinstance(V, AlgebraicScheme) True Affine space is itself not an algebraic scheme, though the closed subscheme defined by no equations is:: - sage: from sage.schemes.generic.algebraic_scheme import is_AlgebraicScheme - sage: is_AlgebraicScheme(AffineSpace(10, QQ)) + sage: from sage.schemes.generic.algebraic_scheme import AlgebraicScheme + sage: isinstance(AffineSpace(10, QQ), AlgebraicScheme) False sage: V = AffineSpace(10, QQ).subscheme([]); V Closed subscheme of Affine Space of dimension 10 over Rational Field defined by: (no polynomials) - sage: is_AlgebraicScheme(V) + sage: isinstance(V, AlgebraicScheme) True We create a more complicated closed subscheme:: @@ -179,15 +179,15 @@ def is_AlgebraicScheme(x): sage: X = A.subscheme([sum(x)]); X Closed subscheme of Affine Space of dimension 10 over Rational Field defined by: x0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 - sage: is_AlgebraicScheme(X) + sage: isinstance(X, AlgebraicScheme) True :: - sage: is_AlgebraicScheme(QQ) + sage: isinstance(QQ, AlgebraicScheme) False sage: S = Spec(QQ) - sage: is_AlgebraicScheme(S) + sage: isinstance(S, AlgebraicScheme) False """ from sage.misc.superseded import deprecation @@ -229,7 +229,7 @@ def __init__(self, A, category=None): sage: S.category() Category of schemes over Integer Ring """ - if not ambient_space.is_AmbientSpace(A): + if not ambient_space.isinstance(A, AmbientSpace): raise TypeError("A (=%s) must be an ambient space") self.__A = A self.__divisor_group = {} @@ -677,7 +677,7 @@ def _latex_(self): X \\text{ is defined by }\\text{no polynomials},\\text{ and } Y \\text{ is defined by } x - y.' """ - if sage.schemes.affine.affine_space.is_AffineSpace(self.ambient_space()): + if sage.schemes.affine.affine_space.isinstance(self.ambient_space(), AffineSpace_generic): t = "affine" else: t = "projective" @@ -711,7 +711,7 @@ def _repr_(self): sage: U._repr_() 'Quasi-projective subscheme X - Y of Projective Space of dimension 2 over Integer Ring, where X is defined by:\n (no polynomials)\nand Y is defined by:\n x - y' """ - if sage.schemes.affine.affine_space.is_AffineSpace(self.ambient_space()): + if sage.schemes.affine.affine_space.isinstance(self.ambient_space(), AffineSpace_generic): t = "affine" else: t = "projective" diff --git a/src/sage/schemes/generic/ambient_space.py b/src/sage/schemes/generic/ambient_space.py index f768e86c08f..ddb14a2a9b9 100644 --- a/src/sage/schemes/generic/ambient_space.py +++ b/src/sage/schemes/generic/ambient_space.py @@ -23,13 +23,13 @@ def is_AmbientSpace(x): EXAMPLES:: - sage: from sage.schemes.generic.ambient_space import is_AmbientSpace - sage: is_AmbientSpace(ProjectiveSpace(3, ZZ)) + sage: from sage.schemes.generic.ambient_space import AmbientSpace + sage: isinstance(ProjectiveSpace(3, ZZ), AmbientSpace) True - sage: is_AmbientSpace(AffineSpace(2, QQ)) + sage: isinstance(AffineSpace(2, QQ), AmbientSpace) True sage: P. = ProjectiveSpace(2, ZZ) - sage: is_AmbientSpace(P.subscheme([x + y + z])) + sage: isinstance(P.subscheme([x + y + z]), AmbientSpace) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/generic/divisor.py b/src/sage/schemes/generic/divisor.py index c6d99b12204..8b41d473487 100644 --- a/src/sage/schemes/generic/divisor.py +++ b/src/sage/schemes/generic/divisor.py @@ -48,8 +48,8 @@ from sage.structure.formal_sum import FormalSum from .morphism import is_SchemeMorphism -from sage.schemes.affine.affine_space import is_AffineSpace -from sage.schemes.projective.projective_space import is_ProjectiveSpace +from sage.schemes.affine.affine_space import AffineSpace_generic +from sage.schemes.projective.projective_space import ProjectiveSpace_ring def CurvePointToIdeal(C,P): @@ -72,7 +72,7 @@ def CurvePointToIdeal(C,P): m = n-1 while m > 0 and P[m] == 0: m += -1 - if is_ProjectiveSpace(A): + if isinstance(A, ProjectiveSpace_ring): a_m = P[m] x_m = x[m] for i in range(m): @@ -81,7 +81,7 @@ def CurvePointToIdeal(C,P): polys.append(x[i]) else: polys.append(a_m*x[i]-ai*x_m) - elif is_AffineSpace(A): + elif isinstance(A, AffineSpace_generic): for i in range(m+1): ai = P[i] if ai == 0: diff --git a/src/sage/schemes/generic/divisor_group.py b/src/sage/schemes/generic/divisor_group.py index 1bf38bfbe67..0431b9aff6e 100644 --- a/src/sage/schemes/generic/divisor_group.py +++ b/src/sage/schemes/generic/divisor_group.py @@ -74,9 +74,9 @@ def is_DivisorGroup(x): sage: from sage.schemes.generic.divisor_group import is_DivisorGroup, DivisorGroup sage: Div = DivisorGroup(Spec(ZZ), base_ring=QQ) - sage: is_DivisorGroup(Div) + sage: isinstance(Div, DivisorGroup_generic) True - sage: is_DivisorGroup('not a divisor') + sage: isinstance('not a divisor', DivisorGroup_generic) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/generic/homset.py b/src/sage/schemes/generic/homset.py index 061ec94a5ea..db7e121031c 100644 --- a/src/sage/schemes/generic/homset.py +++ b/src/sage/schemes/generic/homset.py @@ -65,12 +65,12 @@ def is_SchemeHomset(H): sage: f = Spec(QQ).identity_morphism(); f Scheme endomorphism of Spectrum of Rational Field Defn: Identity map - sage: from sage.schemes.generic.homset import is_SchemeHomset - sage: is_SchemeHomset(f) + sage: from sage.schemes.generic.homset import SchemeHomset_generic + sage: isinstance(f, SchemeHomset_generic) False - sage: is_SchemeHomset(f.parent()) + sage: isinstance(f.parent(), SchemeHomset_generic) True - sage: is_SchemeHomset('a string') + sage: isinstance('a string', SchemeHomset_generic) False """ from sage.misc.superseded import deprecation @@ -166,7 +166,7 @@ def create_key_and_extra_args(self, X, Y, category=None, base=None, if base is None: from sage.structure.element import coercion_model base = coercion_model.common_parent(X.base_ring(), Y.base_ring()) - if is_AffineScheme(base): + if isinstance(base, AffineScheme): base_spec = base base_ring = base.coordinate_ring() elif base in _CommRings: @@ -329,7 +329,7 @@ def natural_map(self): """ X = self.domain() Y = self.codomain() - if is_AffineScheme(Y) and Y.coordinate_ring() == X.base_ring(): + if isinstance(Y, AffineScheme) and Y.coordinate_ring() == X.base_ring(): return SchemeMorphism_structure_map(self) raise NotImplementedError @@ -446,7 +446,7 @@ def __init__(self, X, Y, category=None, check=True, base=ZZ): sage: SchemeHomset_points(Spec(QQ), AffineSpace(ZZ,2)) Set of rational points of Affine Space of dimension 2 over Rational Field """ - if check and not is_AffineScheme(X): + if check and not isinstance(X, AffineScheme): raise ValueError('The domain must be an affine scheme.') SchemeHomset_generic.__init__(self, X, Y, category=category, check=check, base=base) @@ -732,7 +732,7 @@ def value_ring(self): Rational Field """ dom = self.domain() - if not is_AffineScheme(dom): + if not isinstance(dom, AffineScheme): raise ValueError("value rings are defined for affine domains only") return dom.coordinate_ring() diff --git a/src/sage/schemes/generic/scheme.py b/src/sage/schemes/generic/scheme.py index 88a241037e9..8c5f93d70a9 100644 --- a/src/sage/schemes/generic/scheme.py +++ b/src/sage/schemes/generic/scheme.py @@ -42,11 +42,11 @@ def is_Scheme(x): EXAMPLES:: - sage: from sage.schemes.generic.scheme import is_Scheme - sage: is_Scheme(5) + sage: from sage.schemes.generic.scheme import Scheme + sage: isinstance(5, Scheme) False sage: X = Spec(QQ) - sage: is_Scheme(X) + sage: isinstance(X, Scheme) True """ from sage.misc.superseded import deprecation @@ -107,7 +107,7 @@ def __init__(self, X=None, category=None): if X is None: self._base_ring = ZZ - elif is_Scheme(X): + elif isinstance(X, Scheme): self._base_scheme = X elif is_SchemeMorphism(X): self._base_morphism = X @@ -257,7 +257,7 @@ def __call__(self, *args): S = args[0] if S in CommutativeRings(): return self.point_homset(S) - elif is_Scheme(S): + elif isinstance(S, Scheme): return S.Hom(self) elif isinstance(S, (list, tuple)): args = S @@ -333,8 +333,8 @@ def point(self, v, check=True): (0 : 0 : 1) """ # todo: update elliptic curve stuff to take point_homset as argument - from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve - if is_EllipticCurve(self): + from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic + if isinstance(self, EllipticCurve_generic): try: return self._point(self.point_homset(), v, check=check) except AttributeError: # legacy code without point_homset @@ -609,7 +609,7 @@ def hom(self, x, Y=None, check=True): Defn: Structure map """ if Y is None: - if is_Scheme(x): + if isinstance(x, Scheme): return self.Hom(x).natural_map() else: raise TypeError("unable to determine codomain") @@ -794,11 +794,11 @@ def is_AffineScheme(x): EXAMPLES:: - sage: from sage.schemes.generic.scheme import is_AffineScheme - sage: is_AffineScheme(5) + sage: from sage.schemes.generic.scheme import AffineScheme + sage: isinstance(5, AffineScheme) False sage: E = Spec(QQ) - sage: is_AffineScheme(E) + sage: isinstance(E, AffineScheme) True """ from sage.misc.superseded import deprecation @@ -1217,7 +1217,7 @@ def hom(self, x, Y=None): from sage.categories.map import Map from sage.categories.rings import Rings - if is_Scheme(x): + if isinstance(x, Scheme): return self.Hom(x).natural_map() if Y is None and isinstance(x, Map) and x.category_for().is_subcategory(Rings()): # x is a morphism of Rings diff --git a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py index beee5720186..f6e3613d318 100644 --- a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py +++ b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py @@ -47,10 +47,10 @@ def is_HyperellipticCurve(C): """ EXAMPLES:: - sage: from sage.schemes.hyperelliptic_curves.hyperelliptic_generic import is_HyperellipticCurve + sage: from sage.schemes.hyperelliptic_curves.hyperelliptic_generic import HyperellipticCurve_generic sage: R. = QQ[]; C = HyperellipticCurve(x^3 + x - 1); C Hyperelliptic Curve over Rational Field defined by y^2 = x^3 + x - 1 - sage: is_HyperellipticCurve(C) + sage: isinstance(C, HyperellipticCurve_generic) True """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/hyperelliptic_curves/jacobian_homset.py b/src/sage/schemes/hyperelliptic_curves/jacobian_homset.py index a5f4f63876c..88b28a4b753 100644 --- a/src/sage/schemes/hyperelliptic_curves/jacobian_homset.py +++ b/src/sage/schemes/hyperelliptic_curves/jacobian_homset.py @@ -161,9 +161,9 @@ def value_ring(self): """ Return S for a homset X(T) where T = Spec(S). """ - from sage.schemes.generic.scheme import is_AffineScheme + from sage.schemes.generic.scheme import AffineScheme T = self.domain() - if is_AffineScheme(T): + if isinstance(T, AffineScheme): return T.coordinate_ring() else: raise TypeError("domain of argument must be of the form Spec(S)") diff --git a/src/sage/schemes/hyperelliptic_curves/monsky_washnitzer.py b/src/sage/schemes/hyperelliptic_curves/monsky_washnitzer.py index 03b795a4704..753f83f8b23 100644 --- a/src/sage/schemes/hyperelliptic_curves/monsky_washnitzer.py +++ b/src/sage/schemes/hyperelliptic_curves/monsky_washnitzer.py @@ -74,9 +74,9 @@ from sage.rings.padics.factory import Qp as pAdicField from sage.rings.polynomial.polynomial_element import Polynomial from sage.schemes.elliptic_curves.constructor import EllipticCurve -from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve +from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic from sage.schemes.hyperelliptic_curves.constructor import HyperellipticCurve -from sage.schemes.hyperelliptic_curves.hyperelliptic_generic import is_HyperellipticCurve +from sage.schemes.hyperelliptic_curves.hyperelliptic_generic import HyperellipticCurve_generic from sage.structure.element import ModuleElement from sage.structure.parent import Parent from sage.structure.richcmp import richcmp @@ -2391,14 +2391,14 @@ def __init__(self, Q, R=None, invert_y=True): R = Q.base_ring() x = PolynomialRing(R, 'xx').gen() - if is_EllipticCurve(Q): + if isinstance(Q, EllipticCurve_generic): E = Q if E.a1() != 0 or E.a2() != 0: raise NotImplementedError("curve must be in Weierstrass normal form") Q = -E.change_ring(R).defining_polynomial()(x, 0, 1) self._curve = E - elif is_HyperellipticCurve(Q): + elif isinstance(Q, HyperellipticCurve_generic): C = Q if C.hyperelliptic_polynomials()[1] != 0: raise NotImplementedError("curve must be of form y^2 = Q(x)") diff --git a/src/sage/schemes/jacobians/abstract_jacobian.py b/src/sage/schemes/jacobians/abstract_jacobian.py index 570c5efaa76..bed9555da46 100644 --- a/src/sage/schemes/jacobians/abstract_jacobian.py +++ b/src/sage/schemes/jacobians/abstract_jacobian.py @@ -133,7 +133,7 @@ def __init__(self, C, category=None): TypeError: C (=Projective Plane Curve over Ring of integers modulo 6 defined by x + y + z) must be defined over a field. """ - if not is_Scheme(C): + if not isinstance(C, Scheme): raise TypeError("Argument (=%s) must be a scheme." % C) if C.base_ring() not in _Fields: raise TypeError("C (=%s) must be defined over a field." % C) diff --git a/src/sage/schemes/plane_quartics/quartic_constructor.py b/src/sage/schemes/plane_quartics/quartic_constructor.py index 37c06a1f5c9..624583455d9 100644 --- a/src/sage/schemes/plane_quartics/quartic_constructor.py +++ b/src/sage/schemes/plane_quartics/quartic_constructor.py @@ -59,7 +59,7 @@ def QuarticCurve(F, PP=None, check=False): raise ValueError("Argument F (=%s) must be a homogeneous polynomial of degree 4" % F) if PP is not None: - if not is_ProjectiveSpace(PP) and PP.dimension == 2: + if not isinstance(PP, ProjectiveSpace_ring) and PP.dimension == 2: raise ValueError(f"Argument PP (={PP}) must be a projective plane") else: PP = ProjectiveSpace(P) diff --git a/src/sage/schemes/plane_quartics/quartic_generic.py b/src/sage/schemes/plane_quartics/quartic_generic.py index 2e525749d86..650ac29e5d1 100644 --- a/src/sage/schemes/plane_quartics/quartic_generic.py +++ b/src/sage/schemes/plane_quartics/quartic_generic.py @@ -27,10 +27,10 @@ def is_QuarticCurve(C): EXAMPLES:: - sage: from sage.schemes.plane_quartics.quartic_generic import is_QuarticCurve + sage: from sage.schemes.plane_quartics.quartic_generic import QuarticCurve_generic sage: x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() sage: Q = QuarticCurve(x**4 + y**4 + z**4) - sage: is_QuarticCurve(Q) + sage: isinstance(Q, QuarticCurve_generic) True """ diff --git a/src/sage/schemes/product_projective/homset.py b/src/sage/schemes/product_projective/homset.py index b0b8655a0ec..32ccb977093 100644 --- a/src/sage/schemes/product_projective/homset.py +++ b/src/sage/schemes/product_projective/homset.py @@ -182,8 +182,8 @@ def points(self, **kwds): B = kwds.pop('bound', 0) X = self.codomain() - from sage.schemes.product_projective.space import is_ProductProjectiveSpaces - if not is_ProductProjectiveSpaces(X) and X.base_ring() in Fields(): + from sage.schemes.product_projective.space import ProductProjectiveSpaces_ring + if not isinstance(X, ProductProjectiveSpaces_ring) and X.base_ring() in Fields(): # no points if X.dimension() == -1: return [] diff --git a/src/sage/schemes/product_projective/morphism.py b/src/sage/schemes/product_projective/morphism.py index d5b1974164b..30874e5530e 100644 --- a/src/sage/schemes/product_projective/morphism.py +++ b/src/sage/schemes/product_projective/morphism.py @@ -112,8 +112,8 @@ def __init__(self, parent, polys, check=True): target = parent.codomain().ambient_space() dom = parent.domain().ambient_space() - from sage.schemes.product_projective.space import is_ProductProjectiveSpaces - if is_ProductProjectiveSpaces(target): + from sage.schemes.product_projective.space import ProductProjectiveSpaces_ring + if isinstance(target, ProductProjectiveSpaces_ring): splitpolys = target._factors(polys) for m in range(len(splitpolys)): d = dom._degree(splitpolys[m][0]) diff --git a/src/sage/schemes/product_projective/point.py b/src/sage/schemes/product_projective/point.py index 6de7cf74d7d..e930a30056b 100644 --- a/src/sage/schemes/product_projective/point.py +++ b/src/sage/schemes/product_projective/point.py @@ -537,8 +537,8 @@ def intersection_multiplicity(self, X): sage: Q.intersection_multiplicity(Y) # needs sage.libs.singular 2 """ - from sage.schemes.product_projective.space import is_ProductProjectiveSpaces - if is_ProductProjectiveSpaces(self.codomain()): + from sage.schemes.product_projective.space import ProductProjectiveSpaces_ring + if isinstance(self.codomain(), ProductProjectiveSpaces_ring): raise TypeError("this point must be a point on a subscheme of a product of projective spaces") return self.codomain().intersection_multiplicity(X, self) @@ -565,8 +565,8 @@ def multiplicity(self): sage: Q3.multiplicity() # needs sage.libs.singular 6 """ - from sage.schemes.product_projective.space import is_ProductProjectiveSpaces - if is_ProductProjectiveSpaces(self.codomain()): + from sage.schemes.product_projective.space import ProductProjectiveSpaces_ring + if isinstance(self.codomain(), ProductProjectiveSpaces_ring): raise TypeError("this point must be a point on a subscheme of a product of projective spaces") return self.codomain().multiplicity(self) diff --git a/src/sage/schemes/product_projective/rational_point.py b/src/sage/schemes/product_projective/rational_point.py index a4488647063..3afcccd3782 100644 --- a/src/sage/schemes/product_projective/rational_point.py +++ b/src/sage/schemes/product_projective/rational_point.py @@ -55,8 +55,8 @@ # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.schemes.generic.scheme import is_Scheme -from sage.schemes.product_projective.space import is_ProductProjectiveSpaces +from sage.schemes.generic.scheme import Scheme +from sage.schemes.product_projective.space import ProductProjectiveSpaces_ring from sage.misc.lazy_import import lazy_import from sage.misc.mrange import xmrange from sage.misc.misc_c import prod @@ -124,8 +124,8 @@ def enum_product_projective_rational_field(X, B): (0 : 0 : 1 , 0 : 1), (0 : 0 : 1 , 1 : 1), (0 : 1 : 0 , 0 : 1), (0 : 1 : 0 , 1 : 1), (1 : -1/2 : 1 , 0 : 1), (1 : -1/2 : 1 , 1 : 1)] """ - if is_Scheme(X): - if (not is_ProductProjectiveSpaces(X.ambient_space())): + if isinstance(X, Scheme): + if (not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring)): raise TypeError("ambient space must be product of projective space over the rational field") X = X(X.base_ring()) else: @@ -228,8 +228,8 @@ def enum_product_projective_number_field(X, **kwds): tol = kwds.pop('tolerance', 1e-2) prec = kwds.pop('precision', 53) - if is_Scheme(X): - if (not is_ProductProjectiveSpaces(X.ambient_space())): + if isinstance(X, Scheme): + if (not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring)): raise TypeError("ambient space must be product of projective space over the rational field") X = X(X.base_ring()) else: @@ -284,8 +284,8 @@ def enum_product_projective_finite_field(X): sage: len(enum_product_projective_finite_field(X)) 36 """ - if is_Scheme(X): - if (not is_ProductProjectiveSpaces(X.ambient_space())): + if isinstance(X, Scheme): + if (not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring)): raise TypeError("ambient space must be product of projective space over the rational field") X = X(X.base_ring()) else: diff --git a/src/sage/schemes/product_projective/space.py b/src/sage/schemes/product_projective/space.py index 8a41a857dfe..94d985d8552 100644 --- a/src/sage/schemes/product_projective/space.py +++ b/src/sage/schemes/product_projective/space.py @@ -72,9 +72,9 @@ def is_ProductProjectiveSpaces(x): EXAMPLES:: - sage: is_ProductProjectiveSpaces(ProjectiveSpace(5, names='x')) + sage: isinstance(ProjectiveSpace(5, names='x'), ProductProjectiveSpaces_ring) False - sage: is_ProductProjectiveSpaces(ProductProjectiveSpaces([1, 2, 3], ZZ, 'x')) + sage: isinstance(ProductProjectiveSpaces([1, 2, 3], ZZ, 'x'), ProductProjectiveSpaces_ring) True """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/projective/projective_homset.py b/src/sage/schemes/projective/projective_homset.py index 91c01a51128..5428a101364 100644 --- a/src/sage/schemes/projective/projective_homset.py +++ b/src/sage/schemes/projective/projective_homset.py @@ -169,9 +169,9 @@ def points(self, **kwds): the numerical fields are inexact;points may be computed partially or incorrectly. 6 """ - from sage.schemes.projective.projective_space import is_ProjectiveSpace + from sage.schemes.projective.projective_space import ProjectiveSpace_ring X = self.codomain() - if not is_ProjectiveSpace(X) and X.base_ring() in Fields(): + if not isinstance(X, ProjectiveSpace_ring) and X.base_ring() in Fields(): if hasattr(X.base_ring(), 'precision'): numerical = True verbose("Warning: computations in the numerical fields are inexact;points may be computed partially or incorrectly.", level=0) @@ -377,7 +377,7 @@ def numerical_points(self, F=None, **kwds): ... TypeError: F must be a numerical field """ - from sage.schemes.projective.projective_space import is_ProjectiveSpace + from sage.schemes.projective.projective_space import ProjectiveSpace_ring if F is None: F = CC if F not in Fields() or not hasattr(F, 'precision'): @@ -387,7 +387,7 @@ def numerical_points(self, F=None, **kwds): raise TypeError('base ring must be a number field') PP = X.ambient_space().change_ring(F) - if not is_ProjectiveSpace(X) and X.base_ring() in Fields(): + if not isinstance(X, ProjectiveSpace_ring) and X.base_ring() in Fields(): #Then it must be a subscheme dim_ideal = X.defining_ideal().dimension() if dim_ideal < 1: # no points diff --git a/src/sage/schemes/projective/projective_morphism.py b/src/sage/schemes/projective/projective_morphism.py index a284ecbc585..a21c3f48e17 100644 --- a/src/sage/schemes/projective/projective_morphism.py +++ b/src/sage/schemes/projective/projective_morphism.py @@ -1555,8 +1555,8 @@ def wronskian_ideal(self): from sage.calculus.functions import jacobian dom = self.domain() - from sage.schemes.projective.projective_space import is_ProjectiveSpace - if not (is_ProjectiveSpace(dom) and is_ProjectiveSpace(self.codomain())): + from sage.schemes.projective.projective_space import ProjectiveSpace_ring + if not (isinstance(dom, ProjectiveSpace_ring) and isinstance(self.codomain(), ProjectiveSpace_ring)): raise NotImplementedError("not implemented for subschemes") N = dom.dimension_relative() + 1 R = dom.coordinate_ring() @@ -1791,9 +1791,9 @@ def _number_field_from_algebraics(self): ((-0.6823278038280193?)*x^3 + (-13)*y^3 : (-14)*y^3) """ from sage.rings.qqbar import number_field_elements_from_algebraics - from sage.schemes.projective.projective_space import is_ProjectiveSpace + from sage.schemes.projective.projective_space import ProjectiveSpace_ring - if not (is_ProjectiveSpace(self.domain()) and is_ProjectiveSpace(self.domain())): + if not (isinstance(self.domain(), ProjectiveSpace_ring) and isinstance(self.domain(), ProjectiveSpace_ring)): raise NotImplementedError("not implemented for subschemes") K_pre, C, phi = number_field_elements_from_algebraics([c for f in self diff --git a/src/sage/schemes/projective/projective_point.py b/src/sage/schemes/projective/projective_point.py index 2f5576e6a12..6aebc66a5e6 100644 --- a/src/sage/schemes/projective/projective_point.py +++ b/src/sage/schemes/projective/projective_point.py @@ -1269,8 +1269,8 @@ def _number_field_from_algebraics(self): sage: Q[0] == T[0] True """ - from sage.schemes.projective.projective_space import is_ProjectiveSpace - if not is_ProjectiveSpace(self.codomain()): + from sage.schemes.projective.projective_space import ProjectiveSpace_ring + if not isinstance(self.codomain(), ProjectiveSpace_ring): raise NotImplementedError("not implemented for subschemes") # Issue #23808: Keep the embedding info associated with the number field K @@ -1368,8 +1368,8 @@ def intersection_multiplicity(self, X): ... TypeError: this point must be a point on a projective subscheme """ - from sage.schemes.projective.projective_space import is_ProjectiveSpace - if is_ProjectiveSpace(self.codomain()): + from sage.schemes.projective.projective_space import ProjectiveSpace_ring + if isinstance(self.codomain(), ProjectiveSpace_ring): raise TypeError("this point must be a point on a projective subscheme") return self.codomain().intersection_multiplicity(X, self) @@ -1393,8 +1393,8 @@ def multiplicity(self): sage: Q2.multiplicity() # needs sage.libs.singular 8 """ - from sage.schemes.projective.projective_space import is_ProjectiveSpace - if is_ProjectiveSpace(self.codomain()): + from sage.schemes.projective.projective_space import ProjectiveSpace_ring + if isinstance(self.codomain(), ProjectiveSpace_ring): raise TypeError("this point must be a point on a projective subscheme") return self.codomain().multiplicity(self) diff --git a/src/sage/schemes/projective/projective_rational_point.py b/src/sage/schemes/projective/projective_rational_point.py index 8c2fa76599a..b7857858b34 100644 --- a/src/sage/schemes/projective/projective_rational_point.py +++ b/src/sage/schemes/projective/projective_rational_point.py @@ -63,7 +63,7 @@ from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF from sage.misc.misc_c import prod from sage.misc.mrange import xmrange -from sage.schemes.generic.scheme import is_Scheme +from sage.schemes.generic.scheme import Scheme from sage.parallel.ncpus import ncpus from sage.parallel.use_fork import p_iter_fork from sage.matrix.constructor import matrix @@ -128,9 +128,9 @@ def enum_projective_rational_field(X, B): - John Cremona and Charlie Turner (06-2010) """ - from sage.schemes.projective.projective_space import is_ProjectiveSpace - if is_Scheme(X): - if not is_ProjectiveSpace(X.ambient_space()): + from sage.schemes.projective.projective_space import ProjectiveSpace_ring + if isinstance(X, Scheme): + if not isinstance(X.ambient_space(), ProjectiveSpace_ring): raise TypeError("ambient space must be projective space over the rational field") X = X(X.base_ring()) elif not is_ProjectiveSpace(X.codomain().ambient_space()): @@ -206,9 +206,9 @@ def enum_projective_number_field(X, **kwds): B = kwds.pop('bound') tol = kwds.pop('tolerance', 1e-2) prec = kwds.pop('precision', 53) - from sage.schemes.projective.projective_space import is_ProjectiveSpace - if is_Scheme(X): - if (not is_ProjectiveSpace(X.ambient_space())): + from sage.schemes.projective.projective_space import ProjectiveSpace_ring + if isinstance(X, Scheme): + if (not isinstance(X.ambient_space(), ProjectiveSpace_ring)): raise TypeError("ambient space must be projective space over a number field") X = X(X.base_ring()) else: @@ -287,9 +287,9 @@ def enum_projective_finite_field(X): - John Cremona and Charlie Turner (06-2010). """ - from sage.schemes.projective.projective_space import is_ProjectiveSpace - if is_Scheme(X): - if not is_ProjectiveSpace(X.ambient_space()): + from sage.schemes.projective.projective_space import ProjectiveSpace_ring + if isinstance(X, Scheme): + if not isinstance(X.ambient_space(), ProjectiveSpace_ring): raise TypeError("ambient space must be projective space over a finite") X = X(X.base_ring()) elif not is_ProjectiveSpace(X.codomain().ambient_space()): diff --git a/src/sage/schemes/projective/projective_space.py b/src/sage/schemes/projective/projective_space.py index 272e7dbb602..e83b350bd5a 100644 --- a/src/sage/schemes/projective/projective_space.py +++ b/src/sage/schemes/projective/projective_space.py @@ -138,12 +138,12 @@ def is_ProjectiveSpace(x): EXAMPLES:: - sage: from sage.schemes.projective.projective_space import is_ProjectiveSpace - sage: is_ProjectiveSpace(ProjectiveSpace(5, names='x')) + sage: from sage.schemes.projective.projective_space import ProjectiveSpace_ring + sage: isinstance(ProjectiveSpace(5, names='x'), ProjectiveSpace_ring) True sage: is_ProjectiveSpace(ProjectiveSpace(5, GF(9, 'alpha'), names='x')) # needs sage.rings.finite_rings True - sage: is_ProjectiveSpace(Spec(ZZ)) + sage: isinstance(Spec(ZZ), ProjectiveSpace_ring) False """ from sage.misc.superseded import deprecation @@ -1541,7 +1541,7 @@ def veronese_embedding(self, d, CS=None, order='lex'): if CS is None: CS = ProjectiveSpace(self.base_ring(), binomial(N + d, d) - 1) else: - if not is_ProjectiveSpace(CS): + if not isinstance(CS, ProjectiveSpace_ring): raise TypeError("(=%s) must be a projective space" % CS) if CS.dimension() != binomial(N + d, d) - 1: raise TypeError("(=%s) has the wrong dimension to serve as the codomain space" % CS) diff --git a/src/sage/schemes/projective/projective_subscheme.py b/src/sage/schemes/projective/projective_subscheme.py index 3ea963e0e04..b4210db1f21 100644 --- a/src/sage/schemes/projective/projective_subscheme.py +++ b/src/sage/schemes/projective/projective_subscheme.py @@ -115,8 +115,8 @@ def point(self, v, check=True): raise ValueError("%s not well defined in dimension > 1" % v) v = [1, 0] # todo: update elliptic curve stuff to take point_homset as argument - from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve - if is_EllipticCurve(self): + from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic + if isinstance(self, EllipticCurve_generic): try: return self._point(self.point_homset(), v, check=check) except AttributeError: # legacy code without point_homset diff --git a/src/sage/schemes/toric/chow_group.py b/src/sage/schemes/toric/chow_group.py index 4b48f72a39d..dc6ac944388 100644 --- a/src/sage/schemes/toric/chow_group.py +++ b/src/sage/schemes/toric/chow_group.py @@ -131,7 +131,7 @@ from sage.rings.infinity import Infinity import sage.geometry.abc -from sage.schemes.toric.variety import is_ToricVariety +from sage.schemes.toric.variety import ToricVariety_field from sage.schemes.toric.divisor import is_ToricDivisor @@ -548,7 +548,7 @@ def create_key_and_extra_args(self, toric_variety, base_ring=ZZ, check=True): sage: ChowGroup(P2, ZZ, check=True) == ChowGroup(P2, ZZ, check=False) # indirect doctest True """ - if not is_ToricVariety(toric_variety): + if not isinstance(toric_variety, ToricVariety_field): raise ValueError('first argument must be a toric variety') if base_ring not in [ZZ, QQ]: @@ -608,7 +608,7 @@ def __init__(self, toric_variety, base_ring, check): sage: P2 = toric_varieties.P2() sage: A = ChowGroup_class(P2,ZZ,True); A Chow group of 2-d CPR-Fano toric variety covered by 3 affine patches - sage: is_ChowGroup(A) + sage: isinstance(A, ChowGroup_class) True sage: is_ChowCycle(A.an_element()) True @@ -1214,10 +1214,10 @@ def is_ChowGroup(x) -> bool: sage: P2 = toric_varieties.P2() sage: A = P2.Chow_group() - sage: from sage.schemes.toric.chow_group import is_ChowGroup - sage: is_ChowGroup(A) + sage: from sage.schemes.toric.chow_group import ChowGroup_class + sage: isinstance(A, ChowGroup_class) True - sage: is_ChowGroup('Victoria') + sage: isinstance('Victoria', ChowGroup_class) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/toric/divisor.py b/src/sage/schemes/toric/divisor.py index a80d9a41b85..563c6674489 100644 --- a/src/sage/schemes/toric/divisor.py +++ b/src/sage/schemes/toric/divisor.py @@ -302,7 +302,7 @@ def ToricDivisor(toric_variety, arg=None, ring=None, check=True, reduce=True): ... TypeError: cannot deduce coefficient ring for [(u, u)] """ - assert is_ToricVariety(toric_variety) + assert isinstance(toric_variety, ToricVariety_field) # First convert special arguments into lists # of multiplicities or (multiplicity,coordinate) @@ -1687,7 +1687,7 @@ def __init__(self, toric_variety, base_ring): sage: DivisorGroup(P2, ZZ) is ToricDivisorGroup(P2, ZZ) False """ - assert is_ToricVariety(toric_variety), str(toric_variety) + ' is not a toric variety!' + assert isinstance(toric_variety, ToricVariety_field), str(toric_variety) + ' is not a toric variety!' super().__init__(toric_variety, base_ring) def _latex_(self): diff --git a/src/sage/schemes/toric/fano_variety.py b/src/sage/schemes/toric/fano_variety.py index fbc2b24dfed..e1cb6859505 100644 --- a/src/sage/schemes/toric/fano_variety.py +++ b/src/sage/schemes/toric/fano_variety.py @@ -168,15 +168,15 @@ def is_CPRFanoToricVariety(x): EXAMPLES:: - sage: from sage.schemes.toric.fano_variety import is_CPRFanoToricVariety - sage: is_CPRFanoToricVariety(1) + sage: from sage.schemes.toric.fano_variety import CPRFanoToricVariety_field + sage: isinstance(1, CPRFanoToricVariety_field) False sage: FTV = toric_varieties.P2() sage: FTV 2-d CPR-Fano toric variety covered by 3 affine patches - sage: is_CPRFanoToricVariety(FTV) + sage: isinstance(FTV, CPRFanoToricVariety_field) True - sage: is_CPRFanoToricVariety(ProjectiveSpace(2)) + sage: isinstance(ProjectiveSpace(2), CPRFanoToricVariety_field) False """ from sage.misc.superseded import deprecation @@ -1144,7 +1144,7 @@ def cartesian_product(self, other, sage: P1xP2.Delta_polar() 3-d reflexive polytope in 3-d lattice N+N """ - if is_CPRFanoToricVariety(other): + if isinstance(other, CPRFanoToricVariety_field): fan = self.fan().cartesian_product(other.fan()) Delta_polar = LatticePolytope(fan.rays()) @@ -1316,7 +1316,7 @@ def __init__(self, P_Delta, monomial_points=None, coefficient_names=None, s^2*x^2 + s*t*x^2 + t^2*x^2 + s^2*x*y + s*t*x*y + t^2*x*y + s^2*y^2 + s*t*y^2 + t^2*y^2 """ - if not is_CPRFanoToricVariety(P_Delta): + if not isinstance(P_Delta, CPRFanoToricVariety_field): raise TypeError("anticanonical hypersurfaces can only be " "constructed for CPR-Fano toric varieties!" "\nGot: %s" % P_Delta) @@ -1430,7 +1430,7 @@ def __init__(self, P_Delta, nef_partition, b1*z1*z2^2 + b2*z2^2*z4 + b5*z1*z2*z5 + b4*z2*z4*z5 + b3*z1*z5^2 + b0*z4*z5^2 """ - if not is_CPRFanoToricVariety(P_Delta): + if not isinstance(P_Delta, CPRFanoToricVariety_field): raise TypeError("nef complete intersections can only be " "constructed for CPR-Fano toric varieties!" "\nGot: %s" % P_Delta) diff --git a/src/sage/schemes/toric/homset.py b/src/sage/schemes/toric/homset.py index e02d0b92078..80a879a6aed 100644 --- a/src/sage/schemes/toric/homset.py +++ b/src/sage/schemes/toric/homset.py @@ -166,8 +166,8 @@ def __init__(self, X, Y, category=None, check=True, base=ZZ): to Rational polyhedral fan in 1-d lattice N. """ SchemeHomset_generic.__init__(self, X, Y, category=category, check=check, base=base) - from sage.schemes.toric.variety import is_ToricVariety - if is_ToricVariety(X) and is_ToricVariety(Y): + from sage.schemes.toric.variety import ToricVariety_field + if isinstance(X, ToricVariety_field) and isinstance(Y, ToricVariety_field): self.register_conversion(MatrixSpace(ZZ, X.fan().dim(), Y.fan().dim())) def _element_constructor_(self, x, check=True): diff --git a/src/sage/schemes/toric/morphism.py b/src/sage/schemes/toric/morphism.py index c22f88e99fb..a7afee25f30 100644 --- a/src/sage/schemes/toric/morphism.py +++ b/src/sage/schemes/toric/morphism.py @@ -374,7 +374,7 @@ from sage.geometry.cone import Cone from sage.geometry.fan import Fan -from sage.schemes.generic.scheme import is_Scheme +from sage.schemes.generic.scheme import Scheme from sage.schemes.generic.morphism import ( is_SchemeMorphism, SchemeMorphism, SchemeMorphism_point, SchemeMorphism_polynomial @@ -425,7 +425,7 @@ def __init__(self, X, coordinates, check=True): [1 : 2 : 3 : 4] """ # Convert scheme to its set of points over the base ring - if is_Scheme(X): + if isinstance(X, Scheme): X = X(X.base_ring()) super().__init__(X) if check: diff --git a/src/sage/schemes/toric/sheaf/constructor.py b/src/sage/schemes/toric/sheaf/constructor.py index 0fb0c0a34e5..3b23c4d9213 100644 --- a/src/sage/schemes/toric/sheaf/constructor.py +++ b/src/sage/schemes/toric/sheaf/constructor.py @@ -13,7 +13,7 @@ # the License, or (at your option) any later version. # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.schemes.toric.variety import is_ToricVariety +from sage.schemes.toric.variety import ToricVariety_field from sage.modules.filtered_vector_space import FilteredVectorSpace @@ -36,7 +36,7 @@ def TangentBundle(X): sage: TangentBundle(dP7) Rank 2 bundle on 2-d CPR-Fano toric variety covered by 5 affine patches. """ - if not is_ToricVariety(X): + if not isinstance(X, ToricVariety_field): raise ValueError('not a toric variety') fan = X.fan() @@ -94,7 +94,7 @@ def TrivialBundle(X, rank=1): sage: I3.cohomology(weight=(0,0), dim=True) (3, 0, 0) """ - if not is_ToricVariety(X): + if not isinstance(X, ToricVariety_field): raise ValueError('not a toric variety') base_ring = X.base_ring() @@ -127,7 +127,7 @@ def LineBundle(X, D): sage: O_D.cohomology(dim=True, weight=(0,0)) (1, 0, 0) """ - if not is_ToricVariety(X): + if not isinstance(X, ToricVariety_field): raise ValueError('not a toric variety') base_ring = X.base_ring() diff --git a/src/sage/schemes/toric/sheaf/klyachko.py b/src/sage/schemes/toric/sheaf/klyachko.py index fba912d12bc..cb5fbc3efcd 100644 --- a/src/sage/schemes/toric/sheaf/klyachko.py +++ b/src/sage/schemes/toric/sheaf/klyachko.py @@ -67,8 +67,8 @@ def is_KlyachkoBundle(X): EXAMPLES:: - sage: from sage.schemes.toric.sheaf.klyachko import is_KlyachkoBundle - sage: is_KlyachkoBundle('test') + sage: from sage.schemes.toric.sheaf.klyachko import KlyachkoBundle_class + sage: isinstance('test', KlyachkoBundle_class) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/toric/variety.py b/src/sage/schemes/toric/variety.py index 378fd094bf4..da2a965b488 100644 --- a/src/sage/schemes/toric/variety.py +++ b/src/sage/schemes/toric/variety.py @@ -349,16 +349,16 @@ def is_ToricVariety(x): EXAMPLES:: - sage: from sage.schemes.toric.variety import is_ToricVariety - sage: is_ToricVariety(1) + sage: from sage.schemes.toric.variety import ToricVariety_field + sage: isinstance(1, ToricVariety_field) False sage: fan = FaceFan(lattice_polytope.cross_polytope(2)) sage: P = ToricVariety(fan) sage: P 2-d toric variety covered by 4 affine patches - sage: is_ToricVariety(P) + sage: isinstance(P, ToricVariety_field) True - sage: is_ToricVariety(ProjectiveSpace(2)) + sage: isinstance(ProjectiveSpace(2), ToricVariety_field) False """ from sage.misc.superseded import deprecation @@ -1341,7 +1341,7 @@ def is_isomorphic(self, another): """ if self is another: return True - if not is_ToricVariety(another): + if not isinstance(another, ToricVariety_field): raise TypeError( "only another toric variety can be checked for isomorphism; " "got %s" % another) From 4ef7ce75be896588b6088c8bf93196d6100a5fcf Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 18 May 2024 21:15:39 -0700 Subject: [PATCH 3/9] fixups --- .../dynamics/arithmetic_dynamics/projective_ds.py | 2 +- src/sage/schemes/affine/affine_rational_point.py | 6 +++--- src/sage/schemes/berkovich/berkovich_space.py | 2 +- src/sage/schemes/curves/affine_curve.py | 2 +- src/sage/schemes/curves/constructor.py | 4 ++-- src/sage/schemes/curves/projective_curve.py | 2 +- src/sage/schemes/generic/algebraic_scheme.py | 6 +++--- src/sage/schemes/generic/divisor_group.py | 2 +- .../schemes/plane_quartics/quartic_constructor.py | 2 +- .../schemes/product_projective/rational_point.py | 12 ++++++------ .../schemes/projective/projective_rational_point.py | 8 ++++---- src/sage/schemes/toric/divisor.py | 2 +- 12 files changed, 25 insertions(+), 25 deletions(-) diff --git a/src/sage/dynamics/arithmetic_dynamics/projective_ds.py b/src/sage/dynamics/arithmetic_dynamics/projective_ds.py index c9e7674cbc6..66fdf03ecd7 100644 --- a/src/sage/dynamics/arithmetic_dynamics/projective_ds.py +++ b/src/sage/dynamics/arithmetic_dynamics/projective_ds.py @@ -108,7 +108,7 @@ class initialization directly. SchemeMorphism_polynomial_projective_space, SchemeMorphism_polynomial_projective_space_field, SchemeMorphism_polynomial_projective_space_finite_field) -from sage.schemes.projective.projective_space import ProjectiveSpace, is_ProjectiveSpace +from sage.schemes.projective.projective_space import ProjectiveSpace, ProjectiveSpace_ring from sage.schemes.projective.projective_subscheme import AlgebraicScheme_subscheme_projective from sage.structure.element import get_coercion_model diff --git a/src/sage/schemes/affine/affine_rational_point.py b/src/sage/schemes/affine/affine_rational_point.py index 9eacf85b30d..ff0b88c31f9 100644 --- a/src/sage/schemes/affine/affine_rational_point.py +++ b/src/sage/schemes/affine/affine_rational_point.py @@ -113,7 +113,7 @@ def enum_affine_rational_field(X, B): if not isinstance(X.ambient_space(), AffineSpace_generic): raise TypeError("ambient space must be affine space over the rational field") X = X(X.base_ring()) - elif not is_AffineSpace(X.codomain().ambient_space()): + elif not isinstance(X.codomain().ambient_space(), AffineSpace_generic): raise TypeError("codomain must be affine space over the rational field") n = X.codomain().ambient_space().ngens() @@ -220,7 +220,7 @@ def enum_affine_number_field(X, **kwds): if not isinstance(X.ambient_space(), AffineSpace_generic): raise TypeError("ambient space must be affine space over a number field") X = X(X.base_ring()) - elif not is_AffineSpace(X.codomain().ambient_space()): + elif not isinstance(X.codomain().ambient_space(), AffineSpace_generic): raise TypeError("codomain must be affine space over a number field") R = X.codomain().ambient_space() @@ -294,7 +294,7 @@ def enum_affine_finite_field(X): if not isinstance(X.ambient_space(), AffineSpace_generic): raise TypeError("ambient space must be affine space over a finite field") X = X(X.base_ring()) - elif not is_AffineSpace(X.codomain().ambient_space()): + elif not isinstance(X.codomain().ambient_space(), AffineSpace_generic): raise TypeError("codomain must be affine space over a finite field") n = X.codomain().ambient_space().ngens() diff --git a/src/sage/schemes/berkovich/berkovich_space.py b/src/sage/schemes/berkovich/berkovich_space.py index b4bf87a7c90..21dc3c7f7ce 100644 --- a/src/sage/schemes/berkovich/berkovich_space.py +++ b/src/sage/schemes/berkovich/berkovich_space.py @@ -36,7 +36,7 @@ Berkovich_Element_Cp_Projective) from sage.structure.parent import Parent from sage.schemes.affine.affine_space import AffineSpace_generic -from sage.schemes.projective.projective_space import is_ProjectiveSpace, ProjectiveSpace +from sage.schemes.projective.projective_space import ProjectiveSpace_ring, ProjectiveSpace from sage.structure.unique_representation import UniqueRepresentation from sage.categories.number_fields import NumberFields import sage.rings.abc diff --git a/src/sage/schemes/curves/affine_curve.py b/src/sage/schemes/curves/affine_curve.py index 07bce6be708..9ff24c2ef9b 100644 --- a/src/sage/schemes/curves/affine_curve.py +++ b/src/sage/schemes/curves/affine_curve.py @@ -149,7 +149,7 @@ from sage.rings.rational_field import is_RationalField from sage.rings.infinity import infinity -from sage.schemes.affine.affine_space import AffineSpace, is_AffineSpace +from sage.schemes.affine.affine_space import AffineSpace, AffineSpace_generic from sage.schemes.affine.affine_subscheme import (AlgebraicScheme_subscheme_affine, AlgebraicScheme_subscheme_affine_field) diff --git a/src/sage/schemes/curves/constructor.py b/src/sage/schemes/curves/constructor.py index 79ec4fe406d..a49b2002495 100644 --- a/src/sage/schemes/curves/constructor.py +++ b/src/sage/schemes/curves/constructor.py @@ -48,8 +48,8 @@ from sage.schemes.generic.ambient_space import AmbientSpace from sage.schemes.generic.algebraic_scheme import AlgebraicScheme -from sage.schemes.affine.affine_space import AffineSpace, is_AffineSpace -from sage.schemes.projective.projective_space import ProjectiveSpace, is_ProjectiveSpace +from sage.schemes.affine.affine_space import AffineSpace, AffineSpace_generic +from sage.schemes.projective.projective_space import ProjectiveSpace, ProjectiveSpace_ring from sage.schemes.plane_conics.constructor import Conic from .projective_curve import (ProjectiveCurve, diff --git a/src/sage/schemes/curves/projective_curve.py b/src/sage/schemes/curves/projective_curve.py index dd265a9a433..fb1edc7d0ad 100644 --- a/src/sage/schemes/curves/projective_curve.py +++ b/src/sage/schemes/curves/projective_curve.py @@ -158,7 +158,7 @@ from sage.rings.rational_field import is_RationalField from sage.rings.integer import Integer -from sage.schemes.projective.projective_space import ProjectiveSpace, is_ProjectiveSpace +from sage.schemes.projective.projective_space import ProjectiveSpace, ProjectiveSpace_ring from sage.schemes.projective.projective_subscheme import (AlgebraicScheme_subscheme_projective, AlgebraicScheme_subscheme_projective_field) diff --git a/src/sage/schemes/generic/algebraic_scheme.py b/src/sage/schemes/generic/algebraic_scheme.py index e7c836eec7f..37d352fe12e 100644 --- a/src/sage/schemes/generic/algebraic_scheme.py +++ b/src/sage/schemes/generic/algebraic_scheme.py @@ -229,7 +229,7 @@ def __init__(self, A, category=None): sage: S.category() Category of schemes over Integer Ring """ - if not ambient_space.isinstance(A, AmbientSpace): + if not isinstance(A, ambient_space.AmbientSpace): raise TypeError("A (=%s) must be an ambient space") self.__A = A self.__divisor_group = {} @@ -677,7 +677,7 @@ def _latex_(self): X \\text{ is defined by }\\text{no polynomials},\\text{ and } Y \\text{ is defined by } x - y.' """ - if sage.schemes.affine.affine_space.isinstance(self.ambient_space(), AffineSpace_generic): + if isinstance(self.ambient_space(), sage.schemes.affine.affine_space.AffineSpace_generic): t = "affine" else: t = "projective" @@ -711,7 +711,7 @@ def _repr_(self): sage: U._repr_() 'Quasi-projective subscheme X - Y of Projective Space of dimension 2 over Integer Ring, where X is defined by:\n (no polynomials)\nand Y is defined by:\n x - y' """ - if sage.schemes.affine.affine_space.isinstance(self.ambient_space(), AffineSpace_generic): + if isinstance(self.ambient_space(), sage.schemes.affine.affine_space.AffineSpace_generic): t = "affine" else: t = "projective" diff --git a/src/sage/schemes/generic/divisor_group.py b/src/sage/schemes/generic/divisor_group.py index 0431b9aff6e..6f200d5bac0 100644 --- a/src/sage/schemes/generic/divisor_group.py +++ b/src/sage/schemes/generic/divisor_group.py @@ -72,7 +72,7 @@ def is_DivisorGroup(x): EXAMPLES:: - sage: from sage.schemes.generic.divisor_group import is_DivisorGroup, DivisorGroup + sage: from sage.schemes.generic.divisor_group import DivisorGroup_generic, DivisorGroup sage: Div = DivisorGroup(Spec(ZZ), base_ring=QQ) sage: isinstance(Div, DivisorGroup_generic) True diff --git a/src/sage/schemes/plane_quartics/quartic_constructor.py b/src/sage/schemes/plane_quartics/quartic_constructor.py index 624583455d9..fede02c20bd 100644 --- a/src/sage/schemes/plane_quartics/quartic_constructor.py +++ b/src/sage/schemes/plane_quartics/quartic_constructor.py @@ -8,7 +8,7 @@ # http://www.gnu.org/licenses/ #***************************************************************************** -from sage.schemes.projective.projective_space import is_ProjectiveSpace, ProjectiveSpace +from sage.schemes.projective.projective_space import ProjectiveSpace_ring, ProjectiveSpace from sage.rings.polynomial.multi_polynomial import MPolynomial from .quartic_generic import QuarticCurve_generic diff --git a/src/sage/schemes/product_projective/rational_point.py b/src/sage/schemes/product_projective/rational_point.py index 3afcccd3782..264e2a4c2d9 100644 --- a/src/sage/schemes/product_projective/rational_point.py +++ b/src/sage/schemes/product_projective/rational_point.py @@ -125,11 +125,11 @@ def enum_product_projective_rational_field(X, B): (0 : 1 : 0 , 1 : 1), (1 : -1/2 : 1 , 0 : 1), (1 : -1/2 : 1 , 1 : 1)] """ if isinstance(X, Scheme): - if (not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring)): + if not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring): raise TypeError("ambient space must be product of projective space over the rational field") X = X(X.base_ring()) else: - if (not is_ProductProjectiveSpaces(X.codomain().ambient_space())): + if not isinstance(X.codomain().ambient_space(), ProductProjectiveSpaces_ring): raise TypeError("codomain must be product of projective space over the rational field") R = X.codomain().ambient_space() @@ -229,11 +229,11 @@ def enum_product_projective_number_field(X, **kwds): prec = kwds.pop('precision', 53) if isinstance(X, Scheme): - if (not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring)): + if not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring): raise TypeError("ambient space must be product of projective space over the rational field") X = X(X.base_ring()) else: - if (not is_ProductProjectiveSpaces(X.codomain().ambient_space())): + if not isinstance(X.codomain().ambient_space(), ProductProjectiveSpaces_ring): raise TypeError("codomain must be product of projective space over the rational field") R = X.codomain().ambient_space() @@ -285,11 +285,11 @@ def enum_product_projective_finite_field(X): 36 """ if isinstance(X, Scheme): - if (not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring)): + if not isinstance(X.ambient_space(), ProductProjectiveSpaces_ring): raise TypeError("ambient space must be product of projective space over the rational field") X = X(X.base_ring()) else: - if (not is_ProductProjectiveSpaces(X.codomain().ambient_space())): + if not isinstance(X.codomain().ambient_space(), ProductProjectiveSpaces_ring): raise TypeError("codomain must be product of projective space over the rational field") R = X.codomain().ambient_space() diff --git a/src/sage/schemes/projective/projective_rational_point.py b/src/sage/schemes/projective/projective_rational_point.py index b7857858b34..1556ab2d856 100644 --- a/src/sage/schemes/projective/projective_rational_point.py +++ b/src/sage/schemes/projective/projective_rational_point.py @@ -133,7 +133,7 @@ def enum_projective_rational_field(X, B): if not isinstance(X.ambient_space(), ProjectiveSpace_ring): raise TypeError("ambient space must be projective space over the rational field") X = X(X.base_ring()) - elif not is_ProjectiveSpace(X.codomain().ambient_space()): + elif not isinstance(X.codomain().ambient_space(), ProjectiveSpace_ring): raise TypeError("codomain must be projective space over the rational field") n = X.codomain().ambient_space().ngens() @@ -208,11 +208,11 @@ def enum_projective_number_field(X, **kwds): prec = kwds.pop('precision', 53) from sage.schemes.projective.projective_space import ProjectiveSpace_ring if isinstance(X, Scheme): - if (not isinstance(X.ambient_space(), ProjectiveSpace_ring)): + if not isinstance(X.ambient_space(), ProjectiveSpace_ring): raise TypeError("ambient space must be projective space over a number field") X = X(X.base_ring()) else: - if (not is_ProjectiveSpace(X.codomain().ambient_space())): + if not isinstance(X.codomain().ambient_space(), ProjectiveSpace_ring): raise TypeError("codomain must be projective space over a number field") R = X.codomain().ambient_space() @@ -292,7 +292,7 @@ def enum_projective_finite_field(X): if not isinstance(X.ambient_space(), ProjectiveSpace_ring): raise TypeError("ambient space must be projective space over a finite") X = X(X.base_ring()) - elif not is_ProjectiveSpace(X.codomain().ambient_space()): + elif not isinstance(X.codomain().ambient_space(), ProjectiveSpace_ring): raise TypeError("codomain must be projective space over a finite field") n = X.codomain().ambient_space().ngens() - 1 diff --git a/src/sage/schemes/toric/divisor.py b/src/sage/schemes/toric/divisor.py index 563c6674489..3ec4b2adb62 100644 --- a/src/sage/schemes/toric/divisor.py +++ b/src/sage/schemes/toric/divisor.py @@ -185,7 +185,7 @@ from sage.schemes.generic.divisor import Divisor_generic from sage.schemes.generic.divisor_group import DivisorGroup_generic from sage.schemes.toric.divisor_class import ToricRationalDivisorClass -from sage.schemes.toric.variety import CohomologyRing, is_ToricVariety +from sage.schemes.toric.variety import CohomologyRing, ToricVariety_field from sage.structure.unique_representation import UniqueRepresentation from sage.structure.element import is_Vector From 8392f32dcaf347ee2384135244b65493be88fd30 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 18 May 2024 21:36:35 -0700 Subject: [PATCH 4/9] reverts --- src/sage/schemes/affine/affine_space.py | 6 +++--- src/sage/schemes/berkovich/berkovich_space.py | 8 ++++---- src/sage/schemes/elliptic_curves/ell_generic.py | 6 +++--- src/sage/schemes/generic/algebraic_scheme.py | 16 ++++++++-------- src/sage/schemes/generic/ambient_space.py | 8 ++++---- src/sage/schemes/generic/divisor_group.py | 6 +++--- src/sage/schemes/generic/homset.py | 8 ++++---- src/sage/schemes/generic/scheme.py | 12 ++++++------ .../hyperelliptic_generic.py | 4 ++-- .../schemes/plane_quartics/quartic_generic.py | 4 ++-- src/sage/schemes/product_projective/space.py | 4 ++-- src/sage/schemes/projective/projective_space.py | 6 +++--- src/sage/schemes/toric/chow_group.py | 6 +++--- src/sage/schemes/toric/fano_variety.py | 8 ++++---- src/sage/schemes/toric/sheaf/klyachko.py | 4 ++-- src/sage/schemes/toric/variety.py | 8 ++++---- 16 files changed, 57 insertions(+), 57 deletions(-) diff --git a/src/sage/schemes/affine/affine_space.py b/src/sage/schemes/affine/affine_space.py index 29c1b07d677..6c84b2eeb72 100644 --- a/src/sage/schemes/affine/affine_space.py +++ b/src/sage/schemes/affine/affine_space.py @@ -44,12 +44,12 @@ def is_AffineSpace(x) -> bool: EXAMPLES:: - sage: from sage.schemes.affine.affine_space import AffineSpace_generic - sage: isinstance(AffineSpace(5, names='x'), AffineSpace_generic) + sage: from sage.schemes.affine.affine_space import is_AffineSpace + sage: is_AffineSpace(AffineSpace(5, names='x')) True sage: is_AffineSpace(AffineSpace(5, GF(9, 'alpha'), names='x')) # needs sage.rings.finite_rings True - sage: isinstance(Spec(ZZ), AffineSpace_generic) + sage: is_AffineSpace(Spec(ZZ)) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/berkovich/berkovich_space.py b/src/sage/schemes/berkovich/berkovich_space.py index 21dc3c7f7ce..147a7fce39e 100644 --- a/src/sage/schemes/berkovich/berkovich_space.py +++ b/src/sage/schemes/berkovich/berkovich_space.py @@ -58,8 +58,8 @@ def is_Berkovich(space) -> bool: EXAMPLES:: sage: B = Berkovich_Cp_Projective(3) - sage: from sage.schemes.berkovich.berkovich_space import Berkovich - sage: isinstance(B, Berkovich) + sage: from sage.schemes.berkovich.berkovich_space import is_Berkovich + sage: is_Berkovich(B) True """ from sage.misc.superseded import deprecation @@ -79,8 +79,8 @@ def is_Berkovich_Cp(space) -> bool: EXAMPLES:: sage: B = Berkovich_Cp_Projective(3) - sage: from sage.schemes.berkovich.berkovich_space import Berkovich - sage: isinstance(B, Berkovich) + sage: from sage.schemes.berkovich.berkovich_space import is_Berkovich_Cp + sage: is_Berkovich_Cp(B) True """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/elliptic_curves/ell_generic.py b/src/sage/schemes/elliptic_curves/ell_generic.py index e8221457a45..c15e775c54d 100644 --- a/src/sage/schemes/elliptic_curves/ell_generic.py +++ b/src/sage/schemes/elliptic_curves/ell_generic.py @@ -95,11 +95,11 @@ def is_EllipticCurve(x): EXAMPLES:: - sage: from sage.schemes.elliptic_curves.ell_generic import EllipticCurve_generic + sage: from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve sage: E = EllipticCurve([1,2,3/4,7,19]) - sage: isinstance(E, EllipticCurve_generic) + sage: is_EllipticCurve(E) True - sage: isinstance(0, EllipticCurve_generic) + sage: is_EllipticCurve(0) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/generic/algebraic_scheme.py b/src/sage/schemes/generic/algebraic_scheme.py index 37d352fe12e..d34d9fa6d71 100644 --- a/src/sage/schemes/generic/algebraic_scheme.py +++ b/src/sage/schemes/generic/algebraic_scheme.py @@ -157,20 +157,20 @@ def is_AlgebraicScheme(x): sage: V = A2.subscheme([x^2 + y^2]); V Closed subscheme of Affine Space of dimension 2 over Rational Field defined by: x^2 + y^2 - sage: from sage.schemes.generic.algebraic_scheme import AlgebraicScheme - sage: isinstance(V, AlgebraicScheme) + sage: from sage.schemes.generic.algebraic_scheme import is_AlgebraicScheme + sage: is_AlgebraicScheme(V) True Affine space is itself not an algebraic scheme, though the closed subscheme defined by no equations is:: - sage: from sage.schemes.generic.algebraic_scheme import AlgebraicScheme - sage: isinstance(AffineSpace(10, QQ), AlgebraicScheme) + sage: from sage.schemes.generic.algebraic_scheme import is_AlgebraicScheme + sage: is_AlgebraicScheme(AffineSpace(10, QQ)) False sage: V = AffineSpace(10, QQ).subscheme([]); V Closed subscheme of Affine Space of dimension 10 over Rational Field defined by: (no polynomials) - sage: isinstance(V, AlgebraicScheme) + sage: is_AlgebraicScheme(V) True We create a more complicated closed subscheme:: @@ -179,15 +179,15 @@ def is_AlgebraicScheme(x): sage: X = A.subscheme([sum(x)]); X Closed subscheme of Affine Space of dimension 10 over Rational Field defined by: x0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 - sage: isinstance(X, AlgebraicScheme) + sage: is_AlgebraicScheme(X) True :: - sage: isinstance(QQ, AlgebraicScheme) + sage: is_AlgebraicScheme(QQ) False sage: S = Spec(QQ) - sage: isinstance(S, AlgebraicScheme) + sage: is_AlgebraicScheme(S) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/generic/ambient_space.py b/src/sage/schemes/generic/ambient_space.py index ddb14a2a9b9..f768e86c08f 100644 --- a/src/sage/schemes/generic/ambient_space.py +++ b/src/sage/schemes/generic/ambient_space.py @@ -23,13 +23,13 @@ def is_AmbientSpace(x): EXAMPLES:: - sage: from sage.schemes.generic.ambient_space import AmbientSpace - sage: isinstance(ProjectiveSpace(3, ZZ), AmbientSpace) + sage: from sage.schemes.generic.ambient_space import is_AmbientSpace + sage: is_AmbientSpace(ProjectiveSpace(3, ZZ)) True - sage: isinstance(AffineSpace(2, QQ), AmbientSpace) + sage: is_AmbientSpace(AffineSpace(2, QQ)) True sage: P. = ProjectiveSpace(2, ZZ) - sage: isinstance(P.subscheme([x + y + z]), AmbientSpace) + sage: is_AmbientSpace(P.subscheme([x + y + z])) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/generic/divisor_group.py b/src/sage/schemes/generic/divisor_group.py index 6f200d5bac0..1bf38bfbe67 100644 --- a/src/sage/schemes/generic/divisor_group.py +++ b/src/sage/schemes/generic/divisor_group.py @@ -72,11 +72,11 @@ def is_DivisorGroup(x): EXAMPLES:: - sage: from sage.schemes.generic.divisor_group import DivisorGroup_generic, DivisorGroup + sage: from sage.schemes.generic.divisor_group import is_DivisorGroup, DivisorGroup sage: Div = DivisorGroup(Spec(ZZ), base_ring=QQ) - sage: isinstance(Div, DivisorGroup_generic) + sage: is_DivisorGroup(Div) True - sage: isinstance('not a divisor', DivisorGroup_generic) + sage: is_DivisorGroup('not a divisor') False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/generic/homset.py b/src/sage/schemes/generic/homset.py index db7e121031c..d9efc2eccce 100644 --- a/src/sage/schemes/generic/homset.py +++ b/src/sage/schemes/generic/homset.py @@ -65,12 +65,12 @@ def is_SchemeHomset(H): sage: f = Spec(QQ).identity_morphism(); f Scheme endomorphism of Spectrum of Rational Field Defn: Identity map - sage: from sage.schemes.generic.homset import SchemeHomset_generic - sage: isinstance(f, SchemeHomset_generic) + sage: from sage.schemes.generic.homset import is_SchemeHomset + sage: is_SchemeHomset(f) False - sage: isinstance(f.parent(), SchemeHomset_generic) + sage: is_SchemeHomset(f.parent()) True - sage: isinstance('a string', SchemeHomset_generic) + sage: is_SchemeHomset('a string') False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/generic/scheme.py b/src/sage/schemes/generic/scheme.py index 8c5f93d70a9..4b4d6ecf180 100644 --- a/src/sage/schemes/generic/scheme.py +++ b/src/sage/schemes/generic/scheme.py @@ -42,11 +42,11 @@ def is_Scheme(x): EXAMPLES:: - sage: from sage.schemes.generic.scheme import Scheme - sage: isinstance(5, Scheme) + sage: from sage.schemes.generic.scheme import is_Scheme + sage: is_Scheme(5) False sage: X = Spec(QQ) - sage: isinstance(X, Scheme) + sage: is_Scheme(X) True """ from sage.misc.superseded import deprecation @@ -794,11 +794,11 @@ def is_AffineScheme(x): EXAMPLES:: - sage: from sage.schemes.generic.scheme import AffineScheme - sage: isinstance(5, AffineScheme) + sage: from sage.schemes.generic.scheme import is_AffineScheme + sage: is_AffineScheme(5) False sage: E = Spec(QQ) - sage: isinstance(E, AffineScheme) + sage: is_AffineScheme(E) True """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py index f6e3613d318..beee5720186 100644 --- a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py +++ b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py @@ -47,10 +47,10 @@ def is_HyperellipticCurve(C): """ EXAMPLES:: - sage: from sage.schemes.hyperelliptic_curves.hyperelliptic_generic import HyperellipticCurve_generic + sage: from sage.schemes.hyperelliptic_curves.hyperelliptic_generic import is_HyperellipticCurve sage: R. = QQ[]; C = HyperellipticCurve(x^3 + x - 1); C Hyperelliptic Curve over Rational Field defined by y^2 = x^3 + x - 1 - sage: isinstance(C, HyperellipticCurve_generic) + sage: is_HyperellipticCurve(C) True """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/plane_quartics/quartic_generic.py b/src/sage/schemes/plane_quartics/quartic_generic.py index 650ac29e5d1..2e525749d86 100644 --- a/src/sage/schemes/plane_quartics/quartic_generic.py +++ b/src/sage/schemes/plane_quartics/quartic_generic.py @@ -27,10 +27,10 @@ def is_QuarticCurve(C): EXAMPLES:: - sage: from sage.schemes.plane_quartics.quartic_generic import QuarticCurve_generic + sage: from sage.schemes.plane_quartics.quartic_generic import is_QuarticCurve sage: x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() sage: Q = QuarticCurve(x**4 + y**4 + z**4) - sage: isinstance(Q, QuarticCurve_generic) + sage: is_QuarticCurve(Q) True """ diff --git a/src/sage/schemes/product_projective/space.py b/src/sage/schemes/product_projective/space.py index 94d985d8552..8a41a857dfe 100644 --- a/src/sage/schemes/product_projective/space.py +++ b/src/sage/schemes/product_projective/space.py @@ -72,9 +72,9 @@ def is_ProductProjectiveSpaces(x): EXAMPLES:: - sage: isinstance(ProjectiveSpace(5, names='x'), ProductProjectiveSpaces_ring) + sage: is_ProductProjectiveSpaces(ProjectiveSpace(5, names='x')) False - sage: isinstance(ProductProjectiveSpaces([1, 2, 3], ZZ, 'x'), ProductProjectiveSpaces_ring) + sage: is_ProductProjectiveSpaces(ProductProjectiveSpaces([1, 2, 3], ZZ, 'x')) True """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/projective/projective_space.py b/src/sage/schemes/projective/projective_space.py index e83b350bd5a..c69aa110e2b 100644 --- a/src/sage/schemes/projective/projective_space.py +++ b/src/sage/schemes/projective/projective_space.py @@ -138,12 +138,12 @@ def is_ProjectiveSpace(x): EXAMPLES:: - sage: from sage.schemes.projective.projective_space import ProjectiveSpace_ring - sage: isinstance(ProjectiveSpace(5, names='x'), ProjectiveSpace_ring) + sage: from sage.schemes.projective.projective_space import is_ProjectiveSpace + sage: is_ProjectiveSpace(ProjectiveSpace(5, names='x')) True sage: is_ProjectiveSpace(ProjectiveSpace(5, GF(9, 'alpha'), names='x')) # needs sage.rings.finite_rings True - sage: isinstance(Spec(ZZ), ProjectiveSpace_ring) + sage: is_ProjectiveSpace(Spec(ZZ)) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/toric/chow_group.py b/src/sage/schemes/toric/chow_group.py index dc6ac944388..17f12d78fea 100644 --- a/src/sage/schemes/toric/chow_group.py +++ b/src/sage/schemes/toric/chow_group.py @@ -1214,10 +1214,10 @@ def is_ChowGroup(x) -> bool: sage: P2 = toric_varieties.P2() sage: A = P2.Chow_group() - sage: from sage.schemes.toric.chow_group import ChowGroup_class - sage: isinstance(A, ChowGroup_class) + sage: from sage.schemes.toric.chow_group import is_ChowGroup + sage: is_ChowGroup(A) True - sage: isinstance('Victoria', ChowGroup_class) + sage: is_ChowGroup('Victoria') False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/toric/fano_variety.py b/src/sage/schemes/toric/fano_variety.py index e1cb6859505..fd791885144 100644 --- a/src/sage/schemes/toric/fano_variety.py +++ b/src/sage/schemes/toric/fano_variety.py @@ -168,15 +168,15 @@ def is_CPRFanoToricVariety(x): EXAMPLES:: - sage: from sage.schemes.toric.fano_variety import CPRFanoToricVariety_field - sage: isinstance(1, CPRFanoToricVariety_field) + sage: from sage.schemes.toric.fano_variety import is_CPRFanoToricVariety + sage: is_CPRFanoToricVariety(1) False sage: FTV = toric_varieties.P2() sage: FTV 2-d CPR-Fano toric variety covered by 3 affine patches - sage: isinstance(FTV, CPRFanoToricVariety_field) + sage: is_CPRFanoToricVariety(FTV) True - sage: isinstance(ProjectiveSpace(2), CPRFanoToricVariety_field) + sage: is_CPRFanoToricVariety(ProjectiveSpace(2)) False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/toric/sheaf/klyachko.py b/src/sage/schemes/toric/sheaf/klyachko.py index cb5fbc3efcd..fba912d12bc 100644 --- a/src/sage/schemes/toric/sheaf/klyachko.py +++ b/src/sage/schemes/toric/sheaf/klyachko.py @@ -67,8 +67,8 @@ def is_KlyachkoBundle(X): EXAMPLES:: - sage: from sage.schemes.toric.sheaf.klyachko import KlyachkoBundle_class - sage: isinstance('test', KlyachkoBundle_class) + sage: from sage.schemes.toric.sheaf.klyachko import is_KlyachkoBundle + sage: is_KlyachkoBundle('test') False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/toric/variety.py b/src/sage/schemes/toric/variety.py index da2a965b488..02f79c92c92 100644 --- a/src/sage/schemes/toric/variety.py +++ b/src/sage/schemes/toric/variety.py @@ -349,16 +349,16 @@ def is_ToricVariety(x): EXAMPLES:: - sage: from sage.schemes.toric.variety import ToricVariety_field - sage: isinstance(1, ToricVariety_field) + sage: from sage.schemes.toric.variety import is_ToricVariety + sage: is_ToricVariety(1) False sage: fan = FaceFan(lattice_polytope.cross_polytope(2)) sage: P = ToricVariety(fan) sage: P 2-d toric variety covered by 4 affine patches - sage: isinstance(P, ToricVariety_field) + sage: is_ToricVariety(P) True - sage: isinstance(ProjectiveSpace(2), ToricVariety_field) + sage: is_ToricVariety(ProjectiveSpace(2)) False """ from sage.misc.superseded import deprecation From 47cfbdc46c26a4f15876da858745d6aad454887b Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 18 May 2024 23:08:41 -0700 Subject: [PATCH 5/9] src/bin/sage-fixdoctests: Abbreviate doctest:warning... DeprecationWarning --- src/bin/sage-fixdoctests | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/bin/sage-fixdoctests b/src/bin/sage-fixdoctests index 49de702cd51..0d55581c505 100755 --- a/src/bin/sage-fixdoctests +++ b/src/bin/sage-fixdoctests @@ -300,6 +300,9 @@ def process_block(block, src_in_lines, file_optional_tags, venv_explainer=''): got = [''] else: expected, got = block.split('\nGot:\n') + got = re.sub(r'(doctest:warning).*^( *DeprecationWarning:)', + r'\1...\n\2', + got, 1, re.DOTALL | re.MULTILINE) got = got.splitlines() # got can't be the empty string if args.only_tags: From 6984f5ef8831ecbd95c2414667d09e71e0117eab Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 18 May 2024 23:14:12 -0700 Subject: [PATCH 6/9] Update doctests with DeprecationWarning --- src/sage/schemes/affine/affine_space.py | 3 +++ src/sage/schemes/berkovich/berkovich_space.py | 6 ++++++ src/sage/schemes/elliptic_curves/ell_generic.py | 3 +++ src/sage/schemes/generic/algebraic_scheme.py | 3 +++ src/sage/schemes/generic/ambient_space.py | 3 +++ src/sage/schemes/generic/divisor_group.py | 3 +++ src/sage/schemes/generic/homset.py | 3 +++ src/sage/schemes/generic/hypersurface.py | 3 +++ src/sage/schemes/generic/scheme.py | 6 ++++++ .../schemes/hyperelliptic_curves/hyperelliptic_generic.py | 3 +++ src/sage/schemes/plane_quartics/quartic_generic.py | 3 +++ src/sage/schemes/product_projective/space.py | 3 +++ src/sage/schemes/projective/projective_space.py | 3 +++ src/sage/schemes/toric/chow_group.py | 3 +++ src/sage/schemes/toric/fano_variety.py | 3 +++ src/sage/schemes/toric/sheaf/klyachko.py | 3 +++ src/sage/schemes/toric/variety.py | 3 +++ 17 files changed, 57 insertions(+) diff --git a/src/sage/schemes/affine/affine_space.py b/src/sage/schemes/affine/affine_space.py index 6c84b2eeb72..4d0a556578d 100644 --- a/src/sage/schemes/affine/affine_space.py +++ b/src/sage/schemes/affine/affine_space.py @@ -46,6 +46,9 @@ def is_AffineSpace(x) -> bool: sage: from sage.schemes.affine.affine_space import is_AffineSpace sage: is_AffineSpace(AffineSpace(5, names='x')) + doctest:warning... + DeprecationWarning: the function is_AffineSpace is deprecated; use 'isinstance(..., AffineSpace_generic)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_AffineSpace(AffineSpace(5, GF(9, 'alpha'), names='x')) # needs sage.rings.finite_rings True diff --git a/src/sage/schemes/berkovich/berkovich_space.py b/src/sage/schemes/berkovich/berkovich_space.py index 147a7fce39e..b81b1439137 100644 --- a/src/sage/schemes/berkovich/berkovich_space.py +++ b/src/sage/schemes/berkovich/berkovich_space.py @@ -60,6 +60,9 @@ def is_Berkovich(space) -> bool: sage: B = Berkovich_Cp_Projective(3) sage: from sage.schemes.berkovich.berkovich_space import is_Berkovich sage: is_Berkovich(B) + doctest:warning... + DeprecationWarning: the function is_Berkovich is deprecated; use 'isinstance(..., Berkovich)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True """ from sage.misc.superseded import deprecation @@ -81,6 +84,9 @@ def is_Berkovich_Cp(space) -> bool: sage: B = Berkovich_Cp_Projective(3) sage: from sage.schemes.berkovich.berkovich_space import is_Berkovich_Cp sage: is_Berkovich_Cp(B) + doctest:warning... + DeprecationWarning: the function is_Berkovich_Cp is deprecated; use 'isinstance(..., Berkovich_Cp)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/elliptic_curves/ell_generic.py b/src/sage/schemes/elliptic_curves/ell_generic.py index c15e775c54d..a7e8ce53a2b 100644 --- a/src/sage/schemes/elliptic_curves/ell_generic.py +++ b/src/sage/schemes/elliptic_curves/ell_generic.py @@ -98,6 +98,9 @@ def is_EllipticCurve(x): sage: from sage.schemes.elliptic_curves.ell_generic import is_EllipticCurve sage: E = EllipticCurve([1,2,3/4,7,19]) sage: is_EllipticCurve(E) + doctest:warning... + DeprecationWarning: the function is_EllipticCurve is deprecated; use 'isinstance(..., EllipticCurve_generic)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_EllipticCurve(0) False diff --git a/src/sage/schemes/generic/algebraic_scheme.py b/src/sage/schemes/generic/algebraic_scheme.py index d34d9fa6d71..747e6d90bb2 100644 --- a/src/sage/schemes/generic/algebraic_scheme.py +++ b/src/sage/schemes/generic/algebraic_scheme.py @@ -159,6 +159,9 @@ def is_AlgebraicScheme(x): x^2 + y^2 sage: from sage.schemes.generic.algebraic_scheme import is_AlgebraicScheme sage: is_AlgebraicScheme(V) + doctest:warning... + DeprecationWarning: the function is_AlgebraicScheme is deprecated; use 'isinstance(..., AlgebraicScheme)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True Affine space is itself not an algebraic scheme, though the closed diff --git a/src/sage/schemes/generic/ambient_space.py b/src/sage/schemes/generic/ambient_space.py index f768e86c08f..b98d988d839 100644 --- a/src/sage/schemes/generic/ambient_space.py +++ b/src/sage/schemes/generic/ambient_space.py @@ -25,6 +25,9 @@ def is_AmbientSpace(x): sage: from sage.schemes.generic.ambient_space import is_AmbientSpace sage: is_AmbientSpace(ProjectiveSpace(3, ZZ)) + doctest:warning... + DeprecationWarning: the function is_AmbientSpace is deprecated; use 'isinstance(..., AmbientSpace)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_AmbientSpace(AffineSpace(2, QQ)) True diff --git a/src/sage/schemes/generic/divisor_group.py b/src/sage/schemes/generic/divisor_group.py index 1bf38bfbe67..c81a60a3c5b 100644 --- a/src/sage/schemes/generic/divisor_group.py +++ b/src/sage/schemes/generic/divisor_group.py @@ -75,6 +75,9 @@ def is_DivisorGroup(x): sage: from sage.schemes.generic.divisor_group import is_DivisorGroup, DivisorGroup sage: Div = DivisorGroup(Spec(ZZ), base_ring=QQ) sage: is_DivisorGroup(Div) + doctest:warning... + DeprecationWarning: the function is_DivisorGroup is deprecated; use 'isinstance(..., DivisorGroup_generic)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_DivisorGroup('not a divisor') False diff --git a/src/sage/schemes/generic/homset.py b/src/sage/schemes/generic/homset.py index d9efc2eccce..3b827cefec6 100644 --- a/src/sage/schemes/generic/homset.py +++ b/src/sage/schemes/generic/homset.py @@ -67,6 +67,9 @@ def is_SchemeHomset(H): Defn: Identity map sage: from sage.schemes.generic.homset import is_SchemeHomset sage: is_SchemeHomset(f) + doctest:warning... + DeprecationWarning: the function is_SchemeHomset is deprecated; use 'isinstance(..., SchemeHomset_generic)' instead + See https://github.com/sagemath/sage/issues/38022 for details. False sage: is_SchemeHomset(f.parent()) True diff --git a/src/sage/schemes/generic/hypersurface.py b/src/sage/schemes/generic/hypersurface.py index 5c07128e8ae..f7bfd33f006 100644 --- a/src/sage/schemes/generic/hypersurface.py +++ b/src/sage/schemes/generic/hypersurface.py @@ -34,6 +34,9 @@ def is_Hypersurface(self): sage: R. = ZZ[] sage: H = ProjectiveHypersurface(x*z + y^2) sage: is_Hypersurface(H) + doctest:warning... + DeprecationWarning: the function is_Hypersurface is deprecated; use 'isinstance(..., (ProjectiveHypersurface, AffineHypersurface))' instead + See https://github.com/sagemath/sage/issues/38022 for details. True :: diff --git a/src/sage/schemes/generic/scheme.py b/src/sage/schemes/generic/scheme.py index 4b4d6ecf180..03d6a82b214 100644 --- a/src/sage/schemes/generic/scheme.py +++ b/src/sage/schemes/generic/scheme.py @@ -44,6 +44,9 @@ def is_Scheme(x): sage: from sage.schemes.generic.scheme import is_Scheme sage: is_Scheme(5) + doctest:warning... + DeprecationWarning: the function is_Scheme is deprecated; use 'isinstance(..., Scheme)' or categories instead + See https://github.com/sagemath/sage/issues/38022 for details. False sage: X = Spec(QQ) sage: is_Scheme(X) @@ -796,6 +799,9 @@ def is_AffineScheme(x): sage: from sage.schemes.generic.scheme import is_AffineScheme sage: is_AffineScheme(5) + doctest:warning... + DeprecationWarning: the function is_AffineScheme is deprecated; use 'isinstance(..., AffineScheme)' instead + See https://github.com/sagemath/sage/issues/38022 for details. False sage: E = Spec(QQ) sage: is_AffineScheme(E) diff --git a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py index beee5720186..f642f06fff0 100644 --- a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py +++ b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py @@ -51,6 +51,9 @@ def is_HyperellipticCurve(C): sage: R. = QQ[]; C = HyperellipticCurve(x^3 + x - 1); C Hyperelliptic Curve over Rational Field defined by y^2 = x^3 + x - 1 sage: is_HyperellipticCurve(C) + doctest:warning... + DeprecationWarning: the function is_HyperellipticCurve is deprecated; use 'isinstance(..., HyperellipticCurve_generic)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/plane_quartics/quartic_generic.py b/src/sage/schemes/plane_quartics/quartic_generic.py index 2e525749d86..ef7f2db96b2 100644 --- a/src/sage/schemes/plane_quartics/quartic_generic.py +++ b/src/sage/schemes/plane_quartics/quartic_generic.py @@ -31,6 +31,9 @@ def is_QuarticCurve(C): sage: x,y,z = PolynomialRing(QQ, ['x','y','z']).gens() sage: Q = QuarticCurve(x**4 + y**4 + z**4) sage: is_QuarticCurve(Q) + doctest:warning... + DeprecationWarning: the function is_QuarticCurve is deprecated; use 'isinstance(..., QuarticCurve_generic)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True """ diff --git a/src/sage/schemes/product_projective/space.py b/src/sage/schemes/product_projective/space.py index 8a41a857dfe..041b1c59151 100644 --- a/src/sage/schemes/product_projective/space.py +++ b/src/sage/schemes/product_projective/space.py @@ -73,6 +73,9 @@ def is_ProductProjectiveSpaces(x): EXAMPLES:: sage: is_ProductProjectiveSpaces(ProjectiveSpace(5, names='x')) + doctest:warning... + DeprecationWarning: the function is_ProductProjectiveSpaces is deprecated; use 'isinstance(..., ProductProjectiveSpaces_ring)' instead + See https://github.com/sagemath/sage/issues/38022 for details. False sage: is_ProductProjectiveSpaces(ProductProjectiveSpaces([1, 2, 3], ZZ, 'x')) True diff --git a/src/sage/schemes/projective/projective_space.py b/src/sage/schemes/projective/projective_space.py index c69aa110e2b..e4bf4fac129 100644 --- a/src/sage/schemes/projective/projective_space.py +++ b/src/sage/schemes/projective/projective_space.py @@ -140,6 +140,9 @@ def is_ProjectiveSpace(x): sage: from sage.schemes.projective.projective_space import is_ProjectiveSpace sage: is_ProjectiveSpace(ProjectiveSpace(5, names='x')) + doctest:warning... + DeprecationWarning: the function is_ProjectiveSpace is deprecated; use 'isinstance(..., ProjectiveSpace_ring)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_ProjectiveSpace(ProjectiveSpace(5, GF(9, 'alpha'), names='x')) # needs sage.rings.finite_rings True diff --git a/src/sage/schemes/toric/chow_group.py b/src/sage/schemes/toric/chow_group.py index 17f12d78fea..86455eccb52 100644 --- a/src/sage/schemes/toric/chow_group.py +++ b/src/sage/schemes/toric/chow_group.py @@ -1216,6 +1216,9 @@ def is_ChowGroup(x) -> bool: sage: A = P2.Chow_group() sage: from sage.schemes.toric.chow_group import is_ChowGroup sage: is_ChowGroup(A) + doctest:warning... + DeprecationWarning: the function is_ChowGroup is deprecated; use 'isinstance(..., ChowGroup_class)' instead + See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_ChowGroup('Victoria') False diff --git a/src/sage/schemes/toric/fano_variety.py b/src/sage/schemes/toric/fano_variety.py index fd791885144..f6914cb5d69 100644 --- a/src/sage/schemes/toric/fano_variety.py +++ b/src/sage/schemes/toric/fano_variety.py @@ -170,6 +170,9 @@ def is_CPRFanoToricVariety(x): sage: from sage.schemes.toric.fano_variety import is_CPRFanoToricVariety sage: is_CPRFanoToricVariety(1) + doctest:warning... + DeprecationWarning: the function is_CPRFanoToricVariety is deprecated; use 'isinstance(..., CPRFanoToricVariety_field)' instead + See https://github.com/sagemath/sage/issues/38022 for details. False sage: FTV = toric_varieties.P2() sage: FTV diff --git a/src/sage/schemes/toric/sheaf/klyachko.py b/src/sage/schemes/toric/sheaf/klyachko.py index fba912d12bc..4ecb999b679 100644 --- a/src/sage/schemes/toric/sheaf/klyachko.py +++ b/src/sage/schemes/toric/sheaf/klyachko.py @@ -69,6 +69,9 @@ def is_KlyachkoBundle(X): sage: from sage.schemes.toric.sheaf.klyachko import is_KlyachkoBundle sage: is_KlyachkoBundle('test') + doctest:warning... + DeprecationWarning: the function is_KlyachkoBundle is deprecated; use 'isinstance(..., KlyachkoBundle_class)' instead + See https://github.com/sagemath/sage/issues/38022 for details. False """ from sage.misc.superseded import deprecation diff --git a/src/sage/schemes/toric/variety.py b/src/sage/schemes/toric/variety.py index 02f79c92c92..d442020ff54 100644 --- a/src/sage/schemes/toric/variety.py +++ b/src/sage/schemes/toric/variety.py @@ -351,6 +351,9 @@ def is_ToricVariety(x): sage: from sage.schemes.toric.variety import is_ToricVariety sage: is_ToricVariety(1) + doctest:warning... + DeprecationWarning: the function is_ToricVariety is deprecated; use 'isinstance(..., ToricVariety_field)' instead + See https://github.com/sagemath/sage/issues/38022 for details. False sage: fan = FaceFan(lattice_polytope.cross_polytope(2)) sage: P = ToricVariety(fan) From c90ed9466dc543d6e15142eb0e76dcea19e8cdf3 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 18 May 2024 23:14:41 -0700 Subject: [PATCH 7/9] Fix # needs --- src/sage/schemes/curves/affine_curve.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sage/schemes/curves/affine_curve.py b/src/sage/schemes/curves/affine_curve.py index 9ff24c2ef9b..b3ed871794f 100644 --- a/src/sage/schemes/curves/affine_curve.py +++ b/src/sage/schemes/curves/affine_curve.py @@ -464,7 +464,7 @@ def plot(self, *args, **kwds): A 5-nodal curve of degree 11. This example also illustrates some of the optional arguments:: - sage: # needs sage.plot() + sage: # needs sage.plot sage: R. = ZZ[] sage: C = Curve(32*x^2 - 2097152*y^11 + 1441792*y^9 ....: - 360448*y^7 + 39424*y^5 - 1760*y^3 + 22*y - 1) From 9fff5dc8c9ff5dcfe2610f2dabdc5f2850820c01 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sun, 19 May 2024 11:37:31 -0700 Subject: [PATCH 8/9] src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py: Fix up --- src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py b/src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py index 46fe9d6537e..be1ef46b251 100644 --- a/src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py +++ b/src/sage/dynamics/arithmetic_dynamics/berkovich_ds.py @@ -36,7 +36,7 @@ from sage.rings.rational_field import QQ from sage.schemes.affine.affine_space import AffineSpace_generic from sage.schemes.berkovich.berkovich_space import (Berkovich_Cp_Affine, - Berkovich_Cp_Projective, is_Berkovich_Cp, + Berkovich_Cp_Projective, Berkovich_Cp, Berkovich_Element_Cp_Affine) from sage.schemes.projective.projective_space import ProjectiveSpace_ring from sage.structure.element import Element From ceebb70482a6d25639698e293343b8ec4ce9ad82 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Wed, 22 May 2024 19:02:53 -0700 Subject: [PATCH 9/9] git --no-pager grep -l 'deprecation(' src/sage/schemes | xargs sed -i.bak '/ is deprecated; use /s/the function /The function /;/ is deprecated; use /s/ instead/ instead./' --- src/sage/schemes/affine/affine_space.py | 4 ++-- src/sage/schemes/berkovich/berkovich_space.py | 8 ++++---- src/sage/schemes/elliptic_curves/ell_generic.py | 4 ++-- src/sage/schemes/generic/algebraic_scheme.py | 4 ++-- src/sage/schemes/generic/ambient_space.py | 4 ++-- src/sage/schemes/generic/divisor_group.py | 4 ++-- src/sage/schemes/generic/homset.py | 4 ++-- src/sage/schemes/generic/hypersurface.py | 4 ++-- src/sage/schemes/generic/scheme.py | 8 ++++---- .../schemes/hyperelliptic_curves/hyperelliptic_generic.py | 4 ++-- src/sage/schemes/plane_quartics/quartic_generic.py | 4 ++-- src/sage/schemes/product_projective/space.py | 4 ++-- src/sage/schemes/projective/projective_space.py | 4 ++-- src/sage/schemes/toric/chow_group.py | 4 ++-- src/sage/schemes/toric/fano_variety.py | 4 ++-- src/sage/schemes/toric/sheaf/klyachko.py | 4 ++-- src/sage/schemes/toric/variety.py | 4 ++-- 17 files changed, 38 insertions(+), 38 deletions(-) diff --git a/src/sage/schemes/affine/affine_space.py b/src/sage/schemes/affine/affine_space.py index 4d0a556578d..76316311615 100644 --- a/src/sage/schemes/affine/affine_space.py +++ b/src/sage/schemes/affine/affine_space.py @@ -47,7 +47,7 @@ def is_AffineSpace(x) -> bool: sage: from sage.schemes.affine.affine_space import is_AffineSpace sage: is_AffineSpace(AffineSpace(5, names='x')) doctest:warning... - DeprecationWarning: the function is_AffineSpace is deprecated; use 'isinstance(..., AffineSpace_generic)' instead + DeprecationWarning: The function is_AffineSpace is deprecated; use 'isinstance(..., AffineSpace_generic)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_AffineSpace(AffineSpace(5, GF(9, 'alpha'), names='x')) # needs sage.rings.finite_rings @@ -56,7 +56,7 @@ def is_AffineSpace(x) -> bool: False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_AffineSpace is deprecated; use 'isinstance(..., AffineSpace_generic)' instead") + deprecation(38022, "The function is_AffineSpace is deprecated; use 'isinstance(..., AffineSpace_generic)' instead.") return isinstance(x, AffineSpace_generic) diff --git a/src/sage/schemes/berkovich/berkovich_space.py b/src/sage/schemes/berkovich/berkovich_space.py index b81b1439137..766ae7c4388 100644 --- a/src/sage/schemes/berkovich/berkovich_space.py +++ b/src/sage/schemes/berkovich/berkovich_space.py @@ -61,12 +61,12 @@ def is_Berkovich(space) -> bool: sage: from sage.schemes.berkovich.berkovich_space import is_Berkovich sage: is_Berkovich(B) doctest:warning... - DeprecationWarning: the function is_Berkovich is deprecated; use 'isinstance(..., Berkovich)' instead + DeprecationWarning: The function is_Berkovich is deprecated; use 'isinstance(..., Berkovich)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_Berkovich is deprecated; use 'isinstance(..., Berkovich)' instead") + deprecation(38022, "The function is_Berkovich is deprecated; use 'isinstance(..., Berkovich)' instead.") return isinstance(space, Berkovich) @@ -85,12 +85,12 @@ def is_Berkovich_Cp(space) -> bool: sage: from sage.schemes.berkovich.berkovich_space import is_Berkovich_Cp sage: is_Berkovich_Cp(B) doctest:warning... - DeprecationWarning: the function is_Berkovich_Cp is deprecated; use 'isinstance(..., Berkovich_Cp)' instead + DeprecationWarning: The function is_Berkovich_Cp is deprecated; use 'isinstance(..., Berkovich_Cp)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_Berkovich_Cp is deprecated; use 'isinstance(..., Berkovich_Cp)' instead") + deprecation(38022, "The function is_Berkovich_Cp is deprecated; use 'isinstance(..., Berkovich_Cp)' instead.") return isinstance(space, Berkovich_Cp) diff --git a/src/sage/schemes/elliptic_curves/ell_generic.py b/src/sage/schemes/elliptic_curves/ell_generic.py index a7e8ce53a2b..2e950ae3bc9 100644 --- a/src/sage/schemes/elliptic_curves/ell_generic.py +++ b/src/sage/schemes/elliptic_curves/ell_generic.py @@ -99,14 +99,14 @@ def is_EllipticCurve(x): sage: E = EllipticCurve([1,2,3/4,7,19]) sage: is_EllipticCurve(E) doctest:warning... - DeprecationWarning: the function is_EllipticCurve is deprecated; use 'isinstance(..., EllipticCurve_generic)' instead + DeprecationWarning: The function is_EllipticCurve is deprecated; use 'isinstance(..., EllipticCurve_generic)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_EllipticCurve(0) False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_EllipticCurve is deprecated; use 'isinstance(..., EllipticCurve_generic)' instead") + deprecation(38022, "The function is_EllipticCurve is deprecated; use 'isinstance(..., EllipticCurve_generic)' instead.") return isinstance(x, EllipticCurve_generic) diff --git a/src/sage/schemes/generic/algebraic_scheme.py b/src/sage/schemes/generic/algebraic_scheme.py index 747e6d90bb2..badd0531533 100644 --- a/src/sage/schemes/generic/algebraic_scheme.py +++ b/src/sage/schemes/generic/algebraic_scheme.py @@ -160,7 +160,7 @@ def is_AlgebraicScheme(x): sage: from sage.schemes.generic.algebraic_scheme import is_AlgebraicScheme sage: is_AlgebraicScheme(V) doctest:warning... - DeprecationWarning: the function is_AlgebraicScheme is deprecated; use 'isinstance(..., AlgebraicScheme)' instead + DeprecationWarning: The function is_AlgebraicScheme is deprecated; use 'isinstance(..., AlgebraicScheme)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True @@ -194,7 +194,7 @@ def is_AlgebraicScheme(x): False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_AlgebraicScheme is deprecated; use 'isinstance(..., AlgebraicScheme)' instead") + deprecation(38022, "The function is_AlgebraicScheme is deprecated; use 'isinstance(..., AlgebraicScheme)' instead.") return isinstance(x, AlgebraicScheme) diff --git a/src/sage/schemes/generic/ambient_space.py b/src/sage/schemes/generic/ambient_space.py index b98d988d839..6706e6adde8 100644 --- a/src/sage/schemes/generic/ambient_space.py +++ b/src/sage/schemes/generic/ambient_space.py @@ -26,7 +26,7 @@ def is_AmbientSpace(x): sage: from sage.schemes.generic.ambient_space import is_AmbientSpace sage: is_AmbientSpace(ProjectiveSpace(3, ZZ)) doctest:warning... - DeprecationWarning: the function is_AmbientSpace is deprecated; use 'isinstance(..., AmbientSpace)' instead + DeprecationWarning: The function is_AmbientSpace is deprecated; use 'isinstance(..., AmbientSpace)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_AmbientSpace(AffineSpace(2, QQ)) @@ -36,7 +36,7 @@ def is_AmbientSpace(x): False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_AmbientSpace is deprecated; use 'isinstance(..., AmbientSpace)' instead") + deprecation(38022, "The function is_AmbientSpace is deprecated; use 'isinstance(..., AmbientSpace)' instead.") return isinstance(x, AmbientSpace) diff --git a/src/sage/schemes/generic/divisor_group.py b/src/sage/schemes/generic/divisor_group.py index c81a60a3c5b..a0890cd717a 100644 --- a/src/sage/schemes/generic/divisor_group.py +++ b/src/sage/schemes/generic/divisor_group.py @@ -76,14 +76,14 @@ def is_DivisorGroup(x): sage: Div = DivisorGroup(Spec(ZZ), base_ring=QQ) sage: is_DivisorGroup(Div) doctest:warning... - DeprecationWarning: the function is_DivisorGroup is deprecated; use 'isinstance(..., DivisorGroup_generic)' instead + DeprecationWarning: The function is_DivisorGroup is deprecated; use 'isinstance(..., DivisorGroup_generic)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_DivisorGroup('not a divisor') False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_DivisorGroup is deprecated; use 'isinstance(..., DivisorGroup_generic)' instead") + deprecation(38022, "The function is_DivisorGroup is deprecated; use 'isinstance(..., DivisorGroup_generic)' instead.") return isinstance(x, DivisorGroup_generic) diff --git a/src/sage/schemes/generic/homset.py b/src/sage/schemes/generic/homset.py index 3b827cefec6..20d1398dcb7 100644 --- a/src/sage/schemes/generic/homset.py +++ b/src/sage/schemes/generic/homset.py @@ -68,7 +68,7 @@ def is_SchemeHomset(H): sage: from sage.schemes.generic.homset import is_SchemeHomset sage: is_SchemeHomset(f) doctest:warning... - DeprecationWarning: the function is_SchemeHomset is deprecated; use 'isinstance(..., SchemeHomset_generic)' instead + DeprecationWarning: The function is_SchemeHomset is deprecated; use 'isinstance(..., SchemeHomset_generic)' instead. See https://github.com/sagemath/sage/issues/38022 for details. False sage: is_SchemeHomset(f.parent()) @@ -77,7 +77,7 @@ def is_SchemeHomset(H): False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_SchemeHomset is deprecated; use 'isinstance(..., SchemeHomset_generic)' instead") + deprecation(38022, "The function is_SchemeHomset is deprecated; use 'isinstance(..., SchemeHomset_generic)' instead.") return isinstance(H, SchemeHomset_generic) diff --git a/src/sage/schemes/generic/hypersurface.py b/src/sage/schemes/generic/hypersurface.py index f7bfd33f006..4d39a7bfc27 100644 --- a/src/sage/schemes/generic/hypersurface.py +++ b/src/sage/schemes/generic/hypersurface.py @@ -35,7 +35,7 @@ def is_Hypersurface(self): sage: H = ProjectiveHypersurface(x*z + y^2) sage: is_Hypersurface(H) doctest:warning... - DeprecationWarning: the function is_Hypersurface is deprecated; use 'isinstance(..., (ProjectiveHypersurface, AffineHypersurface))' instead + DeprecationWarning: The function is_Hypersurface is deprecated; use 'isinstance(..., (ProjectiveHypersurface, AffineHypersurface))' instead. See https://github.com/sagemath/sage/issues/38022 for details. True @@ -52,7 +52,7 @@ def is_Hypersurface(self): False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_Hypersurface is deprecated; use 'isinstance(..., (ProjectiveHypersurface, AffineHypersurface))' instead") + deprecation(38022, "The function is_Hypersurface is deprecated; use 'isinstance(..., (ProjectiveHypersurface, AffineHypersurface))' instead.") return isinstance(self, (ProjectiveHypersurface, AffineHypersurface)) diff --git a/src/sage/schemes/generic/scheme.py b/src/sage/schemes/generic/scheme.py index 03d6a82b214..7d190275e8e 100644 --- a/src/sage/schemes/generic/scheme.py +++ b/src/sage/schemes/generic/scheme.py @@ -45,7 +45,7 @@ def is_Scheme(x): sage: from sage.schemes.generic.scheme import is_Scheme sage: is_Scheme(5) doctest:warning... - DeprecationWarning: the function is_Scheme is deprecated; use 'isinstance(..., Scheme)' or categories instead + DeprecationWarning: The function is_Scheme is deprecated; use 'isinstance(..., Scheme)' or categories instead. See https://github.com/sagemath/sage/issues/38022 for details. False sage: X = Spec(QQ) @@ -53,7 +53,7 @@ def is_Scheme(x): True """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_Scheme is deprecated; use 'isinstance(..., Scheme)' or categories instead") + deprecation(38022, "The function is_Scheme is deprecated; use 'isinstance(..., Scheme)' or categories instead.") return isinstance(x, Scheme) @@ -800,7 +800,7 @@ def is_AffineScheme(x): sage: from sage.schemes.generic.scheme import is_AffineScheme sage: is_AffineScheme(5) doctest:warning... - DeprecationWarning: the function is_AffineScheme is deprecated; use 'isinstance(..., AffineScheme)' instead + DeprecationWarning: The function is_AffineScheme is deprecated; use 'isinstance(..., AffineScheme)' instead. See https://github.com/sagemath/sage/issues/38022 for details. False sage: E = Spec(QQ) @@ -808,7 +808,7 @@ def is_AffineScheme(x): True """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_AffineScheme is deprecated; use 'isinstance(..., AffineScheme)' instead") + deprecation(38022, "The function is_AffineScheme is deprecated; use 'isinstance(..., AffineScheme)' instead.") return isinstance(x, AffineScheme) diff --git a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py index f642f06fff0..4834152b606 100644 --- a/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py +++ b/src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py @@ -52,12 +52,12 @@ def is_HyperellipticCurve(C): Hyperelliptic Curve over Rational Field defined by y^2 = x^3 + x - 1 sage: is_HyperellipticCurve(C) doctest:warning... - DeprecationWarning: the function is_HyperellipticCurve is deprecated; use 'isinstance(..., HyperellipticCurve_generic)' instead + DeprecationWarning: The function is_HyperellipticCurve is deprecated; use 'isinstance(..., HyperellipticCurve_generic)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_HyperellipticCurve is deprecated; use 'isinstance(..., HyperellipticCurve_generic)' instead") + deprecation(38022, "The function is_HyperellipticCurve is deprecated; use 'isinstance(..., HyperellipticCurve_generic)' instead.") return isinstance(C, HyperellipticCurve_generic) diff --git a/src/sage/schemes/plane_quartics/quartic_generic.py b/src/sage/schemes/plane_quartics/quartic_generic.py index ef7f2db96b2..324ec2f9b13 100644 --- a/src/sage/schemes/plane_quartics/quartic_generic.py +++ b/src/sage/schemes/plane_quartics/quartic_generic.py @@ -32,13 +32,13 @@ def is_QuarticCurve(C): sage: Q = QuarticCurve(x**4 + y**4 + z**4) sage: is_QuarticCurve(Q) doctest:warning... - DeprecationWarning: the function is_QuarticCurve is deprecated; use 'isinstance(..., QuarticCurve_generic)' instead + DeprecationWarning: The function is_QuarticCurve is deprecated; use 'isinstance(..., QuarticCurve_generic)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_QuarticCurve is deprecated; use 'isinstance(..., QuarticCurve_generic)' instead") + deprecation(38022, "The function is_QuarticCurve is deprecated; use 'isinstance(..., QuarticCurve_generic)' instead.") return isinstance(C, QuarticCurve_generic) diff --git a/src/sage/schemes/product_projective/space.py b/src/sage/schemes/product_projective/space.py index 041b1c59151..ea99ea00559 100644 --- a/src/sage/schemes/product_projective/space.py +++ b/src/sage/schemes/product_projective/space.py @@ -74,14 +74,14 @@ def is_ProductProjectiveSpaces(x): sage: is_ProductProjectiveSpaces(ProjectiveSpace(5, names='x')) doctest:warning... - DeprecationWarning: the function is_ProductProjectiveSpaces is deprecated; use 'isinstance(..., ProductProjectiveSpaces_ring)' instead + DeprecationWarning: The function is_ProductProjectiveSpaces is deprecated; use 'isinstance(..., ProductProjectiveSpaces_ring)' instead. See https://github.com/sagemath/sage/issues/38022 for details. False sage: is_ProductProjectiveSpaces(ProductProjectiveSpaces([1, 2, 3], ZZ, 'x')) True """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_ProductProjectiveSpaces is deprecated; use 'isinstance(..., ProductProjectiveSpaces_ring)' instead") + deprecation(38022, "The function is_ProductProjectiveSpaces is deprecated; use 'isinstance(..., ProductProjectiveSpaces_ring)' instead.") return isinstance(x, ProductProjectiveSpaces_ring) diff --git a/src/sage/schemes/projective/projective_space.py b/src/sage/schemes/projective/projective_space.py index e4bf4fac129..67ddd800ecc 100644 --- a/src/sage/schemes/projective/projective_space.py +++ b/src/sage/schemes/projective/projective_space.py @@ -141,7 +141,7 @@ def is_ProjectiveSpace(x): sage: from sage.schemes.projective.projective_space import is_ProjectiveSpace sage: is_ProjectiveSpace(ProjectiveSpace(5, names='x')) doctest:warning... - DeprecationWarning: the function is_ProjectiveSpace is deprecated; use 'isinstance(..., ProjectiveSpace_ring)' instead + DeprecationWarning: The function is_ProjectiveSpace is deprecated; use 'isinstance(..., ProjectiveSpace_ring)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_ProjectiveSpace(ProjectiveSpace(5, GF(9, 'alpha'), names='x')) # needs sage.rings.finite_rings @@ -150,7 +150,7 @@ def is_ProjectiveSpace(x): False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_ProjectiveSpace is deprecated; use 'isinstance(..., ProjectiveSpace_ring)' instead") + deprecation(38022, "The function is_ProjectiveSpace is deprecated; use 'isinstance(..., ProjectiveSpace_ring)' instead.") return isinstance(x, ProjectiveSpace_ring) diff --git a/src/sage/schemes/toric/chow_group.py b/src/sage/schemes/toric/chow_group.py index 86455eccb52..d11d70e135b 100644 --- a/src/sage/schemes/toric/chow_group.py +++ b/src/sage/schemes/toric/chow_group.py @@ -1217,14 +1217,14 @@ def is_ChowGroup(x) -> bool: sage: from sage.schemes.toric.chow_group import is_ChowGroup sage: is_ChowGroup(A) doctest:warning... - DeprecationWarning: the function is_ChowGroup is deprecated; use 'isinstance(..., ChowGroup_class)' instead + DeprecationWarning: The function is_ChowGroup is deprecated; use 'isinstance(..., ChowGroup_class)' instead. See https://github.com/sagemath/sage/issues/38022 for details. True sage: is_ChowGroup('Victoria') False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_ChowGroup is deprecated; use 'isinstance(..., ChowGroup_class)' instead") + deprecation(38022, "The function is_ChowGroup is deprecated; use 'isinstance(..., ChowGroup_class)' instead.") return isinstance(x, ChowGroup_class) diff --git a/src/sage/schemes/toric/fano_variety.py b/src/sage/schemes/toric/fano_variety.py index f6914cb5d69..09014ce20cc 100644 --- a/src/sage/schemes/toric/fano_variety.py +++ b/src/sage/schemes/toric/fano_variety.py @@ -171,7 +171,7 @@ def is_CPRFanoToricVariety(x): sage: from sage.schemes.toric.fano_variety import is_CPRFanoToricVariety sage: is_CPRFanoToricVariety(1) doctest:warning... - DeprecationWarning: the function is_CPRFanoToricVariety is deprecated; use 'isinstance(..., CPRFanoToricVariety_field)' instead + DeprecationWarning: The function is_CPRFanoToricVariety is deprecated; use 'isinstance(..., CPRFanoToricVariety_field)' instead. See https://github.com/sagemath/sage/issues/38022 for details. False sage: FTV = toric_varieties.P2() @@ -183,7 +183,7 @@ def is_CPRFanoToricVariety(x): False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_CPRFanoToricVariety is deprecated; use 'isinstance(..., CPRFanoToricVariety_field)' instead") + deprecation(38022, "The function is_CPRFanoToricVariety is deprecated; use 'isinstance(..., CPRFanoToricVariety_field)' instead.") return isinstance(x, CPRFanoToricVariety_field) diff --git a/src/sage/schemes/toric/sheaf/klyachko.py b/src/sage/schemes/toric/sheaf/klyachko.py index 4ecb999b679..b6c7147140c 100644 --- a/src/sage/schemes/toric/sheaf/klyachko.py +++ b/src/sage/schemes/toric/sheaf/klyachko.py @@ -70,12 +70,12 @@ def is_KlyachkoBundle(X): sage: from sage.schemes.toric.sheaf.klyachko import is_KlyachkoBundle sage: is_KlyachkoBundle('test') doctest:warning... - DeprecationWarning: the function is_KlyachkoBundle is deprecated; use 'isinstance(..., KlyachkoBundle_class)' instead + DeprecationWarning: The function is_KlyachkoBundle is deprecated; use 'isinstance(..., KlyachkoBundle_class)' instead. See https://github.com/sagemath/sage/issues/38022 for details. False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_KlyachkoBundle is deprecated; use 'isinstance(..., KlyachkoBundle_class)' instead") + deprecation(38022, "The function is_KlyachkoBundle is deprecated; use 'isinstance(..., KlyachkoBundle_class)' instead.") return isinstance(X, KlyachkoBundle_class) diff --git a/src/sage/schemes/toric/variety.py b/src/sage/schemes/toric/variety.py index d442020ff54..b978ede251d 100644 --- a/src/sage/schemes/toric/variety.py +++ b/src/sage/schemes/toric/variety.py @@ -352,7 +352,7 @@ def is_ToricVariety(x): sage: from sage.schemes.toric.variety import is_ToricVariety sage: is_ToricVariety(1) doctest:warning... - DeprecationWarning: the function is_ToricVariety is deprecated; use 'isinstance(..., ToricVariety_field)' instead + DeprecationWarning: The function is_ToricVariety is deprecated; use 'isinstance(..., ToricVariety_field)' instead. See https://github.com/sagemath/sage/issues/38022 for details. False sage: fan = FaceFan(lattice_polytope.cross_polytope(2)) @@ -365,7 +365,7 @@ def is_ToricVariety(x): False """ from sage.misc.superseded import deprecation - deprecation(38022, "the function is_ToricVariety is deprecated; use 'isinstance(..., ToricVariety_field)' instead") + deprecation(38022, "The function is_ToricVariety is deprecated; use 'isinstance(..., ToricVariety_field)' instead.") return isinstance(x, ToricVariety_field)