# All rational periodic points

Hello, I am trying to find all rational periodic points of a polynomial. To specify: a periodic point is the point that satisfy $f^n(x)=x$. It is related to dynamical systems in fact. So the current codes that I used are following:

A.<z> = AffineSpace(QQ, 1)
f = DynamicalSystem_affine([2*z^3-3*z^2+1/2])
x=f.dynatomic_polynomial(2)
x.factor()


With this I can find its dynatomic polynomial and factorize it and find rational roots of this polynomial. So this roots corresponds to periodic point of the polynomial of given period. In particular dynatomic polynomial is the polynomial of the form $$\phi_{n,f}(x)=\prod_{d|n}(f^d(x)-x)^{\mu(n/d)}$$ n is period, f is your polynomial and $\mu$ is the mobius function.

But with this code I can find periods up to 8 because of memory limit. The other code that I used is

R.<x> = QQ[]
K.<i> = NumberField(xˆ2+1)
A.<z> = AffineSpace(K,1)
f = DynamicalSystem([zˆ2+i], domain=A)
f.orbit(A(0),4)


But in fact it doesn't fit my purposes.

I have codes that I can get limited information. For example checking up to a period is not advisable. If you know a little bit arithmetic dynamics, you can see what I mean. Silverman-Morton conjecture plays an important role here.