Title :
Variables as Resource in Hoare Logics
Author :
Parkinson, Matthew ; Bornat, Richard ; Calcagno, Cristiano
Author_Institution :
Sch. of Comput., Middlesex Univ., London
Abstract :
Hoare logic is bedevilled by complex but coarse side conditions on the use of variables. We define a logic, free of side conditions, which permits more precise statements of a program´s use of variables. We show that it admits translations of proofs in Hoare logic, thereby showing that nothing is lost, and also that it admits proofs of some programs outside the scope of Hoare logic. We include a treatment of reference parameters and global variables in procedure call (though not of parameter aliasing). Our work draws on ideas from separation logic: program variables are treated as resource rather than as logical variables in disguise. For clarity we exclude a treatment of the heap
Keywords :
formal logic; programming theory; Hoare logics; global variables; procedure call; program variables; proof translation; separation logic; Computer science; Concurrent computing; Educational institutions; Logic; Permission; Program processors; Programming profession; Writing;
Conference_Titel :
Logic in Computer Science, 2006 21st Annual IEEE Symposium on
Conference_Location :
Seattle, WA
Print_ISBN :
0-7695-2631-4
DOI :
10.1109/LICS.2006.52