Skip to content
TU Dresden
A joint project with Uni Leipzig DE EN

Static Program Analysis in Datalog

A talk by Knut Berling:
March 23, 2023
11 a.m. – noon
APB/3027 | BigBlueButton
Join us now:


Doop is a framework for Program Analysis of Java code. It utilizes the Datalog engine Souffle to run high-speed analyses on an Intermediate Code Representation. Existing analyses mainly deal with larger-scope Pointer Analysis, but not with local optimization possibilities. In this talk, I focus on the implementation of local static analyses like Constant Folding, Liveness and Available Expressions in Doop. I will give an introduction into the related frameworks, and point out benefits and limitations of Doop and Souffle regarding each analysis. Furthermore I will compare my results to existing tools for static code analysis and give an outlook whether Doop is suitable for local static analysis.