36 citations found. Retrieving documents...
C.S. Mellish. The Automatic Generation of Mode Declarations for Prolog Programs. DAI Research Paper 163, Dept. of Artificial Intelligence, University of Edinburgh, Aug. 1981.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

Share × F ree Revisited - King (1995)   (Correct)

....infers which program variables are definitely grounded and which variables can possibly be bound to terms containing a common variable. Freeness analysis usually infers which program variables are free, that is, which variables can never be bound to non variable terms. Compoundness analysis [21, 9] is the dual of freeness analysis in that it detects which variables are guaranteed to be bound to non variable (compound) terms. Compoundness analysis, as applied in [9] additionally traces the principal functor of variable bindings. Compoundness information can aid indexing. Applications of ....

....of the occurcheck [25] optimisation of backtracking [5] the specialisation of unification [27] and the identification [28, 13] and efficient exploitation [23, 14, 24] of independent and parallelism. Early proposals for sharing, freeness and compoundness analyses include [29, 12, 20] 23] and [21]. This paper is concerned with a semantic basis for sharing, freeness and compoundness analysis, and in particular, the justification of a high precision abstract unification algorithm. Following the approach of abstract interpretation [10] an abstract unification algorithm (the abstract ....

C. Mellish. The automatic generation of mode declarations for prolog programs. In Workshop on Logic Programming for Intelligent Systems, Los Angeles, August 1981. Also available as DAI Research Paper 163, Department of Artificial Intelligence, University of Edinburgh.


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

....of an atom p(tl, t) A U position if Ti = U An output position if Ti = I at or Ti = Pt; An iput position otherwise. 4. Avoidizg Uzificatioz usizg the modes U azd output 165 This classification is actually a modizg. Modes for logic programs were first considered by Mellish [75] and then more extensively studied in Reddy [83] and in Dembinski and Maluszynski [35] Here we are departing from the previous works by using also the mode U, which can be seen as a way to avoid to comnfit ourselves to a specific mode when such a comnfitment is not necessary. Avoiding ....

C. S. Mellish. The Automatic Generation of Mode Declarations for Prolog Pro- grams. DAI Research Paper 163, Department of Artificial Intelligence, Univ. of Edinburgh, August 1981.


Executing Higher Order Logic - Berghofer, Nipkow (2000)   (7 citations)  (Correct)

....with only minor syntactic modi cations. Therefore, this section concentrates on the more interestinging task of translating inductive relations to ML. 1 The translation is based on assigning modes to relations, a well known standard technique for the analysis and optimization of logic programs [12]. 3.1 Mode analysis In order to translate a predicate into a function, the direction of data ow has to be analyzed, i.e. it has to be determined which arguments are input and which are output. Note that for a predicate there may be more than one possible direction of data ow. For example, the ....

C. S. Mellish. The automatic generation of mode declarations for Prolog programs. Technical Report 163, Department of Articial Intelligence, University of Edinburgh, August 1981.


First-order theories for pure Prolog programs with negation - Stärk (1995)   (Correct)

....D # S(P ) which covers most goals of practical interest. The set D is defined by means of modes. It is the set of those goals G for which there exists a mode assignment so that P and G are correct. Modes have been widely used in the field of compilation of Prolog programs (see, for example, [19]) In our context, a mode [#, #, #] for an n ary predicate symbol R is an n tuple (x 1 , x n ) so that x j # in, out, log . If x j = in then the jth argument of R is called an input argument. If x j = out then the jth argument of R is called an output argument. Otherwise, if x j = log ....

C. S. Mellish. Automatic generation of mode declarations for Prolog programs. DAI research paper 163, Dept. of Artificial Intelligence, University of Edinburgh, 1981.


Towards a system for directional types for Ruby - Alex Ferguson University   (Correct)

....than a supposedly purely internal abstract analysis, for both reading and writing. 2 A first attempt One approach which immediately suggests itself is to write directions as mode style annotations on types, in the style of say, Ada subprogram parameters [1] or logic programming modes [4]. This would give, for example for the (left to right) inverter circuit (shown in Figure 1) the following Ruby type: i nv : in Bit out Bit email: abf cs.ucc.ie Functional Programming, Glasgow 1996 1 Towards a system for directional types for Ruby Figure 1: An inverter circuit Now consider, ....

C. S. Mellish. The automatic generation of mode declarations for Prolog programs. DAI Research Paper 163, Department of Artificial Intelligence, University of Edinburgh, 1981.


Translating Logic Programs Into Conditional Rewriting Systems - van Raamsdonk (1998)   (2 citations)  (Correct)

....the variables in the domain and the variables in the codomain of a substitution oe by V(oe) The relation symbols of the logic programs considered in this paper use some arguments as input and some arguments as output. This is formalized using the notion of modes. Modes were introduced by Mellish [14] and further studied by Reddy [17] A base mode is either input, denoted by #, or output, denoted by . An m ary mode is a product, denoted using Theta, of m base modes. Without loss of generality, an m ary mode is of the form # Theta : Theta # Theta Theta : Theta with first p ....

C.S. Mellish. The automatic generation of mode declarations for Prolog programs. Technical Report DAI Research Paper 163, University of Edinburgh, 1981.


A descriptive Mode Inference for Logic Programs - Ntienjem (1997)   (Correct)

....Our method can also be used to verify the consistency of user supplied mode declarations. Such a consistency verification for user supplied mode declarations is necessary because of errors which may be made by the user. One can use this mode inference to improve the efficiency of logic programs [2, 3, 4, 6, 9, 11, 12, 13, 16, 22] or to control the evaluation of logic programs [14] or to prove the completeness of SLDNF resolution for a large class of programs [20, 21] 3 Preliminaries and motivating examples Let V be a countably infinite set of variables, for each n 0 a countably infinite set F of function symbols be ....

....6 Descriptive mode inference The mode of an n ary predicate symbol with respect to a program represents statement about computations that are possible from it. From this claim mode information has been studied for the sake of making logic programs as efficient as functional or imperative ones [2, 3, 4, 6, 9, 11, 12, 13, 16, 22]. Our aim in this section is to automatically infer the mode of an n ary predicate symbol from a given logic program while conserving the mathematical intention of a relation. This is a descriptive mode inference. Hence, our interest is not focused on a syntactic mode declaration of logic ....

[Article contains additional citation context not shown here]

C. S. Mellish. The automatic generation of mode declaration for prolog programs. DAI research 163, Department of Artificial Intelligence, University of Edinburgh, 1981.


The Witness Properties and the Semantics of the Prolog Cut - Andrews (1999)   (Correct)

....parameter positions are generally referred to as output parameters. The static analyzer must, of course, confirm that output parameters are made ground. 34 Generally, the quality of being an input or output parameter is referred to as the mode of the parameter. Modes were introduced by Mellish [Mel81] and have been used in many contexts in logic programming, including for compiler optimization [SHC96] and more directly in proving properties of programs [AM95, Sta98] Here, however, we are concerned with modes only for the immediate task of ensuring non floundering of goals. Some ....

Chris Mellish. The automatic generation of mode declarations for prolog programs. Technical Report 163, Department of Artificial Intelligence, University of Edinburgh, August 1981.


Automatic Mode Inference for Logic Programs - Debray, Warren (1988)   (44 citations)  (Correct)

....to effect various optimizations. This paper considers the problem of automatically inferring the modes of the predicates in a program. The dataflow analysis we use is more powerful than approaches relying on syntactic characteristics of programs, e.g. 18] Our work differs from that of Mellish [14, 15] in that (i) we give a sound and efficient treatment of variable aliasing in mode inference; ii ) by propagating instantiation information using state transformations rather than through dependencies between variables, we achieve greater precision in the treatment of unification, e.g. through ....

....made by the programmer, much as type checkers in other languages verify type declarations. Some researchers have considered the question of verifying the consistency of mode declarations supplied by the user [3, 17, 19] The issue of automatic mode inference has been considered by Mellish [14, 15] and Reddy [18] and more recently by Bruynooghe et al. 5] and Mannila and Ukkonen [13] We focus our attention on the inference of modes rather than on verifying the consistency of user supplied mode declarations. Unlike Reddy, who uses a syntactic analysis of the program to assign modes to ....

C. S. Mellish, The Automatic Generation of Mode Declarations for Prolog Programs, DAI Research Paper 163, Dept. of Artificial Intelligence, University of Edinburgh, Aug. 1981.


Static Inference of Modes and Data Dependencies in Logic Programs - Debray (1989)   (72 citations)  (Correct)

.... programming languages [21] Data dependency information is useful in various optimizing transformations of logic programs [7] in improving the backtracking behavior of programs [3] and parallelizing logic programs [2, 27] Early work on mode inference via static analysis was done by Mellish [16 18], who used dependencies between variables to propagate information regarding their instantiation. This approach, however, had the drawback that builtin predicates such as = 2 could not be handled very precisely; moreover, since aliasing effects resulting from unification were not taken into ....

C. S. Mellish, The Automatic Generation of Mode Declarations for Prolog Programs, DAI Research Paper 163, Dept. of Artificial Intelligence, University of Edinburgh, Aug. 1981.


Proving Deadlock Freedom of Logic Programs with Dynamic.. - Marchiori, Teusink (1996)   (1 citation)  (Correct)

....programs deadlock free. However, there is no assumption on the assertion language to be used. In this section, we present two instances of the method, where the assertion language is fixed to be the one based on modes and types, respectively. 5. 1 Proving Deadlock Freedom Using Modes In [Mel81, Red86, DM85] modes are used in verification of Prolog programs. In this section, we instantiate our method for proving deadlock freedom to the case where the assertions consist of mode declarations. First, let us give some terminology. Definition 5.1 (Mode) Consider an n ary relation symbol ....

C.S. Mellish. The automatic generation of mode declarations for Prolog programs. Technical Report DAI Research paper 166, Department of Artificial Intelligence, University of Edinburgh, 1981.


Towards Banishing the Cut from Prolog - Debray, Warren (1990)   (3 citations)  (Correct)

....as output arguments. Knowledge of such directionality, expressed using modes [21] enables various compile time optimizations to be performed [7, 14, 21] Mode information can either be supplied by the user, in the form of mode declarations, or be inferred from a global analysis of the program [7, 13]. Mode information also plays an important role in the inference of functionality. It is convenient to think of the mode for an n ary predicate as representing a set of n tuples of terms. The modes we consider are quite simple: c represents the set of ground terms, f the set of variables and d ....

C. S. Mellish, The Automatic Generation of Mode Declarations for Prolog Programs, DAI Research Paper 163, Dept. of Artificial Intelligence, University of Edinburgh, Aug. 1981.


Translating Logic Programs into Conditional Rewriting Systems - van Raamsdonk (1997)   (2 citations)  (Correct)

....the variables in the domain and the variables in the codomain of a substitution oe by V(oe) The relation symbols of the logic programs considered in this paper use some arguments as input and some arguments as output. This is formalized using the notion of modes. Modes were introduced by Mellish [9] and further studied by Reddy [10] A base mode is either input, denoted by #, or output, denoted by . An m ary mode is a product, denoted using Theta, of m base modes. Without loss of generality, an m ary mode is of the form # Theta : Theta # Theta Theta : Theta with first p ....

C.S. Mellish. The automatic generation of mode declarations for Prolog programs. Technical Report DAI Research Paper 163, University of Edinburgh, 1981.


Well-Terminating Programs - Etalle, Bossi, Cocco (1998)   (Correct)

....the input, we consider well moded queries and programs. Well Moded Logic Programs Informally, a mode indicates how the arguments of a relation should be used, i.e. which are the input and which are the output positions of each atom. In Logic Programming modes have been first introduced by Mellish [Mel81] and then studied by Reddy [Red84] and by Dembinski and Ma luszynski [DM85] Modes have been extensively employed, mainly for two specific purposes: as a validation method and as a tool for improving the performance of programs. In fact modes provide information which allow to derive several ....

C. S. Mellish. The Automatic Generation of Mode Declarations for Prolog Programs. DAI Research Paper 163, Department of Artificial Intelligence, Univ. of Edinburgh, August 1981.


Share × Free Revisited - King (1995)   (Correct)

....infers which program variables are definitely grounded and which variables can possibly be bound to terms containing a common variable. Freeness analysis usually infers which program variables are free, that is, which variables can never be bound to non variable terms. Compoundness analysis [21, 9] is the dual of freeness analysis in that it detects which variables are guaranteed to be bound to non variable (compound) terms. Compoundness analysis, as applied in [9] additionally traces the principal functor of variable bindings. Compoundness information can aid indexing. Applications of ....

....of the occurcheck [25] optimisation of backtracking [5] the specialisation of unification [27] and the identification [28, 13] and efficient exploitation [23, 14, 24] of independent and parallelism. Early proposals for sharing, freeness and compoundness analyses include [29, 12, 20] 23] and [21]. This paper is concerned with a semantic basis for sharing, freeness and compoundness analysis, and in particular, the justification of a high precision abstract unification algorithm. Following the approach of abstract interpretation [10] an abstract unification algorithm (the abstract ....

C. Mellish. The automatic generation of mode declarations for prolog programs. In Workshop on Logic Programming for Intelligent Systems, Los Angeles, August 1981. Also available as DAI Research Paper 163, Department of Artificial Intelligence, University of Edinburgh.


Termination of Well-Moded Programs - Etalle, Bossi, Cocco (1994)   (12 citations)  (Correct)

....explicit while following the approach of [6] Well Moded Logic Programs Informally speaking, a mode indicates how the arguments of a relation should be used, i.e. which are the input and which are the output positions of each atom. In Logic Programming modes have been first introduced by Mellish [19] and further studied and employed both as a validation method and as a tool for improving the program s performance. In fact, modes Address correspondence to Sandro Etalle, Department of Computer Science University of Maastricht, P.O. Box 616, 6200 MD Maastricht, The Netherlands. ....

C. S. Mellish. The Automatic Generation of Mode Declarations for Prolog Programs. DAI Research Paper 163, Department of Artificial Intelligence, Univ. of Edinburgh, August 1981.


Off-line Optimization for Earley-style HPSG Processing - Minnen, Gerdemann, Götz (1995)   (Correct)

....maximal degree of nondeterminacy of the grammar. We are therefore forced to split this schematic phrase structure rule into two more specific rules at least during the optimization process. It is important to note that this is a consequence of a general limitation of dataflow analysis (see also Mellish, 1981). 5 Concluding Remarks An innovative approach to hpsg processing is described that uses an off line compiler to automatically prime a declarative grammar for generation or parsing, and inputs the primed grammar to an advanced Earley processor. Our off line compiler extends the techniques ....

Mellish, Chris. 1981. The Automatic Generation of Mode Declarations for Prolog Programs. In Proceedings of the Workshop on Logic Programming and Intelligent Systems, Los Angeles, California, usa.


R. Orchard et al. (Eds.): IEA/AIE 2004, LNAI 3029.. - Springer-Verlag..   (Correct)

No context found.

C.S. Mellish. The Automatic Generation of Mode Declarations for Prolog Programs. DAI Research Paper 163, Dept. of Artificial Intelligence, University of Edinburgh, Aug. 1981.


Analyzing Logic Programs with Dynamic Scheduling - Marriott, Banda, Hermenegildo (1994)   (13 citations)  (Correct)

No context found.

C. S. Mellish. The automatic generation of mode declarations for Prolog programs. Technical Report 163, Dept. of Arti cial Intelligence, University of Edinburgh, Scotland, 1981.


Executing Higher Order Logic - Berghofer, Nipkow (2000)   (7 citations)  (Correct)

No context found.

C. S. Mellish. The automatic generation of mode declarations for Prolog programs. Technical Report 163, Department of Artificial Intelligence, University of Edinburgh, August 1981.


Combinations of Abstract Domains for Logic.. - Cortesi, Le.. (2000)   (64 citations)  (Correct)

No context found.

C. Mellish, The automatic generation of mode declarations for prolog programs, Technical Report DAI Report 163, Department of Arti#cial Intelligence, University of Edinburgh, 1981.


Generic Abstract Interpretation Algorithms for.. - Englebert, Le.. (1993)   (11 citations)  (Correct)

No context found.

C. Mellish, `The automatic generation of mode declarations for Prolog programs', Technical Report DAI Report 163, Department of Artificial Intelligence, University of Edinburgh, 1981.


QD-Janus: a Sequential Implementation of Janus in Prolog - Debray (1993)   (17 citations)  (Correct)

No context found.

C. S. Mellish, `The automatic generation of mode declarations for Prolog programs', DAI Research Paper 163, Department of Artificial Intelligence, University of Edinburgh, August 1981.


Efficient Dataflow Analysis of Logic Programs - Debray (1992)   (24 citations)  (Correct)

No context found.

C. S. Mellish, "The Automatic Generation of Mode Declarations for Prolog Programs", DAI Research Paper 163, Dept. of Artificial Intelligence, University of Edinburgh, Aug. 1981.


QD-Janus: A Sequential Implementation of Janus in Prolog - Debray (1993)   (17 citations)  (Correct)

No context found.

C. S. Mellish, "The Automatic Generation of Mode Declarations for Prolog Programs", DAI Research Paper 163, Dept. of Artificial Intelligence, University of Edinburgh, Aug. 1981.

First 50 documents

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

CiteSeer.IST - Copyright Penn State and NEC