抽象解釈
L を concrete set(具体集合)という順序集合とし、L′ を別の順序集合 abstract set(抽象集合)とする。これら2つの集合は相互に元をマップする全域関数によって関連付けられる。
関数αは abstraction function(抽象化関数)と呼ばれ、x が L の元であるとき、α(x) が L′ の元となる。すなわち、L′ の元 α(x) は L の元 x の抽象化(abstraction)である。
関数γは concretization function(具体化関数)と呼ばれ、x′ が L′ の元であるとき、γ(x′) が L の元となる。すなわち、L の元 γ(x′) は L′ の元 x′ の具体化(concretization)である。
L1、L2、L′1、L′2 を順序集合とする。具体的意味論 f は、L1 から L2 への単調関数である。L′1 から L′2 への関数 f′ を f の「妥当な抽象化; valid abstraction」と呼び、L′1 に属する全ての x′ について (f ∘ γ)(x′) ≤ (γ ∘ f′)(x′) が成り立つ。
プログラム意味論は一般に、ループや再帰関数における不動点を使って表される。L が完備束で、f が L から L への単調関数とする。