1.原根定义
 欧拉定理(也称费马-欧拉定理或欧拉 函数定理)是一个关于同余的性质。欧拉定理表明,若
函数定理)是一个关于同余的性质。欧拉定理表明,若 为正整数,且
为正整数,且 互素(即
互素(即 ),则
),则

 时,定义
时,定义 对模
对模 的指数
的指数 为使
为使 成立的最小的正整数
成立的最小的正整数 。由前知
。由前知 一定小于等于
 一定小于等于  ,若
,若 ,则称
,则称 是模
是模 的原根。
的原根。2.如何求解:
一、枚举
从2开始枚举,然后暴力判断g^(P-1) = 1 (mod P)是否当且当指数为P-1的时候成立
二、讲究方法
例如求任何一个质数x的任何一个原根,一般就是枚举2到x-1,并检验。有一个方便的方法就是,求出x-1所有不同的质因子p1,p2...pm,对于任何2<=a<=x-1,判定a是否为x的原根,只需要检验a^((x-1)/p1),a^((x-1)/p2),...a^((x-1)/pm)这m个数中,是否存在一个数mod x为1,若存在,a不是x的原根,否则就是x的原根。
原来的复杂度是O(P-1),现在变成O(m)*log(P-1)m为x-1质因子的个数。很明显质因子的个数远远小于x-1。
证明可用欧拉定理和裴蜀定理:
裴蜀定理
说明了对任何整数a、b和它们的最大公约数d,关于未知数x和y的线性丢番图方程(称为裴蜀等式):
 ax + by = m 
 有解当且仅当m是d的倍数。裴蜀等式有解时必然有无穷多个整数解,每组解x、y都称为裴蜀数,可用辗转相除法求得。
例如,12和42的最大公因子是6,则方程12x + 42y = 6有解。事实上有(-3)×12 + 1×42 = 6及4×12 + (-1)×42 = 6。
特别来说,方程 ax + by = 1 有解当且仅当整数a和b互素。
裴蜀等式也可以用来给最大公约数定义:d其实就是最小的可以写成ax + by形式的正整数。这个定义的本质是整环中“理想”的概念。因此对于多项式整环也有相应的裴蜀定理。
证明
代码:
来至http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1135的一道题目:
题目
<span id="Showjim86_bnbbbsbl_s39"></span>输入1个质数P(3 <= P <= 10^9)<span id="Showjim86_bnbbbsbl_e39"></span>
<span id="Showjim86_bnbbbsbl_s40"></span>输出P最小的原根。