zoukankan      html  css  js  c++  java
  • 数论学习笔记之欧拉函数

    最近又开始搞数论了……今天是欧拉函数,对于一些性质或定理,我可能会证明啥的

    首先欧拉函数(varphi(n))指不超过(n)(n)互素的数的个数。比如(varphi(8) = 4)
    性质:对于(n = {p_1}^{a_1} * {p_2} ^ {a_2} * {p_3} ^ {a_3} ldots {p_s} ^ {a_s}),有(varphi(n) = varphi({p_1} ^ {a_1}) * varphi({p_2} ^ {a_2}) * varphi({p_3} ^ {a_3}) ldots varphi({p_s} ^ {a_s}))


    然后就是各种定理了:
    以下的(p)都是素数!
    定理1:(varphi(n) = n * (1 - frac{1}{p_1}) * (1 - frac{1}{p_2}) * (1 - frac{1}{p_3}) ldots (1 - frac{1}{p_s}))
    证明可以用容斥:设(p)(n)的质因子,那么(1)$n$中$p$的倍数有$frac{n}{p}$个。同理$q$也是$n$的质因子,则$1$(n)(q)的倍数有(frac{n}{q})个。去掉(frac{n}{p} + frac{n}{q})后,根据容斥原理,要再补回来(frac{n}{pq})个,那么(1)~(n)中不与(n)含有共同质因子(p)(q)的数的个数为(n - frac{n}{p} - frac{n}{q} + frac{n}{pq} = n * (1 - frac{1}{p} - frac{1}{q} + frac{1}{pq}) = n * (1 - frac{1}{p}) * (1 - frac{1}{q}))。类似的,对于(n)的所有质因子使用上述容斥原理,可以得到定定理1.
    定理1的推论:当(n)为奇数时,(varphi(2n) = varphi(n))


    定理2:(varphi(p) = p - 1)
    (显然成立)


    定理3:(varphi(p^a) = p^a - p^{a - 1})
    证明代入到定理1即可。


    定理4:积性:如果(n)(m)互质,则(varphi(nm) = varphi(n) * varphi(m))
    证明也是用定理1。
    这样也可以推出它的性质。


    定理5:如果(n geqslant 2),则(varphi(n))是偶数。
    证明:(n = prod{{p_i}^{a_i}}),因为({p_i} ^ {a_i})互质,根据定理3和4可知,(varphi(n) = prod{{p_i} ^ {a_i} - {p_i} ^ {a_i - 1}})。考虑(p_i),如果(p_i = 2),那么({p_i} ^ {a_i} - {p_i} ^ {a_i - 1})显然是偶数;如果(p_i eq 2),则(p_i)一定是奇数,所以({p_i} ^ {a_i})({p_i} ^ {a_i - 1})也都是奇数,相减就是偶数。偶数相乘,结果是偶数。证毕。


    定理6:(sum_{d mid n}{varphi(d) = n})
    证明:首先令(f(x) = sum_{d mid x}{varphi(d)}),则(f(x))是一个积性函数(但这一步我不会证)。
    那么(f(n) = prod{f({p_i} ^ {a_i})})。而(f({p_i} ^ {a_i}) = varphi({p_i} ^ 0) + varphi({p_i} ^ 1) + {varphi(p_i) ^ 2} ldots varphi({p_i} ^ {a_i}) = 1 + {p_i} - 1 + {p_i} ^ 2 - {p_i} + {p_i} ^ 3 - {p_i} ^ 2 ldots {p _i} ^ {a_i} - {p_i} ^ {a_i - 1} = {p_i} ^ {a _i})
    所以(f(n) = prod{{p_i} ^ {a_i}} = n)


    然后就引出了欧拉定理:
    对于任何两个互质的正整数(a, m(m geqslant 2))(a ^ {varphi(m)}equiv 1 (mod) (m))
    (不会证)
    当m是质数的时候,就有费马小定理:(a ^ {m - 1} equiv 1 (mod m))。最常见的应用是用费马小定理求逆元:(a^{-1} equiv a ^ {m - 2} (mod m))


    小补充:最近又看了看欧拉定理,第一反应的公式是(varphi(n) = n - (a_1 + 1) * (a_2 + 1) * ldots * (a_m + 1)),也不知道我这个对不对,反正没看人用过这个……

  • 相关阅读:
    《拼音字母》 蓝桥杯复试试题
    ZT:成熟是一种明亮而不刺眼的光辉
    如何Enable FireFox里的Java Plugin
    将App发布到WasLiberty的较稳妥方法
    记一个发HTML格式邮件的问题
    有些工作,做一辈子也不会成功
    论本事
    又一次遇到Data truncation: Data too longData truncation: Data too long问题
    查看Linux上MySQL版本信息
    很多人终身一事无成
  • 原文地址:https://www.cnblogs.com/mrclr/p/9958572.html
Copyright © 2011-2022 走看看