逻辑编程在答案集语义下的非正式语义:历史回顾与应用前景
摘要
本文回顾了与逻辑编程在答案集语义下的非正式语义相关的历史调查。文章聚焦于四个具有里程碑意义的出版物,并通过相同的呈现风格和命题程序对其进行了非正式语义的对比。这些出版物涵盖了从1988年到2014年的时间段,涉及了逻辑编程的两个主要范式:答案集编程(ASP)和ASP-Prolog。ASP主要用于解决复杂的组合搜索问题,而ASP-Prolog则是一种知识表示语言,旨在模拟和捕捉领域知识,并考虑到底层的智能/理性代理。文章通过详细的历史回顾和语义分析,展示了这两个范式在逻辑编程中的应用和重要性。
原理
文章通过详细的历史回顾和语义分析,展示了逻辑编程在答案集语义下的非正式语义。主要工作原理包括:
- 逻辑规则的解释:逻辑规则被解释为问题约束的规范。逻辑编程被视为一种通用建模语言,支持搜索问题的解决方案。
 - 生成-定义-测试方法:ASP编程方法遵循“生成-定义-测试”范式,其中生成部分定义搜索空间,测试部分验证解决方案候选是否实际为解决方案。
 - 答案集的解释:答案集被解释为理性代理可能持有的信念集。每个答案集代表一个理性代理的信念集,这些信念集可以通过简化前提集来推导出。
 
流程
文章通过详细的历史回顾和语义分析,展示了逻辑编程在答案集语义下的非正式语义。主要工作流程包括:
- 逻辑规则的解释:逻辑规则被解释为问题约束的规范。逻辑编程被视为一种通用建模语言,支持搜索问题的解决方案。
 - 生成-定义-测试方法:ASP编程方法遵循“生成-定义-测试”范式,其中生成部分定义搜索空间,测试部分验证解决方案候选是否实际为解决方案。
 - 答案集的解释:答案集被解释为理性代理可能持有的信念集。每个答案集代表一个理性代理的信念集,这些信念集可以通过简化前提集来推导出。
 
应用
文章通过详细的历史回顾和语义分析,展示了逻辑编程在答案集语义下的非正式语义。主要应用前景包括:
- 逻辑规则的解释:逻辑规则被解释为问题约束的规范。逻辑编程被视为一种通用建模语言,支持搜索问题的解决方案。
 - 生成-定义-测试方法:ASP编程方法遵循“生成-定义-测试”范式,其中生成部分定义搜索空间,测试部分验证解决方案候选是否实际为解决方案。
 - 答案集的解释:答案集被解释为理性代理可能持有的信念集。每个答案集代表一个理性代理的信念集,这些信念集可以通过简化前提集来推导出。
 
