Why not have Q.lift() return the morphism and Q.lift(x) return the morphism applied to x? I think I've seen this paradigm applied elsewhere David
On Wed, Apr 20, 2011 at 11:46, Robert Bradshaw <rober...@math.washington.edu > wrote: > On Wed, Apr 20, 2011 at 5:15 AM, Nicolas M. Thiery > <nicolas.thi...@u-psud.fr> wrote: > > On Wed, Apr 20, 2011 at 02:34:49AM -0700, Simon King wrote: > >> * Q.lift(x) should be removed, and the category framework for > >> quotient rings should request a parent method "lifting_morphism" > >> instead of "lift". > > > > For the record, I would keep it, allowing for both x.lift() and > > Q.lift(x), for two reasons: > > > > - In many cases it is convenient to implement lift in the parent. > > Sometimes because this avoid creating an element class just to put > > this method there. Sometimes because this method lift is directly > > constructed as a morphism (say by linearity or ...) > > - It allows for facade quotients (see #9065 for the notion of facade > > parents) which I actually used a couple times. > > > > To answer John: yes, the category framework could register the lifting > > morphism as a conversion to enable R(x). And as a coercion in the case > > of Subobjects instead of Quotients. Do we want to go this way? I would > > leave it as a convenience for the user though; in code, I would favor > > being explicit, and using Q.lift(x) or x.lift() explicitly. > > Shouldn't the lifting morphism simply be a section of R -> Q? Ideally, > this could come from Q.coerce_map_from(R).section() in which case it > would automatically get invoked by R(x). > > x.lift() is a nice shorthand for lifting to the implicit covering set. > > - Robert > > -- > 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 > -- 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