quickexplain算法的形式化证明和简单解释

IF 10.7 2区 计算机科学 Q1 COMPUTER SCIENCE, ARTIFICIAL INTELLIGENCE
Patrick Rodler
{"title":"quickexplain算法的形式化证明和简单解释","authors":"Patrick Rodler","doi":"10.1007/s10462-022-10149-w","DOIUrl":null,"url":null,"abstract":"<div><p>In his seminal paper of 2004, Ulrich Junker proposed the <span>QuickXplain</span> algorithm, which provides a divide-and-conquer computation strategy to find within a given set an irreducible subset with a particular (monotone) property. Beside its original application in the domain of constraint satisfaction problems, the algorithm has since then found widespread adoption in areas as different as model-based diagnosis, recommender systems, verification, or the Semantic Web. This popularity is due to the frequent occurrence of the problem of finding irreducible subsets on the one hand, and to <span>QuickXplain</span>’s general applicability and favorable computational complexity on the other hand. However, although (we regularly experience) people are having a hard time understanding <span>QuickXplain</span> and seeing why it works correctly, a proof of correctness of the algorithm has never been published. This is what we account for in this work, by explaining <span>QuickXplain</span> in a novel tried and tested way and by presenting an intelligible formal proof of it. Apart from showing the correctness of the algorithm and excluding the later detection of errors (<i>proof and trust effect</i>), the added value of the availability of a formal proof is, e.g., <i>(i)</i> that the workings of the algorithm often become completely clear only after studying, verifying and comprehending the proof (<i>didactic effect</i>), <i>(ii)</i> that the shown proof methodology can be used as a guidance for proving other recursive algorithms (<i>transfer effect</i>), and <i>(iii)</i> the possibility of providing “gapless” correctness proofs of systems that rely on (results computed by) <span>QuickXplain</span>, such as numerous model-based debuggers (<i>completeness effect</i>).</p></div>","PeriodicalId":8449,"journal":{"name":"Artificial Intelligence Review","volume":"55 8","pages":"6185 - 6206"},"PeriodicalIF":10.7000,"publicationDate":"2022-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://link.springer.com/content/pdf/10.1007/s10462-022-10149-w.pdf","citationCount":"6","resultStr":"{\"title\":\"A formal proof and simple explanation of the QuickXplain algorithm\",\"authors\":\"Patrick Rodler\",\"doi\":\"10.1007/s10462-022-10149-w\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><p>In his seminal paper of 2004, Ulrich Junker proposed the <span>QuickXplain</span> algorithm, which provides a divide-and-conquer computation strategy to find within a given set an irreducible subset with a particular (monotone) property. Beside its original application in the domain of constraint satisfaction problems, the algorithm has since then found widespread adoption in areas as different as model-based diagnosis, recommender systems, verification, or the Semantic Web. This popularity is due to the frequent occurrence of the problem of finding irreducible subsets on the one hand, and to <span>QuickXplain</span>’s general applicability and favorable computational complexity on the other hand. However, although (we regularly experience) people are having a hard time understanding <span>QuickXplain</span> and seeing why it works correctly, a proof of correctness of the algorithm has never been published. This is what we account for in this work, by explaining <span>QuickXplain</span> in a novel tried and tested way and by presenting an intelligible formal proof of it. Apart from showing the correctness of the algorithm and excluding the later detection of errors (<i>proof and trust effect</i>), the added value of the availability of a formal proof is, e.g., <i>(i)</i> that the workings of the algorithm often become completely clear only after studying, verifying and comprehending the proof (<i>didactic effect</i>), <i>(ii)</i> that the shown proof methodology can be used as a guidance for proving other recursive algorithms (<i>transfer effect</i>), and <i>(iii)</i> the possibility of providing “gapless” correctness proofs of systems that rely on (results computed by) <span>QuickXplain</span>, such as numerous model-based debuggers (<i>completeness effect</i>).</p></div>\",\"PeriodicalId\":8449,\"journal\":{\"name\":\"Artificial Intelligence Review\",\"volume\":\"55 8\",\"pages\":\"6185 - 6206\"},\"PeriodicalIF\":10.7000,\"publicationDate\":\"2022-04-07\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"https://link.springer.com/content/pdf/10.1007/s10462-022-10149-w.pdf\",\"citationCount\":\"6\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Artificial Intelligence Review\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://link.springer.com/article/10.1007/s10462-022-10149-w\",\"RegionNum\":2,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q1\",\"JCRName\":\"COMPUTER SCIENCE, ARTIFICIAL INTELLIGENCE\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Artificial Intelligence Review","FirstCategoryId":"94","ListUrlMain":"https://link.springer.com/article/10.1007/s10462-022-10149-w","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, ARTIFICIAL INTELLIGENCE","Score":null,"Total":0}
引用次数: 6

摘要

Ulrich Junker在他2004年的开创性论文中提出了quickexplain算法,该算法提供了一种分而治之的计算策略,可以在给定集合中找到具有特定(单调)性质的不可约子集。除了最初在约束满足问题领域的应用之外,该算法此后在基于模型的诊断、推荐系统、验证或语义Web等不同领域得到了广泛采用。这种流行一方面是由于寻找不可约子集的问题经常出现,另一方面是由于quickexplain的通用适用性和良好的计算复杂度。然而,尽管(我们经常会遇到)人们很难理解quickexplain并理解它为什么能正确工作,但该算法的正确性的证明从未发表过。这就是我们在这项工作中解释的,通过一种新颖的、经过验证的方式来解释quickexplain,并提出一个可理解的正式证明。除了显示算法的正确性和排除后来发现的错误(证明和信任效应)之外,形式证明的可用性的附加价值是,例如,(i)算法的工作原理通常只有在研究、验证和理解证明后才会变得完全清晰(说教效应),(ii)所示的证明方法可以用作证明其他递归算法的指导(转移效应)。(iii)提供依赖于quickexplain(计算结果)的系统的“无间隙”正确性证明的可能性,例如许多基于模型的调试器(完整性效应)。
本文章由计算机程序翻译,如有差异,请以英文原文为准。

A formal proof and simple explanation of the QuickXplain algorithm

A formal proof and simple explanation of the QuickXplain algorithm

A formal proof and simple explanation of the QuickXplain algorithm

A formal proof and simple explanation of the QuickXplain algorithm

In his seminal paper of 2004, Ulrich Junker proposed the QuickXplain algorithm, which provides a divide-and-conquer computation strategy to find within a given set an irreducible subset with a particular (monotone) property. Beside its original application in the domain of constraint satisfaction problems, the algorithm has since then found widespread adoption in areas as different as model-based diagnosis, recommender systems, verification, or the Semantic Web. This popularity is due to the frequent occurrence of the problem of finding irreducible subsets on the one hand, and to QuickXplain’s general applicability and favorable computational complexity on the other hand. However, although (we regularly experience) people are having a hard time understanding QuickXplain and seeing why it works correctly, a proof of correctness of the algorithm has never been published. This is what we account for in this work, by explaining QuickXplain in a novel tried and tested way and by presenting an intelligible formal proof of it. Apart from showing the correctness of the algorithm and excluding the later detection of errors (proof and trust effect), the added value of the availability of a formal proof is, e.g., (i) that the workings of the algorithm often become completely clear only after studying, verifying and comprehending the proof (didactic effect), (ii) that the shown proof methodology can be used as a guidance for proving other recursive algorithms (transfer effect), and (iii) the possibility of providing “gapless” correctness proofs of systems that rely on (results computed by) QuickXplain, such as numerous model-based debuggers (completeness effect).

求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Artificial Intelligence Review
Artificial Intelligence Review 工程技术-计算机:人工智能
CiteScore
22.00
自引率
3.30%
发文量
194
审稿时长
5.3 months
期刊介绍: Artificial Intelligence Review, a fully open access journal, publishes cutting-edge research in artificial intelligence and cognitive science. It features critical evaluations of applications, techniques, and algorithms, providing a platform for both researchers and application developers. The journal includes refereed survey and tutorial articles, along with reviews and commentary on significant developments in the field.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信