组合数学常用内容——Polya定理+Burnside引理

2024-04-08 00:58

本文主要是介绍组合数学常用内容——Polya定理+Burnside引理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Burnside引理

设G是N{1,2,.....,n}上的置换群,G在N上可引出不同的等价类(在置换群中有置换的都等价),其不同的等价类的个数为LL=1/|G|*(c1(a1)+...c1(ai)...+c1(ag))c1表示置换ai作用过后不变的方案数,也就是置换中循环节长度是1的循环个数(N中的元素是组合方案的序号不是自然数!此置换群是关于所有着色图像(所有可能的情况)集合N的置换)Burnside应用关键:如何构造置换群(图形上来说一般为根据中心点,对称轴进行旋转和翻转)缺陷:置换是作用在所有方案上的,如果颜色数量过多,方案随之剧增,Burnside无能为力;

Polya定理

设G是n个对象的一个置换群(此置换群是关于所有被着色对象集合的置换),用m种颜色对这n个对象进行着色,则不同的染色方案数为ll=1/|G|*(m^c(a1)+...m^c(ai)+...m^c(an)) c表示ai置换的循环节数量当着色方案有具体限制条件时一般用Burnside引理而不用Polya定理

Polya定理的母函数形式

设N是n个对象的集合,G是N上的置换群,G={P1,P2,...,Pg},用m种颜色b1,b2,...bm对n个对象进行着色设Ck(P)为置换P中k循环,令Sk=b1^k+b2^k+...+bm^k,k=1,2,...n(Sk为每种颜色允许出现k次),则具体着色方案数的多项式为:P=1/|G|*∑(Pi∈G)(S1^c1(Pi)*S2^c2(Pi)*...*Sn^cn(Pi))展开并合并同类项之后,b1^i1*b2^i2*...*bm^im前的系数即为具体着色方案数。

常用多面体的置换群

正四面体(顶点数:4,棱数:6)

1、以顶点为目标的转动群:以顶点—面心为轴:(1)1  (3)1  8个置换群;以棱中—棱中为轴:(2)2  3个置换群;不动:(1)4  1个置换群;2、以棱为目标的转动群:以顶点—面心为轴:(3)2  8个置换群;以棱中—棱中为轴:(1)2  (2)2  3个置换群;不动:(1)6  1个置换群;3、以面为目标的转动群:以顶点—面心为轴:(1)1  (3)1  8个置换群;以棱中—棱中为轴:(2)2  3个置换群;不动:(1)4 1个置换群;

正六面体(顶点数:8,棱数:12)

1、以顶点为目标的转动群:以顶点—顶点为轴:(1)2  (3)2  8个置换群;以棱中—棱中为轴:(2)4  6个置换群;以面心—面心为轴:(4)2  6个置换群;(2)4  3个置换群;不动:(1)8  1个置换群;2、以棱为目标的转动群:以顶点—顶点为轴:(3)4  8个置换群;以棱中—棱中为轴:(1)2  (2)5  6个置换群;以面心—面心为轴:(4)3  6个置换群;(2)6  3个置换群;不动:(1)12  1个置换群;3、以面为目标的转动群:以顶点—顶点为轴:(3)2  8个置换群;以棱中—棱中为轴:(2)3  6个置换群;以面心—面心为轴:(1)2  (4)1  6个置换群;(1)2  (2)2  3个置换群;不动:(1)6  1个置换群;

正八面体(顶点数:6,棱数:12)

1、以顶点为目标的转动群:以顶点—

这篇关于组合数学常用内容——Polya定理+Burnside引理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/884157

相关文章

Python中常用的四种取整方式分享

《Python中常用的四种取整方式分享》在数据处理和数值计算中,取整操作是非常常见的需求,Python提供了多种取整方式,本文为大家整理了四种常用的方法,希望对大家有所帮助... 目录引言向零取整(Truncate)向下取整(Floor)向上取整(Ceil)四舍五入(Round)四种取整方式的对比综合示例应

C#中读取XML文件的四种常用方法

《C#中读取XML文件的四种常用方法》Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具,下面我们就来看看C#中读取XML文件的方法都有哪些吧... 目录XML简介格式C#读取XML文件方法使用XmlDocument使用XmlTextReader/XmlTextWr

如何解决Pycharm编辑内容时有光标的问题

《如何解决Pycharm编辑内容时有光标的问题》文章介绍了如何在PyCharm中配置VimEmulator插件,包括检查插件是否已安装、下载插件以及安装IdeaVim插件的步骤... 目录Pycharm编辑内容时有光标1.如果Vim Emulator前面有对勾2.www.chinasem.cn如果tools工

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

C#比较两个List集合内容是否相同的几种方法

《C#比较两个List集合内容是否相同的几种方法》本文详细介绍了在C#中比较两个List集合内容是否相同的方法,包括非自定义类和自定义类的元素比较,对于非自定义类,可以使用SequenceEqual、... 目录 一、非自定义类的元素比较1. 使用 SequenceEqual 方法(顺序和内容都相等)2.

Python中操作Redis的常用方法小结

《Python中操作Redis的常用方法小结》这篇文章主要为大家详细介绍了Python中操作Redis的常用方法,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解一下... 目录安装Redis开启、关闭Redisredis数据结构redis-cli操作安装redis-py数据库连接和释放增

一文详解Python中数据清洗与处理的常用方法

《一文详解Python中数据清洗与处理的常用方法》在数据处理与分析过程中,缺失值、重复值、异常值等问题是常见的挑战,本文总结了多种数据清洗与处理方法,文中的示例代码简洁易懂,有需要的小伙伴可以参考下... 目录缺失值处理重复值处理异常值处理数据类型转换文本清洗数据分组统计数据分箱数据标准化在数据处理与分析过

Java中Object类的常用方法小结

《Java中Object类的常用方法小结》JavaObject类是所有类的父类,位于java.lang包中,本文为大家整理了一些Object类的常用方法,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. public boolean equals(Object obj)2. public int ha

Java 字符数组转字符串的常用方法

《Java字符数组转字符串的常用方法》文章总结了在Java中将字符数组转换为字符串的几种常用方法,包括使用String构造函数、String.valueOf()方法、StringBuilder以及A... 目录1. 使用String构造函数1.1 基本转换方法1.2 注意事项2. 使用String.valu

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如