Conference item
Using program synthesis for program analysis
- Abstract:
- In this paper, we propose a unified framework for designing static analysers based on program synthesis. For this purpose, we identify a fragment of second-order logic with restricted quantification that is expressive enough to capture numerous static analysis problems (e.g. safety proving, bug finding, termination and non-termination proving, superoptimisation). We call this fragment the synthesis fragment. We build a decision procedure for the synthesis fragment over finite domains in the form of a program synthesiser. Given our initial motivation to solve static analysis problems, this synthesiser is specialised for such analyses. Our experimental results show that, on benchmarks capturing static analysis problems, our program synthesiser compares positively with other general purpose synthesisers.
- Publication status:
- Published
- Peer review status:
- Peer reviewed
Actions
Access Document
- Files:
-
-
(Preview, Accepted manuscript, pdf, 320.4KB, Terms of use)
-
- Publisher copy:
- 10.1007/978-3-662-48899-7_34
Authors
Contributors
+ Davis, M
- Role:
- Editor
+ Fehnker, A
- Role:
- Editor
+ McIver, A
- Role:
- Editor
+ Voronkov, A
- Role:
- Editor
- Publisher:
- Springer
- Host title:
- Lecture Notes in Computer Science: LPAR: Logic for Programming, Artificial Intelligence, and Reasoning
- Journal:
- Lecture Notes in Computer Science: LPAR: Logic for Programming, Artificial Intelligence, and Reasoning More from this journal
- Volume:
- 9450
- Pages:
- 483-498
- Publication date:
- 2015-11-22
- DOI:
- ISSN:
-
0302-9743 and 1611-3349
- ISBN:
- 9783662488980
- Keywords:
- Pubs id:
-
pubs:579692
- UUID:
-
uuid:5ccc0433-c5d1-4989-b1d6-658e18e4885a
- Local pid:
-
pubs:579692
- Source identifiers:
-
579692
- Deposit date:
-
2017-01-28
Terms of use
- Copyright holder:
- Springer-Verlag Berlin Heidelberg
- Copyright date:
- 2015
- Notes:
- © Springer-Verlag Berlin Heidelberg 2015
If you are the owner of this record, you can report an update to it here: Report update to this record