43364652
Effective SAT Planning by Speculative Computation
In recent years, SAT planning has been studied actively. In this paper, we propose a new method, called speculative computation, for accelerating the SAT planning. A SATplanner firstly translates a planning problem into the boolean satisfiability (SAT) problem, and secondly solves it by a general-purpose SAT solver. Blackbox [1], which is one of the fastest planning systems in the world, is based on this approach. Given a planning problem, Blackbox performs the following; (i) assumes that the plan length is i (initially, i = 1), (ii) translates the planning problem into a SAT problem P i, and (iii) solves P i. If P i is found to be satisfiable, the Blackbox extracts a plan of length i from the truth assignment satisfying P i. When P i is unsatisfiable, the planner increases the plan length to be i + 1, and returns to (i).
2734655
Negation in Disjunctive Logic Programs
In this paper, we study inferring negation from disjunctive logic programs. First, we consider extensions of the GCWA and the WGCWA for general disjunctive programs based upon the stable model semantics. We de ne new rules, the GCWA : and the WGCWA : , which are natural extensions of the GCWA and the WGCWA. Second, we introduce a new semantics called the possible world semantics for general disjunctive programs, which was initially introduced in [Sak89] for positive disjunctive programs. The possible world assumption (PWA) infers negation under the possible world semantics, which lies between the GCWA and the WGCWA in positive disjunctive programs. The PWA is also extended to the PWA : for general disjunctive programs. Then it is shown that the PWA : provides a powerful and the most careful negative inference compared with the GCWA : and the WGCWA : . We also present a bottom-up model generation proof procedure to compute each negation in general disjunctive programs.
16797379
Transforming Abductive Logic Programs to Disjunctive Programs
A new xpoint semantics for abductive logic programs is provided, in which the generalized stable models of an abductive program are characterized as the xpoint of a disjunctive program obtained by a suitable program transformation. In the transformation, both negative hypotheses through negation as failure and positive hypotheses from the abducibles are dealt with uniformly. This characterization allows us to have a parallel bottomup model generation procedure for computing abductive explanations from arbitrary (range-restricted and function-free) general, extended, and disjunctive programs with integrity constraints.
14278996
Embedding Circumscriptive Theories in General Disjunctive Programs
This paper presents a method of embedding circumscriptive theories in general disjunctive programs. In a general disjunctive program, negation as failure occurs not only in the body but in the head of a rule. In this setting, minimized predicates of a circumscriptive theory are specified using the negation in the body, while fixed and varying predicates are expressed by the negation in the head. Moreover, the translation implies a close relationship between circumscription and abductive logic programming. That is, fixed and varying predicates in a circumscriptive theory are also viewed as abducible predicates in an abductive disjunctive program. Our method of translating circumscription into logic programming is fairly general compared with the existing approaches and exploits new applications of logic programming for representing commonsense knowledge.
4789511
Computing extended abduction through transaction programs
To explain observations from nonmonotonic background theories, one often needs removal of some hypotheses as well as addition of other hypotheses. Moreover, some observations should not be explained, while some are to be explained. In order to formalize these situations, extended abduction was introduced by Inoue and Sakama (1995) to generalize traditional abduction in the sense that it can compute negative explanations by removing hypotheses and anti‐explanations to unexplain negative observations. In this paper, we propose a computational mechanism for extended abduction. When a background theory is written in a normal logic program, we introduce its transaction program for computing extended abduction. A transaction program is a set of non‐deterministic production rules that declaratively specify addition and deletion of abductive hypotheses. Abductive explanations are then computed by the fixpoint of a transaction program using a bottom‐up model generation procedure. The correctness of the proposed procedure is shown for the class of acyclic covered abductive logic programs. In the context of deductive databases, a transaction program provides a declarative specification of database update.
39318479
Extended Logic Programs with Default Assumptions
17693551
Analysis of functional programs to detect run-time garbage cells
We propose a method for detecting the generation of garbage cells by analyzing a source text written in a functional programming language which uses ordinary linked lists to implement list-type values. For a subexpression such as <italic>F</italic>(<italic>G</italic>( . . . )) in a program where the function values of <italic>F</italic> and <italic>G</italic> are of list type, if a cell <italic>c</italic> is created during the computation of <italic>G</italic> and if <italic>c</italic> does not appear in a list-type value of <italic>F</italic>, then <italic>c</italic> becomes a garbage cell at the end of the computation of <italic>F</italic>. We discuss this problem on the basis of formal languages derived from the functional program text and show some sufficient conditions that predict the generation of garbage cells. Also, we give an efficient algorithm to detect at compile time the generation of garbage cells which are linearly linked. We have implemented these algorithms in an experimental LISP system. By executing several sample programs on the system, we conclude that our method is effective in detecting the generation of garbage cells.
17773922
A formal adaption method for process descriptions
Requirement to describing software development processes in formal manners has been increased, and demand for altering and tailoring the process descriptions has been emerged. In this paper, we propose a functional language PDL (Process Description Language), designed to describe various development processes under a certain environment. To create and modify the PDL scripts easily and correctly, we propose a method of stepwise refinement from abstract scripts into concrete scripts. By this method, the abstract definitions of software process flow and product flow initially given as function definitions irk PDL, are transformed into the concrete definitions of the tool activations, message displays, and so on. We also discuss an architecture design of a software development environment (Adaptable Software Development Environment), which can be adapted in many ways for designer's requirements.
10307213
Very-Large Scale Code Clone Analysis and Visualization of Open Source Programs Using Distributed CCFinder: D-CCFinder
The increasing performance-price ratio of computer hardware makes possible to explore a distributed approach at code clone analysis. This paper presents D-CCFinder, a distributed approach at large-scale code clone analysis. D-CCFinder has been implemented with 80 PC workstations in our student laboratory, and a vast collection of open source software with about 400 million lines in total has been analyzed with it in about 2 days. The result has been visualized as a scatter plot, which showed the presence of frequently used code as easy recognizable patterns. Also, D-CCFinder has been used to analyze a single software system against the whole collection in order to explore the presence of code imported from open source software.