Pub Date : 2000-07-01DOI: 10.1016/S0743-1066(99)00071-0
David Poole
The independent choice logic (ICL) is part of a project to combine logic and decision/game theory into a coherent framework. The ICL has a simple possible-worlds semantics characterised by independent choices and an acyclic logic program that specifies the consequences of these choices. This paper gives an abductive characterization of the ICL. The ICL is defined model-theoretically, but we show that it is naturally abductive: the set of explanations of a proposition g is a concise description of the worlds in which g is true. We give an algorithm for computing explanations and show it is sound and complete with respect to the possible-worlds semantics. What is unique about this approach is that the explanations of the negation of g can be derived from the explanations of g. The use of probabilities over choices in this framework and going beyond acyclic logic programs are also discussed.
{"title":"Abducing through negation as failure: stable models within the independent choice logic","authors":"David Poole","doi":"10.1016/S0743-1066(99)00071-0","DOIUrl":"https://doi.org/10.1016/S0743-1066(99)00071-0","url":null,"abstract":"<div><p>The independent choice logic (ICL) is part of a project to combine logic and decision/game theory into a coherent framework. The ICL has a simple possible-worlds semantics characterised by independent choices and an acyclic logic program that specifies the consequences of these choices. This paper gives an abductive characterization of the ICL. The ICL is defined model-theoretically, but we show that it is naturally abductive: the set of explanations of a proposition <em>g</em> is a concise description of the worlds in which <em>g</em> is true. We give an algorithm for computing explanations and show it is sound and complete with respect to the possible-worlds semantics. What is unique about this approach is that the explanations of the negation of <em>g</em> can be derived from the explanations of <em>g</em>. The use of probabilities over choices in this framework and going beyond acyclic logic programs are also discussed.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"44 1","pages":"Pages 5-35"},"PeriodicalIF":0.0,"publicationDate":"2000-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00071-0","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"91981433","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2000-07-01DOI: 10.1016/S0743-1066(99)00074-6
Jia-Huai You, Li Yan Yuan, Randy Goebel
Nonmonotonic reasoning has been explored as a form of abductive reasoning where default assumptions are treated as abductive hypotheses. While the semantics and proof theories under this approach have been studied extensively, the question of how disjunctive programs may be used to reason abductively has rarely been investigated. At the center of the question is how to embed disjunctive reasoning into that of negation-as-failure. A more concrete question is about whether the elegant abductive proof procedure by Eshghi and Kowalski can be extended to answer queries for disjunctive programs, and if yes, what is the semantics that such an extended procedure computes. In this paper we answer these questions by formulating a semantics, the regular extension semantics, for disjunctive programs, and by presenting a sound and complete extension of the Eshghi–Kowalski procedure, called disjunctive EK procedure, for query answering with respect to ground disjunctive programs under this semantics.
{"title":"An abductive approach to disjunctive logic programming","authors":"Jia-Huai You, Li Yan Yuan, Randy Goebel","doi":"10.1016/S0743-1066(99)00074-6","DOIUrl":"https://doi.org/10.1016/S0743-1066(99)00074-6","url":null,"abstract":"<div><p>Nonmonotonic reasoning has been explored as a form of abductive reasoning where default assumptions are treated as abductive hypotheses. While the semantics and proof theories under this approach have been studied extensively, the question of how disjunctive programs may be used to reason abductively has rarely been investigated. At the center of the question is how to embed disjunctive reasoning into that of negation-as-failure. A more concrete question is about whether the elegant abductive proof procedure by Eshghi and Kowalski can be extended to answer queries for disjunctive programs, and if yes, what is the semantics that such an extended procedure computes. In this paper we answer these questions by formulating a semantics, the <em>regular extension semantics</em>, for disjunctive programs, and by presenting a sound and complete extension of the Eshghi–Kowalski procedure, called <em>disjunctive EK procedure</em>, for query answering with respect to ground disjunctive programs under this semantics.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"44 1","pages":"Pages 101-127"},"PeriodicalIF":0.0,"publicationDate":"2000-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00074-6","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"91981430","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2000-06-01DOI: 10.1016/S0743-1066(99)00059-X
Alex Dekhtyar, V.S. Subrahmanian
The precise probability of a compound event (e.g. ) depends upon the known relationships (e.g. independence, mutual exclusion, ignorance of any relationship, etc.) between the primitive events that constitute the compound event. To date, most research on probabilistic logic programming has assumed that we are ignorant of the relationship between primitive events. Likewise, most research in AI (e.g. Bayesian approaches) has assumed that primitive events are independent. In this paper, we propose a hybrid probabilistic logic programming language in which the user can explicitly associate, with any given probabilistic strategy, a conjunction and disjunction operator, and then write programs using these operators. We describe the syntax of hybrid probabilistic programs, and develop a model theory and fixpoint theory for such programs. Last, but not least, we develop three alternative procedures to answer queries, each of which is guaranteed to be sound and complete.
{"title":"Hybrid probabilistic programs","authors":"Alex Dekhtyar, V.S. Subrahmanian","doi":"10.1016/S0743-1066(99)00059-X","DOIUrl":"10.1016/S0743-1066(99)00059-X","url":null,"abstract":"<div><p>The precise probability of a compound event (e.g. <span><math><mtext>e</mtext><msub><mi></mi><mn>1</mn></msub><mspace></mspace><mtext>∨</mtext><mspace></mspace><mtext>e</mtext><msub><mi></mi><mn>2</mn></msub><mtext>,e</mtext><msub><mi></mi><mn>1</mn></msub><mspace></mspace><mtext>∧</mtext><mspace></mspace><mtext>e</mtext><msub><mi></mi><mn>2</mn></msub></math></span>) depends upon the known relationships (e.g. independence, mutual exclusion, ignorance of any relationship, etc.) between the primitive events that constitute the compound event. To date, most research on probabilistic logic programming has assumed that we are ignorant of the relationship between primitive events. Likewise, most research in AI (e.g. Bayesian approaches) has assumed that primitive events are independent. In this paper, we propose a <em>hybrid</em> probabilistic logic programming language in which the user can explicitly associate, with any given probabilistic strategy, a conjunction and disjunction operator, and then write programs using these operators. We describe the syntax of hybrid probabilistic programs, and develop a model theory and fixpoint theory for such programs. Last, but not least, we develop three alternative procedures to answer queries, each of which is guaranteed to be sound and complete.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"43 3","pages":"Pages 187-250"},"PeriodicalIF":0.0,"publicationDate":"2000-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00059-X","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124325095","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2000-06-01DOI: 10.1016/S0743-1066(99)00079-5
Michael Codish , Kim Marriott , Cohavit Taboch
It is well-known that adding structural information to an analysis domain can increase the precision of the analysis with respect to the original domain. This paper presents a program transformation based on untupling and specialisation which can be applied to upgrade (logic) program analysis by providing additional structural information. It can be applied to (almost) any type of analysis and in conjunction with (almost) any analysis framework for logic programs. The approach is an attractive alternative to the more complex Pat construction which automatically enhances an abstract domain (in the context of abstract interpretation) with structural information.
{"title":"Improving program analyses, by structure untupling","authors":"Michael Codish , Kim Marriott , Cohavit Taboch","doi":"10.1016/S0743-1066(99)00079-5","DOIUrl":"10.1016/S0743-1066(99)00079-5","url":null,"abstract":"<div><p>It is well-known that adding structural information to an analysis domain can increase the precision of the analysis with respect to the original domain. This paper presents a program transformation based on untupling and specialisation which can be applied to upgrade (logic) program analysis by providing additional structural information. It can be applied to (almost) any type of analysis and in conjunction with (almost) any analysis framework for logic programs. The approach is an attractive alternative to the more complex <span>Pat</span><span><math><mtext>(</mtext><mtext>R</mtext><mtext>)</mtext></math></span> construction which automatically enhances an abstract domain <span><math><mtext>R</mtext></math></span> (in the context of abstract interpretation) with structural information.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"43 3","pages":"Pages 251-263"},"PeriodicalIF":0.0,"publicationDate":"2000-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00079-5","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132220199","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2000-05-01DOI: 10.1016/S0743-1066(99)00061-8
Mireille Ducassé , Jacques Noyé
Tracing by automatic program source instrumentation has major advantages over compiled code instrumentation: it is more portable from one Prolog system to another, it produces traces in terms of the original program, and it can be tailored to specific debugging needs. The main argument usually put forward in favor of compiled code instrumentation is its supposed efficiency. We have compared the performances of two operational low-level Prolog tracers with source instrumentation. We have executed classical Prolog benchmark programs, collecting trace information without displaying it. On average, collecting trace information by program instrumentation is about as fast as using a low-level tracer in one case, and only twice slower in the other. This is a minor penalty to pay, compared to the advantages of the approach. To our knowledge, this is the first time that a quantitative comparison of both approaches is made for any programming language.
{"title":"Tracing Prolog programs by source instrumentation is efficient enough","authors":"Mireille Ducassé , Jacques Noyé","doi":"10.1016/S0743-1066(99)00061-8","DOIUrl":"10.1016/S0743-1066(99)00061-8","url":null,"abstract":"<div><p>Tracing by automatic program source instrumentation has major advantages over compiled code instrumentation: it is more portable from one Prolog system to another, it produces traces in terms of the original program, and it can be tailored to specific debugging needs. The main argument usually put forward in favor of compiled code instrumentation is its supposed efficiency. We have compared the performances of two operational low-level Prolog tracers with source instrumentation. We have executed classical Prolog benchmark programs, collecting trace information without displaying it. On average, collecting trace information by program instrumentation is about as fast as using a low-level tracer in one case, and only twice slower in the other. This is a minor penalty to pay, compared to the advantages of the approach. To our knowledge, this is the first time that a quantitative comparison of both approaches is made for any programming language.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"43 2","pages":"Pages 157-172"},"PeriodicalIF":0.0,"publicationDate":"2000-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00061-8","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124174691","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}