On 3 February 2015 at 13:00, Ben Hutz <bn4...@gmail.com> wrote: > I'm not a member yet of those groups, so my cross-post attempt failed. If > you could do so that would be appreciated.
Done -- and I also approved your application to join sage-nt! We set up sage-nt to discuss number-theory-specific things in Sage, and I think there are several people who follow that but do not read all sage-devel. John > > On Tuesday, February 3, 2015 at 4:03:22 AM UTC-5, John Cremona wrote: >> >> This would be great to have. Why don't you cross-post to sage-nt (and >> perhaps also sage-algebra)? >> >> John >> >> On 3 February 2015 at 01:59, Ben Hutz <bn4...@gmail.com> wrote: >> > I'm interested in implementing Weil restriction (restriction of scalars) >> > for >> > affine schemes. I see from #5569, that there is an implementation for >> > ideals. I'd like to extend this to affine schemes/points/morphisms. >> > There is >> > also an aborted attempt of Weil restriction for projective models of >> > elliptic curves #13266 that does not seem to be going anywhere. >> > >> > While the code for the restriction for each of these (affine) objects is >> > not >> > difficult, this seems like something that should be implemented as a >> > functor >> > as you'd like the resulting schemes/points/morphisms to all play nicely >> > together. However, I know little about functors in Sage. I've looked >> > around >> > in the code a little bit hoping to find an example where something like >> > this >> > was done before, but I'm having some trouble. I see where Spec is >> > implemented as a functor, but I'm not sure that is helpful. I've also >> > seen >> > the documentation about which functions a new functor class should >> > override. >> > I'm sure I'm going to get this wrong, but as a place to start this >> > discussion would an implementation look something like this >> > >> > 1) create a new functor class WeilRestrictionAffineFunctor which >> > implements >> > _coerce_into_domain(self, x) >> > _apply_functor(self, x) >> > _apply_functor_to_morphism(self, f) >> > >> > although it doesn't seem like any of these three would apply to the >> > points >> > of the affine scheme. >> > >> > 2) Given an affine scheme A and a morphism f:A -> A, have the methods >> > A.weil_restriction() and f.weil_restriction() call the functor so that >> > domains/codomains all match-up nicely? For example, I'd like something >> > like >> > this to work >> > >> > sage: K.<w>=QuadraticField(3) >> > sage: A.<x,y>=AffineSpace(K,2) >> > sage: X=A.subscheme([y^2-x^2]) >> > sage: H=End(X) >> > sage: f=H([y,x]) >> > sage: P=X(-1,1) >> > sage: f(P).weil_restriction() == >> > f.weil_restriction(P.weil_restriction()) >> > True >> > >> > >> > I'm sure I could make this work manually by caching the weil_restriction >> > of >> > a scheme so that a new one is only created when it doesn't already exist >> > (like 'homogenize' does) but, at least mathematically, this really >> > should be >> > a functor. I guess my first question is then: Is a functor the 'right' >> > choice for implementation of Weil restriction in Sage? If yes, is there >> > anywhere else in Sage something like this is done from which I can base >> > this >> > new functionality? >> > >> > Thanks, >> > Ben >> > >> > -- >> > You received this message because you are subscribed to the Google >> > Groups >> > "sage-devel" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> > an >> > email to sage-devel+...@googlegroups.com. >> > To post to this group, send email to sage-...@googlegroups.com. >> > Visit this group at http://groups.google.com/group/sage-devel. >> > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "sage-devel" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-devel+unsubscr...@googlegroups.com. > To post to this group, send email to sage-devel@googlegroups.com. > Visit this group at http://groups.google.com/group/sage-devel. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.