Abstract
We show how unfold/fold program transformation techniques may be used for proving that a closed first order formula holds in the perfect model of a logic program with locally stratified negation. We present a program transformation strategy which is a decision procedure for some given classes of programs and formulas.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
K. R. Apt and R. N. Bol. Logic programming and negation: A survey. Journal of Logic Programming, 19,20:9–71, 1994.
R.S. Boyer and J.S. Moore. A Computational Logic. Academic Press, New York, 1979.
S. Brass and J. Dix. Semantics of (disjunctive) logic programs based on partial evaluation. Journal of Logic Programming, 40:1–46, 1999.
R. M. Burstall and J. Darlington. A transformation system for developing recursive programs. JACM, 24(1):44–67, January 1977.
W. Chen and D. S. Warren. Tabled evaluation with delaying for general logic programs. JACM, 43(1), 1996.
K. L. Clark. Negation as failure. In H. Gallaire and J. Minker (eds.) Logic and Data Bases, 293–322. Plenum Press, New York, 1978.
H. Comon and R. Nieuwenhuis. Induction = I-axiomatization + first-order consistency. Information and Computation. (To appear).
B. Courcelle. Equivalences and Transformations of Regular Systems-Applications to Recursive Program Schemes and Grammars. Theo. Comp. Sci., 42:1–122, 1986.
E. A. Emerson. Temporal and modal logic. In J. van Leuveen (ed.) Handbook of Theoretical Computer Science, volume B, 997–1072. Elsevier, 1990.
J. Engelfriet. Tree Automata and Tree Grammars. DAIMI FN-10, Department of Computer Science, University of Aarhus, Denmark, April 1975.
L. Kott. Unfold/fold program transformation. In M. Nivat and J.C. Reynolds (eds.) Algebraic Methods in Semantics, 411–434. Cambridge University Press, 1985.
J. W. Lloyd. Foundations of Logic Programming. Springer-Verlag, 1987. 2nd Ed.
A. Pettorossi and M. Proietti. Synthesis and transformation of logic programs using unfold/fold proofs. Journal of Logic Programming, 41(2&3):197–230, 1999.
M. Proietti and A. Pettorossi. Unfolding-definition-folding, in this order, for avoiding unnecessary variables in logic programs. Theo. Comp. Sci., 142(1):89–124, 1995.
T. C. Przymusinski. On the declarative and procedural semantics of logic programs. Journal of Automated Reasoning, 5:167–205, 1989.
M. O. Rabin. Decidability of second-order theories and automata on infinite trees. Transactions of the American Mathematical Society, 141:1–34, July 1969.
A. Roychoudhury, K. Narayan Kumar, C.R. Ramakrishnan, I.V. Ramakrishnan, and S. A. Smolka. Verification of parametrized systems using logic program transformations. In Proc. TACAS 2000, LNCS 1785, 172–187. Springer, 2000.
Y.S. Ramakrishna, C. R. Ramakrishnan, I. V. Ramakrishnan, S. A. Smolka, T. Swift, and D. S. Warren. Efficient model checking using tabled resolution. In Proc. CAV’ 97, LNCS 1254, 143–154. Springer, 1997.
H. Seki. Unfold/fold transformation of stratified programs. Theo. Comp. Sci., 86:107–139, 1991.
H. Tamaki and T. Sato. Unfold/fold transformation of logic programs. In Proceedings of ICLP’84, 127–138. Uppsala University, Sweden, 1984.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pettorossi, A., Proietti, M. (2000). Perfect Model Checking via Unfold/Fold Transformations. In: Lloyd, J., et al. Computational Logic — CL 2000. CL 2000. Lecture Notes in Computer Science(), vol 1861. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44957-4_41
Download citation
DOI: https://doi.org/10.1007/3-540-44957-4_41
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67797-0
Online ISBN: 978-3-540-44957-7
eBook Packages: Springer Book Archive