自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MinCong Luo的博客

MinCong Luo的2014年冬到2015年初的技术成长

  • 博客(168)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 用计算困难问题的视角看密码学算法

计算困难问题是理论计算机和密码学的交叉论题,密码学的加密算法都基于计算困难问题(一般来说是NP-Complete和NP-Hard问题),在这篇文章里我们将讨论计算困难问题和各种加密算法的关系,从而引出我们的观点:密码学算法其实就是利用验证容易但是求解困难的计算问题来设计的,从而使得破解者的计算代价接近密钥空间的穷搜;

2024-04-02 01:55:44 874

原创 多线程编程和并行计算的实例:期货交易及打车软件算法

多线程编程是一个编程范式,它的核心思想是将一个程序的执行拆分为多个可以同时运行的线程。在单核处理器系统中,多个线程在逻辑上同时运行,而在多核处理器系统中,多个线程可以物理上同时运行。多线程编程允许程序更有效地使用计算机资源,特别是对于现代多核处理器,提高了程序的响应性和性能。

2023-06-24 15:50:14 1157

原创 【Applied Algebra】有限状态机和模型检测初探

有限状态机(FSM)和模型检测有密切的联系。有限状态机提供了一种用状态转换图来表示系统行为的简单方法。而模型检测是一种针对形式化模型(例如有限状态机)的验证技术,旨在自动验证模型是否满足特定的性质或规范。简而言之,有限状态机充当了模型的角色,而模型检测是针对这些模型的验证技术。

2023-06-22 14:36:01 334

原创 【Applied Algebra】扩域(Galois域)上的乘加法表构造

在之前的文章里,我们讨论了扩域上(Galois域)的计算及其实现,但是侧重的是扩域中元素之间运算的细节实现,而如果想描述整个域的结构,就需要构造乘法表和加法表;

2023-06-11 21:38:40 730

原创 【Applied Algebra】扩域(Galois域)上的计算及其实现

扩域上计算的C++实现.

2023-03-21 18:19:03 633 1

原创 对科研创新的思考:回顾蒲慕明所长在中科院神经所2010年所年会上的讲话

创新是一个和科学密不可分的的概念,蒲所长主要从实验科学的角度详细谈了对创新的看法(2010年12月28日,根据录音整理);

2023-01-10 09:36:04 368 1

原创 【Applied Algebra】物理学中的群论漫谈1:群论基础

我准备开一个新系列谈谈群论在物理学中的应用,这样有两个好处:一是可以明白群论以及相关数学概念的具体应用,以此来举一反三懂得这些理论工具如何使用;而是可以通过这样的应用例子反过来更好地理解这些代数概念;参考书是约什(A.W.Joshi)的,因此符号我们沿用这本书的习惯.

2022-12-30 14:42:46 772

原创 【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 2324

原创 【Applied Algebra】GF(2)上的MQ方程求解:Wu消元法实现

由于Groebner基方法求解MQ问题的困难性,我们先后又尝试了MQ转SAT方法,MQ转SMT方法来求解,但是求解效果仍然有限.在进一步调研后,我们又设计了基于Wu消元法求解算法;更重要的是,我们明确了接下来的道路:只有坚持走实验算法学的道路才能有希望改进GF(2)上MQ方程求解这样的NP-问题;

2022-05-18 16:57:17 640

原创 【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 1245

原创 【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 2662

原创 【vim技巧】使用vim编写代码的一些心得

使用vim编写代码的一些心得从2015年开始在服务器上用vim也有这么久了,但是并没能高效地使用它.现在想系统地开始涉猎并反复练习vim的一些技巧,把折腾经历持续地在这篇博文里更新; ------2021/08/03...

2021-11-18 11:16:15 2279

原创 【Applied Algebra】可满足性模理论(Satisfiability Modulo Theories)入门

【Applied Algebra】可满足性模理论(Satisfiability Modulo Theories)入门摘要:SMT问题是在特定理论下判定一阶逻辑公式可满足性问题.它在很多领域,尤其是形式验证、程序分析、软件测试等领域,都有重要的应用.本文介绍了SMT问题的基本概念、相关定义以及目前的主流理论.从SAT到SMTSAT(satisfiability)问题指的是命题逻辑公式的可满足性问题.随着研究的深人,人们发现SAT在表达能力上有很大的局限性,许多应用用SAT进行编码并不是很明智的选

2021-10-26 20:50:47 3520 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 1028

原创 密码分析之代数攻击简介

代数攻击简介密码分析是为了还原加密的密文而对密码或系统进行分析的研究.顾名思义,代数密码分析是密码分析方法的一种,主要利用代数技术,如方程求解算法.对于具有简单代数结构的密码,例如具有低代数度的轮函数的密码协议(例如DES的轮函数是一个对合变换),代数密码分析被证明是强大的.动机(Motivation)具有简单代数结构的对称加密算法(意即抗代数攻击)正从许多要求具备轻量级实现、高效隐秘对策和低乘法复杂性等特定需求的应用场景中涌现出来.实现轻量级方案的方法之一是最小化算法circle的logi

2021-07-30 18:02:45 1978

原创 构建一阶谓词逻辑和有限域上多项式方程的同构

构建一阶谓词逻辑和有限域上多项式方程的同构基于命题逻辑的布尔可满足SAT存在描述能力弱、抽象层次低、求解复杂度高等问题,而基于一阶逻辑的可满足性模理论SMT(或称之为FOLMS问题:一阶逻辑的可满足性问题)采用高层建模语言,表达能力更强,更接近于字级设计, 避免将问题转化到位级求解,在硬件RTL级验证、程序验证与实时系统验证等领域得到了广泛应用;因此寻找一种一阶谓词逻辑和有限域上多项式方程的同构,将SMT问题和有限域上多项式方程组的求解问题进行相互转化具有重要的意义.一阶谓词逻辑(定义:一阶谓

2021-07-19 13:58:20 416

原创 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 4050 5

原创 【Applied Algebra】用于AT89C51单片机的代数控制方法

【Applied Algebra】用于AT89C51单片机的代数控制方法(Talk for W.J.Leuang)在本次讨论中我们将介绍一种基于计算交换代数的、可用于嵌入式设备的高效控制算法.问题背景用F2\mathbb{F}_2F2​的多项式环模拟谓词逻辑求解思路总结...

2020-12-28 12:03:23 197

原创 【代数语言学巡礼】归纳逻辑编程(inductive logic programming)III

【代数语言学巡礼】归纳逻辑编程(inductive logic programming)III归纳逻辑是事例证据支持的逻辑。在演绎逻辑中,一个有效的演绎论证的前提在逻辑上必然包含结论,逻辑蕴涵意味着使前提为真的每一个逻辑上可能的状态也必须使结论成为真理。因此,一个有效的演绎论点的前提为结论提供了完全的支持。然而归纳逻辑将这种观点扩展到较弱的论点。在一个好的归纳论证中,前提的真实性为结论的真实性提供了某种程度的支持,这种支持程度可以通过某种数值尺度来度量。通过与演绎蕴涵概念的类比,归纳支持度的概念可能

2020-12-23 16:09:41 1719

原创 【代数语言学巡礼】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 1083

原创 【代数语言学巡礼】Lambda-演算在形式语义学的中应用I

【代数语言学巡礼】Lambda-演算在形式语义学的中应用(上)代数语言学又称做形式语言学,其基础思想是建立语言的数学模型,如美国逻辑学家、语言学家N.乔姆斯基、苏联数学家О.С.库拉金娜 、语言学家Y.巴尔-希列尔分别提出了语言的生成性模型 、分析性模型和辨识性模型.形式语义学与组合原则自Chomsky创立生成语法(generative grammar)以来,人们开始普遍承认语法是可以 按组合原则逐步生成的。生成语法的一个基本出发点是: 自然语言中存在无穷多的句子,同 时大脑的功能是有限的,

2020-11-29 23:41:23 885

原创 战棋游戏中的简单策略方法:基于群表示论的思想

战棋游戏中的简单策略方法:基于群表示论的思想最近在开发一款自娱自乐的基于上世纪30年代历史背景的战棋游戏,需要为其设计一个策略算法,我一开始就想可能用比较传统的动态规划,恰逢本周周一周二中科院数学所的田野老师来我们组讲授Galois Representation,对我有一定启发,忽然发现这个算法亦可用群表示论的形式来表述,其直观性会更良好,计算起来可能更加方便;背景考虑一个静态棋盘,我们把战争过程简化为以军事单位为棋子的对弈,称之为战棋游戏(图片是EasyTech的欧陆战争2);那么假设AI

2020-10-14 20:45:51 778

原创 Gröbner基方法入门第III部分:Gröbner基方法的应用

Gröbner基方法入门第III部分:Gröbner基方法的应用Gröbner基理论是一种在国外被普遍认同的用于求解多变元高次方程系统的有效算法,其概念最早由Buchberger提出.其本质是从多项式环中任意理想的生成元出发,刻画和计算出一组具有“好的”性质的生成元,进而研究理想的结构并进行某些理想运算;由于数学、科学和工程学中的许多问题都可以用多元多项式方程组表示(例如,理想,模块和矩阵),Gröbner基的代数算法在理论物理学、应用科学和工程学中具有广泛的应用;计算多项式理想让我们先来了解如

2020-09-03 20:52:55 2771 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 2837 2

原创 Gröbner基方法入门第I部分:项序和约化

Gröbner基方法入门第I部分:项序和约化理想的准素分解与矩阵分解是计算代数的核心问题,它们在计算机代数、计算代数几何、代数编码和密码学、多维系统理论等学科都有非常重要的理论意义与应用价值.Gröbner基理论是研究理想的准素分解与矩阵素分解的重要工具之一.更简单地概括:Gröbner基方法是从任意一个多项式理想的一组给定生成元,计算另一组性质良好的生成元,并称为该理想的Gröbner基.它能用来判定任意多项式是否属于该理想.Gröbner基的代数算法是Buchberger在1960年代开发的,并

2020-09-03 13:24:10 2252

原创 【夜话】从抽象到具体的乐趣:一个从代数学到工业控制工程的梦

从抽象到具体的乐趣:一个从代数学到工业控制工程的梦这只是我的一个随想,在断断续续学习了一年的理论、徘徊了多个方向之后,我觉得找到了一个确定的方向,这个方向需要我继续努力学一些基础知识、看一些经典论文才能展开研究工作,这个方向就是融合了逻辑/代数的控制学方向,更大胆地畅想一下,我想的是能够做出可用的电子硬件实体;基本知识架构自顶向下地,我想到的是以下的学习顺序:代数:交换代数学/代数几何;逻辑:数理逻辑/模糊逻辑与推理;控制:现代控制理论/反馈控制系统;机器人:机器人动力学/机器人控制学;

2020-08-31 22:03:49 231 2

原创 一种基于交换环的命题逻辑代数推理算法

一种基于交换环的命题逻辑代数推理算法老实说,我一直觉得类似深度学习的纯数值方法(那些个Neural-Symbolic其实也是意识流的掩耳盗铃,完全没有理论基础,全靠"艺术创作")实在难以胜任逻辑推理,一个可行的、有希望实现计算地进行逻辑推理的方案就是借助构造一种抽象代数结构(最后借助代数结构间的同态性来实现);构造一种Logic-Ring的意义(Motivation)最终目的是更好地进行逻辑推理,详细地讲:环代数的结构比逻辑代数更佳;环代数有许多优良的性质(域/理想/复形…);可以引入多

2020-07-24 21:14:26 304

原创 当深度学习遇上量化交易:图与知识图谱篇

当深度学习遇上量化交易:图与知识图谱篇本文主要回顾三篇将图和知识图谱应用到量化交易上的文章。©PaperWeekly 原创 · 原作者|桑运鑫本文主要回顾三篇将图和知识图谱应用到量化交易上的文章。使用Rolling Window分析探索用于股市预测的图神经网络论文标题:Exploring Graph Neural Networks for Stock Market Predictions with RollingWindow Analysis论文来源:NeurIPS 2019论文链接

2020-05-14 12:09:26 3295

原创 "寻龙点穴:阴宅坟山选址真鉴"的计算机视觉算法+python实现

#!/usr/bin/env python# -*- coding: utf-8 -*-""" This file is built by Hanss401: TO DO: 入 山 尋 水 口 登 穴 看 明 堂 ...

2020-02-17 15:04:00 703 2

原创 对科研动机的思考:回顾蒲慕明所长在中科院神经所2011年所年会上的讲话

对科研动机的思考:回顾蒲慕明所长在中科院神经所2011年所年会上的讲话这里我有幸读到了蒲慕明所长在中科院神经所2011年所年会上的讲话,特将他的讲话记录转载到我的博客;蒲所长对科学研究的认识观点相当高,短短的讲话中浓缩了很多本质性的总结,强调了读博的正确动机、心态,使人醍醐灌顶,受益匪浅;科学追求的事实和谬论 Facts and Fallacies in Science中科院神经所...

2020-02-13 16:54:13 808

原创 【算法特训总结】计算机经典算法的核心思想及独特角度的解读

计算机经典算法的核心思想及独特角度的解读在1月1日新年之日开始的"算法特训"(一月一日~二月十日)终于结束了,对于这本<<算法竞赛经典>>,除了第十章(在上个暑假末期的"离散数学特训"已经覆盖)和第十二章(属于进阶范围还没看)之外已经搞定了其他部分,但是仍然也有许多没明白的地方(做了标记后续讨论);在这里做一个收尾总结,肯定不求写那种流水账的知识概括,而偏重于精华思想...

2020-02-10 20:38:24 1280

原创 正一派道家奇门遁甲排盘算法python程序

正一派道家奇门遁甲排盘算法以下是备份的代码#!/usr/bin/env python# -*- coding: utf-8 -*-import requestsfrom bs4 import BeautifulSoupimport gzipimport re"""Build System: Python 3.6To Do: '正一派道家奇門遁甲排盤算法...

2020-01-14 17:28:33 12423 27

原创 时间复杂度,复杂类以及对快速排序算法的分析

时间复杂度,复杂类以及对快速排序算法的分析在本文中我会先介绍一些基本概念,然后以快排算法为例,讲述如何应用这些概念来分析算法性能;基本概念对快速排序算法的分析...

2019-12-31 10:47:11 375

原创 现代量子计算入门

量子密码学大作业Q比特EPR佯谬量子逻辑门及电路Hadamard变换Simon’s Algorithm 到 Grover Algorithm使用编程语言实现https://github.com/adamisntdead/QuSimPy#!/usr/bin/env python# -*- coding: utf-8 -*-import numpy as np;...

2019-12-26 15:42:09 926

原创 Stanford自然语言推理(SNLI)数据集语句的语义树构造算法

Stanford自然语言推理(SNLI)数据集语句的语义树构造算法本来想造把枪,结果发现在造子弹时就卡死了我去.目前在实现一个基于Stanford自然语言推理(SNLI)数据集的计算语义的模型,结果发现好像很简单的数据集语句的语义树构造居然很难实现,最后终于搞出来了,防止忘记,在此记录一下思路;问题描述其实就是把sentence_binary_parse(二分格式)的句子格式构造成语义树...

2019-12-06 12:41:00 1903

原创 【徒手写机器学习算法】K-means和集成学习算法

K-Means是一种聚类算法,其核心思想是针对一个训练集通过预先给定的初始点和初始的聚类数目、迭代地将数据集拆分成多个类别。然后我们会把多个K-Means弱分类器集合起来,构成一个更强的集成分类器。我们要写的K-means算法核心idea:迭代地寻找和当前几个中心对应的最近向量,然后根据最新的划分更新这些中心;我们要写的集成算法核心idea:根据弱分类器的表现不断更新它们的权重,最终...

2019-11-07 14:19:10 637

原创 Visual Algebra:用于代数表述的可视化插件

Visual Algebra:用于代数表述的可视化插件如果有这样一种工具:它可以将代数中的表述可视化为图,并且能智能地挖掘元素间的代数关系并做到功能性的推导.那就是:Visual Algebra:将代数语言转化为规则的描述语言我们平常所讲述的代数学的描述事实上是数学符号和自然语言的混杂,考虑如下定义:(定义) 设MMM为RRR-模而Q⊂MQ \subset MQ⊂M为子模;若A...

2019-11-01 17:05:51 267

原创 计算神经科学、学习理论与分析学的千丝万缕的联系

计算神经科学、学习理论与分析学的千丝万缕的联系_________________ 再谈毕业论文在硕士学位论文中,我提出了一种可以称之为“改良神经网络”的模型 ----- 类额叶编码学习模型,相对于当前主流的深度学习模型:基于代价函数梯度下降的多层BP神经网络(Back Propagation Neural Network)在概念和一些任务的效果上取得了一些突破.一切在论文中已经详细讨论过的...

2019-10-29 10:40:34 559

原创 【静夜思】一些抽象代数的核心思想和实际应用

一些<<抽象代数>>的核心思想和实际应用(持续更新)抽象代数是现代代数的基础,以其晦涩和高度概括性而著称,如果介绍一些它的实际应用和核心思想,会对大家学习有所裨益.本文的特点是形散(采自网络)而神不散(主题明确).核心思想作者:Yuhang Liu抽象代数其实起源于数论。很多重要的概念,比如环、理想,都来自于数论的研究。比如理想,一开始是数论学家研究费...

2019-08-12 11:36:41 6770 5

原创 c++实习岗面试问题集锦

c++实习岗面试问题集锦本文的定位是c++实习岗,因此难度不可能是全职岗那么深入,重点还是在对有一定c++基础的人的知识点考察.以供临阵磨枪之用.面试技巧回答问题的时候最最基本的两个要求:不紧不慢,平心静气条理清晰表达能力绝对是面试的时候重要的考察项目。咱们做的是程序员这一行,讲究的是团队协作,不是写作、画画,一支笔、一个人就行了,一个表达能力不行的程序员,要来又有什么用呢...

2019-07-12 11:02:59 8225 1

终极算法完整版

终极算法完整版;终极算法完整版;终极算法完整版;终极算法完整版;

2018-08-04

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除