理论计算机科学家的抽象代数


19

我接受过合理的本科数学教育,但从未百分百满意抽象代数(群,环,场等的数学)。我认为这部分是因为我需要查看应用程序,而我能找到的任何应用程序都是在物理领域,而不是CS。因为我真正的兴趣是CS,所以现在有没有可用的材料(在线草稿,讲义,视频,书籍)从CS中的应用(尤其是算法/理论)的角度涵盖抽象代数?我很高兴这些应用程序完全是理论性的,但是它们不应该假设任何已有的抽象代数知识。

我很确定这些资源是否存在,它们将被大量CS研究人员所赞赏。


4
stackexchange在右侧栏上为您提供了许多“相关”问题。请首先阅读它们,特别是计算机科学中的代数结构
Uday Reddy

1
@UdayReddy谢谢。我正在阅读这些内容,其中一些链接中包含好东西。但是,理想情况下,我正在寻找一个名为“理论计算机科学家的抽象代数入门”(作为随机的虚构示例)的讲座课程,而不是在抽象代数至关重要的CS结果列表中。我真正的兴趣是算法/理论,而不是范畴论。
Majid

Answers:


17

您可以尝试Madhu Sudan课程中的笔记:代数与计算


这很好地回答了这个问题。可惜的是,诸如MIT 6.042之类的“计算机科学数学”课程似乎没有涵盖任何抽象代数。至少不是我所见过的。
Majid

11

进入抽象代数的一种可能途径是从密码学的角度来看它,这与有限域上的算法有关。场是环,场也是由简单定律耦合的两个组。场论使用显着位置的向量空间(Galois理论),因此该角度应涵盖许多抽象代数。这本书

V. Shoup 对数论和代数计算导论

因此可能引起关注。

我个人的建议是忽略应用程序,并学习有关抽象代数的基本的大学数学课本。这些都不乏。只要相信所有这些东西都是有用的,并且一旦您对这些材料有了基本的了解,这种使用就能更容易地展示自己。

大多数基本代数是构造性的,您可以轻松地实现基本概念以获得更好的理解,例如,检查乘法表是否为组的算法,组中的方程求解器,检查两个代数结构是否同构的程序等。这些问题中有易于实施但速度缓慢的暴力解决方案。您对代数了解的越多,可以做的算法捷径就越多,可以加快程序速度。例如著名的Miller-RabinAKS素数测试。



-1

除密码学外,代数在计算机科学中的一个非常好的实际应用可能是分数的实现,其中分子和分母是整数或“大整数”类型,并且通过减少分数来保持编码长度较小(即,排除最大公倍数)分子和分母的除数)。

关于“大整数”数据类型,一个有趣的结果是所谓的“中文余数定理”,一旦知道作为参数的主要因子的表示形式,就可以并行化整数运算。

此外,代数中发现的大多数内容在美学上都令人愉悦(只是个人观点)。


2
我看不出这是如何解决这个问题的?
安德拉斯·萨拉蒙(AndrásSalamon),
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.