Lectures onType Theory
Abstract interpretation and checked invariants
appendix sectionrules

Abstract interpretation and checked invariants

For a concrete transformer F:CC, an abstract transformer F:AA, and a monotone concretization γ:AC, the local simulation obligation is FγγF. If both transformers are monotone on complete lattices, fixed-point transfer gives lfp(F)γ(lfp(F)). Any checked A satisfying F(A)A is likewise sound: Park induction gives lfp(F)γ(A).

The structural analyzer returns a pair (post(c,A),err(c,A)). Its terminal-store and error obligations are c,σskip,σσγst(post(c,A)),c,σerrorerr(c,A)=true. Tests must satisfy Assume-Sound; loops use a pre-fixed invariant. An interval widening drops a decreasing lower endpoint to and an increasing upper endpoint to +. DBM copy-plus-constant assignment updates, for every node w, Dxw=Dyw+k,Dwx=Dwyk,Dxx=0, and then closes the matrix. Entrywise DBM extrapolation drops every weakened finite entry to + and therefore terminates on a finite matrix.

The CESK-star comparison uses the simply typed source rules

Γ,x:Ae:B
Γλx.e:AB
Ty-Abs
Γe1:ABΓe2:A
Γe1 e2:B
Ty-App

Its representative CEK transitions are

e0 e1,ρ,κe0,ρ,ar(e1,ρ,κ)
CEK-App
v0 value
v0,ρ,ar(e1,ρ1,κ)e1,ρ1,fn(v0,κ)
CEK-Arg
v1 value
v1,ρ1,fn(λx.e,ρ0,κ)e,ρ0[xv1],κ
CEK-Beta

The three imported theorem cards retain separate signatures: the CESK-star one-step simulation abstracts a concrete machine step; Move’s borrow-graph theorem preserves Inv(s,Abs(s)); Verasco’s vanalysis_correct excludes Goes_wrong after the five section parameters and result (tt,nil) are fixed.

Search the book

Type to search the local edition.