Program optimization with logic program transformation

Author(s):  
Hiroshi Hoshino ◽  
Masahiro Esashi ◽  
Kiyoshi Agusa ◽  
Yutaka Ohno
2013 ◽  
Vol 129 ◽  
pp. 186-210 ◽  
Author(s):  
Emanuele De Angelis ◽  
Fabio Fioravanti ◽  
Alberto Pettorossi ◽  
Maurizio Proietti

2010 ◽  
Vol 19 (01) ◽  
pp. 39-63
Author(s):  
EMMANUIL MARAKAKIS ◽  
KOSTAS VASSILAKIS ◽  
NIKOS PAPADAKIS

This paper studies the problem of removing unused arguments from logic programs which have been constructed by a schema-based method. Our schema-based method constructs logic programs semi-automatically. These programs have clear structure which depicts the design decisions that have been taken for their construction. On the other hand, these programs have unused arguments. We propose a method that automatically removes the unused arguments from such programs. This method is based on fold-unfold transformations. We have developed a tool which implements our method and evaluates the initial and the transformed programs. This logic program transformation tool is presented as well.


2004 ◽  
Vol 4 (3) ◽  
pp. 355-369
Author(s):  
JAN HRŮZA ◽  
PETER šTĚPÁNEK

Binary logic programs can be obtained from ordinary logic programs by a binarizing transformation. In most cases, binary programs obtained this way are less efficient than the original programs. (Demoen, 1992) showed an interesting example of a logic program whose computational behaviour was improved when it was transformed to a binary program and then specialized by partial deduction. The class of B-stratifiable logic programs is defined. It is shown that for every B-stratifiable logic program, binarization and subsequent partial deduction produce a binary program which does not contain variables for continuations introduced by binarization. Such programs usually have a better computational behaviour than the original ones. Both binarization and partial deduction can be easily automated. A comparison with other related approaches to program transformation is given.


1993 ◽  
Vol 22 (453) ◽  
Author(s):  
Torben Amtoft

<p>The main purpose of the thesis is to develop a model enabling one to reason about various techniques for program optimization, in particular wrt.\ speedup and correctness. Moreover, several methods to increase the amount of sharing are discussed, and a new one (to be termed ''ultimate sharing'') is treated in detail.</p><p> </p><p>Concerning speedup, a main point is to factor out the reasons why a program transformation may yield more than a constant speedup.</p><p> </p><p>Concerning correctness, the interesting part is preservation of termination properties. This issue is mainly addressed for a logic language, where previous results from the literature are generalized -- but also for a functional language some (more limited) results are presented.</p>


Sign in / Sign up

Export Citation Format

Share Document