Three Optimisations for Sharing
Jacob M. Howe, Andy King

TL;DR
This paper introduces three lightweight optimizations for sharing analysis that improve precision and efficiency by better tracking freeness and linearity, with proven correctness even with rational trees.
Contribution
It proposes three novel optimizations for sharing analysis, establishing their correctness and efficiency improvements in combined domains.
Findings
Optimizations enhance sharing analysis precision and efficiency.
Correctness of optimizations proven with rational trees.
Pruning method reduces intermediate sharing abstractions.
Abstract
In order to improve precision and efficiency sharing analysis should track both freeness and linearity. The abstract unification algorithms for these combined domains are suboptimal, hence there is scope for improving precision. This paper proposes three optimisations for tracing sharing in combination with freeness and linearity. A novel connection between equations and sharing abstractions is used to establish correctness of these optimisations even in the presence of rational trees. A method for pruning intermediate sharing abstractions to improve efficiency is also proposed. The optimisations are lightweight and therefore some, if not all, of these optimisations will be of interest to the implementor.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Advanced Database Systems and Queries · Logic, Reasoning, and Knowledge
