A First Order Logic with Frames

01/25/2019
by   Christof Löding, et al.
0

We propose a novel logic, called Frame Logic (FL), that extends first-order logic (with recursive definitions) using a construct Fr(·) that captures the implicit frames of formulas--- the precise subset of the universe upon which their meaning depends. Using such frames, we formulate proof rules that facilitate frame reasoning elegantly when the underlying model undergoes change. We show that the logic is expressive by expressing several properties of data-structures and also exhibit a translation from a separation logic that defines precise formulas to frame logic. Finally, we design a program logic based on frame logic for reasoning with programs that dynamically update heaps that facilitates local specifications and frame reasoning. We present both localized proof rules as well as rules that can derive the weakest tightest preconditions in FL. We show that verification conditions for recursion-free program blocks can be derived also in pure first-order logic with recursive definitions with an appropriate frame rule, facilitating frame reasoning.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset