English

Optimal matching for sharing and linearity analysis

Programming Languages 2025-01-22 v1 Logic in Computer Science

Abstract

Static analysis of logic programs by abstract interpretation requires designing abstract operators which mimic the concrete ones, such as unification, renaming and projection. In the case of goal-driven analysis, where goal-dependent semantics are used, we also need a backward-unification operator, typically implemented through matching. In this paper we study the problem of deriving optimal abstract matching operators for sharing and linearity properties. We provide an optimal operator for matching in the domain ShLinω{\mathtt{ShLin}^{\omega}}, which can be easily instantiated to derive optimal operators for the domains ShLin2{\mathtt{ShLin}^{2}} by Andy King and the reduced product Sharing×Lin\mathtt{Sharing} \times \mathtt{Lin}.

Cite

@article{arxiv.2406.16063,
  title  = {Optimal matching for sharing and linearity analysis},
  author = {Gianluca Amato and Francesca Scozzari},
  journal= {arXiv preprint arXiv:2406.16063},
  year   = {2025}
}

Comments

Under consideration in Theory and Practice of Logic Programming (TPLP). arXiv admin note: text overlap with arXiv:0710.0528

R2 v1 2026-06-28T17:16:15.504Z