lecture-17 Correctness

lecture-17 Correctness - 1 Correctness Until now •...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 1 Correctness Until now • We’ve seen how to define dataflow analyses • How do we know our analyses are correct? • We could reason about each individual analysis one a time • However, a unified framework would make proofs easier to develop and understand Abstract interpretation • Abstract interpretation is such a framework • Life in analysis-land is all about two things: – fixed points – and approximations • In most general terms, abstract interpretation is a theory of fixed point approximation • Abstract interpretation is very flexible, and it has been applied to many domains Just a reminder • An analysis (ignore subscripts for now...): • F a is global flow function, which takes a map from edges to dataflow information • Solution is A simple example with const prop x := 0; y := 0; while (...) { x := x + 1; print(x); } print(y); Same example with a twist • At merge point, take union of maps, rather than merging maps x := 0; y := 0; while (...) { x := x + 1; print(x); } print(y); 2 What exactly is going on? (discussion) What exactly is going on? • Well, to begin with, our analysis doesn’t terminate anymore... • We are keeping much more information around • In fact, we are... • ... running the program Excursion into semantics land • Semantics of a programming language – captures how instructions of a programming language operate • vs. semantics of a program – captures how a given program runs Semantics of a program • Can use fixed points to capture the semantics of a program • Solution: Semantics of a program • Back to our const prop example • What were we computing? Semantics of a program • Back to our const prop example • What were we computing?...
View Full Document

{[ snackBarMessage ]}

Page1 / 8

lecture-17 Correctness - 1 Correctness Until now •...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online