This is now #17729

On Tuesday, February 3, 2015 at 8:08:34 AM UTC-5, John Cremona wrote:
>
> ---------- Forwarded message ---------- 
> From: Ben Hutz <[email protected] <javascript:>> 
> Date: 3 February 2015 at 01:59 
> Subject: [sage-devel] weil restriction for affine schemes as a functor? 
> To: [email protected] <javascript:> 
>
>
> 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 [email protected] <javascript:>. 
> To post to this group, send email to [email protected] 
> <javascript:>. 
> 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-nt" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send an email to [email protected].
Visit this group at http://groups.google.com/group/sage-nt.
For more options, visit https://groups.google.com/d/optout.

Reply via email to