Skip to main content

Floating Time Transition System: More Efficient Analysis of Timed Actors

  • Conference paper
  • First Online:
Book cover Formal Aspects of Component Software (FACS 2015)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9539))

Included in the following conference series:

Abstract

The actor model is a concurrent object-based computational model in which event-driven and asynchronously communicating actors are units of concurrency. Actors are widely used in modeling real-time and distributed systems. Floating-Time Transition System (FTTS) is proposed as an alternative semantics for timed actors, and schedulability and deadlock-freedom analysis techniques have been developed for it. The absence of shared variables and blocking send or receive, and the presence of single-threaded actors along with non-preemptive execution of each message server, ensure that the execution of message servers do not interfere with each other. The Floating-Time Transition System semantics exploits this by executing message servers in isolation, and by relaxing the synchronization of progress of time among actors, and thereby has fewer states in the transition system. Considering an actor-based language, we prove a weak bisimulation relation between FTTS and Timed Transition System, which is generally the standard semantic framework for discrete-time systems. Thus, the FTTS semantics preserves event-based branching-time properties. Our experimental results show a significant reduction in the state space for most of the examples we have studied.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    The latest version of the toolset (version 2.5.0) is accessible from http://www.rebeca-lang.org/wiki/pmwiki.php/Tools/RMC

References

  1. Rebeca Home Page. http://www.rebeca-lang.org

  2. Agha, G., Mason, I.A., Smith, S.F., Talcott, C.L.: A foundation for actor computation. J. Funct. Program. 7(1), 1–72 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  3. Agha, G.A.: ACTORS - A Model of Concurrent Computation in Distributed Systems. MIT Press series in artificial intelligence. MIT Press, Cambridge (1990)

    Google Scholar 

  4. Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126(2), 183–235 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  5. Armstrong, J.: A history of Erlang. In: Ryder, B.G., Hailpern, B. (eds.) HOPL, pp. 1–26. ACM (2007)

    Google Scholar 

  6. Baier, C., Katoen, J.P.: Principles of Model Checking. MIT Press, Cambridge (2008)

    MATH  Google Scholar 

  7. Bultan, T., Ouederni, M., Basu, S.: Synchronizability for verification of asynchronously communicating systems. In: Kuncak, V., Rybalchenko, A. (eds.) VMCAI 2012. LNCS, vol. 7148, pp. 56–71. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  8. Bengtsson, J., Larsen, K.G., Larsson, F., Pettersson, P., Yi, W.: UPPAAL - a tool suite for automatic verification of real-time systems. In: Alur, R., Henzinger, T.A., Sontag, E.D. (eds.) Hybrid Systems. LNCS, vol. 1066, pp. 232–243. Springer, Heidelberg (1995)

    Google Scholar 

  9. Bozga, M., Maler, O., Tripakis, S.: Efficient verification of timed automata using dense and discrete time semantics. In: Pierre, L., Kropf, T. (eds.) CHARME 1999. LNCS, vol. 1703, pp. 125–141. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  10. Cho, B., Rahman, M., Chajed, T., Gupta, I., Abad, C., Roberts, N., Lin, P.: Natjam: design and evaluation of eviction policies for supporting priorities and deadlines in mapreduce clusters. In: Lohman, G.M. (ed.) SoCC, p. 6. ACM (2013)

    Google Scholar 

  11. Desai, A., Garg, P., Madhusudan, P.: Natural proofs for asynchronous programs using almost-synchronous reductions. In: Black, A.P., Millstein, T.D. (eds.) Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, OOPSLA 2014, part of SPLASH 2014, 20–24 October 2014, Portland, OR, USA, pp. 709–725. ACM (2014)

    Google Scholar 

  12. Fredlund, L.Å., Earle, C.B.: Verification of timed Erlang programs using McErlang. In: Giese, H., Rosu, G. (eds.) FORTE 2012 and FMOODS 2012. LNCS, vol. 7273, pp. 251–267. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  13. Ibarra, O.H., Su, J.: Generalizing the discrete timed automaton. In: Yu, S., Păun, A. (eds.) CIAA 2000. LNCS, vol. 2088, p. 157. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  14. Khamespanah, E., Khosravi, R., Sirjani, M.: Efficient TCTL model checking algorithm for timed actors. In: Boix, E.G., Haller, P., Ricci, A., Varela, C. (eds.) Proceedings of the 4th International Workshop on Programming based on Actors Agents & Decentralized Control, AGERE! 2014, 20 October 2014, Portland, OR, USA, pp. 55–66. ACM (2014)

    Google Scholar 

  15. Khamespanah, E., Sirjani, M., Sabahi-Kaviani, Z., Khosravi, R., Izadi, M.: Timed Rebeca schedulability and deadlock freedom analysis using bounded floating time transition system. Sci. Comput. Program. 98, 184–204 (2015)

    Article  Google Scholar 

  16. Lepri, D., Ábrahám, E., Ölveczky, P.C.: Timed CTL model checking in real-time Maude. In: Durán, F. (ed.) WRLA 2012. LNCS, vol. 7571, pp. 182–200. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  17. Linderman, L.E., Mechitov, K., Spencer, B.F.: TinyOS-based real-time wireless data acquisition framework for structural health monitoring and control. Struct. Control Health Monit. 20(6), 1007–1020 (2013)

    Article  Google Scholar 

  18. Manohar, R., Martin, A.J.: Slack elasticity in concurrent computing. In: Jeuring, J. (ed.) MPC 1998. LNCS, vol. 1422, p. 272. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  19. Mechitov, K.A., Khamespanah, E., Sirjani, M., Agha, G.: A Model Checking Approach for Schedulability Analysis of Distributed Real-Time Sensor Network Applications (2015). Submitted for Publication

    Google Scholar 

  20. Ölveczky, P.C., Meseguer, J.: Specification and analysis of real-time systems using real-time Maude. In: Wermelinger, M., Margaria-Steffen, T. (eds.) FASE 2004. LNCS, vol. 2984, pp. 354–358. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  21. Ölveczky, P.C., Meseguer, J.: Real-time Maude 2.1. Electr. Notes Theor. Comput. Sci. 117, 285–314 (2005)

    Article  Google Scholar 

  22. Reynisson, A.H., Sirjani, M., Aceto, L., Cimini, M., Jafari, A., Ingólfsdóttir, A., Sigurdarson, S.H.: Modelling and simulation of asynchronous real-time systems using timed Rebeca. Sci. Comput. Program. 89, 41–68 (2014)

    Article  Google Scholar 

  23. Khamespanah, E., Ölveczky, P.C., Sirjani, M., Khosravi, R., Sabahi-Kaviani, Z.: Formal semantics and analysis of timed Rebeca in real-time Maude. In: Artho, C., Ölveczky, P.C. (eds.) FTSCS 2013. CCIS, vol. 419, pp. 178–194. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  24. Sharifi, Z., Mohammadi, S., Sirjani, M.: Comparison of NoC routing algorithms using formal methods. In: PDPTA (2013)

    Google Scholar 

  25. Sharifi, Z., Mosaffa, M., Mohammadi, S., Sirjani, M.: Functional and performance analysis of network-on-chips using actor-based modeling and formal verification. ECEASST 66 (2013)

    Google Scholar 

  26. Sirjani, M., Movaghar, A., Shali, A., de Boer, F.S.: Modeling and verification of reactive systems using Rebeca. Fundam. Inform. 63(4), 385–410 (2004)

    Google Scholar 

  27. Sprenger, C.: A verified model checker for the modal \(\mu \)-Calculus in Coq. In: Steffen, B. (ed.) TACAS 1998. LNCS, vol. 1384, p. 167. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

Download references

Acknowledgements

This work has been partially supported by the project “Timed Asynchronous Reactive Objects in Distributed Systems: TARO” (nr. 110020021) of the Icelandic Research Fund.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ehsan Khamespanah .

Editor information

Editors and Affiliations

A Proof of Theorem 1

A Proof of Theorem 1

To prove that the first condition of action-based weak bismulation holds for \(\mathcal {R}\), based on the type of tmsg the following two cases are possible.

  • \(\mathbf {s \mathop {\rightarrow }\limits ^{tmsg} t}\): Based on the definition of relation \(\mathcal {R}\), in this case projection function for all the rebecs in s and t return the same value except for the sender and receiver of tmsg. For the sender rebec (assume that it is \(r_i\)) the difference is in the bag of sent messages, results in \(sent_{t,i}=sent_{s,i}-tmsg\). On the other hand, projection function in \(s'\) and \(t'\) have the same value for all the rebecs except the sender and receiver of tmsg. For the sender rebec (assume that it is \(r_i\)) the difference is in the bag of sent messages, results in \(sent_{t',i}=sent_{s',i}-tmsg\). For the receiver rebec (assume that it is \(r_j\)), there is a completing trace \(CT_{t,j}\) such that Proj(tj) returns valuation of state variables of \(r_j\) from the target state of \(CT_{t,j}\) and messages which are sent by \(r_j\) in t in union with messages which are sent during \(CT_{t,j}\). In FTTS state \(t'\), projection function returns valuation of state variables and the sent messages of \(r_j\) after the execution of all the statements of tmsg (i.e. doing transition tmsg in FTTS) which is the same as what projection function returns in t. Therefore, there is \(t~\mathcal {R}~t'\) as the results of projection function in t and \(t'\) are the same for all the rebecs.

  • \(\mathbf {s \mathop {\rightarrow }\limits ^{\tau } t}\): As transition from s to t is not observable, we have to show that there is relation \(\mathcal {R}\) between t and \(s'\). This way, doing a \(\tau \) transition from s results in stuttering in \(s'\) as one of the properties of action-based weak bisimulation relations.

    Assume that \(\tau \) transition belongs to rebec \(r_i\). Doing \(\tau \) transition by \(r_i\) makes projection function return the same result in s and t for all the rebecs except \(r_i\). It is because of the fact that only \(r_i\) has progress which may result in changing the valuation of its state variables or sending a message to other rebec. For \(r_i\) in state s one of the completing traces is a trace which contains \(\tau \) transition from s to t as its first transition. Therefore, completing traces of \(r_i\) which are started from s and t are ended in the same target state, results in \(Proj(s,i)=Proj(t,i)\). Therefore, result of projection function for all the rebecs in TTS and FTTS are the same and t is in relation \(\mathcal {R}\) with \(s'\).

To prove the second condition, as all the transitions in FTTS are taking-event transitions, tmsg must be taking-event transition. On the other hand, transition tmsg is enabled in s as we discussed in Proposition 2. Now we can prove that t and \(t'\) are in relation \(\mathcal {R}\) with the argument the same as what we did in case \(s \mathop {\rightarrow }\limits ^{tmsg} t\) of condition one.

Finally, we have to show that the initial states of the transitions systems are in relation \(\mathcal {R}\). As the program counter of all of the rebecs in \(s_0\) is set to null, the completing traces started from \(s_0\) are \(\epsilon \). So, for any given rebec \(r_i\), \(state_i(CT_{s,i})=state(s,i)=state(s',i)\), \(sent(CT_{s,i}) = \emptyset \rightarrow sent(s_0, i) = sent(s'_0, i)\), and \(now(CT_{s,i}) = now(s) = now(s',i) = 0\), results in \(s_0~\mathcal {R}~s'_0\).    \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Khamespanah, E., Sirjani, M., Viswanathan, M., Khosravi, R. (2016). Floating Time Transition System: More Efficient Analysis of Timed Actors. In: Braga, C., Ölveczky, P. (eds) Formal Aspects of Component Software. FACS 2015. Lecture Notes in Computer Science(), vol 9539. Springer, Cham. https://doi.org/10.1007/978-3-319-28934-2_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-28934-2_13

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-28933-5

  • Online ISBN: 978-3-319-28934-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics