Set constraints for destructive array update optimization

  • Authors:
  • Mitchell Wand;William D. Clinger

  • Affiliations:
  • College of Computer Science, Northeastern University, 161 Cullinane Hall, Boston MA 02115 USA (e-mail: {wand,will}@ccs.neu.edu);College of Computer Science, Northeastern University, 161 Cullinane Hall, Boston MA 02115 USA (e-mail: {wand,will}@ccs.neu.edu)

  • Venue:
  • Journal of Functional Programming
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

Destructive array update optimization is critical for writing scientific codes in functional languages. We present set constraints for an interprocedural update optimization that runs in polynomial time. This is a multi-pass optimization, involving interprocedural flow analyses for aliasing and liveness. We characterize and prove the soundness of these analyses using small-step operational semantics. We also prove that any sound liveness analysis induces a correct program transformation.