# L3 - Lecture 3 Foundation of Data Flow Analysis I II III IV Semi-lattice(set of values meet operator Transfer functions Correctness precision and

This preview shows pages 1–7. Sign up to view the full content.

Lecture 3 Foundation of Data Flow Analysis I Semi-lattice (set of values, meet operator) II Transfer functions III Correctness, precision and convergence IV Meaning of Data Flow Solution Reading: Chapter 9.3

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

View Full Document
I. Purpose of a Framework Purpose 1 Prove properties of entire family of problems once and for all Will the program converge? What does the solution to the set of equations mean? Purpose 2: Aid in software engineering: re-use code M. Lam CS243: Foundation of Data Flow 2
The Data-Flow Framework Data-flow problems (F, V, ) are defined by A semi-lattice domain of values V meet operator : V x V V A family of transfer functions F: V V M. Lam CS243: Foundation of Data Flow 3

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

View Full Document
Semi-lattice: Structure of the Domain of Values A semi-lattice S = <a set of values V , a meet operator > Properties of the meet operator idempotent: x x = x commutative: x y = y x associative: x ( y z ) = ( x y ) z Examples of meet operators ? Non-examples ? M. Lam CS243: Foundation of Data Flow 4
Example of a Semi-Lattice Diagram (V , ) : V = { x | such that {d 1 ,d 2 ,d 3 }}, = U x y = first common descendant of x & y A meet semi-lattice is bounded if there exists a top element T, such that x T = x for all x. A bottom element exists, if x = for all x. M. Lam CS243: Foundation of Data Flow 5 {} (T) {d 1 } {d 2 } {d 3 } {d 1 ,d 2 } {d 1 ,d 3 } {d 2 ,d 3 } {d 1 ,d 2 ,d 3 } ( ) important

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

View Full Document
Meet Semi-Lattices vs Partially Ordered Sets A meet-semilattice is a partially ordered set which has a meet (or greatest lower bound ) for any nonempty finite subset. Greatest lower bound: x y = First common descendant of x & y Largest: top element T, if x T = x for all x. Smallest: bottom element , if x = for all x.
This is the end of the preview. Sign up to access the rest of the document.

## This document was uploaded on 03/12/2012.

### Page1 / 23

L3 - Lecture 3 Foundation of Data Flow Analysis I II III IV Semi-lattice(set of values meet operator Transfer functions Correctness precision and

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

View Full Document
Ask a homework question - tutors are online