Skip to main content
  • Book
  • © 2006

Variations on Constants

Flow Analysis of Sequential and Parallel Programs

Part of the book series: Lecture Notes in Computer Science (LNCS, volume 3800)

Part of the book sub series: Programming and Software Engineering (LNPSE)

Buying options

eBook USD 39.99
Price excludes VAT (Canada)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 54.99
Price excludes VAT (Canada)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

This is a preview of subscription content, access via your institution.

Table of contents (11 chapters)

  1. Front Matter

  2. 1. Introduction

    • Markus Müller-Olm
    Pages 1-11
  3. 2. A Hierarchy of Constants

    • Markus Müller-Olm
    Pages 13-29
  4. 4. Limits of Parallel Flow Analysis

    • Markus Müller-Olm
    Pages 53-79
  5. 5. Parallel Flow Graphs

    • Markus Müller-Olm
    Pages 81-99
  6. 6. Non-atomic Execution

    • Markus Müller-Olm
    Pages 101-109
  7. 7. Dependence Traces

    • Markus Müller-Olm
    Pages 111-143
  8. 9. Complexity in the Non-atomic Scenario

    • Markus Müller-Olm
    Pages 153-160
  9. 10. Conclusion

    • Markus Müller-Olm
    Pages 161-164
  10. A. A Primer on Constraint-Based Program Analysis

    • Markus Müller-Olm
    Pages 165-171
  11. Back Matter

About this book

Program analysis is concerned with techniques that automatically determine run-time properties of given programs prior to run-time. It is used for validation in order to ensure that programs serve their intended purpose and in further processing for efficient execution such as in optimizing compilers. Optimal program analysis provides a guarantee about the precision of the computed results.

This monograph, a revised version of the author's habilitation thesis, focusses on optimal flow analysis of sequential and parallel programs. It studies algorithmic properties of various versions of the well-known constant-propagation problem. In order to come to grips with the variants considered, it combines techniques from different areas such as linear algebra, computable ring theory, abstract interpretation, program verification, complexity theory, etc. Combination of techniques is the key to further progress in automatic analysis and constant-propagation allows us to illustrate this point in a theoretical study.

After a general overview, the monograph consists of three essentially self-contained parts that can be read independently of each other. These parts study: a hierarchy of constants in sequential programs, inherent limits of flow analysis of parallel programs, and how to overcome these limits by abandoning a classic atomic execution assumption.

Keywords

  • Automat
  • Processing
  • algorithm
  • algorithms
  • compiler
  • complexity
  • complexity theory
  • verification

Authors and Affiliations

  • Institut für Informatik, Fachbereich Mathematik und Informatik, Westfälische Wilhelms-Universität, Münster, Germany

    Markus Müller-Olm

Bibliographic Information

Buying options

eBook USD 39.99
Price excludes VAT (Canada)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 54.99
Price excludes VAT (Canada)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions