A Rational Reconstruction of A System For Experimental Mathematics
A Rational Reconstruction of A System For Experimental Mathematics
A Rational Reconstruction of A System For Experimental Mathematics
Experimental Mathematics
1 Introduction
Over the last decade several environments and formalisms for the combination
and integration of mathematical software systems [2, 15] have been proposed.
Many of these systems aim at a traditional automated theorem proving ap-
proach, in which a given conjecture is to be proved or refuted by the cooperation
of different reasoning engines. However, they offer little support for experimental
mathematics in which new conjectures are constructed by an interleaved process
of model computation, model inspection, property conjecture and verification.
And while for example the Theorema system [4] supports many of these ac-
tivities, there are currently no systems available that provide, in an easy to use
environment, the flexible combination of diverse reasoning systems in a plug-and-
play fashion via a high level specification of experiments, despite some previous
research in that direction [1, 3].
[8, 14] presents an integration of more than a dozen different reasoning systems
first order theorem provers, SAT solvers, SMT solvers, model generators, com-
puter algebra, and machine learning systemsin a general bootstrapping algo-
rithm to generate novel theorems in the specialised algebraic domain of quasi-
groups and loops. While the integration leads to provably correct results, the
2 Carette, Farmer, Sorge
integration itself was achieved in an ad-hoc manner, i.e., systems were combined
and recombined in an experimental fashion with a set of custom-built bridges
that not only perform syntax translations but also certain filtering functions.
In this paper we report on a rational reconstruction of an interesting sub-
process of the bootstrapping algorithm, namely the generation of isotopy in-
variants (presented in Sec. 2), using the framework for trustable communication
between mathematics systems that was put forth in [6]. It employs the con-
cept of biform theories (Sec. 3) that enables the combined formalisation of the
axiomatic and algorithmic theories behind the generation process. It turns out
that it is surprisingly difficult to separate the syntactic, semantic, and algorith-
mic level of the current implementation. We present the formalisation in terms
of the necessary semantic and syntactic concepts in Sec. 4 and of biform theories
describing the actual computations in Sec. 5. The aim of this work is to expose
the general principles behind the combination and communications of the single
systems. It is currently only a purely theoretical reconstruction of the current
implementation, and we do not have or even plan an implementation of the pro-
cess in the framework of biform theories. However, the work should ultimately be
used in the design of a flexible environment for experimental mathematics that
enables a user to specify complex experiments on a high level without the need
of detailed knowledge of the underlying logical relations and the particularities
of the integrated systems.
Note that, as in [6], we abstract out the details of the idiosyncratic syntax
of each of the systems. We use a uniform abstract syntax (in this case, we need
4 separate languages, each embedded in the other) for the specification. This
allows us to abstract out the tedious engineering of transformations in and out
of the actual systems. On the other hand, any transformation beyond trivial
parsing and pretty-printing is explicitly specified.
The specification we present involves (at least) 3 levels of mathematical dis-
course: using the language of mathematics, we are specifying (syntactically) the
semantics of a computer system which manipulates (the syntax of) mathematical
theories, which are themselves inhabited by mathematical objects represented
syntactically. Each level also possesses semantic models, which is ultimately what
we want, but for computer manipulation, must be handled syntactically. Sepa-
rating these languages cleanly is a difficult task as the reader will soon witness.
2 Problem
The particular problem we are concerned with is the process of generating isotopy
invariants for loops, which is part of the overall classification procedure presented
in [14]. We give a brief, high level description of the procedure here. The more
formal, mathematical details and definitions are presented in Sec. 4.
A loop is a quasigroup with identity, i.e., an algebraic structure (L, ) sat-
isfying the following two axioms: a, b. (x.x a = b) (y.a y = b) and
x.x e = e x = x. We say two loops (L, ) and (M, ) are isotopic to each
otheror L is an isotope of M if there are bijective mappings , , from
Rational Reconstruction 3
the general bootstrapping algorithm is not the subject of the paper. For more
details and results of the classification of quasigroups and loops with respect to
both isomorphism and isotopism we refer the reader to [8, 14].
3 Biform Theories
The notion of a biform theory was introduced in [13] as the basis for ffmm,
a Formal Framework for Managing Mathematics. Informally, a biform theory
is simultaneously an axiomatic and an algorithmic theory. We present here a
formulation of a biform theory that is simpler than the one given in [13].
input expressions and the value of the resulting output expression. Let inst(R)
be the set of instances of M . M can often be conveniently expressed as a formula
schema.
Example 4. Let R = (, M ) where:
1. = (,
) is the transformer in LF given in Example 1.
2. M is the formula schema A (A) where A is a formula of LF .
If A is the formula p(c) x.q(x) (where c is a constant) and the result of
applying to (A) is x.p(c) q(x), then (p(c) x.q(x)) (x.p(c) q(x)) is
the instance of M with respect to (A). 2
Example 5. Let R = (, M ) where:
1. = (, ) is the transformer in LF given in Example 2.
2. M is the formula schema (x = t A) (t, x, A) where t is a term, x is a
variable, and A is a formula of LF and t is free for x in A.
If t is a term, x is a variable, and A is f (x, y) = g(x), then (x = t f (x, y) =
g(x)) f (t, y) = g(t) is the instance of M with respect to (t, x, A). 2
Example 6. Let R = (, M ) where:
1. = (, ) is the transformer in the language L of the theory T given in
Example 3.
2. M is the formula schema derivative(E) = (E) where E is of type real real.
derivative is an expression of L of type (real real) (real real) that
maps a function to its derivative. M thus asserts that the derivative of the
function denoted by E is the function denoted by (E).
If E is x : real.x2 , then derivative(x : real.x2 ) = (x : real.2 x) is the instance of
M with respect to (E). 2
For the sake of convenience, we will view a formula A of L as a (transformer-
less) rule in L and assume that trans(A) is undefined, mean(A) = A, and
inst(A) = {A}.
4 Definitions
We now render the problem from Sec 2 precisely by giving the relevant formal
definitions. To facilitate the formal specification as biform theories in Sec 5 we
painstakingly distinguish between the semantics of the mathematical concepts,
the languages necessary to express them, and the purely syntactic expression.
Definition 2 Let G be a loop with binary operation , then we can define two
additional binary operations / and \ by
1. x, y G.x (x\y) = y and x, y G.x\(x y) = y
2. x, y G.(y/x) x = y and x, y G.(y x)/x = y
Definition 3 Let G, H be two loops with respective binary operation and .
We say G is isotopic to H if there are bijective mappings , , from G to H
such that for all x, y G, (x) (y) = (x y) holds.
Definition 4 Let G be a loop and let P be a property that holds for G. We call
P an isotopy invariant if P is preserved under the isotopy mapping (i.e., if P
holds for G than it also holds for all its isotopes).
Definition 5 Let G be a loop with binary operation . w is a word of G if it is a
combination of elements of G with respect to the loop operation . Let w1 , w2 be
two words in G, then w1 = w2 defines a loop identity if it holds for all elements
of G.
Definition 6 Let G be a loop with binary operations , \, /. Given a word w in
G, we define its corresponding derived word w by
1. if w = x, x G, then w = x;
2. if w = u v, then w = (u/y) (z\v), where u, v, y, z G.
Given a loop identity w1 = w2 of G, we define its corresponding derived identity
as w1 = w2 .
Definition 7 Let G be a loop with binary operations , \, / and w1 = w2 be a
derived identity in G. Then w1 = w2 is a universal identity if it is an isotopy
invariant.
4.2 Languages
In order to express the definitions of the syntactic concepts we give the necessary
languages by stepwise extending the basic language of first order logic with
equality (FOL+EQ). This will later enable us to define biform theories with
minimal languages. Generally, we need a fair bit more machinery to define our
various meaning functions; thus we will freely use Simple Type Theory (STT)
[7, 10] as our general environment.
8 Carette, Farmer, Sorge
made the presentation too opaque. We also need to represent a finite domain
syntactically. But this essentially amounts to creating n unique names.
We can then continue thus, for all the various concepts defined semantically in
the previous section, which we use syntactically later (like bijective). We should
also define the full syntax for a language of proofs (as the language for the
output of one of our intermediate transformers below), but since the actual
implementation ignores these proofs, it suffices to posit that this language exists.
5 Specification
We can view the generation of isotopy invariants from derived identities and their
selection as possible discriminants for loops of a given size n as a sequence of
single computational processes as displayed in Fig. 2. Each process accomplishes
a different function in the overall computational process, e.g., is a source of
equations, transforms expressions, or filters with respect to different criteria.
For each module, we have a background (biform) theory that expresses the
language and axioms necessary to describe the rules (and thus the inputs and
outputs) encapsulated in that module. Using appropriate translations and inter-
pretations, we can set up a communication channel (a connection in the language
of [6]). We give detailed formal specifications for each process and their commu-
nications.
We can also give a specification for the global problem for generating uni-
versal identities in general, which corresponds to the dashed box in Fig. 2. This
results in a transformer that operates on a more abstract level. We start by giv-
ing the formal specification for it, before going into the details of the component
processes.
Concretely, for the remainder we let K be the general logic based on STT
as general language. We then define the biform theory for the overall process
consisting as axiomatic theory Taxm = (L, ) and algorithmic theory Talg =
(L, ), where L = STT, contains all axioms defined in 4.1, and contains
one transformer = (, ).
The first step generates a set of identities. The language of the biform theory
is L = Loop and the axiomatic theory is Taxm = (L, {}). We do not need any
axioms as the computation of this module is only a generation of constructs in our
language and, therefore, not based on any logical consequences. In Talg = (L, ),
contains one transformer = (, ).
Given the transformer for general model generation, we now define the actual
filter operation as:
This step rewrites loop identities to derived identities. The language of the biform
theory is L = Loop and the axiomatic theory is Taxm = (L, ) where contains
the axioms given in Definitions 1, 2, and 6. In Talg = (L, ), contains one
transformer = (, ).
Similar to the specification of the filter in Sec. 5.2 this process requires the
combination of two transformers. One for the general proving process and one
that performs the actual filtering.
We define the biform theory for L = STT, with Loop as a distinct sub-
language, Taxm = (L, ), where contains all axioms defined in 4.1, and Talg
containing two transformers: 1 = (1 , 1 ) specifying the computation of the
theorem prover and 2 = (2 , 2 ) specifying the filtering operation.
Here the predicate P roves checks the correctness of the derivation. The formal-
isation of this predicate depends on the calculus of the integrated prover and
is generally very lengthy to formalise. Since we are not interested in examining
proofs but only their existence at this point, we do not go into any detail here.
Given the transformer for theorem proving, we now define the actual filter
operation as:
Observe that the Subst is the symbol substitution transformer already used at
the beginning of this section.
The result of this last transformer, the set of syntactic universal identities,
can now be stored for later use. Choosing from this store is again achieved
with a filter that uses model generation, which is similar to the transformer
Filter Identities above. Due to lack of space we omit the detailed formalisa-
tion of these processes here.
6 Conclusions
References
1. A. Armando and S. Ranise. From integrated reasoning specialists to plug-and-
play reasoning components. In Calmet and Plaza [5], pages 4254.
2. A. Armando and D. Zini. Towards Interoperable Mechanized Reasoning Systems:
the Logic Broker Architecture. In AI*IA Notizie Anno XIII (2000) vol. 3, pages
7075, Parma, Italy, 2000.
3. P. G. Bertoli, J. Calmet, F. Giunchiglia, and K. Homann. Specification and Inte-
gration of Theorem Provers and Computer Algebra Systems. In Calmet and Plaza
[5], pages 94106.
4. B. Buchberger, A. Craciun, T. Jebelean, L. Kovacs, T. Kutsia, K. Nakagawa,
F. Piroi, N. Popov, J. Robu, M. Rosenkranz, and W. Windsteiger. Theorema: To-
wards computer-aided mathematical theory exploration. Journal of Applied Logic,
4:470504, 2006.
5. J. Calmet and J. Plaza, editors. Proc. of AISC-98, volume 1476 of LNAI. Springer
Verlag, 1998.
6. J. Carette, W. M. Farmer, and J. Wajs. Trustable communication between math-
ematical systems. In Proc. of Calculemus 2003, pages 5868, 2003.
7. A. Church. A Formulation of the Simple Theory of Types. Journal of Symbolic
Logic, 5:5668, 1940.
8. S. Colton, A. Meier, V. Sorge, and R. McCasland. Automatic generation of clas-
sification theorems for finite algebras. In Proc. of IJCAR 2004, volume 3097 of
LNAI, pages 400414. Springer Verlag, 2004.
9. E. Falconer. Isotopy Invariants in Quasigroups. Transactions of the American
Mathematical Society, 151(2):511526, 1970.
10. W. M. Farmer. STMM: A set theory for mechanized mathematics. J. Autom.
Reasoning, 26(3):269289, 2001.
11. W. M. Farmer. Biform theories in Chiron. In M. Kauers and W. Windsteiger,
editors, Towards Mechanized Mathematical Assistants, LNAI. Springer, 2007 (this
volume).
12. W. M. Farmer and M. von Mohrenschildt. Transformers for symbolic computation
and formal deduction. In S. Colton, U. Martin, and V. Sorge, editors, CADE-17
Workshop on the Role of Automated Deduction in Mathematics, pages 3645, 2000.
13. W. M. Farmer and M. von Mohrenschildt. An overview of a formal framework for
managing mathematics. Annals of Mathematics and Artificial Intelligence, 38:165
191, 2003.
14. V. Sorge, A. Meier, R. McCasland, and S. Colton. Automatic construction and
verification of isotopy invariants. In Proc. of IJCAR 2006, volume 4130 of LNAI,
pages 3651. Springer Verlag, 2006.
15. J. Zimmer and M. Kohlhase. System Description: The MathWeb Software Bus for
Distributed Mathematical Reasoning. In Proc. of CADE-18, 2002.