А Х будет всегда примитивным элементом? И можно ли всегда последовательно строить поля( искать его элементы) так как я предложил?
Мне какбы нужен алгоритм поиска этих элементов.
Для того, чтобы корень неприводимого полинома, с помощью которого задается поле, был примитивным элементом, необходимо и достаточно, чтобы этот неприводимый полином сам был примитивным, т.е.
![$e=p^n-1$ $e=p^n-1$](https://dxdy-02.korotkov.co.uk/f/5/3/e/53eed7b3867c2bfe03c2b4c33162d42c82.png)
должно быть наименьшим показателем, при котором
![$x^e-1$ $x^e-1$](https://dxdy-01.korotkov.co.uk/f/8/0/8/80837827472779effce110e7aeeefeb682.png)
делится на этот полином.
О том как строить такие полиномы можно почитать в первом томе монографии Лидла и Нидеррайтера "Конечные поля".
Впрочем, если вы задаете поле с помощью неприводимого полинома, не являющегося примитивным, найти в нем примитивный элемент совсем не сложно. Достаточно возвести "подозреваемого" во все степени с показателями
![$\frac{p^n-1}{q_i}$ $\frac{p^n-1}{q_i}$](https://dxdy-03.korotkov.co.uk/f/6/9/c/69c92f1355c55d1d8cebe04bc7c0945482.png)
, где
![$q_i$ $q_i$](https://dxdy-02.korotkov.co.uk/f/9/2/9/9294da67e8fbc8ee3f1ac635fc79c89382.png)
пробегает все простые делители
![$p^n-1$ $p^n-1$](https://dxdy-03.korotkov.co.uk/f/a/5/8/a584141fd26af6f336f19f2ad1b94e3882.png)
. Учитывая, что бинарный алгоритм возведения в степень по модулю полинома над
![$\mathbb{Z}_i$ $\mathbb{Z}_i$](https://dxdy-01.korotkov.co.uk/f/c/6/6/c66b4331a5c4e29e910db973b8d53d7d82.png)
пишется очень просто и работает очень быстро, это не проблема. Чтобы элемент был примитивным, нужно чтобы при этих возведениях ни разу не получилась 1.