state of dynamics
system:sage


{{{id=1|
PS.<x,y>=ProjectiveSpace(QQ,1)
PS
///
Projective Space of dimension 1 over Rational Field
}}}

{{{id=2|
PS.coordinate_ring()
///
Multivariate Polynomial Ring in x, y over Rational Field
}}}

{{{id=3|
PS.dimension()
///
1
}}}

{{{id=4|
R.<c>=PolynomialRing(QQ)
PC.<x,y>=ProjectiveSpace(R,1)
#point in projective space
Q=PC([2+c,4])
Q.codomain()
Q.domain()
#endomorphism of Projective Space
H=Hom(PC,PC)
f=H([x^2+c*y^2,y^2])
f
///
Scheme endomorphism of Projective Space of dimension 1 over Univariate Polynomial Ring in c over Rational Field
  Defn: Defined on coordinates by sending (x : y) to
        (x^2 + c*y^2 : y^2)
}}}

{{{id=5|
f(PC(0,1))
///
(c : 1)
}}}

{{{id=6|
f.nth_iterate(PC(0,1),3)
///
(c^4 + 2*c^3 + c^2 + c : 1)
}}}

{{{id=7|
P.<x,y>=ProjectiveSpace(QQ,1)
H=Hom(P,P)
f=H([x^2+y^2,y^2])
f.orbit(P(1,1),5)
///
[(1 : 1), (1 : 1), (1 : 1), (1 : 1), (1 : 1), (1 : 1)]
}}}

{{{id=8|
P.point([0,0],check=False)
///
(0 : 0)
}}}

{{{id=9|
f.primes_of_bad_reduction()
///
[2]
}}}

{{{id=10|
P.<x,y>=ProjectiveSpace(QQ,1)
H=Hom(P,P)
f=H([x^2,x*y])
f
///
Scheme endomorphism of Projective Space of dimension 1 over Rational Field
  Defn: Defined on coordinates by sending (x : y) to
        (x^2 : x*y)
}}}

{{{id=11|
f.orbit(P(0,1),5,check=False)
///
[(0 : 1), (0 : 0), (0 : 0), (0 : 0), (0 : 0), (0 : 0)]
}}}

{{{id=12|
P.<x,y,z>=ProjectiveSpace(QQ,2)
Q=P(3,2,1)
Q2=Q.dehomogenize(0)
///
}}}

{{{id=13|
Q2.codomain()
///
Affine Space of dimension 2 over Rational Field
}}}

{{{id=14|
Q.scale_by(2)
Q
///
(6 : 4 : 2)
}}}

{{{id=15|
Q.scale_by(1/10)
Q
///
(3/5 : 2/5 : 1/5)
}}}

{{{id=16|
Q.clear_denominators()
Q
///
(3 : 2 : 1)
}}}

{{{id=18|
Q[0]
///
3
}}}

{{{id=19|
f[0]
///
x^2
}}}

{{{id=20|
P.<x,y> = ProjectiveSpace(ZZ,1)
H = Hom(P,P)
f = H([x^2+y^2,y^2])
g=f.conjugate(matrix([[1,CC.0],[0,1]]))
g
///
Scheme endomorphism of Projective Space of dimension 1 over Multivariate Polynomial Ring in x, y over Complex Field with 53 bits of precision
  Defn: Defined on coordinates by sending (x : y) to
        (x^2 + 2.00000000000000*I*x*y + (-1.00000000000000*I)*y^2 : y^2)
}}}

{{{id=22|
f
///
Scheme endomorphism of Projective Space of dimension 1 over Integer Ring
  Defn: Defined on coordinates by sending (x : y) to
        (x^2 + y^2 : y^2)
}}}

{{{id=23|
R.<t>=GF(5^2)
P.<x,y> = ProjectiveSpace(R,1)
H = Hom(P,P)
f = H([x^2+y^2,y^2])
///
}}}

{{{id=24|
f.cyclegraph().show(figsize=10)
///
<html><font color='black'><img src='cell://sage0.png'></font></html>
}}}

{{{id=25|
f.orbit_structure(P(t,1))
///
[1, 2]
}}}

{{{id=26|
P.<x,y>=ProjectiveSpace(QQ,1)
H=Hom(P,P)
f=H([x^2-y^2,y^2])
Q=P(25/73, 23/117);Q
///
(2925/1679 : 1)
}}}

{{{id=27|
Q.global_height()
///
7.98104975966596
}}}

{{{id=28|
f.global_height()
///
0
}}}

{{{id=29|
f.canonical_height(Q)
///
7.6979234162573314972063192355
}}}

{{{id=30|
f.canonical_height(f(Q))
///
15.395846832514662994412638471
}}}

{{{id=31|
f.canonical_height(Q,error_bound=.0001)
///
7.6979234162573314972063192355
}}}

{{{id=32|
Q.canonical_height(f,error_bound=.0001)
///
7.6979234162573314972063192355
}}}

{{{id=33|
f.possible_periods()
///
[1, 2]
}}}

{{{id=34|
f.rational_preperiodic_graph().show()
///
<html><font color='black'><img src='cell://sage0.png'></font></html>
}}}

{{{id=35|
%time
P.<x,y>=ProjectiveSpace(QQ,1)
H=Hom(P,P)
f=H([x^2-29/16*y^2,y^2])
f.rational_preperiodic_graph().show()
///
<html><font color='black'><img src='cell://sage0.png'></font></html>
CPU time: 0.38 s,  Wall time: 0.40 s
}}}

{{{id=36|
%time
P.<x,y,z>=ProjectiveSpace(QQ,2)
H=Hom(P,P)
f=H([x^2-29/16*z^2,y^2-21/16*z^2,z^2])
f.rational_preperiodic_points()
///
[(5/4 : 5/4 : 1), (-1/4 : 5/4 : 1), (-5/4 : -5/4 : 1), (0 : 1 : 0), (-1 : 1 : 0), (-3/4 : 7/4 : 1), (3/4 : -3/4 : 1), (-7/4 : 1/4 : 1), (-1/4 : -7/4 : 1), (3/4 : 7/4 : 1), (-3/4 : 3/4 : 1), (5/4 : 1/4 : 1), (1/4 : 7/4 : 1), (1/4 : -5/4 : 1), (1/4 : -3/4 : 1), (5/4 : 3/4 : 1), (-3/4 : 5/4 : 1), (7/4 : 1/4 : 1), (5/4 : -7/4 : 1), (7/4 : 5/4 : 1), (3/4 : 3/4 : 1), (-7/4 : 3/4 : 1), (-5/4 : -1/4 : 1), (-7/4 : -5/4 : 1), (-3/4 : -5/4 : 1), (-3/4 : -1/4 : 1), (5/4 : -3/4 : 1), (7/4 : 3/4 : 1), (-3/4 : -7/4 : 1), (7/4 : -1/4 : 1), (-7/4 : 7/4 : 1), (-1/4 : 1/4 : 1), (7/4 : 7/4 : 1), (-7/4 : -1/4 : 1), (-5/4 : -7/4 : 1), (1/4 : 1/4 : 1), (1/4 : -1/4 : 1), (3/4 : 5/4 : 1), (-5/4 : 3/4 : 1), (1/4 : 3/4 : 1), (-1/4 : 3/4 : 1), (7/4 : -5/4 : 1), (5/4 : -1/4 : 1), (1 : 0 : 0), (-5/4 : 1/4 : 1), (1/4 : 5/4 : 1), (-3/4 : 1/4 : 1), (5/4 : 7/4 : 1), (-1/4 : -5/4 : 1), (5/4 : -5/4 : 1), (-5/4 : 7/4 : 1), (-7/4 : -7/4 : 1), (-7/4 : -3/4 : 1), (-1/4 : -3/4 : 1), (7/4 : -7/4 : 1), (3/4 : -5/4 : 1), (3/4 : 1/4 : 1), (3/4 : -7/4 : 1), (1/4 : -7/4 : 1), (-1/4 : 7/4 : 1), (7/4 : -3/4 : 1), (-5/4 : -3/4 : 1), (-1/4 : -1/4 : 1), (-5/4 : 5/4 : 1), (-7/4 : 5/4 : 1), (1 : 1 : 0), (3/4 : -1/4 : 1), (-3/4 : -3/4 : 1)]
CPU time: 1.65 s,  Wall time: 1.75 s
}}}

{{{id=38|
A.<x>=AffineSpace(QQ,1)
A.projective_embedding()
///
Scheme morphism:
  From: Affine Space of dimension 1 over Rational Field
  To:   Projective Space of dimension 1 over Rational Field
  Defn: Defined on coordinates by sending (x) to
        (x : 1)
}}}

{{{id=37|
P.<x,y,z>=ProjectiveSpace(QQ,2)
E=P.subscheme(y^2*z-x^3+z^3)
H=Hom(E,E)
f=H([x^2+y^2,y^2,z^2])
///
}}}

{{{id=39|
f(E(0,1,1))
///
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "_sage_input_121.py", line 10, in <module>
    exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("ZihFKDAsMSwxKSk="),globals())+"\\n"); execfile(os.path.abspath("___code___.py"))' + '\n', '', 'single')
  File "", line 1, in <module>
    
  File "/private/var/folders/z2/hs3p8tq16zjb564d79jjlbc80000gp/T/tmpF3XngX/___code___.py", line 3, in <module>
    exec compile(u'f(E(_sage_const_0 ,_sage_const_1 ,_sage_const_1 ))' + '\n', '', 'single')
  File "", line 1, in <module>
    
  File "/Applications/sage-5.12/local/lib/python2.7/site-packages/sage/schemes/generic/scheme.py", line 294, in __call__
    return self.point(args)
  File "/Applications/sage-5.12/local/lib/python2.7/site-packages/sage/schemes/generic/scheme.py", line 370, in point
    return self.point_homset() (v, check=check)
  File "/Applications/sage-5.12/local/lib/python2.7/site-packages/sage/schemes/generic/homset.py", line 263, in __call__
    return Set_generic.__call__(self, *args, **kwds)
  File "parent.pyx", line 1011, in sage.structure.parent.Parent.__call__ (sage/structure/parent.c:8392)
  File "coerce_maps.pyx", line 100, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_with_args (sage/structure/coerce_maps.c:4278)
  File "coerce_maps.pyx", line 90, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_with_args (sage/structure/coerce_maps.c:4089)
  File "/Applications/sage-5.12/local/lib/python2.7/site-packages/sage/schemes/generic/homset.py", line 455, in _element_constructor_
    return self.codomain()._point(self, v, **kwds)
  File "/Applications/sage-5.12/local/lib/python2.7/site-packages/sage/schemes/generic/algebraic_scheme.py", line 583, in _point
    return self.__A._point(*args, **kwds)
  File "/Applications/sage-5.12/local/lib/python2.7/site-packages/sage/schemes/projective/projective_space.py", line 827, in _point
    return SchemeMorphism_point_projective_field(*args, **kwds)
  File "/Applications/sage-5.12/local/lib/python2.7/site-packages/sage/schemes/projective/projective_point.py", line 1042, in __init__
    X.extended_codomain()._check_satisfies_equations(v)
  File "/Applications/sage-5.12/local/lib/python2.7/site-packages/sage/schemes/generic/algebraic_scheme.py", line 967, in _check_satisfies_equations
    raise TypeError, "Coordinates %s do not define a point on %s"%(coords,self)
TypeError: Coordinates [0, 1, 1] do not define a point on Closed subscheme of Projective Space of dimension 2 over Rational Field defined by:
  -x^3 + y^2*z + z^3
}}}

{{{id=40|
E
///
Closed subscheme of Projective Space of dimension 2 over Rational Field defined by:
  -x^3 + y^2*z + z^3
}}}

{{{id=41|
EllipticCurve('37b').category()
///
Category of schemes over Rational Field
}}}

{{{id=42|

///
}}}