DocumentCode :
3644305
Title :
From Boolean to quantitative synthesis
Author :
Pavol Černý;Thomas A. Henzinger
Author_Institution :
IST Austria
fYear :
2011
Firstpage :
149
Lastpage :
154
Abstract :
Motivated by improvements in constraint-solving technology and by the increase of routinely available computational power, partial-program synthesis is emerging as an effective approach for increasing programmer productivity. The goal of the approach is to allow the programmer to specify a part of her intent imperatively (that is, give a partial program) and a part of her intent declaratively, by specifying which conditions need to be achieved or maintained. The task of the synthesizer is to construct a program that satisfies the specification. As an example, consider a partial program where threads access shared data without using any synchronization mechanism, and a declarative specification that excludes data races and deadlocks. The task of the synthesizer is then to place locks into the program code in order for the program to meet the specification. In this paper, we argue that quantitative objectives are needed in partial-program synthesis in order to produce higher-quality programs, while enabling simpler specifications. Returning to the example, the synthesizer could construct a naive solution that uses one global lock for shared data. This can be prevented either by constraining the solution space further (which is error-prone and partly defeats the point of synthesis), or by optimizing a quantitative objective that models performance. Other quantitative notions useful in synthesis include fault tolerance, robustness, resource (memory, power) consumption, and information flow.
Keywords :
"Synthesizers","Games","Synchronization","Context","Fault tolerance","Fault tolerant systems","Robustness"
Publisher :
ieee
Conference_Titel :
Embedded Software (EMSOFT), 2011 Proceedings of the International Conference on
Print_ISBN :
978-1-4503-0714-7
Type :
conf
Filename :
6064521
Link To Document :
بازگشت