• 唯一分解定理


    数论 -- 唯一分解定理(算数基本定理)

    定义:
    (来自百度百科) 任何一个大于1的整数N,都可以唯一分解成有限个质数的乘积 N=p1^a1*p2^a2*p3^a3*...*pn^an,这里
    p1<p2<p3<...<pn均为质数,ai均为正整数.
    这样的分解称为N的标准分解式.

    唯一分解定理的证明需要证明其存在性和唯一性

    待证命题:大于1的自然数必可写成质数的乘积。
    存在性证明:
    反证法:
    假设存在一个最小的不能表示成几个质数的乘积的数 n

    这里要知道:非空正整数集合存在最小元素。
    注意这个 n是在条件假设情况下最小的.

    非零自然数按照其可除性(能被两个不是自身的自然数整除)分为3类 质数,合数,1;
    首先n是大于1的,所以n只可能是质数或者合数,然而如果为质数,这显然是不可能的,
    因为在这种条件下,n可以表示成n^1的形式,符合唯一分解定理,所以n只能是合数,
    所以n一定可以表示成两个数相乘(合数定义) 令 n = a * b ,因为n是假设条件下最小的数,
    所以a可以表示成两个质数的乘积 a=x*y, b同理表示成b=l*r,显然x,y,l,r均为质数,所以
    n可以表示成n=x*y*l*r,也就是说假设不成立,所以大于1的自然数必可写成质数的乘积。


    唯一性的证明:

    非空正整数集合一定存在最小值。
    假设M的质因数分解并不是唯一的,且M为质因数分解并不是唯一的数中最小的:
    M=p1*p2*p3*...*px=t1*t2*t3*...*ty
    pi<=p(i+1) ti<=t(i+1)

    显然p1是不等于t1的,不然两边同时约去p1,就可以得到一个新的分解,那么p2是不等
    于t2的,同理,若两边同时约去就又得到一个新的分解,那么p3是不等于t3的,不然再次同
    时约去,等式就失去意义了,不妨假设p1<t1,现在用p1代替等式右边的t1就可以得到一个比M
    更小的数Q=p1*t2*t3*t4*...*ty; 令M'=M-Q;所以M'就存在两种表示方式
    M'=(p1*p2*p3*...*px)-(p1*t2*t3*...*ty)=p1*((p2*p2*...*px)-(t2*t3*...*ty))
    M'=(t1*t2*t3*...*ty)-(p1*t2*t3*...*ty)=(t1-p1)*(t2*t3*...*ty)
    因为M为质因数分解不唯一的正整数集合中最小的元素,所以M'的分解一定是唯一的,
    所以p1也应该出现在(t1-p1)*(t2*t3*...*ty)这个表达式中,因为p1<=t1,t1<=t2且t序列是一个
    非降的,所以所以p1一定不是t2到ty中的某个元素,即p1一定是出现在(t1-p1)中的,也就是说
    (t1-p1)/p1存在整数解,所以t1-1是一个正整数,显然如果(t1-p1)/p1存在正整数解,那么也就是说
    p1是t1的一个因子(可以这样理解: 原式=t1/p1-1,所以t1/p1也必须是一个整数),所以t1不是一个
    质数,与假设矛盾,也就是说质因数的分解是唯一存在的,得证。

    通过唯一分解定理同样可以证明很多好玩的东西
    证明根号2是无理数
    反证法:
    假设根号2 是一个有理数,也就是说它可以表示成q/p的形式,即(q/p)^2=2;
    将等式变换:
    q^2=2*p^2
    接下来要证明一个数的平方不可能是另一个数平方的两倍
    首先 q可以表示成几个质数的乘积的形式,那么q^2的质因子的个数一定为偶数,也就是降q的质因子
    的个数复制一份即q^2的质因子的个数,同理p的质因子的个数同样是偶数个,那么2*p^2的质因子的
    个数一定是奇数个,又因为q^2和2*p^2是同一个数,所以出现上述情况是不可能的,也就是说假设是
    不成立的,即2不可以表示成q/p的形式,即根号2是一个无理数。

    唯一分解定理的一个重要的推论是,如果质数p是ab的因子,那么p或者是a的因子,或者是b的因子。我们刚才在证明过程中也不自觉地用到了这个推论。证明方法很简单,假如a和b里面都不含p,把a和b各自分解开来再乘到一起,我们就得到了数ab的一个没有因子p的分解方式;而按照前面提到的试除法,ab是可以表示成p与另一些质数的乘积的,这违背了唯一分解定理。连续多次使用该推论,我们可以很快将推论推广到多个数的情形。 事实上,假设这个推论成立,我们也能很快反过来推出唯一分解定理:写出N的两种质因数分解,在前一种分解中任取一个因子,它必然会在后一种分解方法中出现;把它们约掉之后结论继续适用,不断进行该操作直到最终两边都只余下一个1。这一系列操作说明了,两种分解方法实际上是相同的。我们看到,唯一分解定理和它的推论实际上是等价的。如果我们能够绕过唯一分解定理,用另一种方法证出这个推论,我们也就相当于找到了唯一分解定理的另一个证明。而事实上,运用扩展的辗转相除算法,我们可以飞快地完成推论的证明。我们将说明,如果质数p能整除ab,但不整除a,那它一定是b的约数。 质数p不能整除a,告诉我们a和p互质,于是存在整数k和l使得ka + lp = 1。等式两边同时乘以b,我们有kab + lpb = b。而ab能被p整除,也即存在整数r使得ab=pr。那么,kpr + lpb = p(kr + lb) = b,我们立即看出p是b的一个约数。

  • 相关阅读:
    OpenCv 人脸识别 基础
    C++ 0x std::async 的应用
    C++ 0x 使用condition_variable 与 Mutex 同步两个线程
    Unity C# 调用 C++ DLL 并在 DLL 中调用 C# 的回调函数
    C++ 11 中的 Lambda 表达式的使用
    DirectShow 制作在Unity3D中可以设置进度的视频播放插件
    Async/Await 如何通过同步的方式实现异步
    React Native 开源项目汇总
    ES6 Promise的理解与简单实现(链接)
    深刻理解BFC(链接)
  • 原文地址:https://www.cnblogs.com/shandongs1/p/7759748.html
Copyright © 2020-2023  润新知