# Theorema Project

### Project Description

The *Theorema* project aims at extending current computer algebra systems by facilities for supporting mathematical proving. The present early-prototype version of the *Theorema* software system is implemented in *Mathematica *. The system consists of a general higher-order predicate logic prover and a collection of special provers that call each other depending on the particular proof situations. The individual provers imitate the proof style of human mathematicians and produce human-readable proofs in natural language presented in nested cells. The special provers are intimately connected with the functors that build up the various mathematical domains.

The long-term goal of the project is to produce a complete system which supports the mathematician in creating interactive textbooks, i.e. books containing, besides the ordinary passive text, *active* text representing *algorithms* in executable format, as well as *proofs* which can be studied at various levels of detail, and whose routine parts can be automatically generated. This system will provide a uniform (logic and software) framework in which a working mathematician, without leaving the system, can get computer-support while looping through all phases of the mathematical problem solving cycle:

- the phase of
*specifying a problem*including the compilation of relevant knowledge and the definition of new concepts (predicates, functions) and auxiliary algorithms; - the phase of
*exploring*a given problem and creating ideas and conjectures by studying examples using the available knowledge and algorithms; - the phase of
*proving*or disproving conjectures and thereby increasing the relevant knowledge base; - the phase of
*programming*, i.e. transforming useful new and provenly correct mathematical knowledge into algorithms for solving the initial problem; - the phase of
*writing up one’s finding*in interactive mathematical documents.

### Project Lead

### Project Duration

01/01/1994 -## Members

## Bruno Buchberger

## Tudor Jebelean

## Teimuraz Kutsia

## Alexander Maletzky

## Nikolaj Popov

## Wolfgang Windsteiger

## Jakob Praher

## Software

The present prototype version of the Theorema software system is implemented in Mathematica . The system consists of a general higher-order predicate logic prover and a collection of special provers that call each other depending on the particular proof situations. ...

## Publications

### 2018

### Anti-Unification and Natural Language Processing

#### N. Amiridze, T. Kutsia

In: Fifth Workshop on Natural Language and Computer Science, NLCS’18, A. Asudeh, V. de Paiva, L. Moss (ed.), EasyChair preprints 203, pp. 1-12. 2018. [url] [pdf]**inproceedings**{RISC5707,

author = {N. Amiridze and T. Kutsia},

title = {{Anti-Unification and Natural Language Processing}},

booktitle = {{Fifth Workshop on Natural Language and Computer Science, NLCS’18}},

language = {english},

series = {EasyChair preprints},

number = {203},

pages = {1--12},

isbn_issn = { },

year = {2018},

editor = {A. Asudeh and V. de Paiva and L. Moss},

refereed = {yes},

length = {12},

url = {https://doi.org/10.29007/fkrh}

}

### Mechanical Synthesis of Sorting Algorithms for Binary Trees by Logic and Combinatorial Techniques

#### Isabela Dramnesc, Tudor Jebelean, Sorin Stratulat

Journal of Symbolic Computation 90, pp. 3-41. 2018. Elsevier, 07477171. [url]**article**{RISC5715,

author = {Isabela Dramnesc and Tudor Jebelean and Sorin Stratulat},

title = {{Mechanical Synthesis of Sorting Algorithms for Binary Trees by Logic and Combinatorial Techniques}},

language = {english},

journal = {Journal of Symbolic Computation},

volume = {90},

pages = {3--41},

publisher = {Elsevier},

isbn_issn = {07477171},

year = {2018},

refereed = {yes},

keywords = {algorithm synthesis ; automated reasoning ; natural--style proving},

length = {39},

url = {https://doi.org/10.1016/j.jsc.2018.04.002}

}

### Pattern-based calculi with finitary matching

#### Sandra Alves, Besik Dundua, Mário Florido, Temur Kutsia

Logic Journal of the IGPL 26(2), pp. 203-243. 2018. ISSN 1367-0751. [url]**article**{RISC5763,

author = {Sandra Alves and Besik Dundua and Mário Florido and Temur Kutsia},

title = {{Pattern-based calculi with finitary matching}},

language = {english},

journal = {Logic Journal of the IGPL},

volume = {26},

number = {2},

pages = {203--243},

isbn_issn = {ISSN 1367-0751},

year = {2018},

refereed = {yes},

length = {41},

url = {https://doi.org/10.1093/JIGPAL/jzx059}

}

### Experiments with Automatic Proofs in Elementary Analysis

#### T. Jebelean

Technical report no. 18-06 in RISC Report Series, Research Institute for Symbolic Computation (RISC), Johannes Kepler University Linz, Schloss Hagenberg, 4232 Hagenberg, Austria. April 2018. Work in progress. [pdf] [zip] [pdf]**techreport**{RISC5692,

author = {T. Jebelean},

title = {{Experiments with Automatic Proofs in Elementary Analysis}},

language = {english},

abstract = {Combining methods from satisfiability checking with methods from symbolic computation promises to solve challenging problems in various areas of theory and application. We look at the basically equivalent problem of proving statements directly in a non--clausal setting, when additional information on the underlying domain is available in form of specific properties and algorithms.We demonstrate on some concrete examples several heuristic techniques for the automation of natural--style proving of statements from elementary analysis. The purpose of this work in progress is to generate proofs similar to those produced by humans, by combining automated reasoning methods with techniques from computer algebra.Our techniques include: the S-decomposition method for formulae with alternating quantifiers, quantifier elimination by cylindrical algebraic decomposition, analysis of terms behavior in zero, bounding the bounds, rewriting of expressions involving absolute value, algebraic manipulations, and identification of equal terms under unknown functions.These techniques are being implemented in the {\em Theorema} system and are able to construct automatically natural--style proofs for numerous examples including: convergence of sequences, limits and continuity of functions, uniform continuity, and other.},

number = {18-06},

year = {2018},

month = {April},

keywords = {Satisfiability Checking, Natural-style Proofs, Symbolic Computation},

sponsor = {European project ``Satisfiability Checking and Symbolic Computation'' (H2020-FETOPN-2015-CSA 712689)},

length = {33},

type = {Work in progress},

type = {RISC Report Series},

institution = {Research Institute for Symbolic Computation (RISC), Johannes Kepler University Linz},

address = {Schloss Hagenberg, 4232 Hagenberg, Austria}

}

### Idempotent Generalization is Infinitary

#### David M. Cerna and Temur Kutsia

RISC. Technical report, RISC Report, 2018. [pdf]**techreport**{RISC5529,

author = {David M. Cerna and Temur Kutsia},

title = {{Idempotent Generalization is Infinitary}},

language = {english},

abstract = {Let §\mathbf{I}_{S}$ be an equational theory s.t. for each $f\in S$, $f(x,x)=x$. Such an equational theory is said to be {\em idempotent}. It is known that the anti-unification problem (AUP) $f(a,b) \triangleq g(a,b)$ modulo $\mathbf{I}_{\lbrace f,g \rbrace}$ admits infinitely many least-general generalizers (lggs)~\cite{LPottier1989}. We show that, modulo $\mathbf{I}_{\lbrace f\rbrace}$, $f(a,f(a,b)) \triangleq f(b,f(a,b))$ admits infinitely many lggs.},

year = {2018},

howpublished = {RISC Report},

institution = {RISC},

length = {1}

}

### Gröbner Bases of Modules and Faugère's F4 Algorithm in Isabelle/HOL

#### A. Maletzky, F. Immler

In: Intelligent Computer Mathematics (Proceedings of CICM 2018, Hagenberg, Austria, August 13-17), Florian Rabe and William Farmer and Grant Passmore and Abdou Youssef (ed.), Proceedings of CICM 2018, Lecture Notes in Computer Science 11006, pp. 178-193. 2018. Springer, ISBN 978-3-319-96811-7. The final publication is available at Springer via https://doi.org/10.1007/978-3-319-96812-4_16. [url]**inproceedings**{RISC5733,

author = {A. Maletzky and F. Immler},

title = {{Gröbner Bases of Modules and Faugère's F4 Algorithm in Isabelle/HOL}},

booktitle = {{Intelligent Computer Mathematics (Proceedings of CICM 2018, Hagenberg, Austria, August 13-17)}},

language = {english},

series = {Lecture Notes in Computer Science},

volume = {11006},

pages = {178--193},

publisher = {Springer},

isbn_issn = {ISBN 978-3-319-96811-7},

year = {2018},

note = {The final publication is available at Springer via https://doi.org/10.1007/978-3-319-96812-4_16},

editor = {Florian Rabe and William Farmer and Grant Passmore and Abdou Youssef},

refereed = {yes},

length = {16},

conferencename = {CICM 2018},

url = {https://doi.org/10.1007/978-3-319-96812-4_16}

}

### Gröbner Bases of Modules and Faugère's F4 Algorithm in Isabelle/HOL (extended version)

#### A. Maletzky, F. Immler

RISC, JKU Linz. Technical report, May 2018. arXiv:1805.00304 [cs.LO]. [url]**techreport**{RISC5734,

author = {A. Maletzky and F. Immler},

title = {{Gröbner Bases of Modules and Faugère's F4 Algorithm in Isabelle/HOL (extended version)}},

language = {english},

year = {2018},

month = {May},

note = {arXiv:1805.00304 [cs.LO]},

institution = {RISC, JKU Linz},

length = {28},

url = {https://arxiv.org/abs/1805.00304}

}

### Proximity-Based Generalization

#### Temur Kutsia, Cleo Pau

In: 32nd International Workshop on Unification, UNIF 2018, Mauricio Ayala-Rincon and Philippe Balbiani (ed.), pp. - . 2018. [pdf]**inproceedings**{RISC5713,

author = {Temur Kutsia and Cleo Pau},

title = {{Proximity-Based Generalization}},

booktitle = {{32nd International Workshop on Unification, UNIF 2018}},

language = {english},

pages = { -- },

isbn_issn = { },

year = {2018},

editor = {Mauricio Ayala-Rincon and Philippe Balbiani},

refereed = {yes},

length = {0}

}

### 2017

### Unranked Second-Order Anti-Unification

#### Alexander Baumgartner, Temur Kutsia

Information and Computation 255(2), pp. 262-286. 2017. ISSN: 0890-5401. [url]**article**{RISC5192,

author = {Alexander Baumgartner and Temur Kutsia},

title = {{Unranked Second-Order Anti-Unification}},

language = {english},

journal = {Information and Computation},

volume = {255},

number = {2},

pages = {262--286},

isbn_issn = {ISSN: 0890-5401},

year = {2017},

refereed = {yes},

length = {25},

url = {http://doi.org/10.1016/j.ic.2017.01.005}

}

### Higher-Order Pattern Anti-Unification in Linear Time

#### Alexander Baumgartner, Temur Kutsia, Jordi Levy, Mateu Villaret

Journal of Automated Reasoning 58(2), pp. 293-310. 2017. ISSN 0168-7433. [url]**article**{RISC5337,

author = {Alexander Baumgartner and Temur Kutsia and Jordi Levy and Mateu Villaret},

title = {{Higher-Order Pattern Anti-Unification in Linear Time}},

language = {english},

journal = { Journal of Automated Reasoning},

volume = {58},

number = {2},

pages = {293--310},

isbn_issn = {ISSN 0168-7433},

year = {2017},

refereed = {yes},

length = {18},

url = {http://dx.doi.org/10.1007/s10817-016-9383-3}

}

### Gröbner Bases Computation by Triangularizing Macaulay Matrices

#### Bruno Buchberger

Advanced Studies in Pure Mathematics (The 50th Anniversary of Gröbner Bases) 75, pp. 1-9. 2017. Mathematical Society of Japan, 0.**article**{RISC5586,

author = {Bruno Buchberger},

title = {{Gröbner Bases Computation by Triangularizing Macaulay Matrices}},

language = {english},

journal = {Advanced Studies in Pure Mathematics (The 50th Anniversary of Gröbner Bases)},

volume = {75},

pages = {1--9},

publisher = {Mathematical Society of Japan},

isbn_issn = {0},

year = {2017},

refereed = {no},

length = {9}

}

### Satisfiability Checking and Symbolic Computation

#### Abraham Erika , Abbott John , Becker Bernd , Bigatti Anna Maria , Brain Martin , Buchberger Bruno , Cimatti Alessandro , Davenport James , England Matthew , Fontaine Pascal , Forrest Stephen , Griggio Alberto , Kröning Daniel , Seiler Werner M. , Sturm

ACM Communications in Computer Algebra 50(4), pp. 145-147. 2017. 0.**article**{RISC5587,

author = { Abraham Erika and Abbott John and Becker Bernd and Bigatti Anna Maria and Brain Martin and Buchberger Bruno and Cimatti Alessandro and Davenport James and England Matthew and Fontaine Pascal and Forrest Stephen and Griggio Alberto and Kröning Daniel and Seiler Werner M. and Sturm },

title = {{Satisfiability Checking and Symbolic Computation}},

language = {english},

journal = {ACM Communications in Computer Algebra},

volume = {50},

number = {4},

pages = {145--147},

isbn_issn = {0},

year = {2017},

refereed = {no},

length = {3}

}

### An overview of PρLog

#### Besik Dundua, Temur Kutsia, Klaus Reisenberger-Hagmayr

In: Proceedings of the 19th International Symposium on Practical Aspects of Declarative Languages, PADL 2017, Y. Lierler and W. Taha (ed.), Lecture Notes in Computer Science 10137, pp. 34-49. 2017. Springer, ISBN 978-3-319-51675-2. [pdf]**inproceedings**{RISC5416,

author = {Besik Dundua and Temur Kutsia and Klaus Reisenberger-Hagmayr},

title = {{An overview of PρLog}},

booktitle = {{ Proceedings of the 19th International Symposium on Practical Aspects of Declarative Languages, PADL 2017}},

language = {english},

series = {Lecture Notes in Computer Science},

volume = {10137},

pages = {34--49},

publisher = {Springer},

isbn_issn = {ISBN 978-3-319-51675-2},

year = {2017},

editor = {Y. Lierler and W. Taha},

refereed = {yes},

length = {16}

}

### Rewriting Logic from a ρLog Point of View

#### Mauricio Ayala-Rincon, Besik Dundua, Temur Kutsia, Mircea Marin

In: Proceedings of the 12th Workshop on Logical and Semantic Frameworks with Applications (LSFA 2017) , Sandra Alves and Renata Wasserman (ed.), pp. -. 2017. [pdf]**inproceedings**{RISC5473,

author = {Mauricio Ayala-Rincon and Besik Dundua and Temur Kutsia and Mircea Marin},

title = {{Rewriting Logic from a ρLog Point of View}},

booktitle = {{Proceedings of the 12th Workshop on Logical and Semantic Frameworks with Applications (LSFA 2017) }},

language = {english},

pages = {--},

isbn_issn = { },

year = {2017},

editor = {Sandra Alves and Renata Wasserman},

refereed = {yes},

length = {16}

}

### Pattern-Based Calculi with Finitary Matching

#### Sandra Alves, Besik Dundua, Mario Florido, Temur Kutsia

Logic Journal of the IGPL, pp. -. 2017. Oxford University Press, ISSN 1367-0751. To appear. [url]**article**{RISC5517,

author = {Sandra Alves and Besik Dundua and Mario Florido and Temur Kutsia},

title = {{Pattern-Based Calculi with Finitary Matching}},

language = {english},

journal = {Logic Journal of the IGPL},

pages = {--},

publisher = {Oxford University Press},

isbn_issn = {ISSN 1367-0751},

year = {2017},

note = {To appear},

refereed = {yes},

length = {41},

url = {https://doi.org/10.1093/JIGPAL/jzx059}

}

### Adapting Cylindrical Algebraic Decomposition for Proof Specific Tasks

#### E. Abraham, T. Jebelean

In: ICAI 2017: 10th International Conference on Applied Informatics, G. Kusper (ed.), Proceedings of ICAI 2017: 10th International Conference on Applied Informatics, pp. 0-0. 2017. ISBN 0. In print. [url] [pdf]**inproceedings**{RISC5546,

author = {E. Abraham and T. Jebelean},

title = {{Adapting Cylindrical Algebraic Decomposition for Proof Specific Tasks}},

booktitle = {{ICAI 2017: 10th International Conference on Applied Informatics}},

language = {English},

abstract = {We develop a case study on using quantifier elimination and cylindrical algebraic decomposition for the purpose of finding specific terms for the automation of proving mathematical properties in elementary analysis.Real--life proofs in specific mathematical domains are difficult to automate because of the high number of assumptions necessary for the prover to succeed. In particular, in elementary analysis, it is allmost impossible to find automatically the appropriate terms for the instantiation of universal assumptions and for witnessing the existential goals. We aim at developing such proofs in natural style, in the frame of the{\em Theorema} system.Finding such terms is actually possible by using quantifier elimination (QE) based on cylindrical algebraic decomposition (CAD). However, the current straightforward approach lacks in efficiency, because several redundant calls may be necessary, and because the nature of the problem is slightly different.We study some natural--style proofs, the necessary special terms, and the corresponding usage of the QE/CAD, and identify specific techniques for adapting these algorithms in order to increase their efficiency.The experiments are performed partially in {\em Mathematica} and partially in {\tt SMT-RAT}, the latter used as ``white--box'', which allows to inspect the intermediate results and to adapt certain parts of the algorithms.},

pages = {0--0},

isbn_issn = {ISBN 0},

year = {2017},

note = {In print},

editor = {G. Kusper},

refereed = {yes},

length = {0},

conferencename = {ICAI 2017: 10th International Conference on Applied Informatics},

url = {https://icai.uni-eszterhazy.hu/}

}

### Nominal Unification of Higher Order Expressions with Recursive Let

#### Manfred Schmidt-Schauss, Temur Kutsia, Jordy Levy, Mateu Villaret

In: Proceedings of the 26th International Symposium on Logic-Based Program Synthesis and Transformation, LOPSTR 2016, M. Hermenegildo and P. Lopez-Garcia (ed.), LNCS 10184, pp. 328-344. 2017. Springer, ISBN 978-3-319-63138-7. [pdf]**inproceedings**{RISC5438,

author = {Manfred Schmidt-Schauss and Temur Kutsia and Jordy Levy and Mateu Villaret},

title = {{Nominal Unification of Higher Order Expressions with Recursive Let}},

booktitle = {{ Proceedings of the 26th International Symposium on Logic-Based Program Synthesis and Transformation, LOPSTR 2016}},

language = {english},

series = {LNCS},

volume = {10184},

pages = {328--344},

publisher = {Springer},

isbn_issn = {ISBN 978-3-319-63138-7},

year = {2017},

editor = {M. Hermenegildo and P. Lopez-Garcia},

refereed = {yes},

length = {17}

}

### Mathematical Aspects of Computer and Information Sciences

#### Johannes Blömer, Ilias Kotsireas, Temur Kutsia, Dimitris E. Simos, editors

Lecture Notes in Computer Science 10693, 2017. Springer, ISBN 978-3-319-72452-2. [url]**booklet**{RISC5518,

author = {Johannes Blömer and Ilias Kotsireas and Temur Kutsia and Dimitris E. Simos and editors},

title = {{Mathematical Aspects of Computer and Information Sciences}},

language = {english},

series = {Lecture Notes in Computer Science},

volume = {10693},

publisher = {Springer},

isbn_issn = {ISBN 978-3-319-72452-2},

year = {2017},

edition = { },

translation = {0},

length = {462},

url = {https://doi.org/10.1007/978-3-319-72453-9}

}

### The Formalization of Vickrey Auctions: A Comparison of Two Approaches in Isabelle and Theorema

#### A. Maletzky, W. Windsteiger

In: Intelligent Computer Mathematics: 10th International Conference, CICM 2017, Edinburgh, UK, July 17-21, H. Geuvers, M. England, O. Hasan, F. Rabe, O. Teschke (ed.), Lecture Notes in Computer Science 10383, pp. 25-39. 2017. Springer, ISBN 978-3-319-62075-6. doi 10.1007/978-3-319-62075-6_3. [url] [pdf]**inproceedings**{RISC4536,

author = {A. Maletzky and W. Windsteiger},

title = {{The Formalization of Vickrey Auctions: A Comparison of Two Approaches in Isabelle and Theorema}},

booktitle = {{Intelligent Computer Mathematics: 10th International Conference, CICM 2017, Edinburgh, UK, July 17-21}},

language = {english},

series = {Lecture Notes in Computer Science},

volume = {10383},

pages = {25--39},

publisher = {Springer},

isbn_issn = {ISBN 978-3-319-62075-6},

year = {2017},

note = {doi 10.1007/978-3-319-62075-6_3},

editor = {H. Geuvers and M. England and O. Hasan and F. Rabe and O. Teschke},

refereed = {yes},

length = {15},

url = {https://link.springer.com/chapter/10.1007/978-3-319-62075-6_3}

}

### A New Reasoning Framework for Theorema 2.0

#### A. Maletzky

RISC, Johannes Kepler University Linz. Technical report, May 2017. Accepted as work-in-progress paper at CICM 2017 (10th Conference on Intelligent Computer Mathematics, Edinburgh, UK, July 17-21). [pdf]**techreport**{RISC5461,

author = {A. Maletzky},

title = {{A New Reasoning Framework for Theorema 2.0}},

language = {english},

year = {2017},

month = {May},

note = {Accepted as work-in-progress paper at CICM 2017 (10th Conference on Intelligent Computer Mathematics, Edinburgh, UK, July 17-21)},

institution = {RISC, Johannes Kepler University Linz},

length = {15}

}