数学与泛型编程 javascript:void(0)
数的认知(3)——加减乘除、群环域 javascript:void(0)
一,群
在各种代数结构中,首先出现的一种关键结构叫做群(group),它是由法国数学家埃瓦里斯特·伽罗瓦(évariste Galois)于1832年发现的。
定义6.1 群是具备两种特定运算及一种特定常量,并遵循三条特定公理的集合。这种集合必须定义有下列两种运算及一种常量:
并遵循下列三条公理:
常量e叫做单位元素(identity element,有时写为id),在与乘法有关的场合中经常写成1。x-1叫做x的逆(inverse)
群运算不一定要具备可交换性(commutativity,它的意思是:任意x,y:x°y=y°x
群的例子:
- 整数加法群:群元素是整数,群运算是加法。
- ·由小于7的正整数通过相乘并对7求余(模7的乘法)而形成的乘法群:群元素是1至6这六个正整数,群运算是模7运算下的乘法。
- ·由洗牌方式所形成的群:群元素是指各种洗牌的方式,群运算是对两种洗牌方式所做的合成。
- ·由带有实系数的可逆矩阵(也就是行列式不为0的矩阵)所形成的乘法群:群元素是矩阵,群运算是矩阵乘法。
- ·由平面的旋转方式所形成的群:群元素是指平面围绕原点的各种旋转方式,群运算是对两种旋转方式所做的合成。
生成元集
自由生成元集
自由群
如果群G有一个自由生成元集,则称G是自由群。
感谢知乎 https://zhuanlan.zhihu.com/p/79479443">https://zhuanlan.zhihu.com/p/79479443
二,阿贝尔群
阿贝尔群(abelian group),是其群运算具备可交换性的群。
有一种阿贝尔群叫做加法群
三,幺半群
把消去原理去掉,满足结合性公理、单位元素公理的集合是幺半群。
幺半群的例子:
- 整数加法幺半群:元素是整数,运算是加法。
- 整数乘法幺半群:元素是整数,运算是乘法。
- 由字符串所构成的幺半群:幺半群的元素是这些字符串,幺半群的运算是字符串拼接操作,单位元素是空字符串。
自由幺半群
有自由生成元集的幺半群是自由幺半群
自由幺半群与字符串拼接幺半群(自由生成元集是字母表)同构。
四,半群
满足结合性公理的集合是半群。
半群的例子:
- 由正整数所构成的加法半群:半群的元素是这些正整数,半群的运算是加法。
- 由偶整数所构成的乘法半群:半群的元素是这些偶整数,半群的运算是乘法。
自由半群
有自由生成元集的半群是自由半群
小结:
五,置换(群变换)
1,群的阶
如果群的元素数量n>0,那么n就叫做群的阶(order)。如果群有无限多个元素,那么它的阶就是无限。
2,元素的阶
3,群的性质
- 群变换是一一对应的
- 每个元素都有唯一的逆元素
- 两元素之积的逆元素,等于其各自的逆元素换位后所得之积
- 逆元素的幂等于幂的逆元素
- 有限群的每个元素都具备有限的阶
- 如果a是群中的n阶元素,那么a^-1=a^(n-1)
六,子群
如果群G的子集H也是一个群,且G和H是同一个运算,那么H就是G的子群。
对于整数加法群来说,由其中的偶数所形成的加法群就是一个子群;而由其中可以为5所整除的数所形成的加法群则是另外一个子群。
基本上每一个群都至少会有两个子群,一个是该群本身,另一个是仅由单位元素e所构成的群。这两个子群称为平凡子群。
只有一个群的子群数量是小于2的,这个群就是仅包含单位元素的群。
七,循环群
如果有限群中有这样的元素a,使得对任意b,都存在n使得b=a^n,那么该群就是循环群。
换句话说,循环群里的每一个元素b都可以通过对特定元素a取不同次数的幂而得到。元素a称为群的生成元(generator),同一个群里面可能会有多个生成元。
循环群的任何一个子群,都同样是循环群。
循环群都是阿贝尔群。
对有限群中的任何一个给定元素取幂,这些幂值可以构成该群的子群。换句话说,有限群中的每个元素,都包含在由该元素所生成的循环子群中。
八,陪集
1,陪集
如果G是群,且H是G的子群,那么对于G中的任何一个元素a(a∈G)来说,H在G中关于a的左陪集aH就是:
换句话说,陪集aH是由G中可以通过a与H里的元素分别相乘而获得的那些元素,所构成的集合,右陪集的概念同理。
在整数加法群Z中,所有可以为4所整除的数,构成该群的一个子群4Z。4Z这个子群,在整数加法群Z中,有四个彼此不相交的陪集,它们分别是4n、4n+1、4n+2及4n+3。
由于整数加法具备交换性,因此左陪集与右陪集是一样的。
2,陪集的大小
对于有限群G的任何一个子群H来说,其陪集aH中的元素个数,都与该子群H相同。
3,陪集的完全覆盖性
群G中的每个元素a,都能在其子群H的某个陪集中找到。
4,陪集的分割性
2个陪集之间要么完全不相交,要么完全相同。
5,拉格朗日定理
有限群G的阶,能够为其子群H的阶所整除。
推论:
有限群的阶,可以为其中任何一个元素的阶所整除。
如果群G的阶是n,那么对于群中的元素a来说,a^n=e。
九,理论、模型
1,完备理论
对于任何一条命题来说,如果该命题或其否定命题均位于理论中,那么这套理论就是完备的(complete)。
2,一致性理论
对于任何一条命题来说,如果该命题及其否定命题不会同时出现在理论中,那么这套理论就是一致的(consistent)。
3,模型
对于集合里的元素来说,如果涉及这些元素的所有运算都在理论系统中有所定义,并且涉及这些元素的所有命题也都在理论系统中成立,那么该集合就称为这套理论系统的模型。
4,同构
如果两模型的元素之间有一一对应的映射关系,使得无论是先执行前者所定义的运算,然后再将其映射到后者,还是先对前者做映射,然后再执行后者所定义的运算,都能够得到同样的结果,那么,这两个模型就是同构的。
比方说,在自然数加法模型与偶自然数加法模型之间,就有“乘以2”这样一种一一对应的映射关系。如果两个自然数先进行运算(也就是相加),然后再做映射(也就是乘以2),那么其结果,与先做映射(也就是分别乘以2),然后再进行运算(也就是相加),是一样的。
再比如,这两个模型都是阶为4的循环群:第一个叫做Z4+,是由小于4的非负整数通过相加并对4求余所形成的加法群(该群中的元素是{0,1,2,3})第二个叫做Z5*是由小于5的正整数通过相乘并对5求余而形成的乘法群(该群中的元素是{1,2,3,4}),那么Z4+和Z5*就是同构的。
反过来,Z4+和克莱因群不是同构的,Z5*和克莱因群也不是同构的。
其中,克莱因群是它是最小的非循环群,有4个元素,如由小于8且与之互质的正整数,通过相乘并对8求余而形成的乘法群(素是{1,3,5,7})
克莱因群的另外一个例子:由从矩形到其自身的等距变换方式所构成的群,群的元素是四种变换方式:恒等变换、左右对称、上下对称、旋转180度。
5,范畴理论
在某个(一致的)理论中,如果其所有的模型都是同构的,那么该理论就称为范畴理论(categorical theory)或单价理论(univalent theory)
在很长一段时间里面,业界都认为:只有范畴理论才能够很好地处理编程问题。
然而,STL之所以能够变得通用,恰恰是因为迭代器这些概念没有具备过于明确的定义。尽管链表和数组从计算的角度来看并不同构,但是很多STL算法都能够通过适当的迭代器,来同时处理这两种数据结构。
所需的公理数越少,实现的灵活度就越大。