English

On Transforming Functions Accessing Global Variables into Logically Constrained Term Rewriting Systems

Logic in Computer Science 2019-02-25 v1 Programming Languages

Abstract

In this paper, we show a new approach to transformations of an imperative program with function calls and global variables into a logically constrained term rewriting system. The resulting system represents transitions of the whole execution environment with a call stack. More precisely, we prepare a function symbol for the whole environment, which stores values for global variables and a call stack as its arguments. For a function call, we prepare rewrite rules to push the frame to the stack and to pop it after the execution. Any running frame is located at the top of the stack, and statements accessing global variables are represented by rewrite rules for the environment symbol. We show a precise transformation based on the approach and prove its correctness.

Keywords

Cite

@article{arxiv.1902.08421,
  title  = {On Transforming Functions Accessing Global Variables into Logically Constrained Term Rewriting Systems},
  author = {Yoshiaki Kanazawa and Naoki Nishida},
  journal= {arXiv preprint arXiv:1902.08421},
  year   = {2019}
}

Comments

In Proceedings WPTE 2018, arXiv:1902.07818

R2 v1 2026-06-23T07:48:02.322Z