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ω, which can be easily instantiated to derive optimal operators for the domains ShLin2 by Andy King and the reduced product Sharing × Lin.
Optimal Matching for Sharing and Linearity Analysis
Amato G.
;Scozzari F.
2024-01-01
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ω, which can be easily instantiated to derive optimal operators for the domains ShLin2 by Andy King and the reduced product Sharing × Lin.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.