129 citations found. Retrieving documents...
A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19-20:261--320, 1994.

 @ NUS  Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

Skeleton-based Agent Development for Electronic - Institutions Wamberto..   (Correct)

.... initial program is a skeleton and the re nements are techniques added to it [3, 4] Logic program development can thus be seen as a transformation activity [25, 29] in which legal operations on a program (adding techniques) must preserve desirable properties (such as, for instance, termination) [19]. 4.1 Prolog Programming via Skeletons and Techniques To illustrate the skeletons and techniques approach, using a particular form of logic programming, viz. Prolog [1] we show in Fig. 9 an example. In this example, an initial skeleton for a Prolog program, s=1, to traverse a list (left hand ....

M. Proietti and A. Pettorossi. Transformations of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19, 20:261-320, 1994.


Automatic Tupling for Functional-Logic Programs - Moreno (2002)   (Correct)

....called tupling [20] but here we prefer to reserve this word for the global algorithm. calls to be tupled are not nested and they may be arbitrarily distributed in the right hand side of a rule. Sophisticated static analysis have been developed in the literature using dependencies graphs ([11, 19]) m dags ( 8] symbolic trace trees [9] and other intrincated structures. The main problems appearing in such approaches are that the analysis are not as general as wanted (they can fail even although the program admits tupling optimizations) they are time and space consuming and or they may ....

A. Pettorossi and M. Proietti. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19,20:261--320, 1994.


Removing Redundant Arguments of Functions - Alpuente, Escobar, Lucas (2002)   (1 citation)  (Correct)

....have redundant arguments which are normal forms. Among the vast literature on analysis (and removal) of unnecessary data structures, the analyses of unneededness (or absence) of functional programming [9, 16] and the ltering of useless arguments and unnecessary variables of logic programming [25, 31] are the closest to our work. In [16] a notion of needed unneeded parameter for list manipulation programs is introduced which is closely related to the redundancy of ours in that it is capable of identifying whether the value of a subexpression is ignored. The method is formulated in terms of a ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. J. Logic Program. 19,20, 261-320.


Correction of Functional Logic Programs - Alpuente, Ballis, Correa, Falaschi (2003)   (Correct)

....reasoning with the deductive process, so that the derived program is guaranteed to be correct. Unfortunately, it is known that the deductive process alone (i.e. unfolding) does not generally suce for coming up with the corrected program, and inductive generalization techniques are necessary [15, 34, 35]. In [23, 24, 20] a bottom up framework for synthesizing correct functional logic programs (w.r.t. the ground success set, Herbrand semantics) is presented which induces program rules from sets of equations which are respectively incorrect and correct w.r.t. the pursued program. Their ....

A. Pettorossi and M. Proietti. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19,20:261-320, 1994. 16


Redundancy of Arguments Reduced to Induction - Alpuente, Echahed, Escobar, Lucas (2002)   (Correct)

....The application of automatic transformation processes during the formal development and optimization of programs can introduce encumbrances in the generated code that programmers usually (or presumably) do not write. Examples are redundant arguments in the functions de ned in the program [1, 2, 7, 13, 15, 18, 20, 21, 24, 27]. Example 1. Consider the following program, which can be used for adding and substracting natural numbers in Peano s notation: minus(x,0) x plus(0,y) y minus(0,s(y) 0 plus(s(x) y) s(plus(x,y) minus(s(x) s(y) minus(x,y) Work partially supported by CICYT TIC2001 2705 C03 01, ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, pages 261-32, 1994.


Preserving Termination of Tabled Logic Programs While.. - Leuschel, Martens, Sagonas (1997)   (4 citations)  (Correct)

....have been developed, usually based on the use of the fold unfold framework. This framework dates back to at least [2] has been introduced to the logic programming community in a seminal paper of Tamaki and Sato [26] has since been the subject of considerable research (see e.g. the references in [18]) and has been successfully used in many partial evaluators for Prolog style execution [20, 19, 25, 8] Unfortunately, no methodology for the transformation or specialisation of tabled logic programs exists. All techniques stay within the context of untabled execution. Initially, one may expect ....

....the unfolding is called determinate. Finally, left most unfolding unfolds the first literal in bd(C) i.e. F is empty) For example, given P 0 = fp q r; q rg, we can unfold p q r wrt q using P 0 , deriving the clause p r r and we get P 1 = fp r r; q rg. Note that, in contrast to [18], we treat programs as sets of clauses and not as sequences of clauses. For pure tabled programs, the order (and multiplicity) of clauses makes no difference for the termination properties we are (primarily) interested in preserving (the order of clauses and the order of solutions has no ....

[Article contains additional citation context not shown here]

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. The Journal of Logic Programming, 19& 20:261--320, May 1994.


Transformation And Analysis Of (constraint) Logic Programs - Etalle (1995)   (10 citations)  (Correct)

....uzfoldizg H iz cl iz P consists of replacing cl by clS, cl, in P. In this situation we also say that H1 4 Cl [ 1, 4 c, are the uzfold izg clauses. Example 6.4. 2 (part 2) The transformation strategy which we use to optimize AVERAGE is often referred to as tupizg (see [77]) or as pocedural joi, see [62] First, we introduce a ,cw predicate avl defined by the following clause avl(List, RATES, AV, LEN) 4 AV is the average of the list List, and LEN is its length c2: avl(XS, RATES, AV, LEN) 4 LEN 0 A AV LEN = SUM [ exchange rates (RATES) weighted sum(Xs, ....

....For this reason c3 could be removed from the body of the program; to do that we need the following operation. Definition 6.4.4 (Clause Removal) Let cl: H c [ t) be a clause in the pro gram P. If Then we can remove cl from the program P, obtaining the program P = P cl . Note 6.4. 5 In [77] we find the definition of a clause dclctioil operation for purqlogic programs which in CLP ternis can be expressed as follows: if cl: H c [ B is a clause in P such that query c [ 9 has a finitely failed tree in p2 then we can remove cl from P. Obviously, if 0 [ 3 c then the goal c [ A ....

[Article contains additional citation context not shown here]

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and thechniques. Jourzal of Logic Programmizg, 19,20:261 320, 1994.


Towards a Logic for Reasoning about Logic Programs.. - Momigliano, Ornaghi   (Correct)

....is the complement of the union of success and atoms with infinite trees. ut 4 Partial Deduction We are now in the position of giving an abstract and very high level view of Partial Deduction (PD) 5, 6, 7, 8] thanks to our framework. Note that we shall not be concerned with the pragmatics of PD [13, 11, 2] like unfolding rules, loop detection et cetera: those issues can be dealt with as usual. We will express PD be via the converse of the clause application rule, called clause introduction and indicated by ci. The rule discharges the (u th occurrence (s) of the set of) assumption(s) B. B u Pi C C ....

....We can separate success from finite failure by requesting only completeness with respect to the former. In this case, it may be the case that some proof trees required only to preserve infinite trees can be omitted. 5 Unfolding and Folding Let us now turn to analyzing unfolding and folding ([11, 15, 16, 17], to name just a few) 5.1 Unfolding Unfolding needs the admissible rule ci, for which we have already given the translation function . Admissibility of ci and strict monotonicity of have been shown, too. Since we are interested in all the possible goals, we look for G completeness, where G ....

[Article contains additional citation context not shown here]

Pettorossi, A., Proietti, M.: Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming 19--20 (1994) 261--321


Ph.D. Thesis Proposal: Transformation of Constraint Logic Programs - Fioravanti   (Correct)

....main motivation for this extension is that often very e cient algorithms exist to solve problems over speci c domains, so the Prolog engine, which is only able to deal with constraints over nite terms, has been augmented with specialized solvers for di erent domains. Program transformation (see [13] for a survey) is a powerful methodology for advanced software development whose aim is to separate the issue of writing correct programs from that of writing e cient programs. My research will be mainly concerned with the transformation of constraint logic programs based on transformation rules ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261320, 1994.


Transformation Systems and Nondeclarative Properties - Bossi, Cocco, Etalle   (Correct)

....direct recursion in a definition (as done in Example 3.7) which is generally regarded as the key aspect of the folding operation. We should mention another definition of fold, strictly stronger than Definition 3.6. It allows for simultaneous folding of different clauses and has been proposed in [PP94a] by extending the idea of fold as the inverse of unfold to the case when multiple unfoldings are possible. 3.2.1 Declarative Properties Of course, it is of primary importance to ensure the correctness of an unfold fold system from a declarative point of view. For the system presented here the ....

A. Pettorossi and M. Proietti. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19(20):261--320, 1994.


A Program Transformations Methodology for CCS - De Francesco, Santone (1995)   (Correct)

.... [6, 23] The use of the program transformation methodology has been extensively studied in the framework of functional and logical languages, because it is possible to define simple transformation tools for those languages, based on equational reasoning and logical deduction (see, 1 for example [3, 7, 14, 20, 16, 19, 18]) For functional and logical languages the aim of the program transformation techniques is the increase of efficiency: initially the program is written without taking into account efficiency considerations and then it transformed into an optimized one. The aim of this paper is to evaluate the ....

....summation is finite. There exists a corresponding expansion rule if (p 1 j Delta Delta Delta j p n ) is not restricted. 2. 2 Program Transformation The rules strategies approach to program transformation was introduced in [3] to manage functional programs and then used for logic programs [20, 4 19]. This approach is based on the construction, by means of a strategy, of a sequence fP k g of programs each obtained by the preceding ones using of a transformation rule. The rules are essentially based on unfolding and folding, i.e. expansion and contraction of a sub expression of P k using the ....

[Article contains additional citation context not shown here]

A. Pettorossi, M. Proietti. Transformation of Logic Programs: Foundations and Techniques. In J. Logic Programming 1994, 19,20: pp.261-320.


Unfold/Fold Transformations of Concurrent Processes - De Francesco, Santone   (Correct)

....program transformation was obtaining more efficient programs, but, in general, this technique can be used to produce programs written in a syntactic form satisfying some properties. Program transformation techniques have been extensively studied in the framework of functional and logic languages [5, 9, 19, 24, 25, 26], where they were applied mainly to obtain more efficient and readable programs. All these works are based on the Unfold Fold program transformation method developed by Burstall and Darlington [5] in the context of their recursive equational language. The method is based on a set of rules ....

....on the transformation history, but is checkable only by inspecting the program to be folded. In the paper the transformation rules are proved correct with respect to the CCS semantics. The detailed proof we show is built differently from the proof of analogous theorems for logic programs (see [25, 27]) since it uses bisimulation techniques. Finally, we show two examples of application of Unfold Fold transformations of CCS. First we use our rules to transform, if possible, a full CCS program into an equivalent program whose semantics is a finite transition system. This is achieved by trying to ....

[Article contains additional citation context not shown here]

A. Pettorossi, M. Proietti. Transformation of Logic Programs: Foundations and Techniques. In J. Logic Programming 1994, 19,20: pp.261-320.


Guidelines to the Current Implementation of the MAP.. - Sophie Renault Iasi-Cnr   (Correct)

....to get an updated version of it. A report presenting the design, implementation and use of the system will be available soon. 1 Introduction The MAP transformation system is a tool which is designed to support the interactive transformation of logic programs using the unfold fold methodology [4]. It has been developed at IASI Institute of the National Research Council, Rome, Italy, on the basis of an existing implementation presented in [5] The main novelty in the new implementation is a graphical user interface (GUI) through which transformations are specified and applied by means of ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261--320, 1994.


Transformation-based Strategies for Lazy Functional.. - Alpuente, Falaschi.. (1999)   (Correct)

....the intermediate data structure. The composition can be made automatically [38] whereas tupling has only been automated to some extent [9, 10] Although a lot of literature has been devoted to proving the correctness of fold unfold systems w.r.t. the various semantics proposed for logic programs [7, 17, 25, 29, 32, 36], in functional programming the problem of correctness has received surprisingly little attention [11, 27, 34, 35] Of the very few studies of correctness of fold unfold transformations in functional programming, the most general and recent work is [34] which defines a simple (syntactic) ....

....symbol, and every function symbol belonging to R 0 is called an old function symbol. The introduction of a new definition is virtually always the first step of a transformation sequence. Determining which definitions should be introduced is a task which falls into the realm of strategies (see [32] for a survey) which we discuss in Section 4. For instance, it is crucial to perform a kind of renaming of (some part of) a given expression, in such a way that a more efficient version of the new function can be derived (by fold unfold) Observe that the application of this transformation rule ....

[Article contains additional citation context not shown here]

A. Pettorossi and M. Proietti. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19,20:261--320, 1994.


Specialising The Other Way Around - Vanhoof, Martens, De Schreye, De.. (1998)   (4 citations)  (Correct)

....leaves as body. Further details on correctness and control of on line partial deduction can be found in [13] and e.g. 6, 10, 15, 16] respectively. Finally, it can be noted that partial deduction automates a subset of unfold fold transformations [19] Comments on the relationship can be found in [17] and [3] 2.3 The Problems That Be An unfolding criterion based on the partial SLD tree built so far works well if all information necessary to unfold deeply enough without endangering termination is present in that tree. For example, when building a derivation for the atom append( 1; 2; 3] Y; ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19/20:261--320, 1994.


Representation Results for Defeasible Logic - Antoniou, Billington.. (2001)   (5 citations)  (Correct)

....and key features only. Thus transformations can be useful as theoretical tools. 2) They support the optimized execution of a language; therefore they can facilitate the development of algorithms (see resolution [Robinson 1965] for the significance of transformations in logic programming see [Pettorossi and Proietti 1994]) Thus transformations are also useful in implementations. In this paper we will study transformations in the setting of a particular logical formalism, Defeasible Logic (cf. Nute 1987; 1994] following the presentation of Billington [1993] Benefits flowing out of our results fall into both ....

Pettorossi, A. and Proietti, M. 1994. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming 19/20, 261--320.


A Constraint-based Partial Evaluator for Functional Logic.. - Lafave (1998)   (6 citations)  (Correct)

.... as a program synthesis system with the original intention to obtain programs from specifications [BD77] Since then, several program transformation procedures, such as the partial evaluation of logic programs and deforestation, have been formalised in terms of the unfold fold transformation rules [PP94, Mar96] The transformation process can be defined as a sequence of programs P 0 ; P 1 ; P k such that a program P i is obtained from P i Gamma1 by an application of either the unfolding rule or the folding rule. Unfolding: Given a program P containing an equation with term t in the ....

....the transformation: define, instantiate, unfold, fold. ffl New definitions are created in the program. This step is called the eureka step. This cannot always be performed automatically; a certain level of ingenuity is needed in some cases 2. 1 Program Specialisation by Partial Evaluation 12 [PP94, PP90] ffl Some equations are instantiated. These instantiated definitions automatically overlap the existing definitions, but are necessary for the unfolding step. ffl Some terms in the right hand sides of equations are unfolded, as defined above. ffl Then, in some cases, the new right hand ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19-20:261--320, 1994.


Development of Correct Transformation Schemata for Prolog Programs - Norbert   (11 citations)  (Correct)

....technique is that of proving that the schemata are correct. This paper addresses the issue of correctness. We define operations for developing correct schemata by construction. The schema development operations are higher order equivalents of the classic program transformations of fold unfold [6]. We consider a transformation schema to be correct if its application yields a target program which is equivalent to the source program under the pure Prolog semantics. The work described in this paper makes three contributions: a methodology for the development of provably correct program ....

....3 Choice of Semantics A transformation is defined to be totally correct if the source and target programs are equivalent under the chosen semantics. We must choose which semantics to use. The correctness of transformations of Prolog programs under a variety of semantics is discussed in [6]. Much of the existing work on the transformation of Prolog programs only considers the simplest semantics, the Herbrand semantics. This permits many powerful and interesting transformations. Unfortunately, if these transformations were let loose on a real Prolog program, they would wreak havoc, ....

[Article contains additional citation context not shown here]

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19/20:261--320, 1994.


Specifying Prolog Trace Models with a Continuation.. - Jahier, Ducassé.. (2000)   (1 citation)  (Correct)

....box model is related to the control flow, the Prolog subset of) this reformulation is a very good candidate to be the basis of our Prolog model specification. In the following, we briefly describe this semantics; more detailed descriptions can be found in [7] and [25] Pettorossi and Proietti [26, 28] also proposed an operational semantics for Prolog, but it does not handle the cut. The direct style semantics proposed by Jones and Mycroft [17] as well as the one of Debray and Mishra [12] do handle the cut. But we believe that the semantics of Nicholson and Foo is more elegant because the ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19 & 20, 1994.


Argumentation-Theoretic Proof Procedures for Default Reasoning - Dung, Kowalski, Toni (1998)   (1 citation)  (Correct)

....it was the semantics, rather than the proof procedure, which was at fault. The proof procedure [13] is correct for the admissibility semantics. Both proof procedures are formulated as logic programs, derived from a formal speci cation by applying standard logic program transformation techniques [30]. The derivation guarantees the correctness of the proof procedures. We also show that the proof procedures are complete. The proof procedures lend themselves to applications in the eld of default reasoning as well as in the more general eld of practical, human argumentation as encountered e.g. ....

....Moreover, we will use the modi cation to derive a version of the existing proof procedure for logic programming presented in [13] or rather its corrected version 22 presented in [9] referred to simply as EK. EK will be derived by using standard logic program transformation techniques [30]. It is obvious to see that the following holds, with respect to speci cation 6.2 defends e (D 0 ; D) defends e (D 0 ; D; D) Thus, for at assumption based frameworks, the logic program P rog adm e can be replaced by the equivalent logic program adm e ( fg; adm e ....

[Article contains additional citation context not shown here]

A. Pettorossi, M. Proietti, Transformation of logic programs: foundations and techniques. Journal of Logic Programming 19/20, 1994, pages 261-320


A Program Specialiser for Meta-level Compositions of Logic.. - Brogi, Contiero (1996)   (2 citations)  (Correct)

.... the application of partial evaluation techniques for reducing the interpretation overhead in meta programs has been studied by many authors (e.g. 9, 14, 24, 37, 41, 44] Other authors have pointed out the effectiveness of combining partial evaluation with other program transformation techniques [14, 38, 39]. We will describe the design, implementation and application of a program specialiser which has been constructed according to the following requirements. 3 (1) The specialiser should be targeted to improving the efficiency of the meta interpreter M . Rather than aiming at designing a general ....

.... the statement: Statement(IC, Train(x,y,Int) If Empty) 2 3 Background: Partial evaluation in logic programming This section is devoted to recall some basic definitions and theoretical foundations of partial evaluation in logic programming, taken from [31] The interested reader may also refer to [20, 38] for an introduction to partial evaluation and program transformation in logic programming. Let us first introduce the notion of resultant that is needed in the definition of partial evaluation. Definition 1 A resultant is a first order formula of the form Q 1 Q 2 , where Q i is either absent ....

A. Pettorossi and M. Proietti. Transformations of logic programs: Foundations and techniques. Journal of Logic Programming, 19 & 20:261--320, 1994.


Transformation Rules for Locally Stratified.. - Fioravanti.. (2004)   (1 citation)  Self-citation (Pettorossi Proietti)   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261320, 1994.


Transformations of Logic Programs with Goals as Arguments - Pettorossi, Proietti (2002)   Self-citation (Pettorossi Proietti)   (Correct)

....8 we make some nal remarks and compare our results with the related work. 2 A Motivating Example In order to present an example which motivates the introduction of goal variables and goal arguments, we begin by recalling a well known program transformation strategy, called tupling strategy [11]. Given a program where some predicate calls require common subcomputations (detected by a suitable program analysis) the tupling strategy is realized by the following three steps. The Tupling Strategy (Step A) We introduce a new predicate de ned by a clause, say T , whose body is the ....

....and goal g is safe in P 1 , then goal g is safe also in P 2 . 5 The Transformation Rules In this section we present the transformation rules for our extended logic language. We assume that starting from an initial program P 0 we have constructed the transformation sequence P 0 ; P i [11]. By an application of a transformation rule, from program P i we derive the new program P i 1 . Rule R1. De nition Introduction) We derive the new program P i 1 by adding to program P i a new clause, called a de nition, of the form: newp(V 1 ; Vm ) g where: i) newp is a new ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261320, 1994.


Transformation of Constraint Logic Programs for Software.. - Fioravanti (2002)   Self-citation (Proietti)   (Correct)

....following two applications: i) the specialization of a program to the context of use and (ii) the verification of temporal properties of infinite state concurrent systems. 1. 1 Program Transformation We consider the program transformation methodology based on rules and strategies as described in [13, 60, 80]. The process of deriving programs by transformation can be formalized as the construction of a sequence P0, Pn of programs where, for k = 0, n 1, program Pk l is obtained from program Pk by applying a semantics preserving transformation rule. Thus, if the initial program P0 is correct ....

....Figure 1.3. 1: Program Specialization Program specialization has been proposed and studied for various program ming languages including imperative programming languages like C [3] and Fortran [8] as well as declarative programming languages like functional programming [40] logic programming [32, 43, 50, 60], constraint logic programming [84] and functional logic programming [2] languages. Successful appli cations of program specialization include ray tracing, Fast Fourier Transform, program compilation and compiler generation. In this thesis we will propose a technique for specializing constraint ....

[Article contains additional citation context not shown here]

PETTOROSSI, A., AND PROIETTI, M. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming 19,20 (1994), 261-320.


Verification of Sets of Infinite State Processes.. - Fioravanti.. (2001)   Self-citation (Pettorossi Proietti)   (Correct)

....Theory of k Successors, denoted WSkS [28] These programs will be called CLP(WSkS) programs. By using these encodings, the actual cardinality of the set of processes present in the systems is not required in the proofs of the properties of interest. Our method uses unfold fold transformations [5, 20, 26] as inference rules for constructing proofs. There are other veri cation methods proposed in the literature which use program transformation or are based on CLP [7, 12, 13, 17, 19, 22, 23] but those methods deal either with: i) nite state systems [19, 22] or (ii) in nite state systems where ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261-320, 1994.


Verification of Sets of Infinite State Processes.. - Fioravanti..   Self-citation (Pettorossi Proietti)   (Correct)

.... for instance, 13,16,20] Our method is an enhancement of the one presented in [8] Systems and properties are speci ed by using Constraint Logic Programming [10] CLP for short) and the inference engine for verifying properties is provided by a technique based on Unfold Fold Transformations [3,15,21]. The enhancement we propose in this paper allows us to deal with a nite set of processes of arbitrary cardinality, rather than a nite set of processes of xed cardinality. An essential feature of our method is that we consider CLP programs where the constraint theory is the Weak Monadic Second ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261320, 1994.


Transformation Rules For A Higher Order Logic Programming.. - Pettorossi, Proietti (2000)   Self-citation (Pettorossi Proietti)   (Correct)

.... provides higher order capabilities so that in our logic language we can manipulate not only terms (that is, data) but also goals (that is, procedure calls) These capabilities turn out to be useful for performing program manipulations which are often required during program transformation [5, 10, 17]. Indeed, as we will see, by using goals as arguments we will be able to overcome the goal rearrangement problem, which occurs when before performing a folding step, we are required to modify the positions of the atoms in the body of a clause. This problem arises because the atoms in the body of a ....

....the answer fG=pg, whereas program P 2 computes the answer fG=qg. 4. The transformation rules In this section we present the transformation rules for our higher order language. We assume that starting from an initial program P 0 we have constructed the transformation sequence P 0 ; P i [10]. By an application of a transformation rule, from program P i we get a new program P i 1 . Rule R1 (De nition Introduction) We get the new program P i 1 by adding to the current program P i a new clause of the form: newp(V 1 ; Vm ) g where: i) newp is a new non primitive predicate ....

A. Pettorossi and M. Proietti, \Transformation of logic programs: Foundations and techniques, " Journal of Logic Programming, vol. 19,20, pp. 261-320, 1994.


Transforming Inductive Definitions - Proietti, Pettorossi (1999)   (1 citation)  Self-citation (Pettorossi Proietti)   (Correct)

....relation which is actually used, and (ii) being applicable to rules with nite or in nite sets of premises. 1 Introduction A large number of program transformation rules, which we will also call transformations, for brevity, have been proposed in the literature (see, for instance, 4, 13] and [9] for a survey) These transformations may vary according to the programming language considered and the semantics to be preserved. For instance, program transformations have been proposed for functional languages with eager or lazy semantics, for logic languages with least Herbrand model or ....

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261-320, 1994.


Automatic Derivation of Logic Programs by Transformation - Pettorossi, Proietti (2000)   Self-citation (Pettorossi Proietti)   (Correct)

....an overview of some transformation strategies which have been proposed in the literature. They are used, in particular, for solving one of the crucial problems of the transformation methodology, that is, the use of the de nition rule for the introduction of the so called eureka predicates. In [58, 67, 113, 117, 118] one can nd treatments of the transformation strategies both for functional and logic programs. In order to simplify our presentation, sometimes we will not mention the use of the rearrangement rule R6 and the subsumption rule R7. Since these rules preserve the least Herbrand model semantics, we ....

....a method based on unfold fold transformations, called the unfold fold proof method, which can be used for proving properties of logic programs w.r.t. the least Herbrand model semantics. Since the unfold fold transformations may be designed to preserve many di erent semantics (see, for instance, [117]) one may extend our method to prove properties w.r.t. those semantics as well. We have provided some conditions which ensure that, when a property is used as a lemma to perform program transformations, these transformations are indeed totally correct, that is, they preserve the least Herbrand ....

[Article contains additional citation context not shown here]

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261320, 1994.


Rules and Strategies for Transforming Functional and Logic.. - Pettorossi, Proietti (1996)   (51 citations)  Self-citation (Pettorossi Proietti)   (Correct)

....can be shown to be correct w.r.t. richer logic languages and other program semantics (see, for instance, Aravindan Dung 93, Bossi Cocco 93, Bossi Cocco Etalle 92, GardnerShepherdson 91, Kanamori Horiuchi 87, Kawamura Kanamori 88, Maher 93, Proietti Pettorossi 91a, Sato 92, Seki 91, Seki 93] and [Pettorossi Proietti 94] for an overview) 3.2 Transformation Strategies for Logic Programs Here we list some of the strategies we use for transforming logic programs. i) Predicate Tupling Strategy. This strategy, also called tupling, for short, consists in selecting some atoms, say A 1 ; A n , with n 1, ....

....and Logic Programs It is difficult to exhaustively report on the various techniques and methodologies which have been proposed in the literature for deriving functional or logic programs by transformation. As an introduction the reader may refer to [Feather 87, Partsch 90, Moller et al. 93, Pettorossi Proietti 94] Below we will present the following techniques: 1. the Schemata Approach (one may refer, for instance, to [Partsch 90] for a 51 survey in the functional case, and to [Brough Hogger 91, Deville Burnay 89, Fuchs Fromherz 92, Marakakis Gallagher 94, Seki Furukawa 87] in the logic case) 2. the ....

Pettorossi, A., Proietti, M.: Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming 19, 20 (1994) 261--320


Synthesis And Transformation Of Logic Programs Using.. - Pettorossi, Proietti (1999)   (4 citations)  Self-citation (Pettorossi Proietti)   (Correct)

....and program transformation, which can all be viewed as program syntheses from implicit de nitions. 1. INTRODUCTION The unfold fold transformation rules were originally introduced for deriving correct and ecient programs from initial program versions whose correctness could easily be veri ed [8, 24, 28]. These rules can also be used for other purposes, such as program analysis, synthesis, specialization, and veri cation. Indeed, for instance, in [19] we can nd a method based on unfold fold rules, for proving the equivalence of functional expressions. This method can also be adapted to the case ....

....a method based on unfold fold transformations, called the unfold fold proof method, which can be used for proving properties of logic programs w.r.t. the least Herbrand model semantics. Since the unfold fold transformations may be designed to preserve many di erent semantics (see, for instance, [24]) one may extend our method to prove properties w.r.t. those semantics as well. We have provided some conditions which ensure that, when a property is used as a lemma to perform program transformations, these transformations are indeed totally correct, that is, they preserve the least Herbrand ....

[Article contains additional citation context not shown here]

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19,20:261-320, 1994.


A Constraint-based Partial Evaluator for Functional - Logic Programs And   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19-20:261--320, 1994.


On the Semantics of Logic Program Composition - Antonio Brogi Department   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformations of logic programs: Foundations and techniques. Journal of Logic Programming, 19 & 20:261--320, 1994.


Safe Folding/Unfolding with Conditional Narrowing - Alpuente, Falaschi, Moreno.. (1997)   (2 citations)  (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19,20:261--320, 1994.


Non-failure Analysis and Granularity Control in Parallel.. - Garcia (2000)   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformations of Logic Programs: Foundations and Techniques. Journal of Logic Programming, Special Issue: Ten Years of Logic Programming, 19/20, May/July 1994.


Rules + Strategies for Transforming Lazy Functional.. - Alpuente, Falaschi.. (2004)   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19,20:261--320, 1994.


Refactoring Prolog Programs - Schrijvers, Serebrenik, Demoen (2001)   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19/20:261--320, May/July 1994.


Removing Redundant Arguments Automatically - M.Alpuente, S.Escobar, S.Lucas (2004)   (Correct)

No context found.

Pettorossi, A. and Proietti, M. 1994. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming 19,20, 261--320.


Improving Prolog Programs: Refactoring for Prolog - Schrijvers, Serebrenik   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19/20:261--320, May/July 1994.


Project Report on: - Lp Second Generation   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: foundations and techniques. Journal of Logic Programming, 19 & 20:261-320, May 1994.


Development of Correct Transformation - Schemata For Prolog   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19/20:261--320, 1994.


A Class of Rewriting Rules and Reverse Transformation.. - Akama.. (2001)   (1 citation)  (Correct)

No context found.

Pettorossi, K. and Proietti, M., Transformation of Logic Programs: Foundations and Techniques, Journal of Logic Programming 19/20 (1994), pp. 261--320.


Equivalent Transformation - Of   (Correct)

No context found.

Pettorossi, A. and Proietti, M., Transformation of Logic Programs: Foundations and Techniques, The Journal of Logic Programming,Vol.19/20, 1994,pp.269


Advanced Techniques for Logic Program Specialisation - Leuschel (1997)   (10 citations)  (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. The Journal of Logic Programming, 19& 20:261-320, May 1994.


Folding by Similarity - Galan, Canete   (Correct)

No context found.

Pettorossi, A., Proietti, M. Transformation of Logic Programs: Foundations and Techniques. J. Logic Programming 1994:19, 20: 261-320.


Refactoring Prolog Code - Schrijvers, Serebrenik, Demoen (2004)   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: Foundations and techniques. Journal of Logic Programming, 19/20:261--320, May/July 1994.


Argumentation-Theoretic Proof Procedures for Default Reasoning - Dung, Kowalski, Toni (2003)   (1 citation)  (Correct)

No context found.

A. Pettorossi, M. Proietti, Transformation of logic programs: foundations and techniques. Journal of Logic Programming 19/20, 1994, pages 261--320


Generalized Generalization Generalizers (Extended Abstract) - Büyükyildiz, Flener   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs: foundations and techniques. Journal of Logic Programming, 19(20):261--320, 1994.


A Safe Transformation System for Optimizing Functional Programs - Moreno   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of Logic Programs: Foundations and Techniques. Journal of Logic Programming, 19,20:261--320, 1994.


Linearisability on Datalog Programs - Foto Afrati Manolis (2002)   (Correct)

No context found.

A. Pettorossi and M. Proietti. Transformation of logic programs : Foundations and techniques. The Journal of Logic Programming, 19/20:261--320, May/July 1994.

First 50 documents  Next 50

Online articles have much greater impact   More about CiteSeer.IST at NUS   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST at NUS - Copyright Penn State and NEC. Hosted by the School of Computing, National University of Singapore.