Abstract
Formal verification methods using Time Petri Net have called the attention of researchers and practitioners in real-time systems design during the last two decades. Special attention was dedicated to methods that could be integrated to the design process since the very beginning, that is, in the requirement phase. However, real-time systems requirements are always concerned with quantitative temporal properties, and therefore, a verification technique should give some feedback on target values for these properties. This paper presents an alternative algorithm—based on reachability—to treat the real-time verification of discrete systems. The proposed method is based on an enumerative technique to generate the complete state space that has some advantages—since it has to be done only once—and disadvantages—since the process is combinatorial. However, our proposal leads to better results when compared to other available techniques, especially to complex problems, besides being able to evaluate quantitative and qualitative properties in the same process. Timed Computation Tree Logic is used as specification language, and Timed Transition Graph (TTG) is introduced to represent system functional behavior. A new algorithm is proposed to build a TTG and applied to a case study to illustrates the operation of the proposed algorithm.
Similar content being viewed by others
Notes
A partition is a cover of the state space which subdivide it in subsets of concrete states preserving some kind of properties.
These authors used, respectively, different names, as Strong State Class Graph and Concrete State Zone Graph, but the algorithms to construct the graph is very similar.
Dealing with dense time approaches will always lead to infinite concrete states.
marking is preserved by definition in state-class approaches.
One where the antecedent state class is in a canonical form.
References
Alur, R., Courcoubetis, C. & Dill, D. L. (1990). Model checking for real-time systems. In Proceedings of the 5th IEEE symposium on logic in computer science (pp. 414–425), IEEE Press, Piscataway, NJ.
Alur, R., Courcoubetis, C., & Dill, D. L. (1993). Model-checking in dense real-time. Information and Computation, 104(1), 2–34.
Alur, R., & Dill, D. (1990). Automata for modeling real-time systems. In Lecture notes in computer science (Vol. 443, pp. 322–335). Springer.
Berthomieu, B., & Diaz, M. (1991). Modelling and verification of time dependent systems using Time Petri Nets. IEEE Transaction on Software Engineering, 17(3), 259–273.
Berthomieu, B., & Menasche, M. (1983). An enumerative approach for analyzing Time Petri Nets. In R. E. A. Mason (Ed.), Information processing: Proceedings of the IFIP congress (Vol. 9, pp. 41–46). Amsterdam: Elsevier Science Publishers.
Berthomieu, B., Ribet, P. O., & Vernadat, F. (2004). The tool TINA? Construction of abstract state spaces for Petri nets and Time Petri Nets. International Journal of Production Research, 42(14), 2741–2756.
Berthomieu, B., & Vernadat, F. (2003). State class constructions for branching analysis of Time Petri Nets. Lecture Notes in Computer Science, 2619, 442–457.
Boucheneb, H., & Barkaoui, K. (2014). Partial order reductions for checking soundness of time workflow nets. Information Sciences, 282, 261–276.
Boucheneb, H., & Barkaoui, K. (2015). Stubborn sets for Petri Nets. ACM Transactions on Embedded Computing Systems, 14(1), 11.
Boucheneb, H., & Hadjidj, R. (2007). A more efficient time Petri net state space abstraction preserving linear properties. In Proceedings of the 7th conference of application of concurrency to system design, Bratislava, Slovak Republic.
Burns, A., & Wellings, J. (2001). Real-time systems and programming languages (3rd ed.). Boston, MA: Addison-Wesley.
Clarke, E. M., & Emerson, E. A. (1981). Design and synthesis of synchronization skeletons using branching time temporal logic. In Proceedings of workshop on logic of programs (Vol. 131, pp. 52–71). Springer, Berlin.
Clarke, E. M., Emerson, E. A., & Sistla, A. P. (1986). Automatic verification of finite state concurrent systems using temporal logic specifications. ACM Transactions on Programming Languages and Systems, 8(2), 244–263.
David, R., & Alla, H. (2005). Discrete, continuous and hybrid Petri Nets. Berlin: Springer.
del Foyo, P. M. G., & Silva, J. R. (2008). The verification of real time systems using the Tina tool. In Proceedings of the IFAC world congress, Seul, Korea, pp. 525–533.
del Foyo, P. M. G., & Silva, J. R. (2011). Some issues in real-time systems verification using Time Petri Nets. Journal of the Brazilian Society of Mechanical Science and Engineering, 33(4), 467–474.
Dill, D. L. (1989). Timing assumptions and verification of finite-state concurrent systems. In International workshop on automatic verification methods for finite state systems, lecture notes in computer science (Vol. 407, pp. 197–212). Springer.
Emerson, E. A., Jutla, C. S., & Sistla, A. P. (2001). On model-checking for fragments of \(\mu \)-calculus. Theoretical Computer Science, 258(1–2), 491–522.
Gardey, G., Lime, D., Maghin, M., & Roux, O. (2005). Romeo: A tool for analyzing Time Petri Nets. In K. Etessami, & S. K. Rajamani (Eds.), Lecture notes in computer science (Vol. 3576, pp. 418–423).
Hadjidj, R., & Boucheneb, H. (2008). Improving state class constructions for CTL* model checking of Time Petri Nets. STTT (International Journal on Software Tools and Technology Transfer), 10(2), 167–184.
Henzinger, T., Nicollin, X., Sifakis, J., & Yovine, S. (1992). Symbolic model checking for real-time systems. In 7th symposium of logic in computer science (pp. 394–406), IEEE Computer Society Press, Santa-Cruz, California.
Jard, C., & Roux, O. (2010). Communicating embedded systems. Washington DC, New York: ISTE Ltda., Wiley.
Lime, L., & Roux, O. (2006). Model checking of Time Petri Nets using the state class timed automaton. Discrete Event Dynamic Systems, 16, 179–206.
Merlin, P., & Faber, D. (1976). Recoverability of communication protocols-implications of a theoretical study. IEEE Transactions on Communications, 24(9), 1036–1043.
Penczek, W., & Pólrola, A. (2001). Abstractions and partial order reductions for checking branching properties of Time Petri Nets. In Lecture notes in computer science (Vol. 2075, pp. 323–342).
Ramchandani, C. (1974). Analysis of asynchronous concurrent systems by timed Petri Nets. (Technical report No. 120, Project MAC, MIT), Cambridge, MA, USA.
Salmon, A. O., del Foyo, P. M. G., & Silva, J. R. (2014). Scheduling real-time systems with periodic tasks by using a model-checking approach. In Proceedings of IEEE 12th international conference on industrial informatics, Porto Alegre, BR.
Silva, J. R., & del Foyo, P. M. G. (2012). Time Petri Nets. In P. Pawlewski (Ed.), Petri Nets (pp. 359–378). Rijeka: INTECH.
Vergauwen, B., & Lewi, J. (1993). A linear model checking algorithm for CTL. In E. Best (Ed.), Proceedings of 4th international conference on concurrency theory (Vol. 715, pp. 447–461). Berlin: Springer.
Virbitskaite, I., & Pokozy, E. (1999). A partial order method for the verification of Time Petri Nets. In G. Ciobanu & G. Paun (Eds.), Lecture notes in computer science (Vol. 1684, pp. 547–558). Berlin: Springer.
Wang, F. (2004). Formal verification of timed systems: A survey and perspective. Proceedings of the IEEE, 92(8), 1283–1305.
Wang, J., Deng, Y., & Xu, G. (2000). Reachability analysis of real-time systems using Time Petri Nets. IEEE Transactions on Systems, Man and Cybernetics, 30(5), 725–736.
Yoneda, T., & Ryuba, H. (1998). CTL model checking of Time Petri Nets using geometric regions E99-D. IEICE Transactions on Information and Systems, 81(3), 297–396.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
del Foyo, P.M.G., Silva, J.R. Improving the Verification of Real-Time Systems Using Time Petri Nets. J Control Autom Electr Syst 28, 774–784 (2017). https://doi.org/10.1007/s40313-017-0343-x
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s40313-017-0343-x