Dear all, currently I work on the doctest coverage of sage.categories.map and sage.categories.morphism.
It seems to me that the class sage.categories.morphism.Morphism is completely redundant. In fact, the definition of a map (sage.categories.map.Map) requires that the map belongs to a homset (to the very least, Sets().hom_category()). So, any map in Sage is, mathematically, a morphism. The methods introduced in sage.categories.morphism.Morphism don't convince me that that class should exist: - category: this could be moved to Map, since a Map belongs to a homset category anyway. - is_endomorphism: dito. - __invert__: dito - pushforward: This *must* actually be a method of Map, since it is used in Map.__call__, and an attribute error for "pushforward" isn't caught in __call__. - register_as_coercion: Note that the classes in sage.structure.coerce_maps derive from Map and not from Morphism. Wouldn't it then be more logical to move register_as_coercion to Map? So, would you agree that sage.categories.morphism.Morphism should be removed (resp. should become an alias for sage.categories.map.Map), its methods should be moved to sage.categories.map.Map, classes deriving from Morphism should derive from Map instead, and sage.categories.morphism should then only comprise some special types of morphisms, such as SetMorphism? Best regards, Simon -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org