Skip to main content
Log in

Typed context awareness Ambient Calculus for pervasive applications

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

The idea of pervasive computing is that information processing will become part of everyday life, and will be available everywhere, making computing so natural to the point of being invisible in the ambient. An important concept that arises with pervasive computing is context awareness. Context is any information that can be used to characterize an entity. Based on contextual information, applications can dynamically adapt themselves to the environments in which they operate. The Calculus of Context-aware Ambients (CCA) is an untyped formal language used to describe mobile and context-aware pervasive applications. The CCA extends the Ambient Calculus by providing new features, such as context-guarded action and process abstraction, allowing to model contexts and context-aware computations. In this work, we define a type system for the CCA, called CCA T , with the focus in the communication between processes and in the correct use of process abstraction and contexts, extending previous works on the definition of type systems for mobile computing. Moreover, we prove that the proposed type system has the subject reduction property (or type preservation). We also model a hospital scenario using CCA T to demonstrate the use of the proposed type system.

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.

Similar content being viewed by others

References

  1. Abowd GD, Dey AK, Brown PJ, Davies N, Smith M, Steggles P (1999) Towards a better understanding of context and context-awareness. In: HUC ’99: Proceedings of the 1st international symposium on handheld and ubiquitous computing, vol 1707, Lecture notes in computer science, London, UK. Springer Berlin/Heidelberg, pp 304–307

  2. Aly SG, Nadi S, Hamdan K: A Java-based programming language support of location management in pervasive systems. Int J Comput Sci Netw Secur 8(6), 329–336 (2008)

    Google Scholar 

  3. Augusto JC (2007) Ambient intelligence: the confluence of ubiquitous/pervasive computing and artificial intelligence. In: Schuster AJ (ed) Intelligent Computing Everywhere, chapter 11. Springer, London, pp 213–234

  4. Bugliesi M, Castagna G, Crafa S: Access control for mobile agents: The calculus of boxed ambients. ACM Trans Program Lang Syst (TOPLAS) 26, 57–124 (2004)

    Article  Google Scholar 

  5. Constable RL, Allen SF, Bromley HM, Cleaveland WR, Cremer JF, Harper RW, Howe DJ, Knoblock TB, Mendler NP, Panangaden P, Sasaki JT, Smith SF (1986) Implementing mathematics with the Nuprl proof development dystem. Prentice-Hall, Inc., Upper Saddle River

  6. Cardelli L: Type systems. ACM Comput Surv (CSUR) 28, 263–264 (1996)

    Article  Google Scholar 

  7. Chin JS, Callaghan V, Clarke G (2006) An end-user programming paradigm for pervasive computing applications. In: ACS/IEEE international conference on pervasive services, pp 325–328

  8. Coppo M, Dezani-Ciancaglini M, Giovannetti E, Salvo I (2003) M3: Mobility types for mobile processes in mobile ambients. Electr Notes Theor Comput Sci, 78(0):144–177. CATS’03, computing: the Australasian theory symposium

  9. Cardelli L, Gordon AD (1998) Mobile ambients. In: Proceedings of the first international conference on foundations of software science and computation structure, vol 1378. Springer, London, pp 140–155

  10. Cardelli L, Gordon AD (1999) Types for mobile ambients. In Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on principles of programming languages, POPL ’99. ACM, New York, pp 79–92

  11. Cardelli L, Gordon AD: Mobile ambients. Theor Comput Sci 240, 177–213 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  12. Charatonik W, Gordon A, Talbot J-M (2002) Finite-control mobile ambients. In: Le Métayer D (ed) Programming languages and systems, vol 2305, Lecture notes in computer science. Springer, Berlin/Heidelberg, pp 295–313

  13. Dapoigny R, Barlatier P (2007) Towards a context theory for context-aware systems. In: Proceeding of the 2007 conference on advances in ambient intelligence. IOS Press, Amsterdam, pp 36–55

  14. Deransart P, Smaus J-G (2002) Subject reduction of logic programs as proof-theoretic property. J Funct Logic Program 2002

  15. Grimm R, Davis J, Hendrickson B, Lemar E, MacBeth A, Swanson S, Anderson T, Bershad B, Borriello G, Gribble S, Wetherall D (2001) Systems directions for pervasive computing. In: Proceedings of the eighth workshop on hot topics in operating systems, 20–22, 2001. IEEE Computer Society, Washington, DC, pp 147–151

  16. Gordon AD: Functional programming and input/output. Cambridge University Press, New York (1994)

    MATH  Google Scholar 

  17. Huth M, Ryan M: Logic in computer science: modelling and reasoning about systems. Cambridge University Press, New York (2004)

    Book  Google Scholar 

  18. Hofer T, Schwinger W, Pichler M, Leonhartsberger G, Altmann J, Retschitzegger W (2003) Context-awareness on mobile devices - the hydrogen approach. In: HICSS ’03. Proceedings of the 36th Annual Hawaii international conference on system sciences, 6–9, 2003. IEEE Computer Society, Washington, DC, pp 292–302

  19. Julien C, Payton J, Roman G-C (2004) Reasoning about context-awareness in the presence of mobility. Electron Notes Theor Comput Sci, 97(0):259–276. In: Proceedings of FOCLASA 2003, the foundations of coordination languages and software architectures, a satellite event of CONCUR 2003.

  20. Junbin Z, Yong Q, Di H, Min X (2008) Extended isotope programming model for pervasive computing environment. In: Proceedings of the 2008 third international conference on convergence and hybrid information technology, ICCIT ’08, vol 01. IEEE Computer Society, Washington, DC, pp 94–101

  21. Junbin Z, Yong Q, Di H, Ming L (2009) A table-driven programming paradigm for context-aware application development. In: IEEE/IPSJ international symposium on applications and the internet, pp 121–124

  22. Kjærgaard MB, Bunde-Pedersen J (2006) Towards a formal model of context awareness. In: Proceedings of the first international workshop on combining theory and systems building in pervasive computing (pervasive 2006), Dublin, Ireland, pp 667–674

  23. Levi F, Sangiorgi D: Mobile safe ambients. ACM Trans Program Lang Syst (TOPLAS) 25, 1–69 (2003)

    Article  Google Scholar 

  24. Lhoussaine C, Sassone V (2004) A dependently typed ambient calculus. In: Schmidt D (ed) Programming languages and systems, vol 2986, Lecture notes in computer science. Springer, Berlin/Heidelberg, pp 171–187

  25. Luo Z (2009) Dependent record types revisited. In: Proceedings of the 1st Workshop on modules and libraries for proof assistants, MLPA ’09. ACM, New York, pp 30–37

  26. Liskov BH, Wing JM: A behavioral notion of subtyping. ACM Trans Program Lang Syst (TOPLAS) 16, 1811–1841 (1994)

    Article  Google Scholar 

  27. Milner R: Communicating and mobile systems: the π-calculus. Cambridge University Press, New York (1999)

    Google Scholar 

  28. Min X, Jizhong Z, Yong Q, Hui H, Ming L, Wei W. Isotope programming model: a kind of program model for context-aware application. In: MUE ’07: Proceedings of the 2007 international conference on multimedia and ubiquitous engineering. IEEE Computer Society, Washington, DC, pp 597–602

  29. Mostéfaoui GK, Pasquier-Rocha J, Brézillon P (2004) Context-aware computing: A guide for the pervasive computing community. In: ICPS ’04: IEEE/ACS international conference on pervasive services, pp 39–48

  30. Milner R, Parrow J, Walker D: A calculus of mobile processes, I. Inf Comput 100(1), 1–40 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  31. Margaria I, Zacchi M: Access control in mobile ambient calculi: A comparative view. Theor Comput Sci 398, 183–202 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  32. Niemela E, Latvakoski J (2004) Survey of requirements and solutions for ubiquitous software. In: MUM ’04: Proceedings of the 3rd international conference on Mobile and ubiquitous multimedia. ACM, New York, pp 71–78

  33. Pierce BC: Types and programming languages. MIT Press, Cambridge (2002)

    Google Scholar 

  34. Rarau A, Benta KI, Cremene M (2007) Multifaceted based language for pervasive services with deterministic and fully defined behavior. In: International Conference on Pervasive Services, pp 76–79

  35. Sangiorgi D (2001) Extensionality and intensionality of the ambient logics. In: Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on principles of programming languages, POPL ’01. ACM, New York, pp 4–13

  36. Siewe F, Cau A, Zedan H (2009) CCA: A calculus of context-aware ambients. In: Proceedings of the IEEE 23rd international conference on advanced information networking and applications workshops, 2009. WAINA ’09., May 2009. IEEE Computer Society, Bradford, pp 972–977

  37. Saha D, Mukherjee A: Pervasive computing: a paradigm for the 21st century. Computer, 36, 25–31 (2003)

    Article  Google Scholar 

  38. Sangiorgi D, Walker D: π-Calculus: a theory of mobile processes. Cambridge University Press, New York (2001)

    Google Scholar 

  39. Siewe F, Zedan H, Cau A: The calculus of context-aware ambients. J Comput Syst Sci 77, 597–620 (2011)

    Article  MATH  MathSciNet  Google Scholar 

  40. Weis T, Becker C, Brandle A (2006) Towards a programming paradigm for pervasive applications based on the ambient calculus. In: International workshop on combining theory and systems building in pervasive computing, Dublin, Ireland (co-located with Pervasive 2006)

  41. Weiser M: The computer for the 21st century. Sci Am 265(3), 94–104 (1991)

    Article  Google Scholar 

  42. Wing JM (2002) FAQ on π-calculus, 2002. Microsoft Internal Memo. Accessed April 2012.

  43. Want R, Pering T (2005) System challenges for ubiquitous and pervasive computing. In: ICSE ’05: Proceedings of the 27th international conference on Software engineering. ACM, New York, pp 9–14

  44. Wright A: Type theory comes of age. Commun ACM 53(2), 16–17 (2010)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Douglas Pereira Pasqualin.

Additional information

Jim Woodcock

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Pasqualin, D.P., Vizzotto, J.K. & Piveta, E.K. Typed context awareness Ambient Calculus for pervasive applications. Form Asp Comp 27, 885–916 (2015). https://doi.org/10.1007/s00165-015-0339-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-015-0339-x

Keywords

Navigation