Skip to main content

Taming Interface Specifications

  • Conference paper
CONCUR 2005 – Concurrency Theory (CONCUR 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3653))

Included in the following conference series:

Abstract

Software is often being assembled using third-party components where the developers have little knowledge of, and even less control over, the internals of the components comprising the overall system. One obstacle to composing agents is that current formal methods are mainly concerned with “closed” systems that are built from the ground up. Such systems are fully under the control of the user. Hence, problems arising from ill-specified components can be resolved by a close inspection of the systems. When composing systems using “off-the-shelf” components, this is often no longer the case.

The paper addresses the problem of under-specification, where an off-the-shelf component does only what it claims to do, however, it claims more behaviors than it actually has and that one wishes for, some of which may render it useless. Given such an under-specified module, we propose a method to automatically synthesize some safety properties from it that would tame its “bad” behaviors. The advantage of restricting to safety properties is that they are monitorable.

The safety properties are derived using an automata-theoretic approach. We show that, when restricting to ω-regular languages, there is no maximal safety property. For this case we construct a sequence of increasingly larger safety properties. We also show how to construct an infinite-state automata that can capture any safety property that is contained in the original specifications.

This research was supported in part by NSF grants CCR-0205571 and CCR-0205363, and ONR grant N00014-99-1-0131

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Abadi, M., Lamport, L.: The existence of state mappings. In: Proceedings of the ACM Symposium on Logic in Computer Science (1988)

    Google Scholar 

  2. Alpern, B., Schneider, F.: Defining liveness. Information Processing Letters 21, 181–185 (1985)

    Article  MATH  MathSciNet  Google Scholar 

  3. Emerson, E.A., Sistla, A.P.: Triple exponential decision procedure for the logic ctl*. In: Workshop on the Logics of Program, Carnegie-Mellon University (1983)

    Google Scholar 

  4. Hungar, H., Steffen, B.: Behavior-based model construction. STTT 6(1), 4–14 (2004)

    Article  Google Scholar 

  5. Jonsson, B.: Compositional verification of distributed systems. In: Proceedings of the 6th ACM Symposium on Principles of Distributed Computing (1987)

    Google Scholar 

  6. Lamport, L.: Logical foundation, distributed systems- methods and tools for specification. In: Alford, M.W., Hommel, G., Schneider, F.B., Ansart, J.P., Lamport, L., Mullery, G.P., Liskov, B. (eds.) Distributed Systems. LNCS, vol. 190, Springer, Heidelberg (1985)

    Google Scholar 

  7. Larsen, K.: Ideal specification formalisms = expressivity + compositionality + decidability + testability +. In: Baeten, J.C.M., Klop, J.W. (eds.) CONCUR 1990. LNCS, vol. 458, Springer, Heidelberg (1990)

    Google Scholar 

  8. Larsen, K.: The expressive power of implicit specifications. In: Leach Albert, J., Monien, B., Rodríguez-Artalejo, M. (eds.) ICALP 1991. LNCS, vol. 510. Springer, Heidelberg (1991)

    Google Scholar 

  9. Margaria, T., Raffelt, H., Steffen, B.: Knowledge-based relevance filtering for efficient system-level test-based model generation. Innovations in Systems and Software Engineering, a NASA Journal, Springer Verlag (to appear)

    Google Scholar 

  10. Pnueli, A., Zaks, A., Zuck, L.D.: Monitoring interfaces for faults. In: Proceedings of the 5th Workshop on Runtime Verification (RV 2005) (2005) (to appear in a special issue of ENTCS)

    Google Scholar 

  11. Sistla, A.P.: On characterization of safety and liveness properties in temporal logic. In: Proceedings of the ACM Symposium on Principle of Distributed Computing (1985)

    Google Scholar 

  12. Sistla, A.P.: Proving correctness with respect to nondeterministic safety specifications. Information Processing Letters 39, 45–49 (1991)

    Article  MATH  MathSciNet  Google Scholar 

  13. Vardi, M., Wolper, P., Sistla, A.P.: Reasoning about infinite computations. In: Proceedings of IEEE Symposium on Foundations of Computer Science (1983)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Margaria, T., Sistla, A.P., Steffen, B., Zuck, L.D. (2005). Taming Interface Specifications. In: Abadi, M., de Alfaro, L. (eds) CONCUR 2005 – Concurrency Theory. CONCUR 2005. Lecture Notes in Computer Science, vol 3653. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11539452_41

Download citation

  • DOI: https://doi.org/10.1007/11539452_41

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-28309-6

  • Online ISBN: 978-3-540-31934-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics