欧几里得证明$\sqrt{2}$是无理数
选自《费马大定理:一个困惑了世间智者358年的谜》,有少许改动。
原译者:薛密
\(\sqrt{2}\)是无理数,即不能写成一个分数。欧几里得以反证法证明此结论。第一步是假定相反的事实是真的,即\(\sqrt{2}\)可以写成某个未知的分数。用\(\frac{p}{q}\) 来代表这个假设的分数,其中 \(p\) 和 \(q\) 是两个整数。
在开始证明本身之前,需要对分数和偶数的某些性质有个基本的了解。
(1) 如果任取一个整数并且用2去乘它,那么得到的新数一定是偶数。这基本上就是偶数的定义。
(2) 如果已知一个整数的平方是偶数,那么这个整数本身一定是偶数。
(3) 最后,分数可以简化。例如分数\(\frac{16}{24}\),用2除分子分母得\(\frac{8}{12}\),两个分数\(\frac{16}{24}\)与\(\frac{8}{12}\)是相等的,进一步,\(\frac{8}{12}\)与\(\frac{4}{6}\) 是相等的,而\(\frac{4}{6}\) 又与\(\frac{2}{3}\)是相等的。然而,\(\frac{2}{3}\)不能再化简,因为2 和3没有公因数。不可能将一个分数永远不断地简化。
欧几里得相信\(\sqrt{2}\)不可能写成一个分数。然而,由于他采用反证法,所以他先假定
\begin{equation*}\sqrt{2}=\frac{p}{q}\end{equation*}
将两边平方,得
\begin{equation*}2=\frac{p^2}{q^2}\end{equation*}
即
\begin{equation*}2q^2=p^2\end{equation*}
现在根据第(1) 点我们知道\(p^2\) 必定是偶数。此外,根据第(2) 点我们知道 \(p\) 本身也必须是偶数。但是,如果 \(p\) 是偶数,那么它可以写成\(2m\),其中\(m\) 是某个别的整数。这是从第(1) 点可以得出的结论。将这再代回到等式中,我们得到
\begin{equation*}2q^2=p^2=(2m)^2=4m^2\end{equation*}
两边除以2,得
\begin{equation*}q^2=2m^2\end{equation*}
但是根据我们前面用过的同样的论证,我们知道 \(q^2\) 必须是偶数,因而 \(q\) 本身必须是偶数。如果确实是这样,那么 \(q\) 可以写成\(2n\),其中 \(n\) 是某个别的整数。如果我们回到开始的地方,那么
\begin{equation*}\sqrt{2}=\frac{p}{q}=\frac{2m}{2n}=\frac{m}{n}\end{equation*}
现在我们得到一个新的分数\(\frac{m}{n}\),它比\(\frac{p}{q}\)更简单。
然而,我们发现对\(\frac{m}{n}\)我们可以精确地重复以上同一个过程,在结束时我们将产生一个更简单的分数,比方说\(\frac{g}{h}\)。然后又可以对这个分数再重复相同的过程,而新的更为简单的分数,比方说\(\frac{e}{f}\)将是。我们可以对它再作同样的处理,并且一次次地重复这个过程,不会结束。但是根据第(3) 点我们知道任何分数不可能永远简化下去,总是必须有一个最简单的分数存在,而我们最初假定的分数\(\frac{p}{q}\) 似乎不服从这条法则。于是,我们可以有正当的理由说我们得出了矛盾。如果\(\sqrt{2}\)可以写成为一个分数,其结果将是不合理的,所以,说\(\sqrt{2}\)不可能写成一个分数是对的。于是,\(\sqrt{2}\)是一个无理数。
欧几里得证明$\sqrt{2}$是无理数的更多相关文章
- <数论相关>欧几里得与拓展欧几里得证明及应用
欧几里得算法 欧几里得算法的复杂度为O(log(n)),是一个非常高效的求最大公约数算法. 在这里不证明欧几里得算法的复杂度,有兴趣的可以访问以下链接:http://blog.sina.com.cn/ ...
- BZOJ-2242 计算器 快速幂+拓展欧几里得+BSGS(数论三合一)
污污污污 2242: [SDOI2011]计算器 Time Limit: 10 Sec Memory Limit: 512 MB Submit: 2312 Solved: 917 [Submit][S ...
- POJ2677 Tour(DP+双调欧几里得旅行商问题)
Tour Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3929 Accepted: 1761 Description ...
- URAL1204. Idempotents(扩展欧几里得)
1204 大体推推 会出来这个式子 x(x-1) = k*n;n = p*q ;x(x-1)%(p*q)==0; 因为p,q都为素数 那也就是说x和x-1中必定包含这两个数 而且一个里面只能有一个 不 ...
- 欧几里得旅行商问题 java与c++实现
双调欧几里得旅行商问题是一个经典动态规划问题.<算法导论(第二版)>思考题15-1 旅行商问题描述:平面上n个点,确定一条连接各点的最短闭合旅程.这个解的一般形式为NP的(在多项式时间内可 ...
- [POJ1845&POJ1061]扩展欧几里得应用两例
扩展欧几里得是用于求解不定方程.线性同余方程和乘法逆元的常用算法. 下面是代码: function Euclid(a,b:int64;var x,y:int64):int64; var t:int64 ...
- 【bzoj2242】: [SDOI2011]计算器 数论-快速幂-扩展欧几里得-BSGS
[bzoj2242]: [SDOI2011]计算器 1.快速幂 2.扩展欧几里得(费马小定理) 3.BSGS /* http://www.cnblogs.com/karl07/ */ #include ...
- bzoj 2242: [SDOI2011]计算器【扩展欧几里得+快速幂+BSGS】
第一问快速幂板子 第二问把式子转化为\( xy\equiv Z(mod P)\rightarrow xy+bP=z \),然后扩展欧几里得 第三问BSGS板子 #include<iostream ...
- poj 1845 【数论:逆元,二分(乘法),拓展欧几里得,费马小定理】
POJ 1845 题意不说了,网上一大堆.此题做了一天,必须要整理一下了. 刚开始用费马小定理做,WA.(poj敢说我代码WA???)(以下代码其实都不严谨,按照数据要求A是可以等于0的,那么结果自然 ...
随机推荐
- Oracle 应用于.NET平台
1. 回顾ADO.NET ADO.NET是一组用于和数据源进行交互的面向对象类库集,它存在于.Net Framework中.通常情况下,数据源可以是各种类型的数据库,利用ADO.NET可以访问目前几乎 ...
- TypeScript Interface(接口)
类型检查专注于解析值所具有的"形态",这是TypeScript的核心原则之一.这个有时候被称为"duck typing"或者"structural s ...
- hdu 2034 - 集合操作
题意:集合A,B,计算集合差A-B(求只在集合A内的数) 解法: 选用STL内的集合set 1.建立set 1: #include<set> 2: 3: set<int> ...
- 【Phylab2.0】Alpha版本发布说明
新版本特性 更多的实验 Part Phylab2.0[Alpha] Phylab1.0 1011 1010113 缺失 1011 1010212 缺失 1021 1020113 1021 102021 ...
- 网络存储(三)之ISCSI搭建的入门
搭建iscsi 我们就拿两台linux服务器来做吧, 服务器系统均为CentOs6.6 64位的,信息如下 IP 安装的软件 192.168.22.142 iscsi target端:scsi-tar ...
- js获取当前域名及获取页面完整地址并做判断
<script language="javascript"> //获取域名 hostName = window.location.host; host2=documen ...
- [Redis]通过代码配置Redis
查看了文档https://azure.microsoft.com/en-us/documentation/articles/cache-how-to-scale/,发现可以使用代码来配置Redis,所 ...
- Java Native Interface Specification
http://docs.oracle.com/javase/6/docs/technotes/guides/jni/spec/jniTOC.html http://www.ibm.com/develo ...
- CSS 简介
CSS 简介 需要具备的基础知识 在继续学习之前,你需要对下面的知识有基本的了解: HTML XHTML CSS 概述 CSS 指层叠样式表 (Cascading Style Sheets) 样式定义 ...
- verilog阻塞与非阻塞的初步理解(一)
通过两个模块来区别两者.测试平台:Modelsim altera 6.5b 阻塞模块: module blocking(clk,a,b,c); :] a; input clk; :] b,c; :] ...