群论 - Group Theory
群的定义
若非空集合\(G\)和定义在\(G\)上的二元运算\(⋅\)构成的代数结构\((G,⋅)\),满足:
- 封闭性:\(\forall a,b\in G\),有\(a⋅b\in G\)。
- 结合律:\(\forall a,b,c\in G\),有\((a⋅b)⋅c=a⋅(b⋅c)\)。
- 单位元:\(\exists e\in G\),满足\(\forall a\in G\)有\(a⋅e=a\)。
- 逆元:\(\forall a\in G\),\(\exists b\in G\)使得\(a⋅b=e\),记\(a^{-1}=b\)。
则代数结构\((G,⋅)\)是一个群(group)。
常见的群有:整数、有理理数、实数加法群;模\(n\)意义下的加法群;模\(n\)意义下与\(n\)互质的数构成的乘法群;置换群,群的元素是一个双射\(f\),运算为映射的复合。
拉格朗日定理
对于群\((G,⋅)\),若有\(G'\subset G\)且\((G',⋅)\)也是群,则有\(|G|\)是\(|G'|\)的倍数。
证明:
记\(G_a\)表示集合\(G\)的陪集\(\{x⋅a|x\in G\}\),那么易知\(|G_a|=|G|\)。
对于\(a,b\in G\),若有\(G'_a\cap G'_b \neq \emptyset\),则\(\exists x,y\in G'\)满足\(x⋅a=y⋅b ⇔ a=x^{-1}⋅y⋅b\)。
那么\(\forall z\in G'\),有\(z⋅a=z⋅(x^{-1}⋅y⋅b)=(z⋅x^{-1}⋅y)⋅b\)。易知\(z⋅x^{-1}⋅y \in G'\),所以\(G'_a\)中的每一个元素都存在于\(G'_b\)中,即\(G'_a=G'_b\)。
于是可知\(G'\)的陪集之间只有两种关系,互不相交或完全相同。而由于\(e\in G'\),所以\(G'\)的所有陪集的并就是\(G\)。又由于陪集的大小等于原集合,所以\(|G|\)是\(|G'|\)的倍数。
由拉格朗日定理可以推出欧拉定理\(a^{\varphi(m)} \equiv 1 \pmod m\)。
证明:
设集合\(S=\{a_1,a_2,...,a_{\varphi(n)}\}\),其中\(gcd(a_i,n)=1\)。\(S\)与模乘法形成的代数结构\((S,\times)\)是群。
那么设\(S_i=\{1,a_i,a_i^2,a_i^3...\}\),易知\((S_i,\times)\)是\((S,\times)\)的子群,即\(|S_i||\varphi(n)\)。而\(a_i^{|S_i|}\equiv 1\),所以\(a_i^{\varphi(n)}\equiv 1\)。
Burnside引理
如果对于\(x,y\in M\),\(∃f\in G\)使得\(f(x)=y\),那我们就称\(x\)和\(y\)是本质相同的。定义集合\(M\)关于置换群\(G\)的轨道数为\(M\)中本质不同的元素个数。
若对于\(x\in M\)和置换\(f\)有\(f(x)=x\),则称\(x\)是\(f\)的一个不动点。
集合\(M\)关于置换群\(G\)的轨道数,等于\(G\)中每个置换下不动点的个数的算术平均数。
Polya定理
每一个置换都可以表示成若干个轮换。轮换中的元素互相交换且不影响该轮换外的元素。例如\(f=\begin{pmatrix}1&2&3&4&5&6\\2&1&4&6&5&3\end{pmatrix}\)就是\(\{1,2\},\{3,4,6\},\{5\}\)的轮换,其轮换数为\(3\)。记\(c(f)\)为置换\(f\)的轮换数。
设\(G\)是\(n\)个对象的一个置换群,用\(m\)种颜色为这\(n\)个对象上色,则本质不同的染色方案数为\(\dfrac{\sum_{f\in G}m^{c(f)}}{|G|}\)。
其实Polya定理就相当于说置换\(f\)的不动点个数为\(m^{c(f)}\)。因为每个轮换必须填相同颜色才能在经过\(f\)后保持不变,所以不动点个数为\(m^{c(f)}\)。
群论 - Group Theory的更多相关文章
- Mathematics for Computer Graphics数学在计算机图形学中的应用 [转]
最近严重感觉到数学知识的不足! http://bbs.gameres.com/showthread.asp?threadid=10509 [译]Mathematics for Computer Gra ...
- How to do Mathematics
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:匿名用户链接:http://www.zhihu.com/question/30087053/answer/47815698来源 ...
- Mathematics for Computer Graphics
Mathematics for Computer Graphics 最近严重感觉到数学知识的不足! http://bbs.gameres.com/showthread.asp?threadid=105 ...
- 采用梯度下降优化器(Gradient Descent optimizer)结合禁忌搜索(Tabu Search)求解矩阵的全部特征值和特征向量
[前言] 对于矩阵(Matrix)的特征值(Eigens)求解,采用数值分析(Number Analysis)的方法有一些,我熟知的是针对实对称矩阵(Real Symmetric Matrix)的特征 ...
- MIT一牛人对数学在机器学习中的作用给的评述
MIT一牛人对数学在机器学习中的作用给的评述 转载自http://my.oschina.net/feedao/blog/52252,不过这个链接也是转载的,出处已经无从考证了. 感觉数学似乎总是不 ...
- A Survey of Model Compression and Acceleration for Deep Neural Network时s
A Survey of Model Compression and Acceleration for Deep Neural Network时s 本文全面概述了深度神经网络的压缩方法,主要可分为参数修 ...
- <STL源码剖析> 6.3.6 power
计算power的算法说明 http://www.sxt.cn/u/324/blog/2112 翻译自 http://videlalvaro.github.io/2014/03/the-power-a ...
- Baby-step giant-step算法
写在前面: 学习笔记,方便复习,学习资料来自网络,注明出处 我们都在努力奔跑,我们都是追梦人 结论 In group theory, a branch of mathematics, the baby ...
- I am Nexus Master!(虽然只是个模拟题。。。但仍想了很久!)
I am Nexus Master! The 13th Zhejiang University Programming Contest 参见:http://www.bnuoj.com/bnuoj/p ...
随机推荐
- UVALive 3026 Period (KMP算法简介)
kmp的代码很短,但是不太容易理解,还是先说明一下这个算法过程吧. 朴素的字符串匹配大家都懂,但是效率不高,原因在哪里? 匹配过程没有充分利用已经匹配好的模版的信息,比如说, i是文本串当前字符的下标 ...
- CentOS为用户增加root权限
1.修改 /etc/sudoers vi /etc/sudoers 在下边增加一行内容 root ALL=(ALL) ALLusername ALL=(ALL) ALL 2. ...
- Django ORM models操作
title: Django ORM models操作 tags: Django --- Django ORM models操作 Django ORM基本操作 一.数据库的创建及增删改查 1 使用类创建 ...
- java基础—线程(二)
一.线程的优先级别
- 因 URL 意外地以“/HelloWorld”结束,请求格式无法识别。
web.config文件中的 <system.web> 节点下加入:<webServices> <protocols> <add name ...
- C# 用qq邮箱发邮件
一.在企业的QQ邮箱中开启POP3/SMTP服务 开启服务时,授权密码保存好. 二.示例 public static string UserName = ""; // 企业邮箱 p ...
- 到底该如何理解DevOps这个词
炒了8年的概念,到底该如何理解DevOps这个词? 转载本文需注明出处:EAII企业架构创新研究院,违者必究.如需加入微信群参与微课堂.架构设计与讨论直播请直接回复公众号:“EAII企业架构创新研究院 ...
- Voyager如何使用Compass
Compass由Resources,Commands,Logs三个部分组成 Resources包含了Links和Fonts: Commands可以执行php命令,比如创建model: 创建一个Down ...
- 《linux设备驱动开发详解》笔记——14 linux网络设备驱动
14.1 网络设备驱动结构 网络协议接口层:硬件无关,标准收发函数dev_queue_xmit()和netif_rx(); 注意,netif_rx是将接收到的数据给上层,有时也在驱动收到数据以后调用 ...
- Python基础学习总结__Day2
一.模块初始 1.标准库模块: (1) Os模块 ① 和操作系统交互:例:执行命令代码 (2) Sys模块 ① 脚本+参数——>结果 2.第三方库模块:Django,Mysql... 存在E:\ ...