
代数
文章平均质量分 87
hanss2
这个作者很懒,什么都没留下…
展开
-
【Applied Algebra】隐藏子群问题和Shor算法的新视角
隐藏子群问题(Hidden Subgroup Problem, HSP)是量子算法研究中的一个关键问题,它是若干著名量子算法的理论基础,包括用于整数分解的Shor算法和用于求解离散对数问题的量子算法.接下来我将具体解读HSP和理解Shor算法的一种新理解.原创 2024-04-19 15:57:27 · 1422 阅读 · 0 评论 -
【Applied Algebra】扩域(Galois域)上的计算及其实现
扩域上计算的C++实现.原创 2023-03-21 18:19:03 · 1001 阅读 · 1 评论 -
【Applied Algebra】物理学中的群论漫谈1:群论基础
我准备开一个新系列谈谈群论在物理学中的应用,这样有两个好处:一是可以明白群论以及相关数学概念的具体应用,以此来举一反三懂得这些理论工具如何使用;而是可以通过这样的应用例子反过来更好地理解这些代数概念;参考书是约什(A.W.Joshi)的,因此符号我们沿用这本书的习惯.原创 2022-12-30 14:42:46 · 925 阅读 · 0 评论 -
【Applied Algebra】求解布尔方程(Boolean Equations)的4个高效baseline算法
求解布尔方程(Boolean Equations)的4个高效baseline算法求解布尔方程(Boolean Equations)是理论计算机中的基本问题之一;事实上,求解Fq\mathbb{F}_qFq上nnn个变量的mmm个非线性多项式方程组是一个基础的数学问题,受到了包括密码学界在内的各个理论计算机研究方向的广泛关注;众所周知,AI领域的计算机视觉和自然语言处理就有许多具体任务(比如人脸识别,语义分割)的baselines(也就是提供参考对比的基线模型/算法),那么自然研究求解布尔方程也有对应原创 2022-05-25 18:50:54 · 3081 阅读 · 0 评论 -
【Applied Algebra】GF(2)上的MQ方程求解:Wu消元法实现
由于Groebner基方法求解MQ问题的困难性,我们先后又尝试了MQ转SAT方法,MQ转SMT方法来求解,但是求解效果仍然有限.在进一步调研后,我们又设计了基于Wu消元法求解算法;更重要的是,我们明确了接下来的道路:只有坚持走实验算法学的道路才能有希望改进GF(2)上MQ方程求解这样的NP-问题;原创 2022-05-18 16:57:17 · 729 阅读 · 0 评论 -
【Applied Algebra】用SMT求解器求解MQ问题
用SMT求解器求解MQ问题SAT求解MQ问题已经成为求解MQ问题的主要思路之一,但是其变元复杂度高,因此我将目光瞄准了描述理论更强的SMT求解器并给出了初步实现;MQ问题多元多项式映射的单向性在于难以计算来找到多元多项式方程组(MP问题)的解;特别是,如果MP问题中涉及的多元多项式仅由二次多项式组成,则该问题称为MQ问题(对于许多和密码协议等价的MQ问题,还可以限定系数和解都在F2\mathbb{F}_2F2上):f1(x1,…,xn)=∑1≤i≤j≤naij(1)xixj+∑1≤i≤nb原创 2021-12-29 21:58:19 · 1379 阅读 · 0 评论 -
【Applied Algebra】c++大整数计算GMP库的安装和使用(Ubuntu/Mint)
c++大整数计算GMP库的安装和使用(Ubuntu/Mint)GMP库(详情见在线文档)一个免费的任意精度的大数算术库,可对有符号整数、有理数和浮点数进行计算操作;除了GMP运行的计算平台中可用内存所指定的限制外,精度没有实际限制.GMP有一套丰富的功能,主要目标应用是密码学应用和研究、互联网安全应用、代数系统、计算代数研究等.安装注意加上"–enable-cxx"以使得c++可以调用(这样才会生成"libgmpxx.so");[hanss@Mint]$ ./configure --enab原创 2021-12-28 10:51:31 · 3197 阅读 · 0 评论 -
【Applied Algebra】可满足性模理论(Satisfiability Modulo Theories)入门
【Applied Algebra】可满足性模理论(Satisfiability Modulo Theories)入门摘要:SMT问题是在特定理论下判定一阶逻辑公式可满足性问题.它在很多领域,尤其是形式验证、程序分析、软件测试等领域,都有重要的应用.本文介绍了SMT问题的基本概念、相关定义以及目前的主流理论.从SAT到SMTSAT(satisfiability)问题指的是命题逻辑公式的可满足性问题.随着研究的深人,人们发现SAT在表达能力上有很大的局限性,许多应用用SAT进行编码并不是很明智的选原创 2021-10-26 20:50:47 · 5280 阅读 · 1 评论 -
【Applied Algebra】c++符号计算大量多项式的方法(符号表过大时的编译出错问题)
c++符号计算大量多项式的方法(符号表过大时的编译出错问题)在用C++符号计算库GiNaC进行符号计算时,由于需要处理的多项式太多,他们又被定义在.cpp/.h文件里,因此g++编译总是在运行很久之后报错失败;我们构思了一种从外部读取文本再解析为对应符号的方法,来解决这个问题;问题描述在用C++符号计算库GiNaC进行符号计算时,由于需要处理的多项式太多,他们又被定义在.cpp/.h文件里:std::vector<GiNaC::ex> ITEMS_ZTT {t1*z664, t2原创 2021-10-10 21:07:46 · 1171 阅读 · 0 评论 -
密码分析之代数攻击简介
代数攻击简介密码分析是为了还原加密的密文而对密码或系统进行分析的研究.顾名思义,代数密码分析是密码分析方法的一种,主要利用代数技术,如方程求解算法.对于具有简单代数结构的密码,例如具有低代数度的轮函数的密码协议(例如DES的轮函数是一个对合变换),代数密码分析被证明是强大的.动机(Motivation)具有简单代数结构的对称加密算法(意即抗代数攻击)正从许多要求具备轻量级实现、高效隐秘对策和低乘法复杂性等特定需求的应用场景中涌现出来.实现轻量级方案的方法之一是最小化算法circle的logi原创 2021-07-30 18:02:45 · 2561 阅读 · 0 评论 -
构建一阶谓词逻辑和有限域上多项式方程的同构
构建一阶谓词逻辑和有限域上多项式方程的同构基于命题逻辑的布尔可满足SAT存在描述能力弱、抽象层次低、求解复杂度高等问题,而基于一阶逻辑的可满足性模理论SMT(或称之为FOLMS问题:一阶逻辑的可满足性问题)采用高层建模语言,表达能力更强,更接近于字级设计, 避免将问题转化到位级求解,在硬件RTL级验证、程序验证与实时系统验证等领域得到了广泛应用;因此寻找一种一阶谓词逻辑和有限域上多项式方程的同构,将SMT问题和有限域上多项式方程组的求解问题进行相互转化具有重要的意义.一阶谓词逻辑(定义:一阶谓原创 2021-07-19 13:58:20 · 534 阅读 · 0 评论 -
C++符号计算库GiNaC的安装和使用教程
C++符号计算库GiNaC的安装和使用教程GIAC是一个C++库.它被设计成方便用户在一个符号计算系统下创建自定义的集成系统,比如将符号操作与计算机科学的更成熟领域(如计算密集型数值应用程序、图形界面等)集成在一起.它是根据GNU通用公共许可证(GPL)的条款和条件分发的(它的开发小组也是极力反对软件专利制度的).GiNaC是一个迭代和递归的缩写:GiNaC is Not a CAS(CAS代表计算机代数系统),是不是有GNU(GNU’s not Unix)那味儿了.GiNaC最初的动机是被开发原创 2021-04-14 15:11:16 · 5366 阅读 · 6 评论 -
【Applied Algebra】用于AT89C51单片机的代数控制方法
【Applied Algebra】用于AT89C51单片机的代数控制方法(Talk for W.J.Leuang)在本次讨论中我们将介绍一种基于计算交换代数的、可用于嵌入式设备的高效控制算法.问题背景用F2\mathbb{F}_2F2的多项式环模拟谓词逻辑求解思路总结...原创 2020-12-28 12:03:23 · 242 阅读 · 0 评论 -
【代数语言学巡礼】归纳逻辑编程(inductive logic programming)III
【代数语言学巡礼】归纳逻辑编程(inductive logic programming)III归纳逻辑是事例证据支持的逻辑。在演绎逻辑中,一个有效的演绎论证的前提在逻辑上必然包含结论,逻辑蕴涵意味着使前提为真的每一个逻辑上可能的状态也必须使结论成为真理。因此,一个有效的演绎论点的前提为结论提供了完全的支持。然而归纳逻辑将这种观点扩展到较弱的论点。在一个好的归纳论证中,前提的真实性为结论的真实性提供了某种程度的支持,这种支持程度可以通过某种数值尺度来度量。通过与演绎蕴涵概念的类比,归纳支持度的概念可能原创 2020-12-23 16:09:41 · 2153 阅读 · 0 评论 -
【代数语言学巡礼】Lambda-演算在形式语义学的中应用II
【代数语言学巡礼】Lambda-演算在形式语义学的中应用II现在我们开始讲述λ\lambdaλ-演算的基础知识,包括PC上的λ\lambdaλ-演算和类型论上的λ\lambdaλ-演算;λ\lambdaλ-演算λ\lambdaλ-演算最早是由Church(1941)在(The Calculi of Lambda-Conversion. Princeton University)中提出来的,但却是 Montague(1970)才使得它在自然语言的形式语义学研究 发挥重要作用.我们知道自然语言的原创 2020-12-01 15:11:19 · 1410 阅读 · 0 评论 -
【代数语言学巡礼】Lambda-演算在形式语义学的中应用I
【代数语言学巡礼】Lambda-演算在形式语义学的中应用(上)代数语言学又称做形式语言学,其基础思想是建立语言的数学模型,如美国逻辑学家、语言学家N.乔姆斯基、苏联数学家О.С.库拉金娜 、语言学家Y.巴尔-希列尔分别提出了语言的生成性模型 、分析性模型和辨识性模型.形式语义学与组合原则自Chomsky创立生成语法(generative grammar)以来,人们开始普遍承认语法是可以 按组合原则逐步生成的。生成语法的一个基本出发点是: 自然语言中存在无穷多的句子,同 时大脑的功能是有限的,原创 2020-11-29 23:41:23 · 1109 阅读 · 0 评论 -
战棋游戏中的简单策略方法:基于群表示论的思想
战棋游戏中的简单策略方法:基于群表示论的思想最近在开发一款自娱自乐的基于上世纪30年代历史背景的战棋游戏,需要为其设计一个策略算法,我一开始就想可能用比较传统的动态规划,恰逢本周周一周二中科院数学所的田野老师来我们组讲授Galois Representation,对我有一定启发,忽然发现这个算法亦可用群表示论的形式来表述,其直观性会更良好,计算起来可能更加方便;背景考虑一个静态棋盘,我们把战争过程简化为以军事单位为棋子的对弈,称之为战棋游戏(图片是EasyTech的欧陆战争2);那么假设AI原创 2020-10-14 20:45:51 · 908 阅读 · 0 评论 -
Gröbner基方法入门第III部分:Gröbner基方法的应用
Gröbner基方法入门第III部分:Gröbner基方法的应用Gröbner基理论是一种在国外被普遍认同的用于求解多变元高次方程系统的有效算法,其概念最早由Buchberger提出.其本质是从多项式环中任意理想的生成元出发,刻画和计算出一组具有“好的”性质的生成元,进而研究理想的结构并进行某些理想运算;由于数学、科学和工程学中的许多问题都可以用多元多项式方程组表示(例如,理想,模块和矩阵),Gröbner基的代数算法在理论物理学、应用科学和工程学中具有广泛的应用;计算多项式理想让我们先来了解如原创 2020-09-03 20:52:55 · 3829 阅读 · 2 评论 -
Gröbner基方法入门第II部分:Gröbner基和Buchberger算法
Gröbner基方法入门第II部分:Gröbner基和Buchberger算法在之前的博客文章中我介绍了一些多项式代数的基本概念,在这篇文章中我们将介绍Gröbner基的基本理论和计算Gröbner基的Buchberger算法;Gröbner基和Buchberger算法Gröbner基的概念来源于B.Buchberger的博士论文.考虑最简单的情形,K\mathcal{K}K为域,K[x]\mathcal{K}[\boldsymbol{x}]K[x]是一元多项式环.J\mathcal{J}J为K原创 2020-09-03 16:31:53 · 3836 阅读 · 2 评论 -
Gröbner基方法入门第I部分:项序和约化
Gröbner基方法入门第I部分:项序和约化理想的准素分解与矩阵分解是计算代数的核心问题,它们在计算机代数、计算代数几何、代数编码和密码学、多维系统理论等学科都有非常重要的理论意义与应用价值.Gröbner基理论是研究理想的准素分解与矩阵素分解的重要工具之一.更简单地概括:Gröbner基方法是从任意一个多项式理想的一组给定生成元,计算另一组性质良好的生成元,并称为该理想的Gröbner基.它能用来判定任意多项式是否属于该理想.Gröbner基的代数算法是Buchberger在1960年代开发的,并原创 2020-09-03 13:24:10 · 3419 阅读 · 0 评论