cs0010028/main.bbl
1: \begin{thebibliography}{}
2: 
3: \bibitem[\protect\citename{Apt, }1997]{Apt97}
4: Apt,~K.~R. (1997)
5: \emph{From Logic Programming to Prolog}.
6: International Series in Computer Science, Prentice Hall.
7: 
8: 
9: \bibitem[\protect\citename{Barbuti \emph{et al.}, }1993]{BarbutiControl}
10: Barbuti,~R.,  Codish,~M., Giacobazzi,~R. and Levi,~G. (1993)
11: Modelling Prolog control.
12: \emph{Journal of Logic and Computation}, 3~(6): 579--603.
13: 
14: %\bibitem{Bancilhon86}
15: %F.~Bancilhon and al.
16: %\newblock Magic sets and other strange ways to implement logic programs.
17: %\newblock In {\em Proceedings of Fifth {ACM} Symposium on Principles of
18: %  Database Systems}, pages 1--15, Cambridge, Massachusetts, 1986.
19: 
20: \bibitem[\protect\citename{Barbuti and Giacobazzi, }1992]{BG89b}
21: Barbuti,~R. and Giacobazzi,~R. (1992)
22: A bottom-up polymorphic type inference in logic programming.
23: \emph{Science of Computer Programming}, 19~(3): 281--313.
24: 
25: \bibitem[\protect\citename{Barbuti \emph{et al.}, }1993]{Barbuti90}
26: Barbuti, R., Giacobazzi,~R.  and Levi, G. (1993)
27: A general framework for semantics-based bottom-up abstract
28:   interpretation of logic programs.
29: \emph{ACM Transactions on Programming Languages and Systems (TOPLAS)},
30:   15~(1): 133-181.
31: 
32: 
33: \bibitem[\protect\citename{Baudinet, }1992]{Baudinet}
34: Baudinet,~M. (1992)
35: Proving  termination properties of Prolog programs: a semantic approach.
36: \emph{Journal of Logic Programming}, 14~(1\&2): 1--29.
37: 
38: 
39: \bibitem[\protect\citename{Bossi and Cocco, }1999]{BC99}
40: Bossi,~A. and Cocco,~N. (1999)
41: Successes in logic Programs.
42: In P.~Flener (editor), \emph{Proc. of the 8th  International Workshop on 
43:  Logic-Based Program Synthesis and Transformation
44:   ({LOPSTR}'98), Lecture Notes in Computer Science, 1559}, 
45: pp.~219--239. Springer-Verlag.
46: 
47: 
48: 
49: 
50: 
51: \bibitem[\protect\citename{Braem \emph{et al.}, }1994]{cardinality}
52: Braem,~C., Le~Charlier,~B.,  Modard,~S. and  Van~Hentenryck, P. (1994)
53: Cardinality analysis of Prolog.
54: In M.~Bruynooghe (editor), \emph{Proc. of the International Logic
55:   Programming Symposium ({ILPS}'94)},
56: pp.~457--471. MIT Press.
57: 
58: 
59: \bibitem[\protect\citename{Braem and Modard, }1994]{Braem.Modard94}
60: Braem,~C. and Modard,~S. (1994)
61: Abstract interpretation for Prolog with cut: cardinality analysis.
62: Master's thesis, Institut d'Informatique, University of Namur,
63:   Belgium.
64: 
65: \bibitem[\protect\citename{Bruynooghe, }1991]{Bruynooghe91}
66: Bruynooghe,~M. (1991)
67: A practical framework for the abstract interpretation of logic
68:   programs.
69: \emph{Journal of Logic Programming}, 10~(2): 91--124.
70: 
71: \bibitem[\protect\citename{Bueno and Hermenegildo, }1991]{Bueno91b}
72: Bueno,~F. and Hermenegildo,~M. (1991)
73: Results on automatic translation from prolog
74: to the Andorra kernel language.
75: Technical Report, Facultad Informatica UPM,
76:  Universidad Politecnica de Madrid, Spain.
77: 
78: %Computer Science Dept, Universidad Politecnica de Madrid,
79: %Facultad Informatica UPM, 28660-Boadilla del Monte,
80: %                    Madrid-Spain, September 1991.
81: %Theory in technical report, ``Towards an automatic
82: %		    translation algorithm from prolog to the andorra
83: %		    kernel language''.
84: 
85: \bibitem[\protect\citename{Cabeza~Gras and Hermenegildo, }1994]{SAS94.Gras}
86: Cabeza~Gras,~D. and   Hermenegildo,~M. (1994)
87: Extracting non-strict independent And-parallelism
88: using sharing and freeness information.
89: In \cite{Book.SAS94}, pp.~297--313.
90: 
91: 
92: 
93: \bibitem[\protect\citename{Chang \emph{et al.}, }1985]{Chang85}
94: Chang,~J.~H.,  Despain,~A.~M. and  DeGroot,~D. (1985)
95: And-parallelism of logic programs based on a static
96: data dependency analysis. 
97: In {\em Proc. of the 30th IEEE Compcon Spring
98: ({COMPCON}'85)}. IEEE  Press.
99: 
100: 
101: \bibitem[\protect\citename{Codish \emph{et al.}, }1991]{Codish91}
102: Codish,~M., Dams,~D. and Yardeni,~E. (1991)
103: Derivation and safety of an abstract unification algorithm for
104:   groundness and aliasing analysis.
105: In K.~Furukawa (editor), \emph{Proc.  of the 8th International
106:   Conference on Logic Programming ({ICLP}'91)},
107: pp.~79--93.  MIT Press.
108: 
109: \bibitem[\protect\citename{Codognet and Fil\`e, }1992]{Codognet92a}
110: Codognet,~P. and Fil\`{e},~G. (1992)
111: Computations, abstractions and constraints in logic programs.
112:  In \emph{Proc. of IEEE  International Conference on
113:   Computer Languages (ICCL'92)}. IEEE Press.
114: 
115: \bibitem[\protect\citename{Corsini, }1991]{Corsini91}
116: Corsini,~M.-M. (1991)
117: (Yet) an abstract domain and unification for accurate groundness and
118:   sharing analysis based on graphs traversing. 
119: In \emph{{ICLP}'91 Pre-Conference Workshop on Semantics-Based Analysis
120:   of Logic Programs}, {INRIA} Rocquencourt.
121: 
122: \bibitem[\protect\citename{Cortesi and Fil\`e, }1991]{Cortesi}
123: Cortesi,~A. and Fil\`{e},~G. (1991)
124: Abstract interpretation of logic programs: an abstract domain for
125:   groundness, sharing, freeness and compoundness analysis. 
126: In \emph{Proc. of
127:  the Symposium on Partial Evaluation and Semantics-Based
128:   Program Manipulation ({PEPM}'91)}, SIGPLAN Notices
129: 26~(9): 52--61. 
130: 
131: 
132: \bibitem[\protect\citename{Cortesi \emph{et al.}, }1991]{Cortesi91}
133: Cortesi,~A., Fil\`e,~G. and Winsborough,~W. (1991)
134: Prop revisited: propositional formula as abstract domain for
135:   groundness analysis.
136: In \emph{Proc. of the 6th Annual IEEE Symposium on Logic in
137:   Computer Science (LICS'91)},  pp.~322--327. 
138: IEEE Computer Society Press.
139: 
140: 
141: \bibitem[\protect\citename{Cortesi \emph{et al.}, }1994]{POPL94}
142: Cortesi,~A., Le~Charlier, B., and Van~Hentenryck, P. (1994)
143: Combinations of abstract domains for logic programming.
144:  In \emph{Proc. of the  21th {ACM SIGPLAN-SIGACT} Symposium on
145:   Principles of Programming Languages ({POPL}'94)}, pp.~227--239.
146: ACM Press.
147: 
148: 
149: 
150: \bibitem[\protect\citename{Cortesi \emph{et al.}, }1995]{Graph.JLP}
151: Cortesi,~A., Le~Charlier,~B. and Van~Hentenryck,~P. (1995)
152: Type analysis of Prolog using type graphs.
153: \emph{Journal of Logic Programming}, 22~(3): 179--209.
154: 
155: \bibitem[\protect\citename{Cortesi \emph{et al.}, }2000]{SCP00}
156: Cortesi,~A., Le~Charlier, B., and Van~Hentenryck, P. (2000)
157: Combinations of abstract domains for logic programming:
158:  open product and generic pattern construction.
159: \emph{Science of Computer Programming}, to appear.
160: 
161: 
162: 
163: \bibitem[\protect\citename{Cousot and Cousot, }1977]{Cousot77}
164: Cousot,~P. and Cousot,~R. (1977)
165: Abstract Interpretation: a unified lattice model for static analysis
166:   of programs by construction or approximation of fixpoints.
167:  In {\em Proc.  of the 4th {ACM SIGPLAN-SIGACT} Symposium on
168:   Principles of Programming Languages ({POPL}'77)}, pp.~238--252.
169: ACM Press.
170: 
171: %Los Angeles, California, January
172: 
173: 
174: \bibitem[\protect\citename{Cousot and Cousot, }1979]{Cousot79a}
175: Cousot,~P. and Cousot,~R. (1979)
176: Systematic design of program analysis frameworks.
177:  In {\em Proc.  of the 6th {ACM SIGPLAN-SIGACT} Symposium on
178:   Principles of Programming Languages ({POPL}'79)}, pp.~269--282.
179: ACM Press.
180: 
181: %Los Angeles, California, January
182:  
183: 
184: \bibitem[\protect\citename{Cousot and Cousot, }1992a]{Cousot92}
185: Cousot,~P. and Cousot,~R. (1992)
186: Abstract interpretation and application to logic programs.
187: \emph{Journal of Logic Programming}, 13~(2\&3): 103--179.
188: 
189: \bibitem[\protect\citename{Cousot and Cousot, }1992b]{CousotJLC92}
190: Cousot,~P. and Cousot,~R. (1992)
191: Abstract interpretation frameworks.
192: \emph{Journal of Logic and Computation}, 2~(4): 511--547.
193: 
194: 
195: \bibitem[\protect\citename{Cousot and Cousot, }1992c]{Cousot92c}
196: Cousot,~P. and Cousot,~R. (1992)
197: Comparing of the Galois connection and widening/narrowing
198:   approaches to abstract interpretation (invited paper).
199: In M.~Bruynooghe and M.~Wirsing (editors), \emph{Proc. of the
200:   4th International Workshop on Programming Language Implementation and
201:   Logic Programming ({PLILP}'92), Lecture Notes in Computer Science, 631}, 
202: pp.~269--295. Springer-Verlag.
203: 
204: 
205: \bibitem[\protect\citename{Cousot and Cousot, }1994]{CousotICCL94}
206: Cousot,~P. and Cousot,~R. (1994)
207: Higher-order abstract interpretation (and application to comportment
208:   analysis generalizing strictness, termination, projection and PER analysis of
209:   functional languages). (Invited paper).
210: In \emph{Proc. of IEEE  International Conference on
211:   Computer Languages ({ICCL}'94)}, pp.~95--112.
212:  IEEE Press.
213: 
214: %Toulouse, France, May  1994.
215: 
216: 
217: \bibitem[\protect\citename{Dawson \emph{et al.}, }1993]{Ramakrishnan93}
218: Dawson,~S.,  Ramakrishnan,~C.~R.,  Ramakrishnan,~I.~V. and  Sekar,~R.~C.
219: (1993)
220: Extracting determinacy in logic programs.
221: In D.~S.~Warren (editor), \emph{Proc.  of the 10th International
222:   Conference on Logic Programming ({ICLP}'93)},
223: pp.~424--438.  MIT Press.
224: 
225: 
226: \bibitem[\protect\citename{Debray, }1989]{D89}
227: Debray,~S.~K. (1989)
228: Static inference of modes and data dependencies in logic programs.
229: \emph{ACM Transactions on Programming Languages and Systems (TOPLAS)},
230:   11~(3): 418--450.
231: 
232: 
233: 
234: \bibitem[\protect\citename{Debray \emph{et al.}, }1997]{DLH97}
235: Debray,~S.~K.,  L\'opez-Garc\'ia,~P., Hermenegildo,~M. (1997)
236: Non-failure analysis for logic programs.
237: In L.~Naish (editor), \emph{Proc.  of the 14th International
238:   Conference on Logic Programming ({ICLP}'97)},
239: pp.~48--62.  MIT Press.
240: 
241: 
242: 
243: 
244: \bibitem[\protect\citename{Debray and Mishra, }1988]{Debray88b}
245: Debray,~S.~K. and Mishra,~P. (1988)
246: Denotational and operational semantics for Prolog.
247: \emph{Journal of Logic Programming}, 5~(1): 61--91.
248: 
249: \bibitem[\protect\citename{Debray and Warren, }1988]{Debray88c}
250: Debray,~S.~K. and  Warren,~D.~S. (1988)
251: Automatic mode inference for logic programs.
252: \emph{Journal of Logic Programming}, 5~(3): 207--229.
253: 
254: \bibitem[\protect\citename{Debray and Warren, }1989]{Debray89a}
255: Debray,~S.~K. and Warren,~D.~S. (1989)
256: Functional computations in logic programs.
257: \emph{ACM Transactions on Programming Languages and Systems (TOPLAS)},
258:   11~(3): 451--481.
259: 
260: 
261: %\bibitem[\protect\citename{Demoen \emph{et al.}, }1987]{DVW87}
262: %Demoen,~B., Van~Roy,~P. and  Willems,~Y.~D. (1987)
263: %Improving the execution speed of compiled Prolog with modes, clause
264: %  selection and determinism.
265: %In H.~Ehrig, R.~A.~Kowalski, G.~Levi and U.~Montanari (editors),
266: %\emph{Proc. of the International Joint Conference on Theory and
267: %Practice of Software Develpment ({TAPSOFT}'87),
268: %Lecture Notes in Computer Science, 250}, pp.~111--125. Springer-Verlag.
269: 
270: 
271: \bibitem[\protect\citename{De~Bruin and De~Vink, }1989]{debruin}
272: De~Bruin,~A. and De~Vink,~E.
273: Continuation semantics for Prolog with cut.
274: In J. D\'iaz and F. Orejas (editors),
275: \emph{Proc. of the International Joint Conference on Theory and
276: Practice of Software Develpment ({TAPSOFT}'89),
277: Lecture Notes in Computer Science, 351}, pp.~178--192. Springer-Verlag.
278: 
279: 
280: \bibitem[\protect\citename{Englebert \emph{et al.}, }1993]{SPE}
281: Englebert,~V., Le~Charlier,~B., Roland,~D. and Van~Hentenryck,~P.
282: (1993)
283: Generic abstract interpretation algorithms for Prolog: two
284:   optimization techniques and their experimental evaluation.
285: \emph{Software Practice and Experience}, 23~(4): 419--459.
286: 
287: \bibitem[\protect\citename{Falaschi \emph{et al.}, }1989]{FLMP89}
288: Falaschi,~M., Levi,~G., Martelli,~M. and Palamidessi,~C. (1989)
289: Declarative modeling of the operational behaviour of logic
290:   languages.
291: \emph{Theoretical Computer Science}, 69~(3): 289--318.
292: 
293: \bibitem[\protect\citename{Fil\`e and Ranzato, }1994]{FileILPS94}
294: Fil\`e,~G. and Ranzato,~F. (1994)
295: Improving abstract interpretations by systematic lifting to the
296:   powerset.
297: In M.~Bruynooghe (editor), 
298:  \emph{Proc. of the International Logic
299:   Programming Symposium ({ILPS}'94)},
300: pp.~655--669. MIT Press.
301: 
302: 
303: 
304: \bibitem[\protect\citename{Fil\`e and Rossi, }1993]{FileRossi}
305: Fil\`e,~G. and Rossi,~S. (1993)
306: Static analysis of Prolog with cut.
307: In A.~Voronkov (editor),
308: \emph{Proc. of  4th International
309: Conference on Logic Programming and Automated Reasoning ({LPAR}'93),
310: Lecture Notes in Computer Science
311:  698}, pp.~134--145. Springer--Verlag.
312: 
313: \bibitem[\protect\citename{Gang and Zhiliang, }1986]{GZ86}
314: Gang,~Y. and Zhiliang,~X. (1986)
315: An efficient type system for Prolog.
316: In H.~J.~Kugler (editor). {\em Proc. of the 10th IFIP World Computer Congress,
317: Information Processing 86}, 
318: pp.~355--359. North-Holland/IFIP.
319: 
320: \bibitem[\protect\citename{Getzinger, }1994]{Getzinger.SAS94}
321: Getzinger,~T.W. (1994)
322: The costs and benefits of abstract interpretation-driven Prolog
323:   optimization.
324: In \cite{Book.SAS94}, pp.~1--25.
325: 
326: 
327: 
328: \bibitem[\protect\citename{Giacobazzi and Ricci, }1990]{Giacobazzi90}
329: Giacobazzi,~R. and Ricci,~L. (1990)
330: Pipeline optimizations in AND-parallelism by
331: abstract interpretation.
332: In  D. S. Warren and P.~Szeridi (editors), 
333: \emph{Proc.  of the 7th International
334:   Conference on Logic Programming ({ICLP}'90)},
335: pp.~291--305.  MIT Press.
336: 
337: \bibitem[\protect\citename{Giacobazzi and Ricci, }1992]{Giacobazzi92}
338: Giacobazzi,~R. and Ricci,~L. (1992)
339: Detecting determinate computations by bottom-up abstract
340:   interpretation.
341: In B.~Krieg-Br\"uckner (editor),
342: {\em Proc. of the 4th European Symposium
343: on Programming, {ESOP'92}, Lecture Notes in Computer Science
344:  582}, pp.~167--181. Springer--Verlag.
345: 
346: 
347: \bibitem[\protect\citename{Hermenegildo, }1986]{Hermenegildo86}
348: Hermenegildo,~M.~V. (1986)
349: An abstract machine for restricted AND-parallel execution of
350: logic programs.
351: In E.~Y.~Shapiro (editor), \emph{Proc.  of the 3rd International
352:   Conference on Logic Programming ({ICLP}'86),
353:  Lecture Notes in Computer Science 225},
354: pp.~25--40.   Springer--Verlag.
355: 
356: 
357: 
358: 
359: \bibitem[\protect\citename{Hermenegildo \emph{et al.}, }1992]{Hermenegildo92}
360: Hermenegildo,~M.~V., Warren,~R. and Debray,~S.~K. (1992)
361: Global flow analysis as a practical compilation tool.
362: \emph{Journal of Logic Programming}, 13~(4): 349--367.
363: 
364:  
365: 
366: \bibitem[\protect\citename{Jacob and Langen, }1989]{Jacobs89}
367: Jacobs,~D. and Langen,~A. (1989)
368: Accurate and efficient approximation of variable aliasing in logic
369:   programs.
370:  In E.~L.~Lusk and R.~A.~Overbeek (editors), \emph{Proc. of the
371:   North American Conference on Logic Programming ({NACLP}'89)}, 
372: pp.~154--165. MIT Press.
373: 
374: 
375: \bibitem[\protect\citename{Jacob and Langen, }1992]{Jacobs92}
376: Jacobs,~D. and Langen,~A. (1992)
377: Static analysis of logic programs for 
378: independent AND parallelism.
379: \emph{Journal of Logic Programming}, 13~(2\&3): 291--314.
380: 
381: 
382: 
383: \bibitem[\protect\citename{Janssens and Bruynooghe, }1992]{Janssens92}
384: Janssens,~G. and Bruynooghe,~M. (1992)
385: Deriving descriptions of possible values of program variables by
386:   means of abstract interpretation.
387: \emph{Journal of Logic Programming}, 13~(2\&3): 205--258.
388: 
389: \bibitem[\protect\citename{Jensen and Mogensen, }1990]{Jensen90}
390: Jensen,~T.~P. and  Mogensen.~T.~\AE. (1990)
391: A backwards analysis for compile-time garbage collection.
392: In  N.~Jones (editor),
393: {\em Proc. of the 3th European Symposium
394: on Programming, ({ESOP}'90), Lecture Notes in Computer Science
395:  432}, pp.~227--239. Springer--Verlag.
396: 
397: 
398: \bibitem[\protect\citename{Jones and Mycroft, }1984]{JonesMy}
399: Jones,~N.~D. and Mycroft,~A. (1984)
400: Stepwise development of operational and denotational semantics for
401:   Prolog. In \emph{Proc.  of the International
402:   Symposium  on Logic Programming ({SLP}'84)},
403: pp.~281--288.  IEEE-CS.
404: 
405: 
406: \bibitem[\protect\citename{Jones and S{\o}ndergaard, }1987]{Jones87}
407: Jones,~N.~D. and S{\o}ndergaard,~H. (1987)
408: A semantic-based framework for the abstract interpretation of
409: Prolog.
410: In S.~Abramsky and C.~Hankin (editors) \emph{Abstract Interpretation
411:   of Declarative Languages}, pp.~123--142. 
412: Ellis Horwood.
413: 
414: 
415: 
416: \bibitem[\protect\citename{Kanamori and Kawamura, }1987]{Kanamori87}
417: Kanamori,~T. and Kawamura,~T. (1987)
418: Analysing success patterns of logic programs by abstract hybrid
419:   interpretation.
420: Technical Report 279, ICOT, Tokyo, Japan.
421: 
422: 
423: \bibitem[\protect\citename{Kanamori and Horiuchi, }1985]{KH85}
424: Kanamori,~T. and Horiuchi,~K. (1985)
425: Type inference in Prolog and its application.
426: In A.~K.~Joshi (editor),
427: \emph{Proc. of  9th International Joint Conference
428: on Artificial Intelligence,  ({IJCAI}'85)  IJCAI}, pp.~704--709.
429: Morgan Kaufmann.
430: 
431: 
432: 
433: \bibitem[\protect\citename{Kieburtz, }1983]{K83}
434: Kieburtz,~R.~B. (1983)
435: Precise typing of abstract data type specification.
436: In {\em Proc.  of the 10th {ACM} Symposium on
437:   Principles of Programming Languages ({POPL}'83)}, pp.~109--116.
438: ACM Press.
439: 
440: 
441: \bibitem[\protect\citename{Klu\'zniak, }1987]{Kluzniak87}
442: Klu\'zniak,~F. (1987)
443: Type synthesis for ground Prolog.
444: In J.-L.~Lassez (editor), \emph{Proc.  of the 4th International
445:   Conference on Logic Programming ({ICLP}'87)},
446: pp.~788--816.  MIT Press.
447: 
448: 
449: 
450: \bibitem[\protect\citename{Klu\'zniak, }1988]{Kluzniak88}
451: Klu\'zniak,~F. (1988)
452: Compile-time garbage collection for ground Prolog.
453: In  R.~A.~Kowalski and K.~A.~Bowen (editor), \emph{Proc.  of the 5th
454: International Conference on Logic Programming ({ICLP}'88)},
455: pp.~1490--1505.  MIT Press.
456: 
457: 
458: 
459: \bibitem[\protect\citename{Le Charlier, }1994]{Book.SAS94}
460: Le~Charlier,~B. (Ed.). (1994)
461: \emph{Proceedings of the 1st 
462: International Static 
463: Analysis Symposium ({SAS'94}), 
464: Lecture Notes in Computer Science
465: 864}. Springer-Verlag.
466: 
467: 
468: \bibitem[\protect\citename{Le Charlier \emph{et al.}, }1993]{WSA93}
469: Le~Charlier,~B., Degimbe,~O., Michel,~L. and Van~Hentenryck,~P. (1993)
470: Optimization techniques for general purpose fixpoint algorithms:
471:   practical efficiency for the abstract interpretation of Prolog.
472: In P.~Cousot, M.~Falaschi, G.~Fil\`e and A.~Rauzy
473:  (editors) {\em Proc. of the 3rd International
474:   Workshop on Static Analysis ({WSA}'93),
475: Lecture Notes in Computer Science
476:  724}, pp.~15--26. Springer--Verlag.
477: 
478: 
479: \bibitem[\protect\citename{Le Charlier \emph{et al.}, }1999]{RP-98-002}
480: Le~Charlier,~B.,  Lecl\`ere,~C.,  Rossi,~S. and  Cortesi,~A. (1999)
481: Automated verification of Prolog programs.
482: \emph{Journal of Logic Programming}, 39~(1--3): 3--42.
483: 
484: 
485: 
486: \bibitem[\protect\citename{Le Charlier \emph{et al.}, }1991]{ICLP91AI}
487: Le~Charlier,~B., Musumbu,~K. and Van~Hentenryck,~P. (1991)
488: A generic abstract interpretation algorithm and its complexity
489:   analysis.
490: In K.~Furukawa (editor), \emph{Proc.  of the 8th International
491:   Conference on Logic Programming ({ICLP}'91)},
492: pp.~64--78.  MIT Press.
493: 
494: 
495: 
496: 
497: 
498: \bibitem[\protect\citename{Le Charlier \emph{et al.}, }1996]{Cut_rep95}
499: Le~Charlier,~B. and Rossi,~S. (1996)
500: Sequence-based abstract semantics of Prolog.
501: Technical Report RR-96-001, Facult\'es Universitaires Notre-Dame de
502:   la Paix, Institut d'Informatique, Namur, Belgium.
503: 
504: 
505: \bibitem[\protect\citename{Le Charlier \emph{et al.}, }1994]{CUT94}
506: Le~Charlier,~B., Rossi,~S. and Van~Hentenryck,~P. (1994)
507: An abstract interpretation framework which accurately handles
508: Prolog search-rule and the cut.
509: In M.~Bruynooghe (editor), \emph{Proc. of the International Logic
510:   Programming Symposium ({ILPS}'94)},
511: pp.~157--171. MIT Press.
512: 
513: 
514: \bibitem[\protect\citename{Le Charlier \emph{et al.}, }1997]{sequence}
515: Le~Charlier,~B., Rossi,~S. and Van~Hentenryck,~P. (1997)
516: Sequence-based abstract interpretation of Prolog.
517: Technical Report RR-97-001, Facult\'es Universitaires Notre-Dame de
518:   la Paix, Institut d'Informatique, Namur, Belgium.
519: 
520: 
521: \bibitem[\protect\citename{Le Charlier and Van Hentenryck, }1993]{universal}
522: Le~Charlier,~B. and Van~Hentenryck,~P. (1993)
523: A general top-down fixpoint algorithm (revised version).
524: Technical Report RR-93-022, Facult\'es Universitaires Notre-Dame de
525:   la Paix, Institut d'Informatique, Namur, Belgium.
526: 
527: 
528: \bibitem[\protect\citename{Le Charlier and Van Hentenryck, }1994]{TOPLAS}
529: Le~Charlier,~B. and Van~Hentenryck,~P. (1994)
530: Experimental evaluation of a generic abstract interpretation
531:   algorithm for Prolog.
532: \emph{ACM Transactions on Programming Languages and Systems (TOPLAS)},
533:   16~(1): 35--101.
534: 
535: 
536: \bibitem[\protect\citename{Le Charlier and Van Hentenryck, }1995]{ACTA95}
537: Le~Charlier,~B. and Van~Hentenryck,~P. (1995)
538: Reexecution in abstract interpretation of {P}rolog.
539: \emph{Acta Informatica}, 32~(3): 209--270.
540: 
541: 
542: 
543: \bibitem[\protect\citename{Leivant, }1983]{L83}
544: Leivant,~D. (1983)
545: Polymorphic type inference.
546:  In \emph{Proc. of the  10th {ACM} Symposium on
547:   Principles of Programming Languages ({POPL}'83)}, pp.~88--98.
548: ACM Press.
549: 
550: 
551: \bibitem[\protect\citename{Lloyd, }1987]{Lloyd}
552:  Lloyd,~J. W. (1987)
553: \emph{Foundations of Logic Programming}.
554: Springer Series: Symbolic Computation--Artificial Intelligence.
555:   Springer-Verlag, second edition.
556: 
557: 
558: \bibitem[\protect\citename{Marien and Demoen, }1989]{Marien89}
559: Marien, A. and Demoen,~B. (1989)
560: On the management of choicepoint and environment frames in the WAM.
561: In E.~L. Lusk and R. A. Overbeek (editors) {\em Proc. of the
562:   North American Conference on Logic Programming ({NACLP}'89)}, 
563: pp.~1030--1047. MIT Press.
564: 
565: \bibitem[\protect\citename{Marien \emph{et al.}, }1989]{Marien89b}
566: Marien,~A.,  Janssens,~G.,  Mulkers,~A. and  Bruynooghe.~M.
567: (1989)
568: The impact of abstract interpretation: an experiment in code
569: generation.
570: In G.~Levi and M.~Martelli (editors), \emph{Proc.  of the 6th International
571:   Conference on Logic Programming ({ICLP}'89)},
572: pp.~33--47.   MIT Press.
573: 
574: 
575: 
576: \bibitem[\protect\citename{Marriott, }1993]{Marriott93}
577: Marriott,~K. (1993)
578: Frameworks for abstract interpretation.
579: \emph{Acta Informatica}, 30~(2): 103--129.
580: 
581: 
582: \bibitem[\protect\citename{Marriott and S{\o}ndergaard, }1989a]{Marriott89}
583: Marriott,~K. and S{\o}ndergaard,~H. (1989)
584: Notes for a tutorial on abstract interpretation of logic programs.
585:  North American Conference on Logic Programming ({NACLP}'89).
586: 
587: 
588: \bibitem[\protect\citename{Marriott and S{\o}ndergaard, }1989b]{Marriott89b}
589: Marriott,~K. and ~S{\o}ndergaard,~H. (1989)
590: Semantics-based dataflow analysis of logic programs.
591: In G.~Ritter (editor) {\em Proc. of the IFIP 11th World Computer 
592: Congress, Information Processing 89}, 
593: pp.~601--606. North-Holland/IFIP.
594: 
595: 
596: \bibitem[\protect\citename{Maier, }1991]{Meier91}
597: Meier,~M. (1991)
598: Recursion versus iteration in Prolog.
599: In K.~Furukawa (editor), \emph{Proc.  of the 8th International
600:   Conference on Logic Programming ({ICLP}'91)},
601: pp.~157--169.  MIT Press.
602: 
603: 
604: \bibitem[\protect\citename{Mellish, }1987]{Mellish87}
605: Mellish,~C. (1987)
606: Abstract interpretation of Prolog programs.
607: In S.~Abramsky and C.~Hankin (editors) {\em Abstract Interpretation
608:   of Declarative Languages}, chapter~8, 
609: pp.~181--198.
610: Ellis Horwood Limited.
611:   
612: 
613: \bibitem[\protect\citename{Mendelzon, }1991]{Mendelzon85}
614: Mendelzon,~A.~O. and Wood,~P.~T. (1991)
615: Functional dependencies in Horn Clause Queries.
616: \emph{ACM Transactions on Database Systems (TODS)},
617:   16~(1): 31--55.
618: 
619: %\newblock In {\em Proceedings of the Eleventh International Conference on Very
620: %  Large Data Bases}, 
621: %pages 324--330,  1985.
622: 
623: 
624: 
625: \bibitem[\protect\citename{Mulkers, }1991]{Mulkers91a}
626: Mulkers,~A. (1991)
627: Deriving live data structures in logic programs by means of
628:   abstract interpretation.
629: PhD thesis, Department of Computer Science, Katholieke Universiteit
630:   Leuven, Belgium.
631: 
632: 
633: \bibitem[\protect\citename{Mulkers \emph{et al.}, }1990]{Mulkers90}
634: Mulkers,~A., Winsborough,~W. and Bruynooghe,~M. (1990)
635: Analysis of shared data structures for compile-time garbage
636:   collection in logic programs.
637: In  D.S. Warren and P.~Szeridi (editors), 
638: \emph{Proc.  of the 7th International
639:   Conference on Logic Programming ({ICLP}'90)},
640: pp.~747--762.  MIT Press.
641: 
642: 
643: 
644: 
645: \bibitem[\protect\citename{Musumbu, }1990]{MusumbuThesis}
646: Musumbu,~K. (1990)
647: Interpr\'etation abstraite de programmes Prolog.
648: PhD thesis, Institute of Computer Science, University of Namur,
649:   Belgium.
650: 
651: 
652: 
653: 
654: \bibitem[\protect\citename{Muthukumar and Hermenegildo, }1991]{Muthukumar91}
655: Muthukumar,~K. and Hermenegildo,~M. (1991)
656: Combined determination of sharing and freeness of program variables
657:   through abstract interpretation.
658: In K.~Furukawa (editor), \emph{Proc.  of the 8th International
659:   Conference on Logic Programming ({ICLP}'91)},
660: pp.~49--63.  MIT Press.
661: 
662: 
663: \bibitem[\protect\citename{Muthukumar and Hermenegildo, }1992]{Muthukumar92}
664: Muthukumar,~K. and Hermenegildo,~M. (1992)
665: Compile-time derivation of variable dependency using abstract
666:   interpretation.
667: \emph{Journal of Logic Programming}, 13~(2\&3): 315--347.
668: 
669: 
670: \bibitem[\protect\citename{Mycroft and  O'Keefe, }1984]{MK84}
671: Mycroft,~A. and O'Keefe,~R.~A. (1984)
672: A polymorphic type system for Prolog.
673: \emph{Artificial Intelligence}, 23~(3): 295--307.
674: 
675: 
676: \bibitem[\protect\citename{Nilsson, }1990]{Nilsson90a}
677: Nilsson,~U. (1990)
678: Systematic semantic approximations of logic programs.
679: In P.~Deran\-sart and J.~Ma{\l}uszy\'nski (editors),
680:  \emph{Proc. of the
681:   International Workshop on Programming Language Implementation and
682:   Logic Programming ({PLILP}'90), Lecture Notes in Computer Science, 456}, 
683: pp.~293--306. Springer-Verlag. 
684: 
685: 
686: 
687: \bibitem[\protect\citename{Plotkin, }1981]{Plotkin81}
688: Plotkin,~G.~D. (1981)
689: A structural approach to operational semantics.
690: Technical Report DAIMI FN-19, CS Department, University of Aarhus.
691: 
692: 
693: \bibitem[\protect\citename{Sahlin, }1991]{Sahlin91}
694: Sahlin,~D. (1991)
695: Determinacy analysis for full Prolog.
696: In \emph{Proc. of
697:  the Symposium on Partial Evaluation and Semantics-Based
698:   Program Manipulation ({PEPM}'91)}, SIGPLAN Notices
699: 26~(9): 23--30. 
700: 
701: \bibitem[\protect\citename{Sahlin, }1993]{Sahlin.PhD}
702: Sahlin,~D. (1993)
703: Mixtus: an automatic partial evaluator for full Prolog.
704: \emph{New Generation Computing}, 12~(1): 7--51.
705: 
706: %\bibitem{Sahlin90}
707: %D.~Sahlin.
708: %\newblock The Mixtus Approach to Automatic Partial Evaluation for Full Prolog.
709: %\newblock In S.K. Debray, editor, {\em Proceedings of the North American
710: %  Conference on Logic Programming ({NACLP}'90)}, Austin, Texas, October 1990.
711: %  MIT Press.
712: 
713: 
714: \bibitem[\protect\citename{Schmidt, }1988]{Schmidt88}
715: Schmidt,~D.~A. (1988)
716: \emph{Denotational Semantics}.
717: Allyn and Bacon, Inc.
718: 
719: \bibitem[\protect\citename{Somogyi, }1987]{So86}
720: Somogyi,~Z. (1987)
721: A system of precise models for logic programs.
722: In  E.~Shapiro (editor), \emph{Proc.  of the Fourth International
723:   Conference on Logic Programming ({ICLP}'87)},
724: pp.~769--787. MIT Press.
725: 
726: 
727: \bibitem[\protect\citename{Spoto, }2000]{Spoto}
728: Spoto,~F.  (2000)
729: Operational and goal-independent denotational
730: semantics for Prolog with cut.
731: \emph{Journal of Logic Programming}, 42~(1): 1--46.
732: 
733: 
734: %\newblock In M. Falaschi, M. Navarro, and A. Policriti, editors,
735: %{\em Proceeding of APPIA-GULP-PRODE'97}, 
736: %pages 201--213, Grado, Italy, June 1997.
737: 
738: \bibitem[\protect\citename{Sterling and Shapiro, }1986]{Sterling86}
739: Sterling,~L. and Shapiro,~E. (1986)
740: \emph{The Art of Prolog: Advanced Programming Techniques}.
741:  MIT Press, Cambridge Mass.
742: 
743: 
744: \bibitem[\protect\citename{Stoy, }1977]{Stoy77}
745: Stoy,~J. (1977)
746: Denotational semantics: the Scott-Strachey approach to
747:   programming language theory.
748: MIT Press, Cambridge Mass.
749: 
750: 
751: \bibitem[\protect\citename{Tamaki, }1986]{Tamaki86}
752: Tamaki,~H. and Sato,~T. (1986)
753: {OLD}-resolution with tabulation.
754: In E.~Y.~Shapiro (editor), \emph{Proc.  of the 3rd International
755:   Conference on Logic Programming ({ICLP}'86),
756:  Lecture Notes in Computer Science 225},
757: pp.~84--98.   Springer--Verlag.
758: 
759: 
760: \bibitem[\protect\citename{Taylor, }1989]{Taylor89}
761: Taylor,~A. (1989)
762: Removal of dereferencing and trailing in Prolog compilation.
763: In G.~Levi and M.~Martelli (editors), \emph{Proc.  of the 6th International
764:   Conference on Logic Programming ({ICLP}'89)},
765: pp.~48--60.   MIT Press.
766: 
767: 
768: \bibitem[\protect\citename{Ueda, }1987]{Ueda}
769: Ueda,~K. (1987)
770: Making exhaustive search programs deterministic, part II.
771: In J.-L.~Lassez (editor), \emph{Proc.  of the 4th International
772:   Conference on Logic Programming ({ICLP}'87)},
773: pp.~356--375.  MIT Press.
774: 
775: 
776: 
777: \bibitem[\protect\citename{Van~Hentenryck \emph{et al.}, }1993]{WSA93_Granularity}
778: Van~Hentenryck,~P., Degimbe,~O., Le~Charlier,~B. and Michel,~L. (1993)
779: The impact of granularity in abstract interpretation of
780:   Prolog.
781: In P.~Cousot, M.~Falaschi, G.~Fil\`e and A.~Rauzy
782:  (editors) {\em Proc. of the 3rd International
783:   Workshop on Static Analysis ({WSA}'93),
784: Lecture Notes in Computer Science
785:  724}, pp.~1--14. Springer--Verlag.
786: 
787: 
788: \bibitem[\protect\citename{Van Roy \emph{et al.}, }1987]{Vanroy87}
789: Van~Roy,~P.,  Demoen,~B., and  Willems,~Y.~D. (1987)
790: Improving the execution  speed of compiled Prolog
791: with modes, clause selection, and determinism.
792: In H.~Ehrig, R.~A.~Kowalski, G.~Levi and U.~Montanari (editors),
793: \emph{Proc. of the International Joint Conference on Theory and
794: Practice of Software Develpment ({TAPSOFT}'87),
795: Lecture Notes in Computer Science, 250}, pp.~111--125. Springer-Verlag.
796: 
797: 
798: \bibitem[\protect\citename{Van Roy and Despain, }1992]{Vanroy92}
799: Van~Roy,~P. and Despain,~A.~M. (1992)
800: High-performance computing with the Aquarius compiler.
801: \emph{IEEE Computer}, 25~(1): 54-68.
802: 
803: 
804: 
805: \bibitem[\protect\citename{Warren, }1992]{Warren92}
806: Warren,~D.~S. (1992)
807: Memoing for logic programs.
808: \emph{Communications of the {ACM}}, 35~(3): 93--111.
809: 
810: \bibitem[\protect\citename{Warren \emph{et al.}, }1988]{Warren88}
811: Warren,~R., Hermenegildo,~M.~V. and Debray,~S.~K. (1988)
812: On the practicality of global flow Analysis of Logic Programs.
813: In  R.~A.~Kowalski and K.~A.~Bowen (editor), \emph{Proc.  of the 5th
814: International Conference on Logic Programming ({ICLP}'88)},
815: pp.~349--366.  MIT Press.
816: 
817: 
818: \bibitem[\protect\citename{Winsborough, }1992]{Winsborough92}
819: Winsborough,~W. (1992)
820: Multiple specialization using minimal-function graph semantics.
821: \emph{Journal of Logic Programming}, 13~(2\&3) :259--290.
822: 
823: 
824: \bibitem[\protect\citename{Xu and Warren, }1988]{XW88}
825: Xu,~J. and  Warren,~D.~S. (1988)
826: A type inference system for {P}rolog.
827: In  R.~A.~Kowalski and K.~A.~Bowen (editor), \emph{Proc.  of the 5th
828: International Conference on Logic Programming ({ICLP}'88)},
829: pp.~604--619.  MIT Press.
830: 
831: 
832: \bibitem[\protect\citename{Yardeni and Shapiro, }1991]{YS91}
833: Yardeni,~E. and Shapiro,~E. (1991)
834: A type System for logic programs.
835: \emph{Journal of Logic Programming}, 10~(1/2/3\&4): 125--153.
836: 
837: \end{thebibliography}
838: