Abstract
State transitions systems are the most commonly used model for the static analysis of the dynamic behaviour of parallel programs. One difficulty for implementing such analyzers is the lack of structure of the set of states. As a consequence, only finite state systems are considered as analyzable. We present a method based on term rewriting, which permits to mechanically deal with transition systems having an infinite number of states, and show how it can be applied to the FP2 programming language where communicating processes are described through rewrite rules.
UUCP: mcvax!imag!lifia!phs
Preview
Unable to display preview. Download preview PDF.
References
D. Austry and G. Boudol. Algebre de processus et synchronisation. Theoretical Computer Science, 30(1), 1984.
E. Allen Emerson and J. Y. Halpern. “Sometimes” and “Not Never” revisited: on branching versus linear time temporal logic. Journal of the ACM, 33(1):151–178, 1986.
D. Bert and R. Echahed. Design and implementation of a generic, logic and functional programming language. In Proc. ESOP 86, Saarbrucken, LNCS 213, Springer-Verlag, March 1986.
G. Boudol. Notes on Algebraic Calculi of Processes. Research Report 395, INRIA, April 1985.
A. Colmerauer. Equations and inequations on finite and infinite trees. In FGCS'84 Proceedings, November 1984.
H. Comon. About disequations simplification. 1987. Not yet published.
H. Comon. An Anti-Unification Approach to Decide the Sufficient Completeness of Algebraic Specifications. Research Report Lifia 50 Imag 619, Univ. Grenoble, July 1986. To appear in J. Comp. Sys. Sci.
H. Comon. Sufficient completeness, term rewriting systems and anti-unification. In 8th Conf. on Automated Deduction, Oxford, LNCS 230, Springer-Verlag, 1986.
Ph. Devienne and P. Lebegue. Weighted graphs: a tool for logic programming. In Proc. CAAP 86, Nice, LNCS 214, Springer-Verlag, March 1986.
H.-D. Ehrich. On the theory of specification, implementation and parametrization of abstract data types. Journal of the ACM, 29(1):206–227, 1982.
H. Ehrig, H.-J. Kreowski, J. Thatcher, E. Wagner, and J. Wright. Parameter passing in algebraic specification languages. Theoretical Computer Science, 28, 1984.
J. V. Guttag and J. J. Horning. The algebraic specification of abstract data types. Acta Informatica, 10, 1978.
Guttag, Horowitz, and Musser. Abstract data types and software validation. Communications of the ACM, 21(12), 1978.
J. Goguen and J. Meseguer. EQLOG: equality, types, and generic modules for logic programming. In DeGroot and Lindstrom, editors, Functional and Logic Programming, Prentice Hall Int., 1985.
G. Grätzer. Universal Algebra. Springer-Verlag, second edition, 1979.
S. Graf and J. Sifakis. From Synchronization Tree Logic to Acceptance Model Logic. In Logics of Programs. Proceedings, LNCS 193, Springer-Verlag, 1985.
G. Huet and D. Oppen. Equations and rewrite rules: a survey. In Formal Language Theory. Perspectives and Open Problems, Academic Press, 1980.
Ph. Jorrand. Specification of communicating processes and process implementation correctness. In Int. Symp. on Programming, LNCS 137, Springer-Verlag, 1982.
Ph. Jorrand. Term rewriting as a basis for the design of a functional and parallel programming language. A case study: the language FP2. In Fundamentals of Artificial Intelligence, LNCS 232, Springer-Verlag, 1986.
S. Kaplan. Rewriting with a non-deterministic choice operator: from algebra to proofs. In Proc. ESOP 86, Saarbrucken, LNCS 213, Springer-Verlag, March 1986.
R. M. Keller. Formal verification of parallel programs. Communications of the ACM, 19(7):371–384, 1976.
L. Lamport. “Sometimes” is sometimes “Not Never”. In Proc. ACM Symp. Principles of Programming Languages, January 1980.
J.L. Lassez, M.J. Maher, and K.G. Marriot. Unification Revisited. Research Report RC 12394, IBM. T.J. Watson Research Center, November 1986.
R. Milner. A Calculus of Communicating Systems. Volume LNCS 92, Springer-Verlag, 1980.
R. Milner. Calculi for synchrony and asynchrony. Theoretical Computer Science, 23, 1983.
A. Martelli and U. Montanari. An efficient unification algorithm. ACM Transactions on Programming Languages and Systems, 4:258–282, 1982.
J. M. Pereira. Processus communicants; un langage formel et ses modèles. Problèmes d'analyse. Thèse de 3eme cycle, Univ. Grenoble, 1984.
J. M. Pereira. Noetherian functions and termination of head rewriting rules: a tool for the halting problem in programming languages. Research Report, Univ. Grenoble, July 1986.
J. M. Pereira and C. Rodriguez. The reachability analysis in communicating processes founded in term transition system. Research Report Lifia 37 Imag 567, Univ. Grenoble, December 1985.
J. P. Queille and J. Sifakis. Specification and verifications of concurrent systems in CESAR. In Int. Symp. on Programming, LNCS 187, Springer-Verlag, 1982.
J. P. Queille. The CESAR system: an aided design and cerification system for distributed applications. In Proc. of the 2nd Int. Conf. on Distributed Computing Systems, pages 149–161, Computer Society Press, 1981.
J. Sifakis. A unified approach for studying the properties of transitions systems. Theoretical Computer Science, 18, 1982.
J.J. Thiel. Stop loosing sleep over incomplete specifications. In Proc. ACM Symp. Principles of Programming Languages, 1984.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1987 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Schnoebelen, P. (1987). Rewriting techniques for the temporal analysis of communicating processes. In: de Bakker, J.W., Nijman, A.J., Treleaven, P.C. (eds) PARLE Parallel Architectures and Languages Europe. PARLE 1987. Lecture Notes in Computer Science, vol 259. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-17945-3_23
Download citation
DOI: https://doi.org/10.1007/3-540-17945-3_23
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-17945-0
Online ISBN: 978-3-540-47181-3
eBook Packages: Springer Book Archive