【技术实现步骤摘要】
本专利技术属于计算机技术、软件,具体涉及一种基于组合与问题分解的smt分布式求解方法和系统。
技术介绍
1、布尔可满足性问题(sat)是判定一个给定命题逻辑公式是否可满足的判定问题,而可满足性模理论(smt)是对sat问题的扩展,它结合了布尔逻辑和其他理论(如等式理论和无解释函数、数组理论、位向量、线性和非线性算术)来表达更复杂的逻辑公式,来研究在这些特定理论下的一阶逻辑公式可满足性的判定方法。smt是形式化方法与自动推理的一个重要方向,被广泛地应用于众多领域,例如程序验证、云计算与云存储、优化问题求解、访问控制、多核问题、程序缺陷检测验证、有界模型检测、rtl验证、静态分析等等。这些领域中待解决的实际问题都可以建模为约束可满足问题,smt在这类问题的表述和求解上有突出优势。
2、目前,大多数先进的smt求解器仍然保持着单线程串行求解,相关工作集中在如何改进串行smt求解器中的求解技术和启发式方法。随着工业样例难度和规模的增长,串行smt求解已逐渐无法满足业界的需求,并且考虑到计算资源的日益丰富,采用分布式方法来充分利用算力
...【技术保护点】
1.一种基于组合与问题分解的SMT分布式求解方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述划分树为一棵有根树,包含若干个节点,根节点代表原问题,父子节点满足划分的定义;所述划分树中的每个节点代表求解过程中生成的一个子问题公式,节点中包含以下信息:该节点的父节点、子节点、求解状态以及分配给Worker进程的求解策略。
3.根据权利要求1所述的方法,其特征在于,所述任务生成器根据划分树的状态与求解信息,不断生成任务并加入任务缓存队列;对于所有子节点对应的子问题公式,所述任务生成器首先为其生成预处理化简任务,以提高后
...【技术特征摘要】
1.一种基于组合与问题分解的smt分布式求解方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述划分树为一棵有根树,包含若干个节点,根节点代表原问题,父子节点满足划分的定义;所述划分树中的每个节点代表求解过程中生成的一个子问题公式,节点中包含以下信息:该节点的父节点、子节点、求解状态以及分配给worker进程的求解策略。
3.根据权利要求1所述的方法,其特征在于,所述任务生成器根据划分树的状态与求解信息,不断生成任务并加入任务缓存队列;对于所有子节点对应的子问题公式,所述任务生成器首先为其生成预处理化简任务,以提高后续求解以及子问题划分的效率和质量;然后,所述任务生成器根据当前的leader进程的全局信息,为节点生成子节点生成任务和组合求解任务;所述子节点生成任务启发式地配置子节点生成数量和划分种类,所示组合求解任务启发式地配置串行求解器种类、参数和求解时长。
4.根据权利要求3所述的方法,其特征在于,在初始阶段,一个节点只生成一个组合求解任务,随着求解进行,若遇到任务不饱和及worker空闲率较高的情况,则适当增加同一个节点的组合求解任务数,以尽可能的避免计算资源的浪费。
5.根据权利要求1所述的方法,其特征在于,所述worker进程包含预处理器、划分器和串行求解器,按照以下步骤执行相关任务:
6.根据权利要求1所述的...
【专利技术属性】
技术研发人员:赵梦宇,蔡少伟,
申请(专利权)人:中国科学院软件研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。