Servicios Personalizados
Revista
Articulo
Indicadores
- Citado por SciELO
- Accesos
Links relacionados
- Similares en SciELO
Compartir
Computación y Sistemas
versión On-line ISSN 2007-9737versión impresa ISSN 1405-5546
Comp. y Sist. vol.8 no.1 Ciudad de México jul./sep. 2004
Especificación y Análisis de Sistemas de Tiempo Real en Teoría de Tipos 1
Specification and Analysis of Real Time Systems in Type Theory
Carlos Daniel Luna
Instituto de Computación (InCo). Facultad de Ingeniería. Univ. de la República. Montevideo, Uruguay Casilla de Correo 16120, Distrito 6, Montevideo, Uruguay Email: cluna@fing.edu.uy ; Web: http://www.fing.edu.uy/~cluna
Artículo recibido en abril 27, 2001
Aceptado en agosto 8, 2004
Resumen
Para el análisis de sistemas de tiempo real se destacan dos enfoques formales: la verificación de modelos y el análisis deductivo basado en asistentes de pruebas. El primero se caracteriza por ser completamente automatizable pero presenta dificultades al tratar sistemas con un gran número de estados o que tienen parámetros no acotados. El segundo permite tratar con sistemas arbitrarios pero requiere la interacción del usuario. Este trabajo explora una metodología que permite compatibilizar el uso de un verificador de modelos como Kronos y el asistente de pruebas Coq en el análisis de sistemas de tiempo real. Un especial énfasis es puesto en el análisis de un caso de estudio, considerado como benchmark en diferentes trabajos: el control de un paso a nivel de tren.
Abstract
Two formal approaches arise as the most used for the analysis of real time systems: model checking and deductive analysis based on proof assistants. The former is characterized by its fully automatization but it presents some difficulties when dealing with systems that involve a great number of states or unbound parameters. The latter, on the other hand, turns out to be appropriate for working with arbitrary systems, though user's interaction is required. This work explores a methodology that combines the use of a model checker like Kronos and the proof assistant Coq for the analysis of real time systems. We specially emphasize the analysis of the railroad crossing example, a case study considered a benchmark by different works in this field.
DESCARGAR ARTÍCULO EN FORMATO PDF
Referencias
1. J. Armstrong and L. Barroca. "Specification and verification of reactive systems behaviour: The railroad crossing example". RealTime Systems, 10:143178, 1996. [ Links ]
2. R. Alur, C. Courcoubetis, and D. Dill. "Modelchecking for realtime systems". In Proc. 5th Symp on Logics in Computer Science, pages 414425. IEEE Computer Society Press, 1990. [ Links ]
3. R. Alur and D. Dill. "A theory of timed automata". Theorical Computer Science, 126:183235, 1994. [ Links ]
4. R. Alur and T. Henzinger. "Logics and models of real time: A survey". In J. W. de Bakker, K. Huizing, W.P. de Roever, and G. Rozenberg, editors, Real Time Theory in Practice, LNCS 600, pages 74106. SpringerVerlag, 1992. [ Links ]
5. R. Alur and T. Henzinger. "A Really Temporal Logic". Journal of the ACM, 41(1): 181204, 1994. [ Links ]
6. R. Alur. Techniques for automatic verification of realtime systems. PhD thesis, Stanford University, 1991. [ Links ]
7. A. Asarin, O Maler, and A. Pnueli. "On the discretization of delays in timed automata and digital circuits". In R. de Simone and D. Sangiorgi (Eds.), Proc. Concur'98, LNCS 1466, pages 470484, SpringerVerlag, 1998. [ Links ]
8. B. Alpern and F. Schneider. "Defining liveness". Information Processing Letters, 21(4): 181185, 1985. [ Links ]
9. B. Barras, S. Boutin, C. Cornes, J. Courant, Y. Coscoy, D. Delahaye, D. de Rauglaudre, JC. Filliâtre, E. Giménez, H. Herbelin, G. Huet, H. Laulhère, C. Muñoz, Ch. Murthy, C. ParentVigouroux, P. Loiseleur, Ch. PaulinMohring, A. Saïbi, and B. Werner. "The Coq Proof Assistant. Reference Manual, Versión 6.2.4". INRIA, 1999. [ Links ]
10. N. S. Bjørner, A. Browne, and Z. Manna. "Automatic generation of invariants and intermediate assertions". Theorical Computer Science, 173(1):4987, 1997. [ Links ]
11. S. Bensalem and Y. Lakhench. "Automatic generation of invariants". To appear in Formal Methods, 1999. [ Links ]
12. N. Bjørner, Z. Manna, H. Spima, and T. Uribe. "Deductive Verification of Realtime Systems Using SteP". ARTS97, vol. 1231 of LNCS, pp. 2243, SpringerVerlag, 1997. [ Links ]
13. M. Bozga, O. Maler, and S. Tripakis. "Efficient verification of timed automata using dense and discrete time semantics". In L. Pierre and T. Kropf (Eds.),Proc CHARME'99, SpringerVerlag, 1999. [ Links ]
14. J. Burch. "Combining CTL, trace theory and timing models", Automatic Verification Methods for Finite State Systems, LNCS 407, 1989. [ Links ]
15. E. Clarke, E. Emerson, and A. Sistla. "Automatic verification of finitestate concurrent systems using temporal logic specifications". ACM Transactions on Programming Languages and Systems, 8(2):244263, 1986. [ Links ]
16. T. Coquand and G. Huet. "The calculus of constructions". Information and Computation, 76(2/3), 1988. [ Links ]
17. Z. Chaochen, C. Hoare, and A. Ravn. "A calculus of durations". Inform. Processing Letters, 40(5):269276, 1992. [ Links ]
18. T. Coquand. "Metamathematical investigations of a calculus of constructions". INRIA and Cambridge Univ., 1986. [ Links ]
19. T. Coquand. "Infinite objects in type theory". In H. Barendregt and T. Nipkow, editors, Workshop on Types for Proofs and Programs, number 806 in LNCS, pages 6278. SpringerVerlag, 1993. [ Links ]
20. C. Daws and S. Yovine. "Verification of multirate timed automata with KRONOS: two exemples". Technical Report Spectre95 06, VERIMAG, 1995. [ Links ]
21. E. Emerson. "Automated temporal reasoning about rective systems". In Logics for Concurrency, 1995. [ Links ]
22. E. Emerson, A. Mok, A. Sistla, and J. Srinivasan. "Quantitative temporal reasoning". Workshop on Automatic Verification Methods for Finite State Systems, Grenoble, France, 1989. [ Links ]
23. E. Giménez. A Calculus of Infinite Constructions and its application to the verification of communicating systems. PhD thesis, Ecole Normale Supérieure de Lyon, 1996, Unité de Recherche Associée au CNRS No. 1398, 1996. [ Links ]
24. E. Giménez. "Two Approaches to the Verification of Concurrent Programs in Coq". To appear, 1999. [ Links ]
25. M. Gordon. Introduction to HOL: a theorem proving environment based for higher order logic. Cambridge University, Press, 1993. [ Links ]
26. A. Göllü, A. Puri, and P. Varaiya. "Discretization of timed automata". Proc. 33rd CDC, Orlando, Florida, 1994. [ Links ]
27. D. Gries. The science of programming, SpringerVerlag New York Inc., 1981. [ Links ]
28. T. Henzinger, P.H. Ho, and H. WongToi. "Hytech: a model checker for hybrid systems". Software Tools for Technology Transfer, 1997. [ Links ]
29. C. Heitmeyer, R. Jeffords, and B. Labaw. "A benchmark for comparing different approaches for specifying realtime systems". Real Time: Theory and Practice, LNCS 600, REX Workshop, Mook, The Netherlands, 1991. [ Links ]
30. T. Henzinger and O. Kopke. "Verification methods for the divergent runs of clock systems". In FTRTFT'94: Formal Techniques in Realtime and Faulttolerant Systems, volume 863 of LNCS, pages 351372, 1994. [ Links ]
31. T. Henzinger, Z. Manna, and A. Pnueli. "What good are digital clocks?". In W. Kuich, editor, ICALP 92: Automata, Languages and Programming, LNCS 623, pages 545558. SpringerVerlag, 1992. [ Links ]
32. T. Henzinger, X. Nicollin, J. Sifakis, and S. Yovine. "Symbolic modelchecking for realtime systems". In Proc. 7th Symp on Logics in Computer Science. IEEE Computer Society Press, 1992. [ Links ]
33. K. Havelund and N. Shankar. "Experiments in Theorem Proving Model Checking for Protocol Verification". In proceedings of FME'96, Oxford. LNCS 1051, pages 662681, 1996. [ Links ]
34. Y. Kesten, A. Klein, A. Pnueli, and G. Raanan. "A Perfecto Verification: combining model checking with deductive analysis to verify reallife software". In FM' 99, Toulouse, France. LNCS 1709, pages 173194, 1999. [ Links ]
35. Z. Luo and R. Pollack. "Lego proof development system: User's manual". T. Rep. ECSLFCS92211, LFCS, 1992. [ Links ]
36. K. Larsen, P. Pettersson, and W. Yi. "Uppaal in a nutshell". Software Tools for Technology Transfer, 1997. [ Links ]
37. C. Luna. Especificación y análisis de sistemas de tiempo real en teoría de tipos. Caso de estudio: the railroad crossing example. Master thesis, Technical Report 0001, InCo, PEDECIBA Informática, Fac. de Ingeniería, U. de la República, Uruguay, Febrero de 2000. Disponible también en http://www.fing.edu.uy/~cluna. [ Links ]
38. L. Magnusson. The implementation of ALF a proof editor based on Matin Löf's Monomorphic Type Theory with Explicit Substitution. PhD thesis, Chalmers University of Göteborg, 1994. [ Links ]
39. D. Mandrioli, Carlo Ghezzi, and Mehdi Jazayeri. Fundamentals of Software Engineering. Prentice Hall, 1991. [ Links ]
40. Olaf Müller and T. Nipkow. "Combining Model Checking and Deduction for I/OAutomata". In Tools and Algorithms for the Construction and Analysis of Systems, LNCS 1019, pages 116, 1995. [ Links ]
41. Z. Manna and A. Pnueli. "Completing the temporal picture". In Theoretical Computer Science, 83(1):97130,1991. [ Links ]
42. A. Olivero. Modélisation et Analyse de Systèmes Temporisés et Hybrides. PhD thesis, Institut National Polytéchnique de Grenoble. France, 1994. [ Links ]
43. S. Owre, J. Rushby, and N. Shankar. "PVS: A prototype verification system". In Deepak Kapur, editor, 11th International Conference on Automated Deduction (CADE). LNIA 607, Saratoga, NY, 1992. Springer Verlag. [ Links ]
44. J. Ostroff. Temporal logic of realtime systems, Ph.D. thesis, Univ. of Toronto, 1987. [ Links ]
45. L. Paulson. "Coinduction and Corecursion in Higherorder Logic". Technical Report 304, Computer Laboratory, University of Cambridge, 1993. [ Links ]
46. L. Paulson. "The Isabelle reference manual". Technical Report 283, Computer Laboratory, University, 1993. [ Links ]
47. A. Pnueli and L. Lamport. "An oldfashioned recipe for realtime". In J. W. De Baker, K. Huizing, W. P. De Roever, and G. Rozenberg, editors, Real Time: Theory in Practice, LNCS 600, SpringerVerlag, 1992. [ Links ]
48. C. PaulinMohring. "Inductive definitions in the system Coq rules and properties". In M. Bezem and J. Groote, editors, Proceeedings of the conference Typed Lambda Calculi and Aplications, LNCS 664, 1993. [ Links ]
49. A. Pnueli. "The temporal logic of programs". Teorical Computer Science, 1981. [ Links ]
50. A. Pnueli. "Linear and branching structures in the semantics and logics of reactive systems". In Proc. 12th ICALP, Nafplion, LNCS 194, 1985. [ Links ]
51. S. Rajan, N. Shankar, and M. Srivas. "An integration of model checking with automated proof checking". In ComputerAided Verification, CAV'95. LNCS 939, Belgium, 1995. [ Links ]
52. N. Shankar. "Verification of realtime systems using PVS". In CAV'93, Greece. LNCS 697, pages 280291, 1993. [ Links ]
53. H. Saïdi and N. Shankar. "Abstract and model Check while you prove". In CAV'99, Trento, Italy, 1999. [ Links ]
54. H. WongToi and P. Ho. "Automated analysis of an audio control protocol". In Proc. in Computer Aided Verification, 1995. [ Links ]
55. S. Yovine. "Kronos: A verification tool for realtime systems". Software Tools for Technology Transfer, 1997. [ Links ]
1 La versión completa de este trabajo es el reporte 37.