Deductive software verification: from pen-and-paper proofs to industrial tools

R Hähnle, M Huisman - Computing and Software Science: State of the Art …, 2019 - Springer
Deductive software verification aims at formally verifying that all possible behaviors of a
given program satisfy formally defined, possibly complex properties, where the verification …

Analyzing Program Termination and Complexity Automatically with AProVE

J Giesl, C Aschermann, M Brockschmidt… - Journal of Automated …, 2017 - Springer
In this system description, we present the tool AProVE for automatic termination and
complexity proofs of Java, C, Haskell, Prolog, and rewrite systems. In addition to classical …

Reducing energy consumption using genetic improvement

BR Bruce, J Petke, M Harman - … of the 2015 Annual Conference on …, 2015 - dl.acm.org
Genetic Improvement (GI) is an area of Search Based Software Engineering which seeks to
improve software's non-functional properties by treating program code as if it were genetic …

SMT-RAT: An Open Source C++ Toolbox for Strategic and Parallel SMT Solving

F Corzilius, G Kremer, S Junges, S Schupp… - Theory and Applications …, 2015 - Springer
During the last decade, popular SMT solvers have been extended step-by-step with a wide
range of decision procedures for different theories. Some SMT solvers also support the user …

JayHorn: A Framework for Verifying Java programs

T Kahsai, P Rümmer, H Sanchez, M Schäf - … ON, Canada, July 17-23, 2016 …, 2016 - Springer
Building a competitive program verifiers is becoming cheaper. On the front-end side, openly
available compiler infrastructure and optimization frameworks take care of hairy problems …

Improving bit-blasting for nonlinear integer constraints

F Jia, R Han, P Huang, M Liu, F Ma… - Proceedings of the 32nd …, 2023 - dl.acm.org
Nonlinear integer constraints are common and difficult in the verification and analysis of
software/hardware. SMT (QF_NIA) generalizes such constraints, which is a boolean …

T2: Temporal Property Verification

M Brockschmidt, B Cook, S Ishtiaq, H Khlaaf… - … 2016, Held as Part of the …, 2016 - Springer
We present the open-source tool T2, the first public release from the TERMINATOR project
[9]. T2 has been extended over the past decade to support automatic temporal-logic proving …

Analyzing runtime and size complexity of integer programs

M Brockschmidt, F Emmes, S Falke, C Fuhs… - ACM Transactions on …, 2016 - dl.acm.org
We present a modular approach to automatic complexity analysis of integer programs.
Based on a novel alternation between finding symbolic time bounds for program parts and …

Analysing the complexity of functional programs: higher-order meets first-order

M Avanzini, U Dal Lago, G Moser - Proceedings of the 20th ACM …, 2015 - dl.acm.org
We show how the complexity of higher-order functional programs can be analysed
automatically by applying program transformations to a defunctionalised versions of them …

DynamiTe: dynamic termination and non-termination proofs

TC Le, T Antonopoulos, P Fathololumi… - Proceedings of the …, 2020 - dl.acm.org
There is growing interest in termination reasoning for nonlinear programs and, meanwhile,
recent dynamic strategies have shown they are able to infer invariants for such challenging …