15 Mar

不求珍馐百味,但愿开水白菜

开水白菜 (1)

开水白菜 (1)

如果要用做菜来比喻人生的话,我觉得,人生最高的境界之一便是开水白菜。

点击阅读全文...

16 Aug

从费马大定理谈起(三):高斯整数

为了拓展整数的概念,我们需要了解关于环和域这两个代数结构,这些知识在网上或者相应的抽象代数教程中都会有。抽象地提出这两个代数结构,是为了一般地处理不同的数环、数域中的性质。在自然数集$\mathbb{N}$中,可以很方便定义和比较两个数字的大小,并且任意一个自然数的子集,都存在最小元素,这两点综合起来,我们就说$\mathbb{N}$是“良序”的(这也是数学归纳法的基础)。在良序的结构中,很多性质的证明变得很简单,比如算术基本定理。然而,一般的数环、数域并没有这样的“良序”,比如任意两个复数就不能比较大小。因此,一般的、不基于良序的思想就显得更为重要了。

环和域

关于环(Ring)的定义,可以参考维基百科上面的“环(代数)”条目。简单来说,环指的是这样一个集合,它的元素之间可以进行加法和乘法,并满足一些必要的性质,比如运算封闭性、加法可交换性等。而数论中大多数情况下研究的是数环,它指的是集合是数集的情况,并且通常来说,元素间的加法和乘法就是普通的数的加法和乘法。比如所有的实整数就构成一个数环$\mathbb{Z}$,这个数环是无限的;所有的偶整数也构成一个数环$2\mathbb{Z}$;对于素数$p$,在模$p$之下,数集$\{0,1,2,\dots,p-1\}$也构成了一个环,更特别的,它还是一个数域。

点击阅读全文...

18 Mar

倒立单摆之分离频率

Mathieu方程

在文章《有质动力:倒立单摆的稳定性》中,我们分析了通过高频低幅振荡来使得倒立单摆稳定的可能性,并且得出了运动方程
$$l\ddot{\theta}+[h_0 \omega^2 \cos(\omega t)-g]\sin\theta=0$$

由此对单摆频率的下限提出了要求$\omega \gg \sqrt{\frac{g}{h_0}}$。然而,那个下限只不过是必要的,却不是充分的。如果要完整地分析该单摆的运动方程,最理想的方法当然是写出上述常微分方程的解析解。不过很遗憾,我们并没有办法做到这一点。我们只能够采取各种近似方法来求解。近似方法一般指数值计算方法,然后笔者偏爱的是解析方法,也就是说,即使是近似解,也希望能够求出近似的解析解。

点击阅读全文...

19 Mar

一本对称闯物理:相对论力学(一)

简单说说

《可畏的对称》

《可畏的对称》

笔者最近陶醉于从李对称的角度来理解力学和场论,并且计算得到一些比较有趣的结果,遂想在此与大家分享。我发现,仅仅需要一个描述对称的无穷小生成元和一些最基本的假设,几乎就可以完成地推导出整个相对论力学来,甚至推导出整个(经典)场论理论来。这确实是不可思议的,我现在能基本体会到当年徐一鸿大师写的《可畏的对称》的含义了。对称的威力如此之大,以至于我们真的不得不敬畏它。而在构思本文题目的时候,我也曾想到过用“可畏的对称”为题,但不免有抄袭和老套之嫌。后来想到曾有一部漫画叫《一本漫画闯天涯》,遂将“漫画”改成“对称”,“天涯”改成“物理”,似乎也能表达我对“对称”的感觉。

对称就是在某种变换下保持不变的性质,比如狭义相对论要求所有物理定律在所有惯性系中保持不变,这相对于要求描述物理定律的方程在匀速运动的坐标变换下保持不变,结合光速不变的要求,我们就可以推导出洛伦兹变换,从而完成地描述了狭义相对论里边的对称。然而,并不是任何时候都可以想推导洛伦兹变换那样,能够把一个完整的变换推导出来的。幸好,李对称的不需要完整的对称描述,它只需要“无穷小变换”(意味着我们可以忽略掉高阶项),对应地产生一个“无穷小生成元”,用这个无穷小生成元,就足以完整构建出我们所需要的物理来。这种“无穷小”决定“广泛”、“局部”决定“全局”的奇妙至今仍让我觉得不可思议。(关于李对称、无穷小生成元的基本概念,不妨先阅读:《求解微分方程的李对称方法》

点击阅读全文...

9 Apr

趣题:与橡皮绳赛跑的蚂蚁

这是一道流传很广的趣题,也许不少读者已经听说过它,然而广为人知却不一定“广为人‘解’”,在此把题目给出来,写下我自己的答案,并且谈谈我对答案的看法。题目是这样子的:

与橡皮绳赛跑的蚂蚁
一只蚂蚁沿着一条长$l=100$米的橡皮绳以每秒1厘米的匀速由一端向另一端爬行。每过1秒钟,橡皮绳就拉长100米,比如10秒后,橡皮绳就伸长了1000米。假设橡皮绳可以任意拉长,并且拉伸是均匀的。蚂蚁也会不知疲倦的一直往前爬,在绳子均匀拉长时,蚂蚁的位置理所当然的相对匀速向前挪动,问,如此下去,蚂蚁能否最终爬到橡皮绳的另一端?

点击阅读全文...

11 Jun

用PyPy提高Python脚本执行效率

《两百万前素数之和与前两百万素数之和》中,我们用Python求了前两百万的素数和以及两百万前的素数和,并且得到了在Python 3.3中的执行时间如下:

两百万前的素数之和:
142913828922
time: 2.4048174478605646

前两百万的素数之和:
31381137530481
time: 46.75734807838953

于是想办法提高python脚本的执行效率,我觉得在算法方面,优化空间已经比较小了,于是考虑执行器上的优化。在搜索的无意间我看到了一个名词——Psyco!这是python的一个外部模块,导入后可以加快.py脚本的执行。网上也有《用 Psyco 让 Python 运行得像 C一样快》、《利用 psyco 让 Python 程序执行更快》之类的文章,说明Psyco确实是一个可行的选择,于是就跃跃欲试了,后来了解到Psyco在2012年已经停止开发,只支持到Python 2.4版本,目前它由 PyPy所接替。于是我就下载了PyPy

点击阅读全文...

25 Mar

一本对称闯物理:相对论力学(二)

从这个系列的第一篇文章到本文,已经隔了好多天。其实本文的内容是跟第一篇的内容同时完成的,为什么这么久才更新呢?原因有二,其一是随着春天的到来人也开始懒起来了,颓废呀~;其二,我在思考着规范变换的问题。按照朗道《场论》的逻辑,发展完质点力学理论后,下一步就是发展场论,诸如电磁场、引力场等。但是场论中有个让我比较困惑的东西,即场论存在着“规范不变性”。按照一般观点,我们是将规范不变性看作是电磁场方程的一个结果,即推导出电磁场的方程后,“发现”它具有规范不变性。但是如果用本文的方法,即假定场有这种对称性,然后就可以构建出场方程了。可是,为什么场存在着规范不变性,我还未能思考清楚。据我阅读到的资料来看,这个不变性似乎跟广义不变性有关(电磁场也是,这似乎说明即使在平直时空的电磁场理论中也暗示了广义不变性?)。还有,似乎这个不变性需要在量子场论中才能得到比较满意的解释,可是这样的话,就离我还很远了。

好吧,我们还是先回到相对论力学的推导中。

“无”中生有

上一篇文章我们已经构建了相对论力学的无穷小生成元,并进行了延拓。我已经说过,仅需要无穷小的变换形式,就可以构建出完成的相对论力学定律出来(当然这需要一些比较“显然”的假设)。这是个几乎从“无”到有的过程,也是本文标题的含义所在。另一方面,这种从局部到整体的可能性,也给我们带来一些启示:假如方法是普适的,那么可以由此构造出我们需要的物理定律来,包括电磁场、引力场方程等。(当然,我离这个目标还有点远。)

点击阅读全文...

21 Apr

数独的自动推理

写在前面:作为离散数学的实验作业,我选择了研究数独。经过测试发现,数独的自动推理还不算难,我把两种常规的推理思路转化为了计算机代码,并结合了随机性推导,得到了一个解题能力还不错的数独程序。事实上,本文的程序还可以进一步优化,以得到更高能力的数独程序(只需要整理一下代码,加上几个循环和判断即可),但是我实在太懒,没有动力继续弄下去了,就这样先和大家分享吧。最后,笔者认为本文的算法是更接近我们的思维的算法。

数独简介

历史

相传数独源起于拉丁方阵(Latin Square),1970年代在美国发展,改名为数字拼图(Number Place)、之后流传至日本并发扬光大,以数学智力游戏智力拼图游戏发表。在1984年一本游戏杂志《パズル通信ニコリ》正式把它命名为数独,意思是“在每一格只有一个数字”。后来一位前任香港高等法院的新西兰籍法官高乐德(Wayne Gould)在1997年3月到日本东京旅游时,无意中发现了。他首先在英国的《泰晤士报》上发表,不久其他报纸也发表,很快便风靡全英国,之后他用了6年时间编写了电脑程式,并将它放在网站上,使这个游戏很快在全世界流行。

台湾于2005年5月由“中国时报”首度引进, 且每日连载, 亦造成很大的回响。台湾数独发展协会(Taiwan Sudoku Association, 简称 TSA)亦为世界解谜联盟会员。香港是在2005年7月30日由AM730在创刊时引入数独。中国大陆是在2007年2月28日正式引入数独。北京晚报智力休闲数独俱乐部(数独联盟前身)在新闻大厦举行加入世界谜题联合会的颁证仪式,成为世界谜题联合会的39个成员之一。(引用自“中文维基百科”: http://zh.wikipedia.org/wiki/数独

点击阅读全文...