Skip to main content
Cornell University
Learn about arXiv becoming an independent nonprofit.
We gratefully acknowledge support from the Simons Foundation, member institutions, and all contributors. Donate
arxiv logo > cs > arXiv:1309.5138v1

Help | Advanced Search

arXiv logo
Cornell University Logo

quick links

  • Login
  • Help Pages
  • About

Computer Science > Programming Languages

arXiv:1309.5138v1 (cs)
[Submitted on 20 Sep 2013]

Title:Modular Construction of Shape-Numeric Analyzers

Authors:Bor-Yuh Evan Chang (University of Colorado Boulder), Xavier Rival (INRIA, ENS, and CNRS)
View a PDF of the paper titled Modular Construction of Shape-Numeric Analyzers, by Bor-Yuh Evan Chang (University of Colorado Boulder) and 3 other authors
View PDF
Abstract:The aim of static analysis is to infer invariants about programs that are precise enough to establish semantic properties, such as the absence of run-time errors. Broadly speaking, there are two major branches of static analysis for imperative programs. Pointer and shape analyses focus on inferring properties of pointers, dynamically-allocated memory, and recursive data structures, while numeric analyses seek to derive invariants on numeric values. Although simultaneous inference of shape-numeric invariants is often needed, this case is especially challenging and is not particularly well explored. Notably, simultaneous shape-numeric inference raises complex issues in the design of the static analyzer itself.
In this paper, we study the construction of such shape-numeric, static analyzers. We set up an abstract interpretation framework that allows us to reason about simultaneous shape-numeric properties by combining shape and numeric abstractions into a modular, expressive abstract domain. Such a modular structure is highly desirable to make its formalization and implementation easier to do and get correct. To achieve this, we choose a concrete semantics that can be abstracted step-by-step, while preserving a high level of expressiveness. The structure of abstract operations (i.e., transfer, join, and comparison) follows the structure of this semantics. The advantage of this construction is to divide the analyzer in modules and functors that implement abstractions of distinct features.
Comments: In Proceedings Festschrift for Dave Schmidt, arXiv:1309.4557
Subjects: Programming Languages (cs.PL); Logic in Computer Science (cs.LO)
ACM classes: F.3.1; D.2.4
Cite as: arXiv:1309.5138 [cs.PL]
  (or arXiv:1309.5138v1 [cs.PL] for this version)
  https://doi.org/10.48550/arXiv.1309.5138
arXiv-issued DOI via DataCite
Journal reference: EPTCS 129, 2013, pp. 161-185
Related DOI: https://doi.org/10.4204/EPTCS.129.11
DOI(s) linking to related resources

Submission history

From: EPTCS [view email] [via EPTCS proxy]
[v1] Fri, 20 Sep 2013 01:44:27 UTC (1,563 KB)
Full-text links:

Access Paper:

    View a PDF of the paper titled Modular Construction of Shape-Numeric Analyzers, by Bor-Yuh Evan Chang (University of Colorado Boulder) and 3 other authors
  • View PDF
  • TeX Source
view license

Current browse context:

cs.PL
< prev   |   next >
new | recent | 2013-09
Change to browse by:
cs
cs.LO

References & Citations

  • NASA ADS
  • Google Scholar
  • Semantic Scholar
Loading...

BibTeX formatted citation

Data provided by:

Bookmark

BibSonomy Reddit

Bibliographic and Citation Tools

Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)

Code, Data and Media Associated with this Article

alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
ScienceCast (What is ScienceCast?)

Demos

Replicate (What is Replicate?)
Hugging Face Spaces (What is Spaces?)
TXYZ.AI (What is TXYZ.AI?)

Recommenders and Search Tools

Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
  • Author
  • Venue
  • Institution
  • Topic

arXivLabs: experimental projects with community collaborators

arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.

Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.

Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.

Which authors of this paper are endorsers? | Disable MathJax (What is MathJax?)
  • About
  • Help
  • contact arXivClick here to contact arXiv Contact
  • subscribe to arXiv mailingsClick here to subscribe Subscribe
  • Copyright
  • Privacy Policy
  • Web Accessibility Assistance
  • arXiv Operational Status