问题标签 [finite-group-theory]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
237 浏览

c - 初等阿贝尔群

我刚刚在维基百科上读到了似乎与位域有关的基本阿贝尔群。如果有人能在我努力完全掌握位字段时向我解释这个特定的段落,我将不胜感激。

0 投票
1 回答
770 浏览

c++ - Cayley 表中的标识属性

我正在做一个项目,该项目需要我辨别我的文本文件中的 cayley 表是否具有恒等、关联、逆和阿贝尔属性。我目前正在研究恒等函数,虽然我相信我必须使用两个嵌套for 循环遍历表格的行和列。我找不到任何可能将我推向正确方向的东西,不胜感激。谢谢杰西卡

只是想添加一个更新:这是我最终想出的,发布以防万一它仍然可以使用工作。非常感谢。

返回 NO_IDENTITY;}

0 投票
1 回答
141 浏览

sage - 圣人中的图表

我想在圣人中定义新图。令 G 为有限群。该图的顶点是子群并且两个顶点是相邻的当且仅当两个子群之和为 G。

我无法在 sage 中定义此图。有什么建议吗?我有差距,但我不知道我可以在圣人中改变什么?

获取所有子组的列表

n 是 |G| 的除数数

0 投票
2 回答
1476 浏览

python - 确定 (*,G) 是否在群论中形成结合群

假设我有一个组 G={a,b,e} 其中 a,b 是任意元素,e 表示中性元素。我想出了一个特定的 Cayley 表,并想通过检查关联性来验证我所做的是否正确。

这意味着我想检查 G 中 x(yz)=(xy)z 的任意 x,y,z,因为我必须手动检查 3*3*3 = 27 个案例,这简直是疯了。

到目前为止,我的编码工作并没有走得太远,我很感激一些提示或优雅的方法来解决这个问题。我是 python 的初学者,但对循环和函数有基本的了解。

我对程序的想法

我定义了一个函数,可以说组,它将字符串作为输入。我通过 .extend(string) 函数将字符串添加到某个列表中,这使我可以一一分析给定的输入。

通过 if 语句让我们说:

我可以先删除列表的第一个条目,然后用所需的新值替换它。我确实继续这样添加越来越多的 if 语句,最后递归地再次调用我的函数,如果我的清单的长度等于 1,它将终止。

然而,这不是一个非常优雅的代码,它也会遇到特殊情况的问题。因此,我相信我的努力是徒劳的,我应该相信有一个更简单、更优雅的解决方案来解决这个问题。我希望你能帮助我引导我找到正确的方向。


代码示例(不完整但概念性):

0 投票
1 回答
146 浏览

algorithm - 阿贝尔群中的最小成本因式分解

我有一个优化问题,我想知道是否有解决它的聪明方法。(这很可能已经被广泛研究过,我只是不知道在什么名称下查找它。)

G我在生成器上有一个(编辑:免费)有限生成的阿贝尔群n。我还有一组P的元素G,每个都标有严格的正成本。的所有生成元都G出现在 中P,因此总是可以将 的任何元素表示为 的元素或其逆G元素的乘积。P任何此类产品的成本是P其中出现的元素成本的总和,考虑到它们出现的频率。表示 的单位元的零产品的成本G为零。

给定组中的一个元素,我想要一种方法来找到一种最低成本的产品,它可以用P.

将其转换为没有负双环的最短路径问题很简单(在无限图上,但对于任何给定元素,您只需要它的有限部分靠近单位元素)。将其转换为整数线性规划问题也很简单。

可能是这些翻译之一是要走的路?或者这个问题的附加结构会导致更简单的方法吗?在我的实际问题5 <= n <= 10和我感兴趣的元素中,任何生成器的复数都不会大于大约 +/- 20。

我在 Haskell 工作,所以函数式方法比有状态的方法更受欢迎,但有状态的方法也可以。

0 投票
1 回答
68 浏览

haskell - 使用类中定义的函数

我正在编写一个程序来表示有限群和对其元素的简单操作。我编写了我需要的大部分功能,例如逆元素、生成器、检查子集是否是子组等。

不幸的是,我所有的功能都需要标识元素、集合和操作。我想定义类的适当实例并使用它而不是这个三重奏。我的问题从这里开始,我不太清楚该怎么做,我在互联网上可以找到的所有内容仅包含定义示例,没有使用示例。

最终我想与组合作Sn,到目前为止,我已经在 ( Zn +) 上测试了我的代码。

我写了这个:

它适用于 function op,例如:

不幸的是,我不能使用identityand set。我该如何使用它?

我也不知道如何重构现有函数以使用我的类型类。

例如我有这个:

它工作正常,但我想要这样的东西:

0 投票
1 回答
2974 浏览

cryptography - 单元组子组中离散对数的 SAGE 实现

这是一个与相关的问题。简而言之,在具有基础组的 ElGammal 密码系统中,单位组以素数 p 为模,我被告知要找到索引 2 的子组来解决离散对数问题以破坏系统。

显然,由于以素数为模的单元组是循环的,如果 x 是生成器,则 x^2 生成索引为 2 的子组。现在,解决 Sage 上的离散对数问题的好方法是什么?我将如何使用在该子组中解决离散对数问题的结果来解决整个组中的问题?

0 投票
0 回答
119 浏览

graph-theory - 如何随机均匀地采样路径?

如何在下面的凯莱图上随机且均匀地采样从节点 1 到任意给定节点的路径,比如 v (1<=v<=60) --- 虽然它是有向图,但请看它是无向图。

在此处输入图像描述

0 投票
2 回答
1928 浏览

python - 群论和 Python

如何编写 Python 代码来检查由 Cayley 表定义的集合 {0,1,..,n−1} 上的操作 ∗ 是否是关联的。

我尝试的代码是:

0 投票
1 回答
1155 浏览

java - 在java中解决一个魔方

正如标题所说,我正在编写一种用java解决魔方的方法,我遇到了一些困难。我正在尝试实现 Kociemba 的算法,为此我正在关注这里的一篇文章(顺便说一下,具体部分大约是下降的 2/3)。但是,该代码有一个带有条件的 if 语句subgoal reached。我不明白如何检查这一点,因为子目标并没有真正定义。因此,如果有人可以向我解释如何检查立方体是否已达到子目标或提供其他教程,我将非常感激。预先感谢您的帮助。