Puneet Varma (Editor)

Logical relations

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

Logical relations are a proof method employed in programming language semantics to show that two denotational semantics are equivalent.

To describe the process, let us denote the two semantics by [ [ ] ] i , i = 1 , 2 . For each type A , we associate a particular relation a b between [ [ A ] ] 1 and [ [ A ] ] 2 . We define this relation such that for all program phrase M , the two denotations are related: [ [ M ] ] 1 [ [ M ] ] 2 . Another property of this relation is that related denotations for ground types are equivalent in some sense, usually equal. The conclusion is then that both denotations exhibit equivalent behavior on ground terms, hence are equivalent.

References

Logical relations Wikipedia