Abstract
We present the language CRStL (Control Rule Strategy Language, pronounce “crystal”) to formulate mathematical reasoning techniques as proof strategies in the context of the proof assistant Ωmega. The language is arranged in two levels, a query language to access mathematical knowledge maintained in development graphs, and a strategy language to annotate the results of these queries with further control information. The two-leveled structure of the language allows the specification of proof techniques in a declarative way. We present the syntax and semantics of CRStL and illustrate its use by examples.
Similar content being viewed by others
References
Andersen, F., Petersen, K.D.: Recursive boolean functions in HOL. In: Archer, M., Joyce, J.J., Levitt, K.N., Windley, P.J. (eds.) Proceedings of the 1991 International Workshop on the HOL Theorem Proving System and its Applications, Davis, August 1991, pp. 367–377. IEEE Computer Society, Silver Spring (1992)
Asperti, A., Padovani, L., Coen, C.S., Guidi, F., Schena, I.: Mathematical knowledge management in helm. Ann. Math. Artif. Intell. 38(1–3), 27–46 (2003)
Asperti, A., Guidi, F., Coen, C.S., Tassi, E., Zacchiroli, S.: A content based mathematical search engine: whelp. In: Post-Proceedings of the Types 2004 International Conference. LNCS, vol. 3839, pp. 17–32. Springer, New York (2004)
Asperti, A., Coen, C.S., Tassi, E., Zacchiroli, S.: User interaction with the matita proof assistant. J. Autom. Reason. 39, 109–139 (2006)
Aspinall, D., Lüth, C., Wolff, B.: Assisted proof document authoring. In: Kohlhase, M. (ed.) Mathematical Knowledge Management MKM 2005, Lecture Notes in Artificial Intelligence, vol. 3863, pp. 65–80. Springer, New York (2006)
Autexier, S.: The CoRe calculus. In: Nieuwenhuis, R. (ed.) Proceedings of CADE-20, Tallinn, Estonia. LNAI, vol. 3632. Springer, New York (2005)
Autexier, S., Dietrich, D.: Synthesizing proof planning methods and Omega-Ants agents from mathematical knowledge. In: Borwein, J., Farmer, B. (eds.) Proceedings of MKM’06. LNAI, vol. 4108, pp. 94–109. Springer, New York (2006)
Autexier, S., Hutter, D.: Formal software development in maya. In: Hutter, D., Stephan, W. (eds.) Festschrift in Honor of J. Siekmann. LNAI, vol. 2605. Springer, New York (2006)
Autexier, S., Hutter, D., Mossakowski, T., Schairer, A.: The development graph manager MAYA. In: Kirchner, H., Ringeissen, Ce. (eds.) Proceedings 9th International Conference on Algebraic Methodology And Software Technology (AMAST’02). LNCS, vol. 2422. Springer, New York (2002)
Autexier, S., Benzmüller, C., Dietrich, D., Wagner, M.: Organisation, transformation, and propagation of mathematical knowledge in omega. J. Math. Comput. Sci. 2, 253–277 (2008)
Bancerek, G.: Information retrieval and rendering with mml query. In: Proceedings of MKM’06, pp. 266–279. Springer, New York (2006)
Bancerek, G., Rudnicki, P.: Information retrieval in mml. In: Proceedings of MKM’03, pp. 119–132. Springer, London (2003)
Barendregt, H., Wiedijk, F.: The challenge of computer mathematics. Philos. Trans.—Royal Soc., Math. Phys. Eng. Sci. 363(1835), 2351–2375 (2005)
Bertot, Y., Castéran, P.: Interactive Theorem Proving and Program Development—Coq’Art: The Calculus of Inductive Constructions. Texts in Theoretical Computer Science. An EATCS Series. Springer, New York (2004)
Borovanský, P., Kirchner, H.: Strategies of elan: meta-interpretation and partial evaluation. In: Proceedings of International Workshop on Theory and Practice of Algebraic Specifications ASF+SDF 97, Workshops in Computing. Springer, Amsterdam (1997)
Borovansky, P., Kirchner, C., Kirchner, H., Ringeissen, C.: Rewriting with strategies in ELAN: a functional semantics. Int. J. Found. Comput. Sci. 12(1), 69–95 (2001)
Bundy, A.: The use of explicit plans to guide inductive proofs. In: Lusk. R., Overbeek, R. (eds.) Proceedings CADE-9. LNAI, pp. 111–120. Springer, New York (1988)
Christian, J.: Flatterms, discrimination nets, and fast term rewriting. J. Autom. Reason. 10, 95–113 (1993)
Constable, R.L., Allen, S.F., Bromley, H., Cleaveland, W., Cremer, J., Harper, R., Howe, D.J., Knoblock, T., Mendler, N., Panangaden, P., Sasaki, J.T., Smith, S.F.: Implementing Mathematics with the Nuprl Development System. Prentice-Hall, Englewood Cliffs (1986)
Corbineau, P.: A declarative language for the coq proof assistant. In: Miculan, M., Scagnetto, I., Honsell, F. (eds.) TYPES. Lecture Notes in Computer Science, vol. 4941, pp. 69–84. Springer, New York (2007)
Delahaye, D.: A proof dedicated meta-language. In: Proceedings of Logical Frameworks and Meta-Languages (LFM), Copenhagen (Denmark). ENTCS, vol. 70(2). Elsevier, Amsterdam (2002)
Dietrich, D.: The task-layer of the Ωmega system. Diploma thesis, FR 6.2 Informatik, Universität des Saarlandes, Saarbrücken (2006)
Dixon, L.: A proof planning framework for Isabelle. Ph.D. thesis, University of Edinburgh (2005)
Dixon, L., Fleuriot, J.D.: A proof-centric approach to mathematical assistants. J. Appl. Logic 4(4), 505–532 (2005)
Farmer, W., Guttman, J., Thayer, F.J.: IMPS: an interactive mathematical proof system. J. Autom. Reason. 11, 653–654 (1993)
Geuvers, H.: Proof assistants: history, ideas and future. Sadahana 34, 3–25 (2009) (Special Issue on Interactive Theorem Proving and Proof Checking)
Geuvers, H., Mamane, L.E.L.: A document-oriented Coq Plugin for Texmacs (2006)
Gordon, M.: From lcf to hol: a short history. In: Plotkin, G.D., Stirling, C., Tofte, M. (eds.) Proof, Language, and Interaction, pp. 169–186. MIT, Cambridge (2000)
Gordon, M.J., Milner, A.J., Wadsworth, C.P.: Edinburgh LCF—a mechanised logic of computation. In: LNCS, vol. 78. Springer, New York (1979)
Harrison, J.: Hol light: a tutorial introduction. In: Formal Methods in Computer-Aided Design (FMCAD’96), pp. 265–269. Springer, New York (1996)
Huang, X.: Human oriented proof presentation: a reconstructive approach. In: DISKI, no. 112. Infix, Sankt Augustin (1996)
Letichevsky, A.A.: Development of rewriting strategies. In: PLILP ’93: Proceedings of the 5th International Symposium on Programming Language Implementation and Logic Programming, pp. 378–390. Springer, London (1993)
Martí-Oliet, N., Meseguer, J., Verdejo, A.: Towards a strategy language for Maude. In: Martí-Oliet, N. (ed.) Proceedings Fifth International Workshop on Rewriting Logic and its Applications, WRLA 2004, Barcelona, Spain, 27 March–4 April, 2004. Electronic Notes in Theoretical Computer Science, vol. 117, pp. 417–441. Elsevier, Amsterdam (2005)
Meng, J., Paulson, L.C.: Lightweight relevance filtering for machine-generated resolution problems. J. Appl. Logic 7(1), 41–57 (2009). doi:10.1016/j.jal.2007.07.004
Mosses, P.D. (ed.): CASL reference manual. In: LNCS, no. 2960. Springer, New York (2004)
Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL—a proof assistant for higher-order logic. In: LNCS, vol. 2283. Springer, New York (2002)
Paulson, L.C.: A higher-order implementation of rewriting. Sci. Comput. Program. 3(2), 119–149 (1983)
Reif, W., Schellhorn, G.: Theorem proving in large theories. In: Proc. FTP 97, pp. 119–124. Kluwer, Dordrecht (1998)
Richardson, J.: A semantics for proof plans with applications to interactive proof planning. In: Lecture Notes in Computer Science (2002)
Richardson, J., Smaill, A., Green, I.: System description: proof planning in higher-order logic with clam. In: 15th International Conference on Automated Deduction. Lecture Notes in Artificial Intelligence, vol. 1421, pp. 129–133. Springer, New York (1998)
Siekmann, J., Benzmüller, C., Autexier, S.: Computer supported mathematics with omega. J. Appl. Logic 4(4), 533–559 (2006) (Special issue on Mathematics Assistance Systems)
Trybulec, A., Blair, H.: Computer assisted reasoning with Mizar. In: Joshi, A. (ed.) Proceedings of the 9th Int. Joint Conference on Artifical Intelligence. M. Kaufmann (1985)
Urban, J.: MoMM—fast interreduction and retrieval in large libraries of formalized mathematics. Int. J. Artif. Intell. Tools 15(1), 109–130 (2006)
Visser, E.: Stratego: a language for program transformation based on rewriting strategies. System description of Stratego 0.5. In: Middeldorp, A. (ed.) Rewriting Techniques and Applications (RTA 2001). Lecture Notes in Computer Science, vol. 2051, pp. 357–361. Springer, New York (2001)
Wallen, L.: Automated proof search in non-classical logics: efficient matrix proof methods for modal and intuitionistic logics. Series in Artificial Intelligence. MIT, Cambridge (1990)
Weidenbach, C., Brahm, U., Hillenbrand, T., Keen, E., Theobalt, C., Topić, D.: SPASS version 2.0. In: Voronkov, A. (ed.) Automated Deduction—CADE-18. LNAI, no. 2392 , pp. 275–279. Springer, New York (2002)
Wenzel, M.: Isar—a generic interpretative approach to readable formal proof documents. In: Bertot, Y., Dowek, G., Hirschowitz, A., Paulin, C., Théry, L. (eds.) Theorem Proving in Higher Order Logics: TPHOLs’99. LNCS, vol. 1690, pp. 167–184. Springer, New York (1999)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Dietrich, D., Schulz, E. Crystal: Integrating Structured Queries into a Tactic Language. J Autom Reasoning 44, 79 (2010). https://doi.org/10.1007/s10817-009-9138-5
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s10817-009-9138-5