## Towards Practical Reflection for Formal Mathematics

### Cached

### Download Links

Citations: | 3 - 2 self |

### BibTeX

@MISC{Giese_towardspractical,

author = {Martin Giese and Bruno Buchberger},

title = {Towards Practical Reflection for Formal Mathematics},

year = {}

}

### OpenURL

### Abstract

Abstract. We describe a design for a system for mathematical theory exploration that can be extended by implementing new reasoners using the logical input language of the system. Such new reasoners can be applied like the built-in reasoners, and it is possible to reason about them, e.g. proving their soundness, within the system. This is achieved in a practical and attractive way by adding reflection, i.e. a representation mechanism for terms and formulae, to the system’s logical language, and some knowledge about these entities to the system’s basic reasoners. The approach has been evaluated using a prototypical implementation called Mini-Tma. It will be incorporated into the Theorema system. 1

### Citations

303 | N.: Lambda Calculus Notation with Nameless Dummies, a Tool for Automatic Formula Manipulation.; Indag
- Bruijn
- 1972
(Show Context)
Citation Context ... term induction, which is central for reasoning about logics, is not easily described. Hendriks has come to the same conclusion in his work on reflection for Coq [13]. Hendriks uses de Bruijn indices =-=[10]-=-, which would represent ∀ x p[x] by a term like ForAll[p[v1]], where v1 means the variable bound by the innermost binding operator, v2 would mean to look one level further out, etc. This representatio... |

302 |
Higher-order abstract syntax
- Pfenning, Elliot
- 1988
(Show Context)
Citation Context ...tors, i.e. quantifiers, lambda abstraction, etc. The dominant approaches are 1. higher-order abstract syntax, 2. de Bruijn indices, and 3. explicit representation. Higher-order abstract syntax (HOAS) =-=[17]-=- is often used to represent variable binding in logical frameworks and other systems built on higher-order logic or type theory. With HOAS, a formula ∀ x p[x] would be represented as ForAll[λ ξ p[ξ]].... |

232 |
The Mathematica Book
- Wolfram
- 1999
(Show Context)
Citation Context ...as the more conventional tasks of mathematical theory exploration. In this paper, we describe our approach as it has been implemented by the first author in a prototype called Mini-Tma, a Mathematica =-=[18]-=- program which does not share any of the code of the current Theorema implementation. Essentially the same approach will be followed in the upcoming new implementation of Theorema. The second author’s... |

77 |
Ein algorithmisches Kriterium für die Lösbarkeit eines algebraischen Gleichungssystems, Aequationes mathematicae 4
- Buchberger
- 1970
(Show Context)
Citation Context ...ccessively perform the following tasks within a single framework, using a common logical language and a single interface to the system: 1. define and prove theorems about the concept of Gröbner bases =-=[4]-=-, 2. implement an algorithm to compute Gröbner bases, 3. prove that the implementation is correct, 4. implement a new theorem prover for statements in geometry based on coordinatization, and which use... |

53 | Metatheory and reflection in theorem proving: A survey and critique
- Harrison
- 1995
(Show Context)
Citation Context ...ed symbols. Here, a possible solution is to fix the set of symbols for which unq axioms are required before proofs, as is done in ACL2. 7 Related Work John Harrison has written a very thorough survey =-=[11]-=- of reflection mechanisms in theorem proving systems, and most of the work reviewed there is in some way connected to ours. The most closely related approach is surely that of the NqThm and ACL2 syste... |

39 | An algorithmic criterion for the solvability of algebraic systems of equations 251 - Buchberger - 1998 |

31 |
The addition of bounded quantification and partial functions to a computational logic and its theorem prover
- Boyer, Moore
(Show Context)
Citation Context ... lemma eval[add-terms[cons[t, l]], β] = Plus[eval[t, β], eval[add-terms[l], β]] 6 Care needs to be taken when applying eval to terms containing eval, as has already been recognized by Boyer and Moore =-=[3]-=-.sis required. And of course, the associativity of Plus needs to known. Mini-Tma cannot prove (∗) with the term induction prover described in Sect. 4, since it is not capable of detecting the special ... |

30 | The Boyer-Moore theorem prover and its interactive enhancement
- Boyer, Kaufmann, et al.
- 1995
(Show Context)
Citation Context ...tics. Or, for a simplifier that simplifies t to t ′ , that t and t ′ have the same value with respect to the semantics. This approach has also been taken in the very successful NqThm and ACL2 systems =-=[2, 14]-=-. It solves the above problems, since it is a lot easier to axiomatize a model semantics for our logic, and the axiomatization is also very easy to use for an automated theorem prover. The knowledge b... |

16 | Towards self-verification of HOL Light
- Harrison
(Show Context)
Citation Context ... its beginnings, and its principal focus seems to be to prove theorems about logics, while our main goal is to increase the system’s reasoning power. Recent work on the self-verification of HOL Light =-=[12]-=- is of a different character. Here, the HOL Light system is not used to verify extensions of itself, but rather for the self-verification of the kernel of the system. Self-verification raises some fou... |

13 | Groebner Bases: Applications - Buchberger - 2002 |

11 | Predicate Logic with Sequence Variables and Sequence Function Symbols
- Kutsia, Buchberger
- 2004
(Show Context)
Citation Context ..., and made part of the logical language.sWe start from the logic previously employed in the Theorema system, namely an untyped higher-order predicate logic with sequence variables. Sequence variables =-=[16]-=- represent sequences of values and have proven to be very convenient for expressing statements about operations with variable arity. For instance, the operation app that appends two lists can be speci... |

8 | Implementing Reflection in Nuprl
- Barzilay
- 2006
(Show Context)
Citation Context ...but to our knowledge these are restricted to first-order logic, and meta-programmed provers cannot be used as part of a proof construction. There has also been some work on adding reflection to Nuprl =-=[1]-=-. This is still in its beginnings, and its principal focus seems to be to prove theorems about logics, while our main goal is to increase the system’s reasoning power. Recent work on the self-verifica... |

5 | Proof reflection in Coq
- Hendriks
(Show Context)
Citation Context ...fectively possible with HOAS, and also term induction, which is central for reasoning about logics, is not easily described. Hendriks has come to the same conclusion in his work on reflection for Coq =-=[13]-=-. Hendriks uses de Bruijn indices [10], which would represent ∀ x p[x] by a term like ForAll[p[v1]], where v1 means the variable bound by the innermost binding operator, v2 would mean to look one leve... |

4 | Verification Environment in Theorema
- Kovacs, Popov, et al.
- 2005
(Show Context)
Citation Context ...ny big difference between the various representations. 2.3 An Execution Mechanism Writing and verifying programs has always been part of the Theorema project’s view of mathematical theory exploration =-=[15]-=-. It is also important in the contextsof this paper, since we want users of the system to be able to define new reasoners, meaning programs that act on terms. In order to keep the system’s input langu... |

3 |
Clavel and José Meseguer. Reflection in conditional rewriting logic
- Manuel
(Show Context)
Citation Context ... has always supported quoting of programs and meta-programming, e.g. in macros. Amongst more modern languages, Maude should be mentioned for its practically employed reflectivescapabilities, see e.g. =-=[9]-=-. A quoting mechanism is part of the language, and it is used to define the ‘full’ Maude language in terms of a smaller basic language. However, this reflection is just used for programming, there is ... |

2 |
Temur Kutsia, Koji Nakagawa, Florina Piroi, Nikolaj Popov
- Buchberger, Craciun, et al.
- 2006
(Show Context)
Citation Context ...the system’s code, but it’s not available as part of the system’s knowledge. Following a proposal of Buchberger [5,6], and as part of an ongoing effort to redesign and reimplement the Theorema system =-=[7]-=-, we will extend that system’s capabilities in such a way that the definition of and the reasoning about new theorem proving methods is possible seamlessly through the same user interface as the more ... |

1 |
Lifting knowledge to the state of inferencing
- Buchberger
- 2004
(Show Context)
Citation Context ... way to prove the soundness of a newly written reasoner within the system. It’s part of the system’s code, but it’s not available as part of the system’s knowledge. Following a proposal of Buchberger =-=[5,6]-=-, and as part of an ongoing effort to redesign and reimplement the Theorema system [7], we will extend that system’s capabilities in such a way that the definition of and the reasoning about new theor... |

1 |
Proving by first and intermediate principles
- Buchberger
(Show Context)
Citation Context ... way to prove the soundness of a newly written reasoner within the system. It’s part of the system’s code, but it’s not available as part of the system’s knowledge. Following a proposal of Buchberger =-=[5,6]-=-, and as part of an ongoing effort to redesign and reimplement the Theorema system [7], we will extend that system’s capabilities in such a way that the definition of and the reasoning about new theor... |

1 |
Proving by first and intermediate principles, November 2
- Buchberger
- 2004
(Show Context)
Citation Context ... way to prove the soundness of a newly written reasoner within the system. It’s part of the system’s code, but it’s not available as part of the system’s knowledge. Following a proposal of Buchberger =-=[3,4]-=-, and as part of an ongoing effort to redesign and reimplement the Theorema system [5], we will extend that system’s capabilities in such a way that the definition of and the reasoning about new theor... |