Polyvariant Program Specialisation with Property-based Abstraction

被引:4
作者
Gallagher, John P. [1 ,2 ]
机构
[1] Roskilde Univ, Roskilde, Denmark
[2] IMDEA Software Inst, Madrid, Spain
关键词
VERIFICATION;
D O I
10.4204/EPTCS.299.6
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
In this paper we show that property-based abstraction, an established technique originating in software model checking, is a flexible method of controlling polyvariance in program specialisation in a standard online specialisation algorithm. Specialisation is a program transformation that transforms a program with respect to given constraints that restrict its behaviour. Polyvariant specialisation refers to the generation of two or more specialised versions of the same program code. The same program point can be reached more than once during a computation, with different constraints applying in each case, and polyvariant specialisation allows different specialisations to be realised. A propertybased abstraction uses a finite set of properties to define a finite set of abstract versions of predicates, ensuring that only a finite number of specialised versions is generated. The particular choice of properties is critical for polyvariance; too few versions can result in insufficient specialisation, while too many can result in an increase of code size with no corresponding efficiency gains. Using examples, we show the flexibility of specialisation with property-based abstraction and discuss its application in control flow refinement, verification, termination analysis and dimension-based specialisation.
引用
收藏
页码:34 / 48
页数:15
相关论文
共 50 条
[21]   CSP-based counter abstraction for systems with node identifiers [J].
Mazur, Tomasz ;
Lowe, Gavin .
SCIENCE OF COMPUTER PROGRAMMING, 2014, 81 :3-52
[22]   An assertion graph based abstraction algorithm in GSTE and Its application [J].
Zheng, Desheng ;
Li, Xiaoyu ;
Yang, Guowu ;
Wang, Hai ;
Tian, Lulu .
INTEGRATION-THE VLSI JOURNAL, 2018, 63 :1-8
[23]   Compositional abstraction-based synthesis for networks of stochastic switched systems [J].
Lavaei, Abolfazl ;
Soudjani, Sadegh ;
Zamani, Majid .
AUTOMATICA, 2020, 114
[24]   Extrapolation-Based Path Invariants for Abstraction Refinement of Fifo Systems [J].
Heussner, Alexander ;
Le Gall, Tristan ;
Sutre, Gregoire .
MODEL CHECKING SOFTWARE, 2009, 5578 :107-+
[25]   Time Optimal Synthesis Based upon Sequential Abstraction and Maximizing Parallelism [J].
Ware, Simon ;
Su, Rong .
2017 13TH IEEE CONFERENCE ON AUTOMATION SCIENCE AND ENGINEERING (CASE), 2017, :926-931
[26]   Interval Image Abstraction for Verification of Camera-Based Autonomous Systems [J].
Habeeb, P. ;
D'Souza, Deepak ;
Lodaya, Kamal ;
Prabhakar, Pavithra .
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2024, 43 (11) :4310-4321
[27]   Template-based program verification and program synthesis [J].
Srivastava S. ;
Gulwani S. ;
Foster J.S. .
Srivastava, S. (saurabhs@cs.berkeley.edu), 1600, Springer Verlag (15) :497-518
[28]   Motion Planning under Partial Observability using Game-Based Abstraction [J].
Winterer, Leonore ;
Junges, Sebastian ;
Wimmer, Ralf ;
Jansen, Nils ;
Topcu, Ufuk ;
Katoen, Joost-Pieter ;
Becker, Bernd .
2017 IEEE 56TH ANNUAL CONFERENCE ON DECISION AND CONTROL (CDC), 2017,
[29]   Path-Directed Abstraction and Refinement for SAT-Based Design Debugging [J].
Keng, Brian ;
Veneris, Andreas .
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2013, 32 (10) :1609-1622
[30]   Safety verification of hybrid systems by constraint propagation-based abstraction refinement [J].
Ratschan, Stefan ;
She, Zhikun .
ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2007, 6 (01) :8