Skip to main navigation Skip to search Skip to main content

2-Pointer Logic

  • Helmut Seidl
  • , Julian Erhard
  • , Michael Schwarz
  • , Sarah Tilscher
  • Technical University of Munich
  • Ludwig-Maximilians-Universität München

Research output: Chapter in Book/Report/Conference proceeding › Chapter › peer-review

1 Scopus citations

Abstract

For reasoning about properties of pointers, we consider conjunctions of equalities and dis-equalities between terms built up from address constants by addition of offsets and dereferencing. We call the resulting class of formulas 2-pointer logic. We introduce a quantitative version of congruence closure to provide polynomial time algorithms for deciding satisfiability as well as implication between formulas. By generalizing quantitative congruence closure to quantitative finite automata, we succeed in constructing canonical normal forms so that checking of equivalence between conjunctions reduces to syntactic equality. We apply our techniques to realize abstract transformers for dedicated forms of assignments via pointers, in particular, indefinite, definite and locally invertible assignments. Quantitative finite automata here allow us to restrict formulas to properties expressible by some subterm-closed subset of terms only.

Original languageEnglish
Title of host publicationLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
PublisherSpringer Science and Business Media Deutschland GmbH
Pages281-307
Number of pages27
DOIs
StatePublished - 2024

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume14660 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Keywords

  • 2-pointer logic
  • abstract transformers for assignments
  • polynomial normal form
  • quantitative congruence closure
  • quantitative equalities and dis-equalities

Fingerprint

Dive into the research topics of '2-Pointer Logic'. Together they form a unique fingerprint.

Cite this