组合数学常用内容——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通过re模块提供正则表达式支持,本文给大家介绍python常用的正则表达式及作用详解,感兴趣的朋友跟随小编一起看看吧... 目录python常用正则表达式及作用基本匹配模式常用正则表达式示例常用量词边界匹配分组和捕获常用re

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe

Python将字符串转换为小写字母的几种常用方法

《Python将字符串转换为小写字母的几种常用方法》:本文主要介绍Python中将字符串大写字母转小写的四种方法:lower()方法简洁高效,手动ASCII转换灵活可控,str.translate... 目录一、使用内置方法 lower()(最简单)二、手动遍历 + ASCII 码转换三、使用 str.tr

Java如何将文件内容转换为MD5哈希值

《Java如何将文件内容转换为MD5哈希值》:本文主要介绍Java如何将文件内容转换为MD5哈希值的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java文件内容转换为MD5哈希值一个完整的Java示例代码代码解释注意事项总结Java文件内容转换为MD5

Spring Boot 常用注解整理(最全收藏版)

《SpringBoot常用注解整理(最全收藏版)》本文系统整理了常用的Spring/SpringBoot注解,按照功能分类进行介绍,每个注解都会涵盖其含义、提供来源、应用场景以及代码示例,帮助开发... 目录Spring & Spring Boot 常用注解整理一、Spring Boot 核心注解二、Spr