English

ESBMC-Jimple: Verifying Kotlin Programs via Jimple Intermediate Representation

Software Engineering 2022-07-21 v2

Abstract

In this work, we describe and evaluate the first model checker for verifying Kotlin programs through the Jimple intermediate representation. The verifier, named ESBMC-Jimple, is built on top of the Efficient SMT-based Context-Bounded Model Checker (ESBMC). It uses the Soot framework to obtain the Jimple IR, representing a simplified version of the Kotlin source code, containing a maximum of three operands per instruction. ESBMC-Jimple processes Kotlin source code together with a model of the standard Kotlin libraries and checks a set of safety properties. Experimental results show that ESBMC-Jimple can correctly verify a set of Kotlin benchmarks from the literature and that it is competitive with state-of-the-art Java bytecode verifiers. A demonstration is available at https://youtu.be/J6WhNfXvJNc.

Cite

@article{arxiv.2206.04397,
  title  = {ESBMC-Jimple: Verifying Kotlin Programs via Jimple Intermediate Representation},
  author = {Rafael Menezes and Daniel Moura and Helena Cavalcante and Rosiane de Freitas and Lucas C. Cordeiro},
  journal= {arXiv preprint arXiv:2206.04397},
  year   = {2022}
}

Comments

ACM SIGSOFT International Symposium on Software Testing and Analysis 2022

R2 v1 2026-06-24T11:44:46.135Z