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 :)
On Tuesday, November 18, 2014 2:47:33 PM UTC+1, John Cremona wrote: > > On 18 November 2014 13:38, Soli vishkautsan <[email protected] > <javascript:>> wrote: > > 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? > > 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 [email protected] <javascript:>. > > To post to this group, send email to [email protected] > <javascript:>. > > Visit this group at http://groups.google.com/group/sage-support. > > For more options, visit https://groups.google.com/d/optout. > -- 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sage-support. For more options, visit https://groups.google.com/d/optout.
