Skip to main content
Log in

Richer interface automata with optimistic and pessimistic compatibility

  • Original Article
  • Published:
Acta Informatica Aims and scope Submit manuscript

Abstract

Modal transition systems are a popular semantic underpinning of interface theories, such as Nyman et al.’s IOMTS and Bauer et al.’s MIO, which facilitate component-based reasoning for concurrent systems. Our interface theory MIA repaired a compositional flaw of IOMTS-refinement and introduced a conjunction operator. In this paper, we first modify MIA to properly deal with internal computations including internal must-transitions, which were largely ignored already in IOMTS. We then study a MIA variant that adopts MIO’s pessimistic—rather than IOMTS’ optimistic—view on component compatibility and define, for the first-time in a pessimistic, non-deterministic setting, conjunction and disjunction on interfaces. For both the optimistic and pessimistic MIA variant, we also discuss mechanisms for extending alphabets when refining interfaces, which is a desired feature for perspective-based specification. We illustrate our advancements via a small example.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. Bauer, S.: Modal Specification Theories for Component-based Design. Ph.D. Thesis, Faculty of Mathematics, Informatics and Statistics, LMU Munich, Germany (2012)

  2. Bauer, S., David, A., Hennicker, R., Larsen, K., Legay, A., Nyman, U., Wasowski, A.: Moving from specifications to contracts in component-based design. In: FASE, LNCS, vol. 7212, pp. 43–58. Springer, Berlin (2012)

  3. Bauer, S., Mayer, P., Schroeder, A., Hennicker, R.: On weak modal compatibility, refinement, and the MIO Workbench. In: TACAS, LNCS, vol. 6015, pp. 175–189. Springer, Berlin (2010)

  4. Beneš, N., Cerná, I., Křetínský, J.: Modal transition systems: composition and LTL model checking. In: Bultan, T., Hsiung, P.A. (eds.) ATVA, LNCS, vol. 6996, pp. 228–242. Springer, Berlin (2011)

    Google Scholar 

  5. Beyer, D., Chakrabarti, A., Henzinger, T., Seshia, S.: An application of web-service interfaces. In: ICWS, pp. 831–838. IEEE (2007)

  6. Bujtor, F., Fendrich, S., Lüttgen, G., Vogler, W.: Nondeterministic modal interfaces. In: Software Seminar (SOFSEM) (2015)

  7. Bujtor, F., Vogler, W.: Failure semantics for modal transition systems. In: Application of Concurrency to Systems Design (ACSD) (2014)

  8. Chen, T., Chilton, C., Jonsson, B., Kwiatkowska, M.: A compositional specification theory for component behaviours. In: ESOP, LNCS, vol. 7211, pp. 148–168. Springer, Berlin (2012)

  9. Chilton, C.: An Algebraic Theory of Componentised Interaction. Ph.D. Thesis, Department of Computer Science, University of Oxford, UK (2013)

  10. de Alfaro, L., Henzinger, T.: Interface-based design. In: Engineering Theories of Software-Intensive Systems, NATO Science Series, vol. 195. Springer, Berlin (2005)

  11. Fahrenberg, U., Jan Křetínský, A.L., Traonouez, L.M.: Compositionality for quantitative specifications. In: Formal Aspects of Component Software, LNCS. Springer, Berlin (2014)

  12. Fischbein, D., Uchitel, S.: On correct and complete strong merging of partial behaviour models. In: Foundations of Software Engineering (SIGSOFT FSE), pp. 297–307 (2008)

  13. Hatcliff, J., Leavens, G.T., Leino, K.R.M., Müller, P., Parkinson, M.: Behavioral interface specification languages. ACM Comput. Surv. 44(3), 16:1–16:58 (2012)

    Article  Google Scholar 

  14. Larsen, K.: Modal specifications. In: Automatic Verification Methods for Finite State Systems, LNCS, vol. 407, pp. 232–246. Springer, Berlin (1990)

  15. Larsen, K., Nyman, U., Wasowski, A.: Modal I/O automata for interface and product line theories. In: ESOP, LNCS, vol. 4421, pp. 64–79. Springer, Berlin (2007)

  16. Lüttgen, G., Vogler, W.: Modal interface automata. Log. Methods Comput. Sci. 9(3:4) (2013)

  17. Meyer, B.: Applying design by contract. IEEE Comput. 25(10), 40–51 (1992)

    Article  Google Scholar 

  18. Milner, R.: Communication and Concurrency. Prentice Hall, Englewood Cliffs (1989)

    MATH  Google Scholar 

  19. Raclet, J., Badouel, E., Benveniste, A., Caillaud, B., Legay, A., Passerone, R.: A modal interface theory for component-based design. Fund. Inform. 107, 1–32 (2011)

    MathSciNet  Google Scholar 

  20. Raclet, J.B.: Residual for component specifications. ENTCS 215, 93–110 (2008)

    Google Scholar 

  21. Schäfer, M., Vogler, W.: Component refinement and CSC-solving for STG decomposition. Theor. Comput. Sci. 388(1–3), 243–266 (2007)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Walter Vogler.

Additional information

An extended abstract of this article appeared in S. Schneider and H. Treharne, eds., 13th Intl. Workshop on Automated Verification of Critical Systems (AVoCS 2013), vol. 66 of Electronic Communications of the EASST. Research support was provided by the DFG (German Research Foundation) under Grants LU 1748/3-1 and VO 615/12-1.

Appendix: Proof of Lemma 4(b)–(e)

Appendix: Proof of Lemma 4(b)–(e)

Proof of Part (b). We show by induction on \(k\) that there exists a \(\overline{P}_k\) such that . Part (a) implies the case \(k=1\). Assume the claim holds for \(k\). Now, there are two cases: if \(p_{k+1} \notin \overline{P}_k\), then \(\overline{P}_{k+1} = \overline{P}_k \subseteq (P'{\setminus }\{p_1, \ldots , p_{k+1}) \cup \,\bigcup _{i=1}^{k+1} P_i\). Otherwise, by Part (a). Hence, \(\overline{P}_{k+1} \subseteq (((P'{\setminus }\{p_1, \ldots , p_k\}) \cup \,\bigcup _{i=1}^{k} P_i){\setminus }\{p_{k+1}\}) \cup P_{k+1} \subseteq (P'{\setminus }\{p_1, \ldots , p_{k+1}) \cup \,\bigcup _{i=1}^{k+1} P_i\). \(\square \)

Proof of Part (c). The proof proceeds by induction on the overall number of applications of Definition 2(a’). If this is \(0\), then \(\overline{P} =_{\text {df}}\bigcup _{i=1}^{n} P_i\). Otherwise, assume w.l.o.g. that , \(p_1 \in P''_1\), \(p_1 {\mathop {\longrightarrow }\limits ^{\tau }} P''\) and \(P'_1 = (P''_1{\setminus }\{p_1\}) \cup P''\). By induction hypothesis, there exists a \(\hat{P}\) such that . If \(p_1 \notin \hat{P}\), then \(\hat{P} \subseteq \,\bigcup _{i=1}^{n} P'_i\) and we are done. Otherwise, . Since \(\hat{P}\subseteq P''_1 \cup \,\bigcup _{i=2}^{n} P'_i\) implies \(\hat{P}{\setminus }\{p_1\} \subseteq (P''_1{\setminus }\{p_1\}) \cup \,\bigcup _{i=2}^{n} P'_i\), we obtain \(\overline{P} \subseteq \bigcup _{i=1}^{n} P'_i\). \(\square \)

Proof of Part (d). The proof is by induction on the derivation of . For \(P=P'\), choose \(\overline{P} =_{\text {df}}P''\). Otherwise, assume , \(p\in \hat{P}\), \(p {\mathop {\longrightarrow }\limits ^{\tau }} \hat{P}'\) and \(P' = (\hat{P}{\setminus }\{p\}) \cup \hat{P}'\). By induction hypothesis, there exists a \(\overline{P}'\) such that . If \(p \notin \overline{P}'\), then \(\overline{P}'\subseteq P'\) and we are done. Otherwise, \(\overline{P} =_{\text {df}}(\overline{P}'{\setminus }\{p\}) \cup \hat{P}'\subseteq P'\). \(\square \)

Proof of Part (e). For \(1 \le i \le n\), we have such that \(p_j^i {\mathop {\longrightarrow }\limits ^{o}} P_j^i\) for \(1 \le j \le k_i\), and can derive from by repeated application of Definition 2(a), i.e., . By Part (d), we get for each \(P_j^i\)\(P_j^{'i}\) such that .

When applying Part (b), we obtain some \(\hat{P}\) such that . With Definition 2(b) we get , where \(U\) is the union of some of the \(P_j^i\). Taking these \(P_j^i\) as the \(P_i\) in Part (c) yields such that \(\overline{P}\) is contained in the union of the resp. \(P_j^{'i}\) and, thus, in \(\bigcup _{i=1}^{n} P_i\). \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Lüttgen, G., Vogler, W. & Fendrich, S. Richer interface automata with optimistic and pessimistic compatibility. Acta Informatica 52, 305–336 (2015). https://doi.org/10.1007/s00236-014-0211-0

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00236-014-0211-0

Navigation