• DocumentCode
    2647041
  • Title

    Decision diagrams for linear arithmetic

  • Author

    Chaki, Sagar ; Gurfinkel, Arie ; Strichman, Ofer

  • fYear
    2009
  • fDate
    15-18 Nov. 2009
  • Firstpage
    53
  • Lastpage
    60
  • Abstract
    Boolean manipulation and existential quantification of numeric variables from linear arithmetic (LA) formulas is at the core of many program analysis and software model checking techniques (e.g., predicate abstraction). We present a new data structure, Linear Decision Diagrams (LDDs), to represent formulas in LA and its fragments, which has certain properties that make it efficient for such tasks. LDDs can be seen as an extension of Difference Decision Diagrams (DDDs) to full LA. Beyond this extension, we make three key contributions. First, we extend sifting-based dynamic variable ordering (DVO) from BDDs to LDDs. Second, we develop, implement, and evaluate several algorithms for existential quantification. Third, we implement LDDs inside CUDD, a state-of-the-art BDD package, and evaluate them on a large benchmark consisting of 850 functions derived from the source code of 25 open source programs. Overall, our experiments indicate that LDDs are an effective data structure for program analysis tasks.
  • Keywords
    Boolean algebra; decision diagrams; digital arithmetic; program diagnostics; Boolean manipulation; difference decision diagrams; dynamic variable ordering; linear arithmetic formula; linear decision diagrams; open source programs; program analysis technique; software model checking technique; Arithmetic; Binary decision diagrams; Boolean functions; Computer applications; Data structures; Dynamic programming; Image analysis; Instruments; Logic; Packaging;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Formal Methods in Computer-Aided Design, 2009. FMCAD 2009
  • Conference_Location
    Austin, TX
  • Print_ISBN
    978-1-4244-4966-8
  • Electronic_ISBN
    978-1-4244-4966-8
  • Type

    conf

  • DOI
    10.1109/FMCAD.2009.5351143
  • Filename
    5351143