{"title":"Pair-sharing over rational trees","authors":"Andy King","doi":"10.1016/S0743-1066(00)00009-1","DOIUrl":"10.1016/S0743-1066(00)00009-1","url":null,"abstract":"<div><p>Sharing information is useful in specialising, optimising and parallelising logic programs and thus sharing analysis is an important topic of both abstract interpretation and logic programming. Sharing analyses infer which pairs of program variables can never be bound to terms that contain a common variable. We generalise a classic pair-sharing analysis from Herbrand unification to trace sharing over rational tree constraints. This is useful for reasoning about programs written in SICStus and Prolog-III because these languages use rational tree unification as the default equation solver.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"46 1","pages":"Pages 139-155"},"PeriodicalIF":0.0,"publicationDate":"2000-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(00)00009-1","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122750093","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}
{"title":"Meta-agent programs","authors":"Jürgen Dix , V.S. Subrahmanian , George Pick","doi":"10.1016/S0743-1066(99)00062-X","DOIUrl":"10.1016/S0743-1066(99)00062-X","url":null,"abstract":"<div><p>There are numerous applications where an agent <span><math><mtext>a</mtext></math></span> needs to reason about the beliefs of another agent, as well as about the actions that other agents may take. In [T. Eiter, V.S. Subrahmanian, G. Pick, Heterogeneous Active Agents, I: Semantics, Artificial Intelligence 108(1–2) (1999) 179–255] the concept of an agent program is introduced, and a language within which the operating principles of an agent can be declaratively encoded on top of imperative data structures is defined. In this paper we first introduce certain belief data structures that an agent needs to maintain. Then we introduce the concept of a <em>Meta Agent Program</em> (<span>map</span>), that extends the framework of Refs. [T. Eiter, V.S. Subrahmanian, Heterogeneous Active Agents, II: Algorithms and Complexity, Artificial Intelligence 108(1–2) (1999) 257–307; loc. cit.] so as to allow agents to perform metareasoning. We build a formal semantics for <span>map</span>s, and show how this semantics supports not just beliefs agent <span><math><mtext>a</mtext></math></span> may have about agent <span><math><mtext>b</mtext></math></span> 's state, but also beliefs about agents <span><math><mtext>b</mtext></math></span> 's beliefs about agent <span><math><mtext>c</mtext></math></span> 's actions, beliefs about <span><math><mtext>b</mtext></math></span> 's beliefs about agent <span><math><mtext>c</mtext></math></span> 's state, and so on. Finally, we provide a transansation that takes any <span>map</span> as input and converts it into an agent program such that there is a one–one correspondence between the semantics of the <span>map</span> and the semantics of the resulting agent program. This correspondence allows an implementation of <span>map</span>s to be built on top of an implementation of agent programs.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"46 1","pages":"Pages 1-60"},"PeriodicalIF":0.0,"publicationDate":"2000-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00062-X","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130141485","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}
{"title":"Decidability of logic program semantics and applications to testing","authors":"Salvatore Ruggieri","doi":"10.1016/S0743-1066(99)00067-9","DOIUrl":"10.1016/S0743-1066(99)00067-9","url":null,"abstract":"<div><p>In this paper, we investigate the decidability problem of logic program semantics and observables, focusing in particular on the least Herbrand model (or <span><math><mtext>M</mtext></math></span>-semantics), the <span><math><mtext>C</mtext></math></span>-semantics, and the <span><math><mtext>S</mtext></math></span>-semantics. We introduce <em>bounded logic programs</em>, and show that they coincide with programs such that every ground query has finitely many SLD-refutations via any selection rule. In particular, bounded programs strictly include the well-studied class of acceptable logic programs. We show that the mentioned declarative semantics are decidable when considering acceptable programs and programs bounded by recursive level mappings. Interestingly, the decision procedures have direct implementations in the logic programming paradigm itself as Prolog meta-programs. We relate semantics decidability to program testing. In our terminology, the testing problem consists of checking whether or not the formal semantics of a program includes a given <em>finite</em> set of atoms. With this definition, semantics decidability and the testing problem are equivalent. The decision procedures are then recognized to be automatic tools for testing logic programs. The meta-programming approach reveals to be successful in modeling extensions such as arithmetic built-in's, negation, modular programming and some other declarative semantics. Also, we present some preliminary experimental results and an efficient compilation-oriented approach that overcome the overhead due to meta-programming.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"46 1","pages":"Pages 103-137"},"PeriodicalIF":0.0,"publicationDate":"2000-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00067-9","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122624494","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}
Rachel Ben-Eliyahu-Zohary , Luigi Palopoli , Victoria Zemlyanker
{"title":"More on tractable disjunctive Datalog","authors":"Rachel Ben-Eliyahu-Zohary , Luigi Palopoli , Victoria Zemlyanker","doi":"10.1016/S0743-1066(99)00066-7","DOIUrl":"10.1016/S0743-1066(99)00066-7","url":null,"abstract":"<div><p>Sometimes it is more natural to express knowledge in disjunctive Datalog rather than in ordinary Datalog. Several highly complex variants of disjunctive Datalog have been proposed in the past and their expressive power has been studied. In this paper we investigate <em>tractable</em> fragments of disjunctive Datalog. Algorithms are presented to answer queries defined using these fragments and their complexity analyzed. Furthermore, the expressive power of these tractable subsets is studied. The most expressive of the languages considered here is shown to express, in some sense explained in the paper, all polynomial time queries. This is the first identified fragment of disjunctive Datalog with this property.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"46 1","pages":"Pages 61-101"},"PeriodicalIF":0.0,"publicationDate":"2000-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00066-7","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117275665","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}
{"title":"Introduction to the constraint language NCL","authors":"Jianyang Zhou","doi":"10.1016/S0743-1066(99)00063-1","DOIUrl":"10.1016/S0743-1066(99)00063-1","url":null,"abstract":"<div><p>The design, implementation and application of a natural constraint language <span>NCL</span> <!-->are presented. At the solver level, to support the solving of a large scope of combinatorial problems, a rich set of conventional constraints is defined within a constraint framework that strongly combines Boolean logic, integer constraints and set reasoning over finite domains. The basic computation model for solving conjunctions of elementary constraints with possible existential and universal quantifications is described using rewrite rules. At the language level, to upgrade the expressive power, a natural syntax (context-dependent), which completely adopts mathematical notations, is designed. To enhance the constraint handling capability, quantification, logical switch, referencing mechanism, global/dynamic constraints, meta expressions, multi-criteria optimization, and search specifications are cooperatively introduced in a single constraint system. Compared to existing modeling languages, a strong feature of <span>NCL</span> <!-->is: Data, constraints and control are fully integrated and are clearly separable. Especially, though <span>NCL</span> <!-->deals with several data types such as Boolean, integer, set, index, reference, array and tuple, there is no need to declare data explicitly. This context-sensitive data typing makes <span>NCL</span> <!-->programs direct, concise and liberal.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"45 1","pages":"Pages 71-103"},"PeriodicalIF":0.0,"publicationDate":"2000-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(99)00063-1","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122053202","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}
Andy Heaton , Muhamed Abo-Zaed , Michael Codish , Andy King
{"title":"A simple polynomial groundness analysis for logic programs","authors":"Andy Heaton , Muhamed Abo-Zaed , Michael Codish , Andy King","doi":"10.1016/S0743-1066(00)00006-6","DOIUrl":"10.1016/S0743-1066(00)00006-6","url":null,"abstract":"<div><p>The domain of positive Boolean functions, <em>Pos</em>, is by now well established for the analysis of the variable dependencies that arise within logic programs. Analyses based on <em>Pos</em> that use binary decision diagrams (BDDs) have been shown to be efficient for a wide range of practical programs. However, independent of the representation, a <em>Pos</em> analysis can never come with any efficiency guarantees because of its potential exponential behaviour. This paper considers groundness analysis based on a simple subdomain of <em>Pos</em> and compares its precision with that of <em>Pos</em>.</p></div>","PeriodicalId":101236,"journal":{"name":"The Journal of Logic Programming","volume":"45 1","pages":"Pages 143-156"},"PeriodicalIF":0.0,"publicationDate":"2000-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1016/S0743-1066(00)00006-6","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128913557","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}