|
Dr Hélène
Kirchner is a permanent researcher (Directeur de
Recherche) at CNRS. Since January 2001 she has been the Director of
LORIA and INRIA-Lorraine, a joint research center between CNRS,
INRIA, and Nancy Universities. In her Habilitation Thesis she
studied completion procedures for term rewriting systems modulo sets
of equations, and applications to automated deduction. As
post-doctoral fellow at Stanford University she contributed to the
design and implementation of the algebraic programming language
OBJ-3. Back in France her research interests then turned to
constraint solving, combinations of solvers, and theorem proving
with constraints, where she made several theoretical contributions.
The project team Protheo, which she led 1997-2000, has developed the
ELAN software, an environment for specifying and prototyping
deduction systems in a language based on rewrite rules controlled by
strategies, backed up by rewriting logic and rewriting calculus. Her
current research interests are the study of non-deterministic
rewriting and strategies, termination proof under strategies,
modelisation with rule-based languages, and the combination of proof
assistants with rewrite based systems.
Invited Talk: Proof Search and Proof Check for
Equational and Inductive Theorems
This talk presents an on-going research project on theoretical and
practical issues of combining rewriting based automated theorem
proving and user-guided proof development, with the strong constraint
of safe cooperation of both. In practice, we instantiate the
theoretical study on the COQ proof assistant and the ELAN
rewriting based system. A first approach of cooperation between COQ
and ELAN is described, where COQ delegates equational proofs by
rewriting to ELAN, builds a proof term while doing the
proof. This proof term is then returned to COQ and checked. In the
context of proof by structural induction performed by COQ, this
technique is currently used in experiments for proving both the base case
and the induction case by rewriting. However proofs by noetherian induction
performed by rewriting are much more powerful than structural
induction.
A second approach, which is yet on-going work, is then
presented. Based on the description at the proof theoretical level of
proof by noetherian induction provided by the deduction modulo
framework, we show how to use narrowing in order to perform proof
search for an inductive proof by rewriting, and how to build a proof
term that can be checked by COQ. In order to check the proof,
additional proof obligations to justify the noetherian induction
principle in COQ are also needed. The talks thus presents different
ingredients (especially rewriting and inductive proof techniques,
proof term construction in rewriting calculus, and deduction modulo)
that can contribute to the design of a development framework for
certified and modular software.
|
| Greg Nelson
|
|
Dr Greg Nelson received his Ph.D. in Computer Science from Stanford
University in 1980, where he worked under the supervision of Bob
Tarjan on program verification and algorithms for automatic theorem
proving. He received his B.A degree in Mathematics from Harvard
College in 1976. As an undergraduate at Harvard, he invented a
method of combining decision procedures for different logical
theories into a decision procedure for the combination of the
theories (often called the "Nelson-Oppen method") that has become
influential in the automatic theorem-proving community. He was a
member of the committee that designed the programming language
Modula-3, and was the author of the Juno constraint-based graphics
system at the Computer Science Laboratory of the Xerox Palo Alto
Research Center and one of the authors of its successor Juno-2. He
has taught computing at Princeton University, and is currently a
Principal Member of the Technical Staff at Hewlett-Packard Company's
Systems Research Center.
Invited Talk: Reasoning About Quantifiers by Matching
in the E-graph
The talk will describe the method used for reasoning about
quantifiers in the Simplify theorem-prover, which is the reasoning engine
inside the Extended Static Checkers built for Java and for Modula-3 at
the DEC/Compaq/HP Systems Research Center. The essence of the method
is pattern-based heuristic instantiation. The two main novelties are
(1) because matching is performed in the E-graph instead of in an
ordinary term DAG, the prover makes better use of equality information,
and (2) two E-graph specific performance optimizations will be
described, the "mod-time optimization" and the "pattern-elements
optimization".
| |