Skip to main content

Behavioral Type Inference

Part I — Algebraic theory for behavioral type inference

  • Chapter
Book cover Formal Methods and Models for System Design

Abstract

The design productivity gap has been recognized as one of the major threats to the continued growth of embedded systems design productivity. Ad-hoc system-level design methodologies, that lift modeling to higher levels of abstraction, and the concept of intellectual property (IP), that promotes reuse of existing components, are essential steps to manage design complexity. However, the issue of compositional correctness arises with these steps. Given components from different manufacturers, designed with heterogeneous models, at different levels of abstraction, assembling them in a correct-by-construction manner is a difficult challenge. We address it by proposing a process algebraic model to support system design with a formal model of computation that serves as a behavioral type system to capture the behavior of system components at the interface level. The proposed algebra is conceptually minimal, equipped with a formal semantics defined in a synchronous model of computation, and supports a scalable notion and a flexible degree of abstraction. We demonstrate its benefits by considering the type-based synthesis of latency-insensitive protocols. We show that the synthesis of component wrappers can be optimized by the behavioral information carried by interface type descriptions and yield minimized stalls and maximized throughput.

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 169.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 219.00
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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abramsky, S., Gay, S. J., Nagarajan, R. Interaction categories and the foundations of typed concurrent programming In Deductive Program Design: Proceedings of the 1994 Marktoberdorf International Summer School. Nato ASI Series F, Springer-Verlag, 1996.

    Google Scholar 

  2. Amagbegnon, T. P., Besnard, L., Le Guernic, P. “Implementation of the data-flow synchronous language Signal”. In Conference on Programming Language Design and Implementation. ACM Press, 1995.

    Google Scholar 

  3. Hoe, J., Arvind. “Synthesis of Operation-Centric Hardware Descriptions”. Proceedings of International Conference on Computer Aided Design. IEEE Press, November 2000.

    Google Scholar 

  4. Benveniste, A., Caspi, P., Carloni, L. P., Sangiovannivincentelli, A. L. “Heterogeneous Reactive Systems Modeling and Correct-by-Construction Deployment”. In Embedded Software Conference. Lecture Notes in Computer Science, Springer Verlag, October 2003.

    Google Scholar 

  5. Benveniste, A., Caspi, P., Le Guernic, P., Marchand, H., Talpin, J.-P., Tripakis, S. “A protocol for loosely time-triggered architectures”. In Embedded Software Conference. Lecture Notes in Computer Science, Springer Verlag, October 2002.

    Google Scholar 

  6. Berry, G., Gonthier, G. “The Esterel synchronous programming language: design, semantics, implementation”. In Science of Computer Programming, v. 19, 1992.

    Google Scholar 

  7. J.T. Buck, S. HA, E.A. Lee And D.G. Messerschmitt. Ptolemy: A Framework for Simulating and Prototyping Heterogeneous Systems. In International Journal of Computer Simulation, special issue on “Simulation Software Development”v. 4, pp. 155 – 182. Ablex, April 1994.

    Google Scholar 

  8. Carloni, L. P., Mcmillan, K. L., Sangiovanni-Vincentelli, A. L. “Latency-Insensitive Protocols”. In Proceedings of the 11th. International Conference on Computer-Aided Verification. Lecture notes in computer science v. 1633. Springer Verlag, July 1999.

    Google Scholar 

  9. E. Dijkstra “A Discipline of Programming”. Prentice Hall, 1976.

    Google Scholar 

  10. De Alfaro, L., Henzinger, T. A. “Interface theories for component-based design”. International Workshop on Embedded Software. Lecture Notes in Computer Science v. 2211. Springer-Verlag, 2001.

    Google Scholar 

  11. Hoare, C. Communicating sequential processes. Prentice Hall, 1985.

    Google Scholar 

  12. Jeffords, R. and Heitmeyer, C. “A Strategy for Efficiently Verifying Requirements Specifications Using Composition and Invariants”. Sympo-sium on the Foundations of Software Engineering. ACM Press, September 2003

    Google Scholar 

  13. Kahn, G. The semantics of a simple language for parallel programming In IFIP Congress. North Holland, 1974.

    Google Scholar 

  14. Lee, E. A., Sangiovanni-Vincentelli, A. “A framework for comparing models of computation”. In IEEE transactions on computer-aided design, v. 17, n. 12. IEEE Press, December 1998.

    Google Scholar 

  15. Le Guernic, P., Talpin, J.-P., Le Lann, J.-L. Polychrony for system design. In Journal of Circuits, Systems and Computers. Special Issue on Application-Specific Hardware Design. World Scientific, 2002.

    Google Scholar 

  16. Mousavi, M., R., Le Guernic, P., Talpin, J.-P., Shukla, S., Basten, T. Modeling and validation of asynchronous systems in synchronous frameworks. In Digital Automation and Test Europe. IEEE Press, February 2004.

    Google Scholar 

  17. Nowak, D., Beauvais, J.-R., Talpin, J.-P. “Co-inductive axiomatization of a synchronous language”. In International Conference on Theorem Proving in Higher-Order Logics. Lecture Notes in Computer Science, Springer Verlag, October 1998.

    Google Scholar 

  18. Nowak, D., Talpin, J.-P., Le Guernic, P. “Synchronous structures”. In International Conference on Concurrency Theory. Lecture Notes in Computer Science, Springer Verlag, August 1999.

    Google Scholar 

  19. Pnueli, A., Shankar, N., Singerman, E. Fair synchronous transition systems and their liveness proofs. International School and Symposium on Formal Techniques in Real-time and Fault-tolerant Systems. Lecture Notes in Computer Science v. 1468. Springer Verlag, 1998.

    Google Scholar 

  20. S. K. Rajamani And J. Rehof, “A Behavioral Module System For The 7-Calculus”. Static Analysis Symposium. Lectures Notes in Computer Science. Springer Verlag, July 2001.

    Google Scholar 

  21. J.-P. Talpin, P. LE Guernic, S. K. Shukla, R. Gupta, And F. Doucet. “Polychrony for formal refinement-checking in a system-level design methodology”. Application of Concurrency to System Design. IEEE Press, June 2003.

    Google Scholar 

  22. J.-P. Talpin, D. Berner, S. Shukla, P. LE Guernic, A. GamatiÉ, R. Gupta “Behavioral type inference for compositional system design”. In Formal Methods and Models for System Design (this volume). Kluwer Academic Publishers, June 2004.

    Google Scholar 

  23. The Polychrony workbench. http://www.irisa.fr/espresso/ Polychrony, February 2004.

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer Science+Business Media Dordrecht

About this chapter

Cite this chapter

Talpin, JP., Guernic, P.L. (2004). Behavioral Type Inference. In: Gupta, R., Guernic, P.L., Shukla, S.K., Talpin, JP. (eds) Formal Methods and Models for System Design. Springer, Boston, MA. https://doi.org/10.1007/978-1-4020-8052-4_9

Download citation

  • DOI: https://doi.org/10.1007/978-1-4020-8052-4_9

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4419-5464-0

  • Online ISBN: 978-1-4020-8052-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics