Why Use Datalog to Analyze Programs?

  • Monica S. Lam
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4079)


We use Datalog because (1) we can write program analyses easier and (2) the analyses in Datalog run faster!

As we turn to automatic program analysis to improve software reliability and security, we find it necessary to perform more complex program analyses. Specifically, if we wish to reason about heap objects, we must perform an interprocedural pointer alias analysis that distinguishes between calling contexts. This is challenging because a typical large program can have over 1014 calling contexts, even if we collapse all recursive cycles.


Program Analysis Computer Science Department Binary Decision Diagram Calling Context Java Code 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Monica S. Lam
    • 1
  1. 1.Computer Science DepartmentStanford UniversityStanfordUSA

Personalised recommendations