kazachis4e писал(а):
оказалось все немного проще: в качестве входного агрумента - число P, которое в программе проверяется на простоту. Если р простое, то необходимо вывести все примитивные элементы поля GF(p)
Достаточно найти один, а дальше возводить его в степени взаимно простые с числом
- так получатся все примитивные элементы.
kazachis4e писал(а):
Примитивные элементы я вычислял тупо перебором, причем получилось так, что в маленьких полях (p<=19) примитивные элементы находяться нормально (проверено), однако дальше он ни к одному полю не находит ни одного примитивного элемента. Отсюда вопрос: в любом ли поле обязательно должен существовать хотя бя один примитивный элемент?
Конечно должен, ведь мультипликативная группа поля циклична. Более того, количество различных примитивных элементов равно значению функции Эйлера
(почему - см. выше). Так что, ищите ошибку в программе.
kazachis4e писал(а):
Ну и интересно, есть ли какие-нибудь другие алгоритмы кроме перебора для нахождения примитивных элементов, в случае если элементами поля являются цифры от 0 до р-1.
Алгоритм проверки на примитивность я описал в предыдущем сообщении. А искать можно по разному - последовательно перебирая элементы 2,3,4 и т.д. или случайным образом выбирая число из отрезка [2,p-1].