首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

序列周期性与魔术(一)——数学里的函数周期性

在我们前面的文章中,介绍过函数的对称性,可逆性,常函数等内容。可以说,以函数关系为核心,可以建模很多现实生活中的事和魔术过程。接下来,我们进入另一个经典性质——周期性,内容较多,故单独成篇。

周期性是函数的重要性质,而序列这种离散形式的周期性又更加灵活。扑克牌叠天然的模型就是有限长度离散序列,虽然一副扑克牌里没有两张一模一样的,但是点数,花色之类的性质仍然可以构造出周期性的组成。这个系列我们先从数学角度认识一下周期性,再看看魔术师是怎么把这一性质应用在魔术中的。

数学里的函数周期性

定义:存在一非零常数T,使得f(x + T) = f(x)对任意定义域内的x成立,那么f(x)是一个周期函数,最小的T称为最小周期。

直观理解:如果把函数定义域放在实数集内,看起来就是连续序列上图形按照一定周期长度重复出现,或者从生成的角度看,是其任意基础周期通过平移(延拓)而无限生成的函数,所以有时候也叫循环。

图1 周期性的三角函数

深入理解:条件的恒等式成立的前提则是x + T必须随x一起在定义域内,即,定义域对g(x) = x + T至少要有封闭性,且T在这个函数对应的性质下,等于幺元,不改变此性质。看起来这就是在讲,在某个基础的X集合上(可以是一段连续实数子集,几个离散整数或任意元素),任一x都可以任意次执行+T操作,封闭,且保持某种性质不变,即对+T操作的对称性。这里举三个例子:

1. 比如sin(x + 2pi) = sin(x),是实数+ 2pi操作在sin(x)性质下的不变性,x可以取[0, 2pi];

2. (x + n)mod n = x mod n,是整数模n加法上加n的操作的不变性;

3. 又如一个等边三角形围绕中心转120度看起来没有什么区别,是三角形这个对象,在旋转120度这个操作下的不变性。

以上“不变性”都可以叫“对称性”,即某性质不随某变化而改变。

本质上,周期函可以理解为无限循环;从生成的角度,可以是一个基础集合上的延拓;从更抽象的层面,它是全体元素群内一个操作的运算性质,使得这样的操作不改变任何一个元素的某个性质值。而群内所有操作,都不改变这个函数一个周期内的值域有重集(依然取遍一个周期内的值),只是一次置换罢了,即任何一个群内操作,对全体元素执行以后前后集合不改变。。这种置换,我们在实数集合上一般通过相位的不同来表达,在离散整数集合上的加法的话,那就是轮换。而循环的结果是周期性的表象,仅仅是在坐标轴上展开的表示而已。

之前有过一个系列讲《循环、递归与魔术(三)——再谈循环的魔术逻辑与欣赏》里提到过循环,那里是从纯数学结构到艺术表达的角度来说的,而今天,我们就彻底分析分析循环背后的周期性到底有着怎样的数学秘密。

掌握一个周期函数,本质上就两个性质,一个是其作为周期的基础函数关系集,另一个,是其最小周期函数(一种有封闭性的加法),能无限地构造新的等效元素,却在性质上保持一致。接下来,我们看看扑克牌的例子。

扑克牌序列上的全周期性

扑克牌函数是一个典型的有限长离散序列,是有限的离散连续递增索引1:n到唯一的扑克牌值的对应关系。一般理解来看,一副完整的随机洗乱的牌,是没有周期性的。

真的是这样吗?

序列上的周期性和最常见的实数集上的周期性相似地方在于,这个+T操作的实质是类似的。后者是在数轴上移动一定长度,而前者是在序列上移动若干位置,也就是若干张牌。但是比较一下就会发现,这种有限长序列在移动位置这件事上天然就不能作为最小周期函数来用,因为序列不是无限的,会移出定义域去!

直觉上我们知道,移到尾巴上就可以又从头开始了嘛,这无限延拓的周期性不就续上了?

看起来就是这样的:

图2 首尾相接的扑克牌叠

这里我们直接把扑克牌叠看成一个圈,或者正n边形的边/顶点,索引只是其位置的编号,那么从第(n - 1)个位置跳转到0个位置需要的操作和任何m(0 <=m <= n - 2)跳转到m + 1所需要的操作就是一样的了,自然这个序列上移动位置的操作就可以无限进行了。这时候,扑克牌看起来,第一张和最后一张的关系,和牌叠中任何两张本就相邻的牌的关系是一样的,就是相邻,这种数据结构,在计算机里,也叫循环队列。

好了,直觉的问题解决了,现在我们把它抽象成数学过程,我们把扑克牌序列上的+T操作依照上面的描述定义为:依次在索引序列上递增,当到达(n - 1)时,下一个位置视作0。显然那,当T = n = 54的时候,索引会回到原来的值,也就是满足了周期性关于操作不变性的条件。

等等,这个操作不就是模加法吗?

别说你不会,你在算9点的6个小时以后是几点的时候,用的就是模加法!

它和一个正n边形关于旋转2pi / n角度的操作满足的性质是一样的!

它和扑克牌叠上每次到头就回到起点的循环着平移索引位置满足的性质也是一样的!

不信你看,时钟的那个圈,正n边形的一圈,和头尾相接的一圈牌,不就是同一种结构么!

这些具有一样结构的对象,互相称为同构,把他们一起抽象出来,就构成了数学结构!

这里他们共同的数学结构是大名鼎鼎,也是最基础的群——循环群(Cyclic Group),记作Cn,n即为我们的周期:

Cn = <x | x ^ n = e>

其对应的元素集合为:

Sn = {x ^ i | i in 0:(n - 1)}

熟悉群论的朋友可能已经发现了,离散周期函数就是循环群Cn内从某个元素开始,操作基础操作n次的n到其结果的映射。

所以,一副完整的扑克牌叠的每个位置的牌点索引(或者反过来每个牌点索引的位置),也就是这个排列,在位置的平移操作下,构成一个C54群,仅有54个可能结果。

那周期性在哪呢?周期性就是这个群内元素所满足的性质x ^ n = e,即在移动n = 54个位置以后,回到等效的原位置。

所以我们说扑克牌叠的周期性,并不是指的序列索引到值的函数的周期性,因为是个有限长序列,而周期性函数必然是个定义域无穷大的函数。但是把扑克牌摆成收尾相接的样子,或者默认索引到最后一张的下一张就是第一张的话,那么从某个起点开始,平移位置数到牌叠的索引值(或者就是扑克牌的值)这个函数显然就是周期函数了,这才是扑克牌叠的周期性所在,本质上其实是在牌叠的实际结构条件下,抽象出了索引集合和下一张的操作,刚好构成了循环群。而前面说的周期函数的两个重要性质,一个是周期,其实就是循环群内的元素全集,另一个最小周期函数,其实就对应循环群的基本性质:C ^ n = e。

到这里还有一个问题,这个位置索引的平移,和哪个扑克牌操作能对应呢?

卖个关子,我们下回分解。

不过,先放两个和序列周期性有关的魔术,后面会有相应讲解。

视频1 五张牌的猜想

https://v.qq.com/x/page/r08203rmmhs.html

视频2 同花or金刚

https://v.qq.com/x/page/v3055gqw92y.html

下一篇
举报
领券