#Burnside引理与polay定理

引入概念

1.置换

简单来说就是最元素进行重排列
是所有元素的异议映射,即\([1,n]\)映射到\([1,n]\)
\[ \begin{pmatrix} 1&2&i \ldots n \\ a_{1} & a_{2}&a_{i} \ldots a_{n} \end{pmatrix}\]
比如,把正方体绕中心旋转90度,可以看做四个顶点的一个置换
(1)置换可以构成换:对于元素连一条有向边,连到置换中映射的元素,会构成n个环,(循环)
(2)如果一个状态\(S\)经过置换后与原来相同,即\[S[1]=S[a_1],S[2]=S[a_2] \ldots S[n]=S[a_n]\]
那么称这个状态\(S\)为不动点
(3)本质不同的方案数一般指方案类的种数,等价关系通常是一个置换集合,如果一个置换能把其中一个方案映射到另一个方案那么他么是等价的。置换构成的置换群就是交换排列顺序而已。
(4)多个置换构成置换群

2Brunside

对于一个置换群\(G\),\(G\)是目标集[1,n]上的置换群,若一个染色方案\(S\)经过置换后不变,称\(S\)为G的不动点。将不动点的数目记为\(C(G)\)则等价类\(l\)的数目为\(C(G)\)的平均值
\[l=\dfrac {1}{\left| G\right| }[c_1(a_1)+c1(a_2)+ \ldots +c_1(a_g)]\]

证明

明的话,泥萌还是去看抽象数学吧QAQ
百度百科给了证明
证明1:\(g\in G\),记\(X_g(x)=1\)表示\(g(x)=x\)否则\(X_g(x)=0\)。考虑以下和式:

对于上式最右边我们有:

所以:

例子

一个正方形分成4格,着上两种颜色,有多少种方案?其中经过转动相同图像的算一种方案

根据计数原理,每个格子都有两种颜色可选
所以,一共有16种图像
对于图中图像的置换可分为以下四种
不动:
\[a_1=(1)(2)\ldots (16)\]
逆时针旋转90度
\[a_2=(1)(2)(3\ 4\ 5 6)(7\ 8\ 9\ 10) (11\ 12)(13\ 14\ 15\ 16)\]
顺时针旋转90度
\[a_3=(1)(2)(6\ 5\ 4\ 3)(10\ 9\ 8\ 7)(11\ 12)(16\ 15\ 14\ 13)\]
旋转180度
\[a_4=(1)(2)(3\ 5)(4\ 6)(7\ 9)(8\ 10)(11)(12) (13\ 15)(14\ 16)\]
那么有Burnside引理可知
第一种情况不动点种类为16(全)种
第二种情况不动点种类为$(1) (2)\(2种 第三种情况与第二种情况相同 第四种情况为\)(1) (2)  (11) (12)$4种
那么有Burnside引理可知
等价类的种类为(16+2+2+4)/4=6种

例题:
POJ 2154

3Polya定理

利用Burnside引理要首先列出所有\(n^m\)种可能的染色方案
然后找出在每个置换下保持不变的方案数,显然当m或n很大的时候,复杂度会炸,这时就需要用到polya定理。
Polya定理实际上是Burnside引理的具体化,提供了计算不动点的具体方法。
假设一个置换有\(\sigma_k\)个循环,就是轮换
易知每个循环对应的所有位置颜色需一致,而任意两个循环之间选什么颜色互不影响。因此,如果有m种可选颜色,则该置换对应的不动点个数为\(m^{\sigma_k}\)。
用其替换Burnside引理中的\(C(G)\),即\(C(G)=m^k\)。得到等价类数目为:
\[M=\dfrac {1}{\left| G\right| }\sum ^{|G|}_{k=1}m^{\sigma _{k}}\]
\(|G|\)表示置换的数目\(\sigma _k\)表示第k个置换包含的循环数目

例子

仍然是一个正方形分成4格,着上两种颜色
那么对于一种定点而言

不动:\(a_1=(1)(2)(3)(4)\) //单个
旋转90度 :\(a_2=(1\ 2\ 3\ 4)\) //全涂
旋转180度 :\(a_3=(1\ 3)(2\ 4)\) //单排
旋转270度:\(a_4=(1\ 4\ 3\ 2)\) //对角线
那么\(M=\dfrac {1}{4} * (2^4+2^1+2^2+2^1)=6\)

例题

POJ1286

Burnside引理与polay定理的更多相关文章

  1. 置换群和Burnside引理,Polya定理

    定义简化版: 置换,就是一个1~n的排列,是一个1~n排列对1~n的映射 置换群,所有的置换的集合. 经常会遇到求本质不同的构造,如旋转不同构,翻转交换不同构等. 不动点:一个置换中,置换后和置换前没 ...

  2. @总结 - 12@ burnside引理与pólya定理

    目录 @0 - 参考资料@ @1 - 问题引入@ @2 - burnside引理@ @3 - pólya定理@ @4 - pólya定理的生成函数形式@ @0 - 参考资料@ 博客1 @1 - 问题引 ...

  3. Burnside引理与Polya定理

    感觉这两个东西好鬼畜= = ,考场上出了肯定不会qwq.不过还是学一下吧用来装逼也是极好的 群的定义 与下文知识无关.. 给出一个集合$G = \{a, b, c, \dots \}$和集合上的二元运 ...

  4. Burnside引理与Polya定理 学习笔记

    原文链接www.cnblogs.com/zhouzhendong/p/Burnside-Polya.html 问题模型 有一个长度为 $n$ 的序列,序列中的每一个元素有 $m$ 种取值. 如果两个序 ...

  5. 数学:Burnside引理与Pólya定理

    这个计数定理在考虑对称的计数中非常有用 先给出这个定理的描述,虽然看不太懂: 在一个置换群G={a1,a2,a3……ak}中,把每个置换都写成不相交循环的乘积. 设C1(ak)是在置换ak的作用下不动 ...

  6. Burnside 引理与 Pólya 定理

    群 群的定义 在数学中,群是由一种集合以及一个二元运算所组成的,符合"群公理"的代数结构. 一个群是一个集合 \(G\) 加上对 \(G\) 的二元运算.二元运算用 \(\cdot ...

  7. 【uva 10294】 Arif in Dhaka (First Love Part 2) (置换,burnside引理|polya定理)

    题目来源:UVa 10294 Arif in Dhaka (First Love Part 2) 题意:n颗珠子t种颜色 求有多少种项链和手镯 项链不可以翻转 手镯可以翻转 [分析] 要开始学置换了. ...

  8. Burnside引理和Polya定理之间的联系

    最近,研究了两天的Burnside引理和Polya定理之间的联系,百思不得其解,然后直到遇到下面的问题: 对颜色限制的染色 例:对正五边形的三个顶点着红色,对其余的两个顶点着蓝色,问有多少种非等价的着 ...

  9. 【POJ2888】Magic Bracelet Burnside引理+欧拉函数+矩阵乘法

    [POJ2888]Magic Bracelet 题意:一个长度为n的项链,有m种颜色的珠子,有k个限制(a,b)表示颜色为a的珠子和颜色为b的珠子不能相邻,求用m种珠子能串成的项链有多少种.如果一个项 ...

随机推荐

  1. JMeter学习笔记(九) 参数化1--函数助手:_CSVRead

    1.函数助手:_CSVRead 1)准备数据文件 ,文件可以是.csv格式,.dat格式,txt格式等 2)打开函数助手,生成参数 3)添加HTTP请求,引用参数 4)执行HTTP请求,察看结果树中的 ...

  2. php 数据库内容增删改查----增

    首先,建立一个主页面(crud.php) <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  3. maven中mapper.xml不发布的问题

    在自定义的包中定义了mapper.xml然后利用mybatis的扫描包形式来动态创建mapper 开启工程报错: 说无效的绑定 原因: 发布的war中,工程包中的mapper根本就没有出现在class ...

  4. nagios服务端安装

    系统环境:操作系统:CentOS-5.7 x86_64Apache版本: Apache-2.2.22Nagios版本: nagios-3.3.1GD库: gd-2.0.33 2.安装前准备:2.1.安 ...

  5. vue & lifecycle methods & this bug & ES6 Arrow function & this bind bug

    vue & lifecycle methods & this bug ES6 Arrow function & this bind bug bad fetchTableData ...

  6. DP石子合并问题

    转自:http://www.hnyzsz.net/Article/ShowArticle.asp?ArticleID=735 [石子合并]    在一个圆形操场的四周摆放着n 堆石子.现要将石子有次序 ...

  7. 2016年NK冬季训练赛 民间题解

    A题 水题,考察对行的读入和处理,注意使用long long #include <iostream> #include <cstring> #include <cstdi ...

  8. POJ 1204 Word Puzzles | AC 自动鸡

    题目: 给一个字母矩阵和几个模式串,矩阵中的字符串可以有8个方向 输出每个模式串开头在矩阵中出现的坐标和这个串的方向 题解: 我们可以把模式串搞成AC自动机,然后枚举矩阵最外围一层的每个字母,向八个方 ...

  9. hibernate用注解的方式实现orm

    hibernate 有两种方式实现把一张表映射成一个对象,一种是配置文件的方式,一种是注解的方式.这里用hibernate提供的注解的方式实现一个对象和一张表之间的对应. 思路: 首先在hiberna ...

  10. AngularJS中获取ng-repeat动态生成的ng-model值

    需求:通过ng-repeat动态生成的CheckBox,实现勾选控制对应的批次号.如图: html: <div class="clearfix"> <div cl ...