统一带否定的约束逻辑编程,用代数结构提升表达能力
A Unifying Framework for Semiring-Based Constraint Logic Programming With Negation (full version)
- 用半环框架统一多种约束逻辑编程变体
- 首次支持规则体中出现否定谓词的语义定义
- 适用于需要复杂逻辑推理的规划与调度场景
约束逻辑编程(CLP)是一种用于求解需考虑约束问题的形式化方法,如资源分配和自动规划调度。它已被扩展至模糊约束满足、不确定性处理及否定运算等方向,各自采用不同的半环作为统一抽象。然而,现有研究均未探讨允许在规则体中使用否定的情况。本文提出一种扩展的CLP框架,统一了多种已有扩展,并支持规则体中的否定。基于逼近不动点理论,为这类程序提供语义定义,并详细分析半环性质对语义的影响。该框架不仅涵盖现有方法,还允许通过更丰富的语言表达进行扩展。
原文摘要 · Abstract (English)
Constraint Logic Programming (CLP) is a logic programming formalism used to solve problems requiring the consideration of constraints, like resource allocation and automated planning and scheduling. It has previously been extended in various directions, for example to support fuzzy constraint satisfaction, uncertainty, or negation, with different notions of semiring being used as a unifying abstraction for these generalizations. None of these extensions have studied clauses with negation allowed in the body. We investigate an extension of CLP which unifies many of these extensions and allows negation in the body. We provide semantics for such programs, using the framework of approximation fixpoint theory, and give a detailed overview of the impacts of properties of the semirings on the resulting semantics. As such, we provide a unifying framework that captures existing approaches and allows extending them with a more expressive language.
Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。