Dagstuhl Seminar 14232
Design and Synthesis from Components
( Jun 01 – Jun 06, 2014 )
Permalink
Organizers
- Jakob Rehof (TU Dortmund, DE)
- Moshe Y. Vardi (Rice University - Houston, US)
Contact
- Annette Beyer (for administrative matters)
The problem of synthesis - given a logical specification, automatically to derive (synthesize) a system or program implementing the specification - and methods for component-oriented development of systems and programs are both fundamental topics in computer science. Due to recent developments, these topics can now be seen to interact: whereas synthesis has traditionally been conceived as the construction of a system "from scratch", work in component-oriented design has recently inspired the idea of component-based synthesis, where systems or programs are synthesized relative to a given collection (library, repository) of components. From the standpoint of component-based synthesis, components are seen as fabricated building blocks providing higher-valued raw material for synthesis.
Perhaps the most difficult aspect of synthesis lies in the high intrinsic computational complexity of the problem, and the challenge of reducing theoretical results to practice has understandably persisted. Because components may be exposed abstractly through interfaces (hiding implementation complexity) and may embody human design intelligence, the component-based approach to synthesis opens the door to a new fundamental line of attack on the great challenge of computational cost in synthesis by exploiting component design. Since systems development in modern computational environments is increasingly based on the extended use of libraries and repositories of reusable components (e.g., software framework libraries, web services, systems components, embedded software and hardware components), component-orientation would appear to be an important pragmatic strategy for tailoring synthesis to practical circumstances.
The seminar aims at bringing together researchers from the component-oriented design community, researchers working on interface theories, and researchers working in synthesis, in order to explore the use of component- and interface design in synthesis and to accelerate the development of this new approach.
Traditionally, synthesis has been pursued in two distinct and somewhat independent communities, one focusing on the use of temporal logic and automata theoretic methods, the other focusing on deductive methods in program logics and in type theory considered under the Curry-Howard isomorphism. Recent results on component-based synthesis in both communities as well as work on interface theories show that the common movement towards component-orientation allows the two synthesis communities to communicate more intensely to their mutual benefit.
The seminar aims at bringing together researchers from both synthesis communities to discuss common concerns as well as complementary strengths and challenges, in component-oriented design and synthesis.
Specific research topics of interest to the seminar include:
- How may component- and interface design influence and support component-based synthesis?
- How can component- and interface design influence computational complexity (in theory or in practice) in synthesis?
- Comparison between the two synthesis communities in their approaches to components, including specifications, algorithms, expressiveness, and complexity
- Interface theories and technology-independent formalisms for different approaches to synthesis
- Foundations of technology-independent benchmarks for component-based synthesis
The purpose of the seminar was bringing together researchers from the component-oriented design community, researchers working on interface theories, and researchers working in synthesis, in order to explore the use of component- and interface design in program synthesis.
The seminar proposal was motivated by a recently developing trend in component-based synthesis, which is seen both as creating a need and providing the potential for a cross-community effort. Traditionally, synthesis has been pursued in two distinct and somewhat independent technical approaches. In one approach, synthesis is characterized by temporal logic and automata theoretic methods, whereas in the other synthesis is characterized by deductive methods in program logics and in type theory considered under the Curry-Howard isomorphism. Recent work in component-oriented design has spurred the idea of component-based synthesis, where systems are synthesized relative to a given collection (library, repository) of components, within both technical approaches. Recent results in both communities show that this development allows the two communities to communicate more intensely on the common ground of component-orientation to their mutual benefit. The trend opens the door to a new attack on the great challenges of synthesis (including computational complexity and complexity of specification) by exploiting component design.
The seminar program consisted of 6 tutorial talks (1 hour) and 16 contributed talks (30 mins) as well as joint discussion sessions. Two slots for joint discussions were pre-planned for each day but were used flexibly and dynamically, depending on the development of discussions and reactions to the talks. It was felt that the mixture of tutorials, talks and joint discussion slots turned out to be an altogether very good instrument for making intensive exchanges among all seminar participants possible. It seems to be the general impression that the seminar was very succesful in meeting the challenge of bringing together researchers from quite a diverse range of technical fields, spanning from software engineering to mathematical logic. The seminar was succesful in generating several concrete cross-community collaboration projects which would not have been likely to have come into existence by way of traditional conferences.
Joint discussions were summarized by Dror Fried (Rice University) who is gratefully acknowledged for undertaking the role of "seminar collector".
- Farhad Arbab (CWI - Amsterdam, NL) [dblp]
- Christel Baier (TU Dresden, DE) [dblp]
- Ugo de' Liguoro (University of Turin, IT) [dblp]
- Mariangiola Dezani (University of Turin, IT) [dblp]
- Laurent Doyen (ENS - Cachan, FR) [dblp]
- Boris Düdder (TU Dortmund, DE) [dblp]
- Bernd Finkbeiner (Universität des Saarlandes, DE) [dblp]
- Dror Fried (Rice University - Houston, US) [dblp]
- George T. Heineman (Worcester Polytechnic Institute, US) [dblp]
- Fritz Henglein (University of Copenhagen, DK) [dblp]
- Paola Inverardi (University of L'Aquila, IT) [dblp]
- Neil D. Jones (University of Copenhagen, DK) [dblp]
- Bengt Jonsson (Uppsala University, SE) [dblp]
- Axel Legay (INRIA Rennes - Bretagne Atlantique, FR) [dblp]
- Moritz Martens (TU Dortmund, DE) [dblp]
- Hongyang Qu (University of Sheffield, GB) [dblp]
- Jean-Francois Raskin (Free University of Brussels, BE) [dblp]
- Jakob Rehof (TU Dortmund, DE) [dblp]
- Sven Schewe (University of Liverpool, GB) [dblp]
- Joseph Sifakis (VERIMAG - Grenoble, FR) [dblp]
- Bernhard Steffen (TU Dortmund, DE) [dblp]
- Wolfgang Thomas (RWTH Aachen, DE) [dblp]
- Massimo Tivoli (University of L'Aquila, IT) [dblp]
- Stavros Tripakis (University of California - Berkeley, US) [dblp]
- Pawel Urzyczyn (University of Warsaw, PL) [dblp]
- Moshe Y. Vardi (Rice University - Houston, US) [dblp]
- Clemens Wiltsche (University of Oxford, GB) [dblp]
- Eran Yahav (Technion - Haifa, IL) [dblp]
Classification
- semantics / formal methods
- software engineering
- verification / logic
Keywords
- Component design
- component-based synthesis