Composition of morphisms of affine varieties

27 views
Skip to first unread message

Soli vishkautsan

unread,
Nov 18, 2014, 8:38:46 AM11/18/14
to sage-s...@googlegroups.com
I am trying to compose 3 affine automorphisms of the Markoff surface.
The following code produces an error:

A.<x,y,z> = AffineSpace(QQ,3)
M = A.subscheme([x^2+y^2+z^2-3*x*y*z])
H = Hom(M,M)
f1 = H([3*y*z-x,y,z])
f2 = H([x,3*x*z-y,z])
f3 = H([x,y,3*x*y-z])
f3*f2*f1

What am I doing wrong?

John Cremona

unread,
Nov 18, 2014, 8:47:33 AM11/18/14
to SAGE support
This could be a bug. Both f3*f2 and f2*f1 work ok, returning
"Composite maps". Also (f3*f2)*(f2*f1) works (not what you want of
course. It looks to me as if the people who implemented Composite
maps did not define the * operator to work with a combination of
Composite and ordinary maps.

Silly workaround:
sage: id = H([x,y,z])
sage: (f3*f2)*(f1*id)
Composite map:
From: Closed subscheme of Affine Space of dimension 3 over Rational
Field defined by:
-3*x*y*z + x^2 + y^2 + z^2
To: Closed subscheme of Affine Space of dimension 3 over Rational
Field defined by:
-3*x*y*z + x^2 + y^2 + z^2
Defn: Generic endomorphism of Closed subscheme of Affine Space of
dimension 3 over Rational Field defined by:
-3*x*y*z + x^2 + y^2 + z^2
then
Generic endomorphism of Closed subscheme of Affine Space of
dimension 3 over Rational Field defined by:
-3*x*y*z + x^2 + y^2 + z^2
then
Generic endomorphism of Closed subscheme of Affine Space of
dimension 3 over Rational Field defined by:
-3*x*y*z + x^2 + y^2 + z^2
then
Generic endomorphism of Closed subscheme of Affine Space of
dimension 3 over Rational Field defined by:
-3*x*y*z + x^2 + y^2 + z^2

John Cremona

>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-support...@googlegroups.com.
> To post to this group, send email to sage-s...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-support.
> For more options, visit https://groups.google.com/d/optout.

Soli vishkautsan

unread,
Nov 18, 2014, 9:03:23 AM11/18/14
to sage-s...@googlegroups.com
Thanks, 
another workaround is to use 
(f2*f1).post_compose(f3)
which also works.
The same problem when composing the homogenization of these morphisms.
I will add this to trac, unless someone else intervenes :)
Reply all
Reply to author
Forward
0 new messages