Emilia Oikarinen
Helsinki University of Technology
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Emilia Oikarinen.
Journal of Artificial Intelligence Research | 2009
Tomi Janhunen; Emilia Oikarinen; Hans Tompits; Stefan Woltran
Practically all programming languages allow the programmer to split a program into several modules which brings along several advantages in software development. In this paper, we are interested in the area of answer-set programming where fully declarative and nonmonotonic languages are applied. In this context, obtaining a modular structure for programs is by no means straightforward since the output of an entire program cannot in general be composed from the output of its components. To better understand the effects of disjunctive information on modularity we restrict the scope of analysis to the case of disjunctive logic programs (DLPs) subject to stable-model semantics. We define the notion of a DLP-function, where a well-defined input/output interface is provided, and establish a novel module theorem which indicates the compositionality of stable-model semantics for DLP-functions. The module theorem extends the well-known splitting-set theorem and enables the decomposition of DLP-functions given their strongly connected components based on positive dependencies induced by rules. In this setting, it is also possible to split shared disjunctive rules among components using a generalized shifting technique. The concept of modular equivalence is introduced for the mutual comparison of DLP-functions using a generalization of a translation-based verification method.
Theory and Practice of Logic Programming | 2008
Emilia Oikarinen; Tomi Janhunen
In this paper, a Gaifman–Shapiro-style module architecture is tailored to the case of smodels programs under the stable model semantics. The composition of smodels program modules is suitably limited by module conditions which ensure the compatibility of the module system with stable models. Hence the semantics of an entire smodels program depends directly on stable models assigned to its modules. This result is formalized as a module theorem which truly strengthens V. Lifschitz and H. Turners splitting-set theorem (June 1994, Splitting a logic program. In Logic Programming: Proceedings of the Eleventh International Conference on Logic Programming, Santa Margherita Ligure, Italy, P. V. Hentenryck, Ed. MIT Press, 23–37) for the class of smodels programs. To streamline generalizations in the future, the module theorem is first proved for normal programs and then extended to cover smodels programs using a translation from the latter class of programs to the former class. Moreover, the respective notion of module-level equivalence, namely modular equivalence, is shown to be a proper congruence relation: it is preserved under substitutions of modules that are modularly equivalent. Principles for program decomposition are also addressed. The strongly connected components of the respective dependency graph can be exploited in order to extract a module structure when there is no explicit a priori knowledge about the modules of a program. The paper includes a practical demonstration of tools that have been developed for automated (de)composition of smodels programs.
international conference on logic programming | 2009
Matti Järvisalo; Emilia Oikarinen; Tomi Janhunen; Ilkka Niemelä
We develop a module-based framework for constraint modeling where it is possible to combine different constraint modeling languages and exploit their strengths in a flexible way. In the framework a constraint model consists of modules with clear input/output interfaces. When combining modules, apart from the interface, a module is a black box whose internals are invisible to the outside world. Inside a module a chosen constraint language (approaches such as CP, ASP, SAT, and MIP) can be used. This leads to a clear modular semantics where the overall semantics of the whole constraint model is obtained from the semantics of individual modules. The framework supports multi-language modeling without the need to develop a complicated joint semantics and enables the use of alternative semantical underpinnings such as default negation and classical negation in the same model. Furthermore, computational aspects of the framework are considered and, in particular, possibilities of benefiting from the known module structure in solving constraint models are studied.
european conference on logics in artificial intelligence | 2004
Tomi Janhunen; Emilia Oikarinen
The stable model semantics of disjunctive logic programs is based on classical models which are minimal with respect to subset inclusion. As a consequence, every atom appearing in a disjunctive program is false by default. This is sometimes undesirable from the knowledge representation point of view and a more refined control of minimization is called for. Such features are already present in Lifschitz’s parallel circumscription where certain atoms are allowed to vary or to have fixed values while all other atoms are minimized. In this paper, it is formally shown that the expressive power of minimal models is properly increased in the presence of varying atoms. In spite of this, we show how parallel circumscription can be embedded into disjunctive logic programming in a relatively systematic fashion using a linear and faithful, but non-modular translation. This enables the conscious use of varying atoms in disjunctive logic programs — leading to more elegant and concise problem representations in various domains.
international conference on logic programming | 2004
Emilia Oikarinen; Tomi Janhunen
In this paper, we address the problem of checking whether two disjunctive logic programs possess exactly the same stable models. An existing translation-based method [14], which was designed for weight constraint programs supported by the smodels system, is generalized to the disjunctive case. Moreover, we report on our preliminary experiments with an implementation of the method, a translator called dlpeq.
european conference on logics in artificial intelligence | 2002
Tomi Janhunen; Emilia Oikarinen
Solving a problem in the answer set programming approach means constructing a logic program so that the answer sets of the program correspond to the solutions to the problem. Typically, a programmer develops a series of improved formulations for a particular problem. Consequently, the programmer is confronted by another problem, namely ensuring that subsequent formulations are equivalent, i.e., give rise to the same answer sets. To ease answer set programming, we propose a methodology for testing the equivalence of logic programs. The basic idea is to translate the logic programs P and Q under consideration into a single logic program R whose answer sets (if such exist) yield counter-examples to the equivalence of P and Q. The translation function presented in the paper has been implemented as a translator program LPEQ that enables the equivalence testing of logic programs using the SMODELS system. Experiments performed with LPEQ and SMODELS suggest that establishing the equivalence of logic programs in this way is in certain cases much faster than explicit cross-checking of answer sets.
Theory and Practice of Logic Programming | 2008
Matti Järvisalo; Emilia Oikarinen
We introduce an extended tableau calculus for answer set programming (ASP). The proof system is based on the ASP tableaux defined in the work by Gebser and Schaub (Tableau calculi for answer set programming. In Proceedings of the 22nd International Conference on Logic Programming (ICLP 2006), S. Etalle and M. Truszczynski, Eds. Lecture Notes in Computer Science, vol. 4079. Springer, 11–25) with an added extension rule. We investigate the power of Extended ASP Tableaux both theoretically and empirically. We study the relationship of Extended ASP Tableaux with the Extended Resolution proof system defined by Tseitin for sets of clauses, and separate Extended ASP Tableaux from ASP Tableaux by giving a polynomial-length proof for a family of normal logic programs {Φn} for which ASP Tableaux has exponential-length minimal proofs with respect to n. Additionally, Extended ASP Tableaux imply interesting insight into the effect of program simplification on the lengths of proofs in ASP. Closely related to Extended ASP Tableaux, we empirically investigate the effect of redundant rules on the efficiency of ASP solving.
Theory and Practice of Logic Programming | 2007
Tomi Janhunen; Emilia Oikarinen
In answer set programming (ASP), a problem at hand is solved by (i) writing a logic program whose answer sets correspond to the solutions of the problem, and by (ii) computing the answer sets of the program using an answer set solver as a search engine. Typically, a programmer creates a series of gradually improving logic programs for a particular problem when optimizing program length and execution time on a particular solver. This leads the programmer to a meta-level problem of ensuring that the programs are equivalent, i.e., they give rise to the same answer sets. To ease answer set programming at methodological level, we propose a translation-based method for verifying the equivalence of logic programs. The basic idea is to translate logic programs P and Q under consideration into a single logic program EQT(P,Q) whose answer sets (if such exist) yield counter-examples to the equivalence of P and Q. The method is developed here in a slightly more general setting by taking the visibility of atoms properly into account when comparing answer sets. The translation-based approach presented in the paper has been implemented as a translator called lpeq that enables the verification of weak equivalence within the smodels system using the same search engine as for the search of models. Our experiments with lpeq and smodels suggest that establishing the equivalence of logic programs in this way is in certain cases much faster than naive cross-checking of answer sets.
Theory and Practice of Logic Programming | 2015
Laura Koponen; Emilia Oikarinen; Tomi Janhunen; Laura K. Säilä
The supertree construction problem is about combining several phylogenetic trees with possibly conflicting information into a single tree that has all the leaves of the source trees as its leaves and the relationships between the leaves are as consistent with the source trees as possible. This leads to an optimization problem that is computationally challenging and typically heuristic methods, such as matrix representation with parsimony (MRP), are used. In this paper we consider the use of answer set programming to solve the supertree construction problem in terms of two alternative encodings. The first is based on an existing encoding of trees using substructures known as quartets, while the other novel encoding captures the relationships present in trees through direct projections. We use these encodings to compute a genus-level supertree for the family of cats (Felidae). Furthermore, we compare our results to recent supertrees obtained by the MRP method.
Journal of Logic and Computation | 2009
Emilia Oikarinen; Tomi Janhunen
The goal of this article is to foster modular program development in answer set programming using a Gaifman-Shapiro-style module architecture. More specifically, a method for verifying the equivalence of logic program modules is devised and proved correct. The idea is to adapt a translation-based verification technique, which was originally devised for complete programs only, for program modules. In addition, optimization strategies are addressed in order to exploit the modular structure of programs in verification tasks. A number of experiments on verification strategies are also conducted using lpeq which implements the verification method for the smodels system. The preliminary experimental results reported in this article suggest that the modularization of equivalence verification leads to potential time savings especially if the modules involved share a common context.