Skip to content

Do not try to create embedded number field morphisms for non-embedded number fields #15331

@simon-king-jena

Description

@simon-king-jena

The attempt to create an embedded number field morphisms for non-embedded number fields currently fails (and should of course fail).

sage: L.<i> = NumberField(x^2 + 1)
sage: K = NumberField(L(i/2+3).minpoly(), names=('i0',), embedding=L(i/2+3))
sage: from sage.rings.number_field import number_field_morphisms
sage: number_field_morphisms.EmbeddedNumberFieldMorphism(R, self)
Traceback (most recent call last):
...
RuntimeError: maximum recursion depth exceeded in __instancecheck__

However, instead of running into an infinite recursion, a quick and simple ValueError (or perhaps TypeError) should be raised.

CC: @jpflori

Component: number fields

Author: Simon King, Marc Mezzarobba, Jean-Pierre Flori

Branch/Commit: 2bedaa1

Reviewer: Marc Mezzarobba, Jean-Pierre Flori

Issue created by migration from https://trac.sagemath.org/ticket/15331

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions