zoukankan      html  css  js  c++  java
  • 【初等数论】 05

    1. 指数

      现在我们就开始为剩余系建立“坐标”,完全剩余系是连续的,剩余类本身就是很好的坐标,所以这里我们只需讨论既约剩余系。前面已经知道((a,m)=1)时,总存(d)在使得(a^dequiv 1pmod{m}),满足条件的最小的(d_0=delta_m(a))称为(a)对模(m)的阶或指数,也可简记为(delta(a))。为了得到更进一步的结论,我们先整理一下指数的简单性质:

      (1)若(a^dequiv 1pmod{m}),则(delta_m(a)mid d)。从而有若(a^hequiv a^dpmod{m}),则(hequiv dpmod{m});

      (2)(delta_m(a)|varphi(m));(delta_m(a^{-1})=delta_m(a))。

      我们来继续研究指数的性质,首先考虑(delta^*=delta_m(a^n)),由(a^{ndelta^*}equiv 1pmod{m})知(delta_m(a)mid ndelta^*),故容易有公式(1)。其次由定义显然有:若(nmid m),则(delta_n(a)mid delta_m(a))。所以对互质分解(m=m_1m_2cdots m_n),总有(delta_{m_k}(a)mid delta_m(a)),再根据模的性质就有公式(2)。再进一步,对任意的(a_1,a_2,cdots,a_n),考虑方程组(xequiv a_kpmod{m_k})的唯一解(a)(剩余定理),显然有(delta_{m_k}(a)=delta_{m_k}(a_k)),再根据公式(2)可得(a)满足公式(3)。

    [delta_m(a^n)=dfrac{delta_m(a)}{(delta_m(a),n)} ag{1}]

    [delta_m(a)=[delta_{m_1}(a),delta_{m_2}(a),cdots,delta_{m_n}(a)] ag{2}]

    [delta_m(a)=[delta_{m_1}(a_1),delta_{m_2}(a_2),cdots,delta_{m_n}(a_n)] ag{3}]

      再来研究(delta_m(a),a=a_1a_2cdots a_n),令(eta=[delta(a_1),cdots,delta(a_n)]),则显然有(delta(a)mid eta)。先看(delta(a_k))互素的情况,这时(eta=delta(a_1)delta(a_2)cdotsdelta(a_n)),令(eta_k=dfrac{eta}{delta(a_k)})。因为(1equiv a^{delta(a)eta_k}equiv a_k^{delta(a)eta_k}pmod{m}),故(delta(a_k)mid delta(a)),从而有公式(4)。如果(delta(a_k))不互素,一般并没有(delta(a)=eta)。但反过来,对任意的(a_1,a_2,cdots,a_n),利用公式(1)和(4)构造满足公式(5)的(a)还是很容易的。

    [delta_m(a)=delta_m(a_1)delta_m(a_2)cdotsdelta_m(a_n) ag{4}]

    [delta_m(a)=[delta_m(a_1),delta_m(a_2),cdots,delta_m(a_n)] ag{5}]

      指数在研究循环小数时有个有趣的结论。对既约分数(dfrac{a}{b}),如果有(b=2^mcdot 5^ncdot k),则(dfrac{a}{b})是循环小数的充要条件是((10,k)=1,k>1)。如果(delta_k(10)=c),则最小循环周期为(c),并且小数点后的非循环数长度为( ext{max}(m,n))。特别地,如果((10,b)=1),则(dfrac{a}{b})是纯循环小数。证明不难,你可以作为练习,关键是使用关系式(10^cequiv 1pmod{k})。

    2. 原根

      由指数的性质(2)可知(a,a^2,cdots,a^{delta_m(a)})是(delta_m(a))个不同的数,特别地当(delta_m(a)=varphi(m))时,它们遍历(m)的既约剩余系。这种关系使得既约剩余系变得特别简单,我们也由此找到了合适的“坐标”。为此,当(delta_m(g)=varphi(m))时称(g)称为模(m)的原根,它便是既约剩余系的单位元,负责将剩余系串成一个线性空间。先来思考几个问题:

       如果((n,varphi(m))=1),则(x)遍历(m)的既约剩余系时,(x^n)也遍历既约剩余系;

       若(qequiv 1pmod{4},p=2q+1),或(qequiv 1pmod{2},p=4q+1),都有(2)是(p)的原根;

       (a^n-b^n)的素因子有形式(kn+1)或(a^m-b^m,(m|n))。

      我们自然会有问题:什么样的模数有原根?有多少个原根?如何判定?前面已经知道(delta(a)mid eta),而除了(1,2,4,p^e,2p^e)这(5)种情况外((p)为奇素数),容易其它证明都有(eta<varphi(m)),它们肯定没有原根。下面就需要论证那(5)种情况是否有原根,直接验算可知(1,2,4)有原根。对于模(p)的情况,由公式(5)知存在(g)使得(delta(g)=[delta(1)delta(2)cdotsdelta(p-1)]),首先当然有(delta(g)|p-1)。另外因为(x^{delta(g)}-1equiv 0pmod{p})有全解,则(p-1|delta(g))。从而(delta(g)=p-1),所以(p)有原根(g)。

      由(g^dequiv 1pmod{p^e})和(g^dequiv 1pmod{2p^e})的等价性,并且(varphi(p^e)=varphi(2p^e)),可知(p^e)和(2p^e)有相同的原根,这样一来我们就只需要讨论模(p^e)是否有原根了。当(g)是(p^n)原根时,因为(p^nmid p^{n+1}),故(delta_{p^{n+1}}(g))为(varphi(p^n))或(varphi(p^{n+1}))。要想(g)也是(p^{n+1})的原根,必须(delta_{p^{n+1}}(g)=varphi(p^{n+1})),即满足式子(6)。而如果该条件满足,用归纳法可以验算得它对一切(g^{varphi(p^e)},(egeqslant n))都满足,即(g)是所有(p^e)的原根。

    [g^{varphi(p^n)}=1+r(n)p^n,quad p mid r(n) ag{6}]

      现在只要能证明以上条件对(n=1)成立(即(g^{p-1}=1+rp,p mid r)),我们就找到了所有模(p^e)的原根,研究证明了(p^e)原根的存在性。对模(p)的原根(g),考察(g_k=g+kp,k=0,1,cdots,p-1)和式子(7)中的变形。(r+(p-1)g^{p-2}k)中有且仅一个是(p)的倍数,取其它任何一个值都能得到了满足条件的原根,条件得证。

    [g_k^{p-1}equiv g^{p-1}+(p-1)g^{p-2}pkequiv 1+p(r+(p-1)g^{p-2}k)pmod{p} ag{7}]

      至此我们已经证明了原根存在的充要条件是模为(1,2,4,p^e,2p^e)之一,但如果想要找出原根,目前还没有很简单的方法。一般只能逐个尝试每个数,然而利用公式(5)的构造法是可以加快计算的,比如如果已经知道(delta_{41}(2)=20)和(delta_{41}(3)=8),因为([20,8]=40),故(2^4cdot 3equiv 7pmod{41})是(41)的原根。

      如果原根存在,选定一个原根(g)后,它的幂次遍历整个既约剩余系。如果(g^kequiv apmod{m}),称(k)为(a)的指标,记作(gamma_{m,g}(a)),或简记为(gamma_g(a))和(gamma(a))。指标将既约剩余系变成了一个完全剩余系,使其结构由分散的变为线性的,由此可以更好地研究它的性质。以下为原根的一些性质,其中性质(3)中蕴含了指数为(dmid varphi(m))的数有(varphi(d))个,它们是(g^{frac{varphi(m)}{d}k},(k,d)=1)。特别地共有(varphi(varphi(m)))个原根,它们是(g^k,(k,varphi(m))=1)。

      (1)(gamma_{m,g}(ab)equivgamma_{m,g}(a)+gamma_{m,g}(b)pmod{varphi(m)});

      (2)(gamma_{g_1}(a)equivgamma_{g_1}(g_2)gamma_{g_2}(a)pmod{varphi(m)}),特别地有(gamma_{g_1}(g_2)gamma_{g_2}(g_1)equiv 1pmod{varphi(m)});

      (3)(delta_m(a)=dfrac{varphi(m)}{(gamma_{m,g}(a),varphi(m))})。

      我们一直想把指数当做即约剩余系的“坐标”,现在就来着手做这件事。一般的,将模(m)进行素数分解(2^{e_0}cdot p_1^{e_1}cdotcdots p_n^{e_n}),其既约剩余系的每个数(a)在各个维度都有一个值(a_k)。对(p_k^{e_k}),前面的证明保证了它有原根(g_k),(gamma_k=gamma_{p_k^{e_k},g_k}(a_k))就可以看做(a)在第(k)维的坐标。

      但对于(2^{e_0}),除(e_0<3)外是没有原根的,(e_0geqslant 3)时怎么建立坐标?通过归纳法你可以证明(delta_{2^e}(5)=2^{e-2}),并且容易知道(pm 5^0,pm 5^1,cdots,pm 5^{2^{e-2}-1})是它的一个既约剩余系。这样任何既约数都有唯一表达式(8),(gamma_{-1},gamma_0)就可以看做它的坐标。完整的就得到任何既约数的指标表达式(9)和(10)((10)中( ilde{g}_k^{gamma_k})的是(9)中的(gamma_k)取(1)、其它取(0)得来),使用(10)来证明威尔逊定理就简单多了。

    [(-1)^{gamma_{-1}}5^{gamma_0},quad (0leqslant gamma_{-1}<2,:0leqslant gamma_0<2^{e-2}) ag{8}]

    [aequiv M_0^{-1}M_0(-1)^{gamma_{-1}}5^{gamma_0}+M_1^{-1}M_1g_1^{gamma_1}+cdots+M_n^{-1}M_ng_n^{gamma_n}pmod{m} ag{9}]

    [aequiv ilde{g}_{-1}^{gamma_{-1}}cdot ilde{g}_0^{gamma_0}cdot ilde{g}_1^{gamma_1}cdots ilde{g}_n^{gamma_n}pmod{m} ag{10}]

    3. 二项同余方程

      最后再来看同余方程(11)它一般称为二项同余方程。如果方程有解,称(a)为(m)的(n)次剩余,否则称为(n)次非剩余。对(m)进行素数分解(2^{e_0}cdot p_1^{e_1}cdotcdots p_n^{e_n})后,方程可以化为一个方程组,我们只需分别讨论这些方程即可。

    [x^nequiv apmod{m} ag{11}]

      模(p^e)((p)为奇素数)有原根(g),用它来分析二项方程会很简单(下面的讨论针对有原根的模(m)都成立)。将原根带入原方程,得到式子(12)的左侧,它显然对应于右侧的一元一次同余方程。可以先回顾一下一次方程(axequiv bpmod{m})的特点,令(d=(a,m)),则(dmid b),且方程解的周期为(dfrac{m}{d}),请先在脑子想象一下它们的布局。回到原方程,令(d=(n,varphi(m))),则方程有解的充要条件是(d|gamma(a)),且共有(dfrac{varphi(m)}{d})个(n)次剩余。方程的解有(d)个,它们的周期是(dfrac{varphi(m)}{d})。

    [(g^y)^nequiv g^{gamma(a)}pmod{m}:Leftrightarrow:nyequiv gamma_{m,g}(a)pmod{varphi(m)} ag{12}]

      现在来把条件(d|gamma(a))转化为与(a)直接相关的。因为(a=g^gamma(a)),使用公式(1)直接有式子(13)。结合条件(d|gamma(a)),显然有(delta(a)|dfrac{varphi(m)}{d}),它又等价于公式(14)。这就是方程有解的充要条件,明显二次剩余的判定条件只是它的特例。

    [varphi(m)=(varphi(m),gamma(a))delta_m(a) ag{13}]

    [a^{frac{varphi(m)}{(n,varphi(m))}}equiv 1pmod{m} ag{14}]

      对模(m=2^e)的情景需要单独考虑,前面的讨论中说明了它的既约剩余系有两个独立的维度,故只需分别讨论两个维度就行了。令(a=(-1)^{gamma_{-1}}5^{gamma_0},d=(n,2^{e-2})),可知方程有解的充要条件是((n,2)midgamma_{-1})且(dmidgamma_0),方程解的个数为((n,2)d)。展开说就是,当(2 mid n)时有且仅有(1)解,既约剩余系的每个值都是(n)次剩余。当(2mid n)时有解的充要条件是(a=5^{gamma_0})且(dmidgamma_0),并且有(2d)个解,共有(dfrac{2^{e-2}}{d})个数是(n)次剩余。

      下面把(2mid n)有解的充要条件转化为与(a)相关的,首先易知必有形式(d=2^{lambda},(lambdageqslant 1))。因为(delta_{2^{lambda+2}}(5)=2^{lambda}=d),我们的条件(dmidgamma_0)其实等价于(5^{gamma_0}equiv 1pmod{2^{lambda+2}}),这就得到充要条件为公式(15)。当然你也可以得到与(p^e)类似的式子,但因为不如上式简洁,这里就不赘述了。

    [aequiv 1pmod{2^{lambda+2}},quad2^{lambda}=(n,2^{e-2}),:(lambdageqslant 1) ag{15}]

  • 相关阅读:
    System.Data.RealonlyException:列Column1被设置为realonly
    学习java过程中
    在windows server 2008下安装vs2005.打开vs2005的时候老提示要“运行vs2005sp1 建议使用管理员权限”
    windows Server 2008下面运行vs2005的问题
    大飞机MIS系统360把我的Transformer.Service服务杀掉了
    开通博客
    C#中怎样让控件显示在其他控件的上面
    vs2010发布问题
    vs在IE8无法调试的解决方法
    将身份证号粘贴到WPS表格后变成了“科学计数法”的解决方案
  • 原文地址:https://www.cnblogs.com/edward-bian/p/4391256.html
Copyright © 2011-2022 走看看