Skip to main content
Log in

Static analysis of Linear Logic programming

  • Regular Papers
  • Published:
New Generation Computing Aims and scope Submit manuscript

Abstract

Linear Logic is gaining momentum in computer science because it offers a unified framework and a common vocabulary for studying and analyzing different aspects of programming and computation. We focus here on models where computation is identified with proof search in the sequent system of Linear Logic. A proof normalization procedure, called “focusing”, has been proposed to make the problem of proof search tractable. Correspondingly, there is a normalization procedure mapping formulae of Linear Logic into a syntactic fragment of that logic, calledLinLog, where the focusing normalization for proofs can be most conveniently expressed. In this paper, we propose to push this compilation/normalization process further, by applying abstract interpretation and partial evaluation techniques to (focused) proofs inLinLog. These techniques provide information concerning the evolution of the computational resources (formulae) during the execution (proof construction). The practical outcome that we expect from this theoretical effort is the definition of a general tool for statically analyzing and reasoning about the runtime behavior of programs in frameworks where computations can be accounted for in terms of proof search in Linear Logic.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Abramsky, S., “Computational Interpretations of Linear Logic”,Theoretical Computer Science, 111, 1–2, pp. 3–57, 1993.

    Article  MATH  MathSciNet  Google Scholar 

  2. Andreoli, J-M., “Logic Programming with Focusing Proofs in Linear Logic,”Journal of Logic and Computation,2,3, 1992.

  3. Andreoli, J-M., “Coordination in LO”, inCoordination Programming: Mechanisms, Models and Semantics (J-M. Andreoli, C. Hankin, and D. Le Metayer, eds.), Imperial College Press, pp. 42–64, 1996.

  4. Andreoli, J-M., Borghoff, U., and Pareschi, R., “Constraint Based Knowledge Brokers,” inProc. of PASCO’94, Linz, Austria, 1994.

    Google Scholar 

  5. Andreoli, J-M., Ciancarini, P., and Pareschi, R., “Interaction Abstract Machines”, inResearch Directions in Concurrent Object Oriented Programming (G. Agha, A. Yonezawa, and P. Wegner, eds.), MIT Press, Cambridge, Ma, U.S.A., pp. 257–280, 1993.

    Google Scholar 

  6. Andreoli, J-M. and Pareschi, R., “Logic Programming with Sequent Systems: A Linear Logic Approach”, inProc. of the Workshop on Extensions of Logic Programming, Lecture Notes in Artificial Intelligence 475, Tübingen, Germany, Springer-Verlag, 1990.

    Google Scholar 

  7. Andreoli, J-M. and Pareschi, R., “Communication as Fair Distribution of Knowledge”, inProc. of OOPSLA’91 Phoenix, Az, U.S.A., 1991.

    Google Scholar 

  8. Banâtre, J-P., Coutant, A. and Le Metayer, D., “A Parallel Machine for Multiset Transformation and Its Programming Style,”Future Generation Computer Systems, 4, 2, pp. 133–145, 1988.

    Article  Google Scholar 

  9. Barbuti, R., Giacobazzi, R., and Levi, G., “A General Framework for Semantics Based Bottom-up Abstract Interpretation of Logic Programs”,IEEE Transactions on Programming Languages and Systems, 15, 1, pp. 133–181, 1993.

    Article  Google Scholar 

  10. Berry, G. and Boudol, G., “The Chemical Abstract Machine”, inProc. of the 17th ACM Symposium on Principles of Programming Languages, San Francisco, Ca, U.S. A., 1990.

  11. Brownston, L., Farrell, R., Kant, E., and Martin, N.,Programming Expert Systems in OPS-5, Addison-Wesley, Reading, MA, U.S.A., 1985.

    Google Scholar 

  12. Bruynooghe, M., “A Practical Framework for Abstract Interpretation of Logic Programs”,Journal of Logic Programming, 10, 2, pp. 91–124, 1991.

    Article  MATH  MathSciNet  Google Scholar 

  13. Carriero, N. and Gelernter, D.,How to Write Parallel Programs, MIT Press, Cambridge, Ma, U.S.A., 1990.

    Google Scholar 

  14. Cerrito, S., “A Linear Semantics for Allowed Logic Programs,” inProc. of the 5th IEEE Symposium on Logic in Computer Science, Philadelphia, Pa, U.S.A., 1990.

  15. Codish, M., Dams, D., and Yardeni, E., “Bottom-up Abstract Interpretation of Logic Programs,”Theoretical Computer Science, 124, 1994.

  16. Codognet, P. and Filé. G., “Computations, Abstractions and Constraints in Logic Programs,” inProc. of the 4th International Conference on Programming Languages (ICCL), Oakland, Ca, U.S.A., 1992.

  17. Corsini, M. and Filé, G., “A Complete Framework for the Abstract Interpretation of Logic Programs: Theory and Application”,Technical Report, Università di Padova, Padova, Italy, 1989.

    Google Scholar 

  18. Cousot, P. and Cousot, R., “Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoint,” inProc. of the 4th ACM Symposium on Principles of Programming Languages, 1977.

  19. Cousot, P. and Cousot, R., “Systematic Design of Program Analysis Frameworks,” inProc. of the 16th ACM Symposium on Principles of Programming Languages, 1979.

  20. Cunningham, H. C. and Roman, G.-C., “A UNITY-Style Programming Logic for Shared Dataspace Programs”,IEEE Transaction on Parallel and Distributed Systems, 1, 3, 1990.

    Article  Google Scholar 

  21. Dalrymple, M., Hinrichs, A., Lamping, J., and Saraswat, V., “The Resource Logic of Complex Predicate Interpretation”, inProc. of the 1993 Republic of China Computational Linguistics Conference (ROCLING), Hsitou National Park, Taiwan, 1993.

    Google Scholar 

  22. Dalrymple, M., Lamping, J., Pereira, F.C.N., and Saraswat, V., “Linear Logic for Meaning Assembly”, inProc. of CLNLP’95, Edinburgh, U.K., 1995.

  23. Debray, S., “Efficient Dataflow Analysis of Logic Programs,” inProc. of POPL’88, San Diego, Ca, U.S.A., 1988.

  24. Debray, S. and Warren, D. S., “Automatic Mode Inference for Logic Programs”,Journal of Logic Programming, 5, pp. 207–230, 1988.

    Article  MATH  MathSciNet  Google Scholar 

  25. Fouquere, C. and Vauzeilles, J., “Inheritance with Exception”, inAdvances in Linear Logic (J-Y. Girard, Y. Lafont, and L. Regnier, eds.), Cambridge University Press, Cambridge, U.K., 1995.

    Google Scholar 

  26. Galmiche, D. and Perrier, G., “On Proof Normalization in Linear Logic”,Theoretical Computer Science, 135, pp. 67–110, 1994.

    Article  MATH  MathSciNet  Google Scholar 

  27. Gelernter, D., “Generative Communication in Linda”,ACM Transactions on Programming Languages and Systems, 7, 1, pp. 80–112, 1985.

    Article  MATH  Google Scholar 

  28. Giacobazzi, R., Debray, S., and Levi, G., “Generalized Semantics and Abstract Interpretation for Constraint Logic Programming”,Technical Report, Università di Pisa, Pisa, Italy, 1992.

    Google Scholar 

  29. Girard, J-Y., “Linear Logic”,Theoretical Computer Science, 50, pp. 1–102, 1987.

    Article  MATH  MathSciNet  Google Scholar 

  30. Harel, D., “Statecharts: A Visual Formalism for Complex Systems”,Science of Computer Programming, 8, 3, 1987.

    Article  MathSciNet  Google Scholar 

  31. Harland, J. and Pym, D., “The Uniform Proof-Theoretic Foundation of Linear Logic Programming,” inProc. of the International Logic Programming Symposium, San-Diego, Ca, U.S.A., 1991.

  32. Janssens, G. and Bruynooghe, M., “Towards a Framework for Abstract Interpretation of Constraint Logic Programming,” inProc. of META’92, Uppsala, Sweden, 1992.

  33. Jones, N. D. and Søndergaard, H., “A Semantics-Based Framework for the Abstract Interpretation of Prolog”, inAbstract Interpretation of Declarative Languages (S. Abramsky and C. Hankin, eds.), Ellis Horwood, Chichester, U.K., pp. 123–142, 1987.

    Google Scholar 

  34. Kobayashi, N., Nakade, M., and Yonezawa. A., “Static Analysis of Communication for Asynchronous Concurrent Programming Languages”, inProc. of SAS’95, 1995.

  35. Kobayashi, N. and Yonezawa, A., “Acl—A Concurrent Linear Logic Programming Paradigm,” inProc. of ILPS’93, Vancouver, B.C., Canada, 1993.

  36. Kobayashi, N. and Yonezawa, A., “Asynchronous Communication Models Based on Linear Logic”,Formal Aspects of Computing, 7, 2, pp. 113–149, 1995.

    Article  MATH  Google Scholar 

  37. Lamport, L., “The Temporal Logic of Actions”,ACM Transactions on Programming Languages and Systems, 16, 3, pp. 872–923, 1994.

    Article  Google Scholar 

  38. Lincoln, P., Mitchell, J., Scedrov, A., and Shankar, N., “Decision Problems for Propositional Linear Logic”,Annals of Pure and Applied Logic, 56, pp. 239–311, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  39. Manna, Z. and Pnueli, A.,The Temporal Logic of Reactive and Concurrent Systems: Specification, Springer-Verlag, 1992.

  40. Marriot, K. and Søndergaard, H., “Bottom-up Abstract Interpretation of Logic Programs,” inProc. of ICLP’88, Seattle, Wa, U.S.A., 1988.

  41. Marriot, K. and Søndergaard, H., “Semantic Based Dataflow Analysis of Logic Programs,” inProc. of the IFIP 11th World Computer Congress, San Francisco, Ca, U. S.A, 1989.

  42. Masseron, M., Tollu, C., and Vauzeille, J., “Generating Plans in Linear Logic”,Theoretical Computer Science, 113, pp. 349–370, 1993.

    Article  MATH  MathSciNet  Google Scholar 

  43. Mellish, C., “Abstract Interpretation of Prolog Programs”, inAbstract Interpretation of Declarative Languages (S. Abramsky and C. Hankin, eds.), Ellis Horwood, Chichester, U.K., pp. 181–198, 1987.

    Google Scholar 

  44. Meseguer, J., “A Logical Theory of Concurrent Objects and Its Realization in the MAUDE Language”, inResearch Directions in Concurrent Object Oriented Programming (G. Agha, A. Yonezawa, and P. Wegner, eds.), MIT Press, Cambridge, Ma, U.S. A., 1992.

    Google Scholar 

  45. Mints, G., “Resolution Calculus for First-Order Linear Logic,” unpublished manuscript, 1991.

  46. Oxhøj, N., Palsberg, J., and Schwartzbach, M., “Making Type Inference Practical”, inProc. of ECOOP’92, Utrecht, Netherlands, 1992.

    Google Scholar 

  47. Penny Nii, H., “Blackboard Systems”, inThe Handbook of Artificial Intelligence, vol. 4 (A. Barr, Cohen, P., and Feigenbaum, E., eds.), Addison-Wesley, Reading, Ma, U.S. A., pp. 1–82, 1989.

    Google Scholar 

  48. Peterson, J.-L.,Petri-Net Theory and the Modeling of Systems, Prentice Hall, Englewood Cliffs, NJ, U.S.A., 1981.

    Google Scholar 

  49. Reddy, U., “A Typed Foundation for Directional Logic Programming”, inProc. of the Workshop on the Extensions of Logic Programming, Bologna, Italy, 1992.

  50. Saraswat, V. A., “Concurrent Constraint Programming Languages”,Ph.D. thesis, Carnegie-Mellon University, Pittsburg, Pa, U.S.A., 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

Remo Pareschi, Dr.: He holds degrees from University of Bologna (laurea), University of Texas at Austin (Master’s) and University of Edinburgh (Ph.D). Until 1993, he worked at the European Computer Industry Research Centre in Munich (Germany). He now leads the research group on Coordination Tehnologies (CT) at the Rank Xerox Research Centre in Grenoble (France). The CT group is working on innovative tools for process-oriented middleware and for information gathering. Remo Pareschi is also very active in the area of Object Oriented Programming. He has co-chaired an international conference on this subject (ECOOP’94), has acted as programme committee member of several others, and is associate editor of the International Journal of Theory and Practice of Object Systems (TAPOS).

Jean-Marc Andreoli, Dr.: He holds a Ph.D degree in Computer Science from University of Paris 6. He worked for 2 years with IBM France before joining, in 1988, the European Computer Industry Research Centre in Munich (Germany). In September 1993, he joined the Rank Xerox Research Centre in Grenoble, France, where he is now senior researcher and works in the Coordination Technologies group. His research interests include language support for high level coordination of distributed active objects, applied to workflow and intelligent data retrieval over a wide area network.

Tiziana Castagnetti: She received her “Laurea in Science dell’Informazione” (master degree in computer science) from the University of Pisa, Italy, in 1990. She obtained for her dessertation an award from the Italian Association of Logic Programming. She attended the Ph.D program in computer science at the University of Pisa where she is currently a collaborator. Her research interests include semantics of Logic Programming, and design and implementation of parallel and concurrent logic languages.

About this article

Cite this article

Andreoli, J.M., Pareschi, R. & Castagnetti, T. Static analysis of Linear Logic programming. NGCO 15, 449–481 (1997). https://doi.org/10.1007/BF03037301

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF03037301

Keywords

Navigation