Abstract
LSign [16] is an elegant domain for analyzing constraint logic programming languages over linear real constraints. Its key conceptual ideas are the abstraction of linear constraints by replacing coefficients by their signs and the use of annotations for preserving multiplicity information on the constraints. Unfortunately, the ordering of abstract constraint stores given in [16] does not capture the intended meaning and makes it impossible to prove the consistency of the abstract operations of LSign. In this paper, we reconsider the domain LSign. Our first contribution is to define a new ordering on abstract constraint stores and to give the meaning of the domain through a monotone concretization function from abstract stores to sets of constraint stores, where a constraint store is a multiset of constraints. Our second contribution is to show that ordering two abstract stores reduces to a matching problem, which can be solved in polynomial time. Our last contribution is to propose a simpler and more precise algorithm for abstract projection and a schema for generating upper bound operations and to prove their consistency.
Preview
Unable to display preview. Download preview PDF.
References
C. Braem, B. Le Charlier, S. Modart, and P. Van Hentenryck. Cardinality Analysis of Prolog. In Proceedings of the International Symposium on Logic Programming (ILPS-94), pages 457–471, Ithaca, NY, November 1994.
M. Bruynooghe. A Practical Framework for the Abstract Interpretation of Logic Programs. Journal of Logic Programming, 10(2):91–124, February 1991.
W. Buttner and H. Simonis. Embedding Boolean Expressions into Logic Programming. Journal of Symbolic Computation, 4:191–205, October 1987.
A. Colmerauer. An Introduction to Prolog III. Commun. ACM, 28(4):412–418, 1990.
P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In New York ACM Press, ACM Press, editor, Conf. Record of Fourth ACM Symposium on Programming Languages (POPL'77), pages 238–252, Los Angeles, CA, January 1977.
V. Dumortier and G. Janssens. Towards a Practical Full Mode Inference System for CLP(H,N). In Eleventh International Conference on Logic Programming (ICLP-94), Santa Marguerita Ligure, Italy, June 1994.
M.L. Fredman and R.E. Tarjan. Fibonacci Heaps and Their Uses in Improved Network Optimization Algorithms. JACM, 34:596–615, July 1987.
M. Garcia de la Banda and M. Hermenegildo. A Practical Approach to the Global Analysis of CLP Programs. In Proc. of the International Symposium on Logic Programming (ILPS'93), Vancouver, Canada, November 1993.
J. Jaffar and J-L. Lassez. Constraint logic programming. In POPL-87, (Munich, Germany), January 1987.
J. Jaffar, S. Michaylov, P.J. Stuckey, and R. Yap. The CLP(ℜ) language and system. ACM Trans. on Programming Languages and Systems, 14(3):339–395, 1992.
B. Le Charlier, S. Rossi, and P. Van Hentenryck. An Abstract Interpretation Framework Which Accurately Handles Prolog Search Rule and the Cut. In Proceedings of the International Symposium on Logic Programming (ILPS-94), pages 157–171, Ithaca, NY, November 1994.
B. Le Charlier and P. Van Hentenryck. Experimental Evaluation of a Generic Abstract Interpretation Algorithm for Prolog. ACM Transactions on Programming Languages and Systems, 16(1): 35–101, January 94.
K. Marriott and H. Sondergaard. Notes for a Tutorial on Abstract Interpretation of Logic Programs. North American Conference on Logic Programming, Cleveland, Ohio, October 1989.
K. Marriott and H. Sondergaard. Analysis of Constraint Logic Programs. In Proceedings of the North American Conference on Logic Programming (NACLP-90), Austin, TX, October 1990.
K. Marriott and P. Stuckey. The 3 R's of optimizing Constraint Logic Programs: Refinement, Removal, and Reordering. In Proc. of the 20th ACM Symposium on Principles of Programming Languages (POPL'93), Charleston, South Carolina, January 1993.
K. Marriott and P. Stuckey. Approximating Interaction Between Linear Arithmetic Constraints. In Proc. of the International Symposium on Logic Programming (ILPS'94), Ithaca, NY, November 1994.
K. Muthukumar and M. Hermenegildo. Compile-Time Derivation of Variable Dependency Using Abstract Interpretation. Journal of Logic Programming, 13(2–3):315–347, August 1992.
W. Older and A. Vellino. Extending Prolog with Constraint Arithmetics on Real Intervals. In Canadian Conference on Computer & Electrical Engineering, Ottawa, 1990.
V. Ramachandran and P. Van Hentenryck. LSign Reordered. Technical Report CS-95-12, CS Department, Brown University, April 1995.
P. Van Hentenryck. Constraint Satisfaction in Logic Programming. Logic Programming Series, The MIT Press, Cambridge, Mass., 1989.
P. Van Hentenryck and T. Graf. Standard Forms for Rational Linear Arithmetics in Constraint Logic Programming. Annals of Mathematics and Artificial Intelligence, 5(2–4):303–320, 1992.
W. Winsborough. Multiple Specialization using Minimal-Function Graph Semantics. Journal of Logic Programming, 13(4), July 1992.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ramachandran, V., Van Hentenryck, P. (1995). LSign reordered. In: Mycroft, A. (eds) Static Analysis. SAS 1995. Lecture Notes in Computer Science, vol 983. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60360-3_48
Download citation
DOI: https://doi.org/10.1007/3-540-60360-3_48
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60360-3
Online ISBN: 978-3-540-45050-4
eBook Packages: Springer Book Archive