Abstract
We would like to develop methods for verifying programs in the input language of the answer set solver clingo using software created for the automation of reasoning in first-order theories. As a step in this direction, we extend Clark’s completion to a class of clingo programs that contain arithmetic operations as well as intervals and prove that every stable model is a model of generalized completion. The translator anthem calculates the completion of a program and represents it in a format that can be processed by first-order theorem provers. Some properties of programs can be verified by anthem and the theorem prover vampire, working together.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
Answer set solvers are logic programming systems that calculate stable models (answer sets) of logic programs. Some of the best-known systems of this kind are clingo (https://potassco.org/) and dlv (http://www.dlvsystem.com/).
- 2.
As discussed in Sect. 2.1, the “interval term” 0..n in the first rule of this program is an arithmetic expression that has multiple values—all integers from 0 to n. The equality between a variable and an interval term in the body of a rule expresses that the value of the variable is equal to one of the values of the term.
- 3.
We talk about program variables and program terms to distinguish them from the variables and terms that are allowed in formulas (Sect. 3) and thus can be found in the output of anthem.
- 4.
It differs from the translation \(\tau ^B\) [12, Section 6] in that it disregards the combination \( not \, not \). Double negations are essential in the formulas that characterize stable models but not in completion formulas.
- 5.
References
Clark, K.L.: Negation as failure. In: Gallaire, H., Minker, J. (eds.) Logic and Data Bases. Springer, Boston (1978). https://doi.org/10.1007/978-1-4684-3384-5_11
Erdem, E., Gelfond, M., Leone, N.: Applications of ASP. AI Mag. 37(3), 53–68 (2016)
Erdem, E., Lifschitz, V.: Fages’ theorem for programs with nested expressions. In: Codognet, P. (ed.) ICLP 2001. LNCS, vol. 2237, pp. 242–254. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45635-X_24
Erdem, E., Lifschitz, V.: Tight logic programs. Theor. Pract. Logic Prog. 3(4–5), 499–518 (2003)
Fages, F.: Consistency of Clark’s completion and the existence of stable models. J. Methods Logic Comput. Sci. 1, 51–60 (1994)
Falkner, A., Friedrich, G., Schekotihin, K., Taupe, R., Teppan, E.: Industrial applications of answer set programming. Künstliche Intelligenz 32(2–3), 165–176 (2018)
Gebser, M., Harrison, A., Kaminski, R., Lifschitz, V., Schaub, T.: Abstract gringo. Theor. Pract. Logic Prog. 15(4–5), 449–463 (2015). http://arxiv.org/abs/1507.06576
Harrison, A., Lifschitz, V., Raju, D.: Program completion in the input language of GRINGO. Theor. Pract. Logic Prog. 17(5–6), 855–871 (2017)
Kovács, L., Voronkov, A.: First-order theorem proving and Vampire. In: Sharygina, N., Veith, H. (eds.) CAV 2013. LNCS, vol. 8044, pp. 1–35. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39799-8_1
Lifschitz, V.: Achievements in answer set programming. Theor. Pract. Logic Prog. 17(5–6), 961–973 (2017)
Lifschitz, V., Lühne, P., Schaub, T.: Anthem: transforming gringo programs into first-order theories (preliminary report). In: Fandinno, J., Fichte, J. (eds.) Proceedings of the Eleventh Workshop on Answer Set Programming and Other Computing Paradigms (ASPOCP 2018) (2018)
Lifschitz, V., Lühne, P., Schaub, T.: Verifying strong equivalence of programs in the input language of gringo. In: Balduccini, M., Lierler, Y., Woltran, S. (eds.) LPNMR 2019. LNCS, vol. 11481. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-20528-7_20
Lifschitz, V., Pearce, D., Valverde, A.: Strongly equivalent logic programs. ACM Trans. Comput. Logic 2(4), 526–541 (2001)
Lloyd, J., Topor, R.: Making Prolog more expressive. J. Logic Prog. 1(3), 225–240 (1984)
Sutcliffe, G.: The TPTP problem library and associated infrastructure. J. Autom. Reason. 59(4), 483–502 (2017)
Acknowledgements
We are grateful to Laura Kovács, Giles Reger, and Martin Suda for taking the time to answer our questions about the use of vampire. Also, we would like to thank the anonymous referee for giving us useful suggestions.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Lifschitz, V., Lühne, P., Schaub, T. (2020). Towards Verifying Logic Programs in the Input Language of clingo. In: Blass, A., Cégielski, P., Dershowitz, N., Droste, M., Finkbeiner, B. (eds) Fields of Logic and Computation III. Lecture Notes in Computer Science(), vol 12180. Springer, Cham. https://doi.org/10.1007/978-3-030-48006-6_14
Download citation
DOI: https://doi.org/10.1007/978-3-030-48006-6_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-48005-9
Online ISBN: 978-3-030-48006-6
eBook Packages: Computer ScienceComputer Science (R0)