I&C School of Computer and Communication Sciences
Ecole Polytechnique Fédérale de Lausanne    

Computer Networking Laboratory (LTI)

Director: Prof. Claude PETITPIERRE (+41 21 693'26'50 )
Secretary: Mme Claire-Lise COSCIA (+41 21 693'46'55, fax +41 21 693'66'00 )
Scientific collaborator: Paul-Louis MEYLAN (+41 21 693'47'13 )
Assistant: Biljana BAJIC (+41 21 693'81'82 )
Assistant: Salman MIRGHASEMI (+41 21 693'67'76 )
Fernando PEDONE
Jagannath AGHAV
Christoph SPRENGER


A framework to generate applications and DSLs from templates.

Wood Computer

  A toy computer made of chains, wheels and cams on a wooden board.

Software Engineering

  Book presenting the constituents of an application and an approach to build one.
  Web site


Current Interests of the Laboratory

The LTI is interested in all methods that allow a software engineer to specify, analyze, implement and test concurrent, distributed and reactive applications.

It is teaching a course for the high school professors, for which it has developed several tutorials (in French).  LemanOS 
It is now developing a language, called WebLang, that can describe the components of a Web based application (with JSPs, Struts, EJBs, Applets...)
Synchronous objects into Javascript: A multi-threaded version of Javascript running in all browsers
Previous Results of the Laboratory

The LTI has studied a concept of synchronous object that draws on actors, but that is much closer to formal analysis methods such as CCS (calculus of communicating systems by Milner), SPL (simple programming language by Manna and Pnueli) or Promela/SPIN (Holzmann).

The LTI is also interested in interactive teaching (see below). The laboratory has built a C course that uses an XML based browser presenting the pages and the exercises of the course. This Java program can ask questions in various ways and can easily be extended. It has been used successfully by more than 400 students.

Research Summer Institute - Talk by Sanjiva Prasad (21.7.2003) Teaching Tools


2006 - C. Petitpierre, Software Engineering - the Implementation Phase, EPFL Press, distributed by CRC Press.

1998 - C. Petitpierre, sC++, Programmation pseudo-parallèle orientée objet, PPUR, 1998, Lausanne.

Doctoral theses

G. Conti, "Méthodologie d'implantation des protocoles de communication", thesis no 842, 1990.
J. Gustafsson, "Handling of Abstract Data Types in Protocol Specifications", thesis no 1076, 1992.
B. Brunner, "Implementing Communications within High Speed Systems: Synchronization and Protocols", thesis no 1145, 1993.
G. Semaan, "Protocoles et architectures pour réseaux multicanaux", thesis no 1151, 1993.
K. Warkentyne, "A Pragmatic Approach to Protocol Specification and Implementation", thesis no 1246, 1994.
P. Oechslin, "Implémentation optimisée de protocoles à hauts débits", thesis no 1370, 1995.
A. Divin, "Une méthode de développement d'applications parallèles basée sur le concept d'objet", thesis no 1441, 1995.
J. Madsen, "Debugging Concurrent Applications", thesis no. 1878, 1998.
G. Duval, "Environnement intégré pour la conception sûre de systèmes concurrents et/ou distribués, thesis no. 1929, 1999.
K. Worytkiewicz, "Components and Synchronous Communication in Categories of Processes", thesis no. 2131, 2000.
C. Sprenger, "Deductive Local Model Checking: On the verification of CTL* Properties of Infinite-Stzate Reactive Systems", thesis no. 2215, 2000.
A. Restrepo Zea, "Contributions to the Techniques Used in the Development of Distributed Object-Oriented Real-Time Programming", 2001.
D. Vo Duc, "Deadlock detection for synchronous Java", thesis no 3732, 2007.
S Mirghasemi, "Querypoint Debugging (Semi-Automated Inspection of Buggy Execution)", thesis no 5533, 2012.

Main Publications
  • 2006 - VO Duc Duy, C. Petitpierre, Model Checking for Synchronous Java, 15th International Conference on Software Engineering and Data Engineering SEDE?06. Los Angeles, USA.

  • 2006 - O. Buchwalder, C. Petitpierre, WebLang: A Language for Modeling and Implementing Web Applications, 18th International Conference on Software Engineering and Knowledge Engineering SEKE?06. San Francisco, USA.

  • 2005 - VO Duc Duy, Claude Petitpierre, A Deadlock Detector for Synchronous Java, 17th International Conference on Software Engineering and Knowledge Engineering SEKE?05. Taipei, Taiwan.

  • 2003 - C. Petitpierre, A Development Method Boosted by Synchronous Active Objects, CAP'03, Enschede, September 2003.

  • 2002 - C. Petitpierre, Synchronous Active Objects Introduce CSP's Primitive in Java, CAP'02, Reading, September 2002.

  • 2002 - C. Petitpierre, A. Eliens, Active Objects Provide Robust Event-Driven Applications, SERP'02, Las Vegas, June 2002.

  • 2001 - C. Petitpierre, Beyond Threads and Semaphores, Software Focus, Wiley.

  • 1999 - C. Petitpierre, Implementing Protocols with Synchronous Objects, in ed. D. Avresky, Dependable Network Computing, Kluwer, November 1999, pp. 109-140.

  • 1999 - Duval G., Cattel T. Developing Safe Concurrent and Distributed Applications with an Architectural Environment, TOOLS Europe'99, Nancy, June 1999.

  • 1999 - Restrepo-Zea A., Petitpierre C. A Simple Modelling prone CORBA Architecture, internal repport.

  • 1998 - Cattel T., Duval G. - Simulation of distributed RPC based communications - AFADL`98 Approches formelles dans l`assistance au d'eveloppement de logiciels Poitiers, 30 Septembre - 1 Octobre 1998.

  • 1998 - Sprenger C. - A verified model checker for the modal mu-calculus in Coq - TACAS'98, (ICSR 5th) - Lisbon, Portugal, April 1998.

  • 1998 - Cattel T. - Modeling and Verification of sC++ Applications - Tools and Algorithms for the Construction and Analysis of Systems (ICSR 5th) - Lisbon, Portugal, April 1998.

  • 1997 - Duval G., Specification and Verification of an Object Request Broker (CORBA) - Proceedings of The 20th International Conference on Software Engineering (ISCE 98) - Kyoto, Japan.

  • 1998 - Petitpierre C. - An Event-Driven Programming Paradigm Compatible with OO-Programming, internal report. HTML and postscript versions

    Sources of the programs referenced in the paper: Java Motif

  • 1998 - Petitpierre C. - Synchronous C++, a Language for Interactive Applications, IEEE Computer, September 1998, 65-72.

  • 1997 - Petitpierre C. - Quick overview of sC++, internal report.

  • 1997 - Madsen J. - Validation and Testing of sC++ Applications. Presented at the IEEE conference Engineering of Computer Based Systems, Monterey, California, U.S.A. 1997

  • 1996 - Duval G., Cattel T. - From Architecture down to Implementation of Safe Process Control Applications. Design, Verification and Simulation, HICSS-30, Wailea, Maui, Hawai'i, U.S.A. 1997).

  • 1996 - Cattel T. - Using Concurrency and Formal Methods for the Design of Safe Process Control. PDSE/ICSE-18 Workshop, Berlin, March 1996

  • 1996 - Duval G., Cattel T. - Specifying and Verifying the Steam Boiler Controler with SPIN. (Formal Methods for Industrial Applications: Specifying and Programming the Steam Boiler Control - Springer-Verlag - LNCS vol. 1165 ).

  • 1996 - Cattel T., Duval G. - The Steam Boiler problem in Lustre. (Formal Methods for Industrial Applications: Specifying and Programming the Steam Boiler Control - Springer-Verlag - LNCS vol. 1165 ).

  • 9th Conference on Parallel and Distributed Computing Systems, Implementation and Validation Methods Applied to SSCOP

  • Globecom'94, Active Objects: a Paradigm for Communications and Event Driven Systems

  • Euromicro, Implementing Real-Time Applications with Concurrent Objects

  • FORTE'94, Modelling and Verfication of a Multiprocessor Realtime OS Kernel

  • FORTE'93, An Object Oriented Method for Implementing Layered Protocols

All publications ...

Collaborations with industry
  • Development of a Multicom with LIGHTNING