本项目给出了一种基于抽象解释理论的逻辑程序测试和调试框架,其中测试用例的生成、症状的发现和调试(包括诊断和改错)交叉进行,由同一个错误引发的症状只有一个可引发调试过程的执行,并以此方式避免了对调试过程不必要的调用。本项目首次提出并讨论了考虑用户授权的ASP知识库中子知识库相对于完整知识库的正确性问题。给出了一种多用户情况下ASP知识库管理的方法。在逻辑程序回答集存在性判定方面,根据划分和环的概念,对逻辑程序中与与判断无关的规则进行削减,将该问题转化为判断组成否定圈的规则是否一致的问题。在此基础上提出了一种判定规则是否一致的算法。为了能够在利用ASP求解问题过程中使用现有的以经典逻辑表示的知识,给出了一种把以谓词逻辑公式表示的约束型知识和定义型知识转化为ASP程序或知识库的新方法,并以实例说明了其有效性。把基于ASP的知识表示和推理技术应用于机械装配序列规划,提高了装配规划中信息的重用率。为了提高该方法的规划能力,提出并实现了一种基于ASP的子装配体识别技术。给出了一种基于ASP的WEB服务组合形式化描述和验证方法,将组合性质的验证问题转化为求解逻辑程序的回答集。
英文主题词Verification of logic programs; Abstract interpretation; ASP knowledge base; Existence of answer sets; ASP-based problem solving