For any given 1D elementary and linear cellular automaton there exists a transition matrix. For example, for rule 60 the transition matrix is $$ \begin{bmatrix} 1 & 0 & 0 & \dots & 0 & 1 \\ 1 & 1 & 0 & \dots & 0 & 0\\ 0 & 1 & 1 & \dots & 0 & 0\\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & 0 & \dots & 1 & 0 \\ 0 & 0 & 0 & \dots & 1 & 1 \end{bmatrix}. $$ Now, by getting the minimal polynomial of this matrix and getting its order we know the maximal cycle length of the cellular automaton.
The way to get the maximal cycle length of a polynomial is described for example in: J. G. Stevens, On the construction of state diagrams for cellular automata with additive rules, Information Sciences 115, 43 (1999); especially principle C.
Now, the contradiction:
Rule 90: $a_n^{t+1} = a_{n - 1}^{t} + a_{n + 1}^{t} \mod{2}$
Rule 150: $a_n^{t+1} = a_{n - 1}^{t} + a_{n}^{t} + a_{n + 1}^{t} \mod{2}$
For N = 6 the matrices for rule 90 and rule 150 are respectively $$A_{90}(N=6)= \begin{pmatrix} 0 & 1 & 0 & 0 & 0 & 1 \\ 1 & 0 & 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 \\ 1 & 0 & 0 & 0 & 1 & 0 \\ \end{pmatrix}, A_{150}(N = 6) = \begin{pmatrix} 1 & 1 & 0 & 0 & 0 & 1 \\ 1 & 1 & 1 & 0 & 0 & 0 \\ 0 & 1 & 1 & 1 & 0 & 0 \\ 0 & 0 & 1 & 1 & 1 & 0 \\ 0 & 0 & 0 & 1 & 1 & 1 \\ 1 & 0 & 0 & 0 & 1 & 1 \\ \end{pmatrix} $$
The minimal polynomial is $\mu_{90}(\lambda) = \mu_{150}(\lambda) = \lambda^2 (1+\lambda)^2$. The order of this polynomial is 2, which gives the correct maximal cycle length for rule 90 but not for rule 150 (the correct maximal cycles of the cellular automaton can be calculated brute force as well and then be shown that for rule 150 and $N = 6$ is 1 and for rule 90 is 2). This problem persists not only for N = 6 sites but for other N's as well.
Why? How is this possible? What is the problem?