Results 1  10
of
13
Towards the Automated Synthesis of a Gröbner Bases Algorithm
, 2004
"... We discuss the question of whether the central result of algorithmic Gr obner bases theory, namely the notion of Spolynomials together with the algorithm for constructing Gr obner bases using Spolynomials, can be obtained by "artificial intelligence", i.e. a systematic (algorithmic) algorithm ..."
Abstract

Cited by 8 (5 self)
 Add to MetaCart
We discuss the question of whether the central result of algorithmic Gr obner bases theory, namely the notion of Spolynomials together with the algorithm for constructing Gr obner bases using Spolynomials, can be obtained by "artificial intelligence", i.e. a systematic (algorithmic) algorithm synthesis method. We present the "lazy thinking" method for theorem and algorithm invention and apply it to the "critical pair / completion" algorithm scheme. We present a road map that demonstrates that, with this approach, the automated synthesis of the author's Gr obner bases algorithm is possible. Still, significant technical work will be necessary to improve the current theorem provers, in particular the ones in the Theorema system, so that the road map can be transformed into a completely computerized process.
Algorithm Synthesis by Lazy Thinking: Using Problem Schemes
 In [66
, 2004
"... Recently, as part of a general formal (i.e. logic based) methodology for mathematical knowledge management we also introduced a method for the automated synthesis of correct algorithms, which we called the lazy thinking method. For a given concrete problem specification (in predicate logic), the ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
Recently, as part of a general formal (i.e. logic based) methodology for mathematical knowledge management we also introduced a method for the automated synthesis of correct algorithms, which we called the lazy thinking method. For a given concrete problem specification (in predicate logic), the method tries out various algorithm schemes and derives specifications for the subalgorithms in the algorithm scheme.
Proof Based Synthesis of Sorting Algorithms Authors:
"... July, 2010We present some case studies in constructive synthesis of sorting algorithms. In order to synthesize some algorithms on tuples (like e. g. insertionsort, mergesort) we use an approach based on proving. Namely, we start from the specification of the problem (input and output condition) an ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
July, 2010We present some case studies in constructive synthesis of sorting algorithms. In order to synthesize some algorithms on tuples (like e. g. insertionsort, mergesort) we use an approach based on proving. Namely, we start from the specification of the problem (input and output condition) and we construct an inductive proof of the fact that for each input there exists a solution which satisfies the output condition. The problem will be reduced into smaller and smaller problems, the method will be applied like in a ”cascade” and finally the problem is so simple that the corresponding algorithm (function) already exists in the knowledge. The algorithm can be then extracted immediately from the proof. These experiments are paralleled with the exploration of the appropriate theory of tuples. The purpose of these experiments is multifold: to construct the appropriate knowledge base necessary for this type of proofs, to find the natural deduction inference rules and the necessary strategies for their application, and finally to implement the corresponding provers in the frame of the Theorema system. The novel specific feature of our approach is applying this method like in a ”cascade”
A Case Study in Systematic Theory Exploration: Natural Numbers 1
"... In this paper, we present a case study of computer supported exploration of the theory of natural numbers, using a theory exploration model based on knowledge schemes, proposed by Bruno Buchberger. We illustrate with examples from the exploration: (i) the invention of new concepts (functions, predic ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
In this paper, we present a case study of computer supported exploration of the theory of natural numbers, using a theory exploration model based on knowledge schemes, proposed by Bruno Buchberger. We illustrate with examples from the exploration: (i) the invention of new concepts (functions, predicates) in the theory, using definition knowledge schemes, (ii) the invention of new propositions, using proposition schemes, (iii) the invention of problems, using algorithm knowledge schemes, (iv) the introduction of new reasoning rules, by lifting knowledge to the inference level (or using inference schemes), after their correctness was proved. In particular, we apply the schemebased model to notions from the natural numbers theory, such as: function symbols (addition, multiplication, exponentiation, predecessor, subtraction, quotient, remainder, greatest common divisor), predicate symbols (weak lessequal, strict lessequal, divides, proper divides, isprime), propositions about these notions (such as: quotientremainder decomposition theorem, prime decomposition theorem), illustrating how the model can lead to the systematic
Case Studies in Systematic Exploration of Tuple Theory
, 2010
"... Abstract. We illustrate with concrete examples the systematic exploration of Tuple Theory in a bottomup and topdown way. In the bottomup exploration we start from two axioms, add new notions and in this way we build the theory, check all the new notions introduced and prove some of them by the ne ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
Abstract. We illustrate with concrete examples the systematic exploration of Tuple Theory in a bottomup and topdown way. In the bottomup exploration we start from two axioms, add new notions and in this way we build the theory, check all the new notions introduced and prove some of them by the new prover which we created in the TH∃OREM ∀ system. In order to synthesize some algorithms on tuples (like e. g. insertionsort) we use an approach based on proving. Namely, we start from the specification of the problem (input and output condition) and we construct an inductive proof of the fact that for each input there exists a solution which satisfies the output condition. The problem will be reduced to smaller problems, the method will be applied like in a ”cascade” and finally the problem is so simple that the corresponding algorithm (function) already exists in the knowledge. The algorithm can be then extracted immediately from the proof. We present an experiment on synthesis of the insertionsort algorithm on tuples, based on the proof existence of the solution. This experiment is paralleled with the construction (exploration) of the appropriate theory of tuples. The main purpose of this research is to concretely construct examples of theories and to reveal the typical activities which occur in theory exploration, in the context of a specific application – in this case algorithm synthesis by proving. 1
Formal mathematical theory exploration in theorema (4 lectures
 Invited talk at Summer School on Theoretical Computer Science
, 2005
"... We consider the entire process of mathematical theory exploration: invention of mathematical concepts (axioms and definitions), consistency check for axioms, invention and proof of mathematical propositions, invention of mathematical problems, invention and verification of methods (in particular alg ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
We consider the entire process of mathematical theory exploration: invention of mathematical concepts (axioms and definitions), consistency check for axioms, invention and proof of mathematical propositions, invention of mathematical problems, invention and verification of methods (in particular algorithms) for solving problems. We aim at computersupporting this process in all phases and at building up and managing verified formal mathematical knowledge bases as a result of this process. Our logic frame is predicate logic in a special version and implementation called ”Theorema”. In the course, we will consider several case studies, notably the theory of Groebner bases, and will discuss the heuristics of the process of mathematical theory exploration and possibilities for computersupport in this process. We distinguish between ”topdown ” and ”bottomup ” approaches to mathematical theory exploration. In both approaches, formula schemes play an important role. A formula scheme is a formula in which a couple of unspecified function and predicate symbols occur. Depending on the context, a formula scheme can be used as definition scheme, axiom scheme, proposition scheme, problem scheme, or algorithm schemed and may help both in partially automating the bottomup and the topdown approach to mathematical theory exploration.
What Happened to Languages for Symbolic Mathematical Computation?
"... While the state of the art is relatively sophisticated in programming language support for computer algebra, there has been less development in programming language support for symbolic computation over the past two decades. We summarize certain advances in programming languages for computer algebra ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
While the state of the art is relatively sophisticated in programming language support for computer algebra, there has been less development in programming language support for symbolic computation over the past two decades. We summarize certain advances in programming languages for computer algebra and propose a set of directions and challenges for programming languages for symbolic computation. 1
A Case Study in Proof Based Synthesis of Sorting Algorithms
"... Abstract. We present a case study in proof based constructive synthesis of sorting algorithms. Using a knowledge base containing the necessary properties of tuples, we start from the specification of the problem (input and output conditions) and we construct an inductive proof of the fact that for e ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Abstract. We present a case study in proof based constructive synthesis of sorting algorithms. Using a knowledge base containing the necessary properties of tuples, we start from the specification of the problem (input and output conditions) and we construct an inductive proof of the fact that for each input there exists a sorted tuple. During the proof our problem reduces into simpler and simpler problems, we apply the same method (“cascading”) for the new problems and finally the problem is so simple that one can find the necessary functions in the knowledge base. The algorithm can be then extracted immediately from the proof. We focus here on the synthesis of the mergesort algorithm. This case study is paralleled with the exploration of the appropriate theory of tuples. The purpose of the case study is multifold: to construct the appropriate knowledge base necessary for this type of proofs, to find the natural deduction inference rules and the necessary strategies for their application, and finally to implement the corresponding prover in the frame of the Theorema system. The novel specific feature of our approach is applying this method like in a “cascade ” and the use (as much as possible) of first order predicate logic because this increases the feasibility of proving.
Mathematical Knowledge Archives in Theorema
"... Archives are implemented as an extension of Theorema for representing large bodies of mathematics. They provide various constructs for organizing knowledge bases in a natural way: breaking formulae across cells, grouping them in a hierarchical structure, attaching labels to subhierarchies, disambigu ..."
Abstract
 Add to MetaCart
Archives are implemented as an extension of Theorema for representing large bodies of mathematics. They provide various constructs for organizing knowledge bases in a natural way: breaking formulae across cells, grouping them in a hierarchical structure, attaching labels to subhierarchies, disambiguating symbols by the use of namespaces, importing symbols from other namespaces, addressing the domains of categories and functors as namespaces with variable opera− tions. All constructs are logic–internal in the sense that they have a natural translation to higher–order logic so that �mathematical knowledge management � can be treated by the object logic itself. 1
An Experience with Term Rewriting for Program Verification
"... Abstract. We have developed a proof assistant based on manysorted term rewriting, unfailing completion, and inductive reasoning. We are going to interface it to our computer algebra library. Its application also includes automated program and digital device analysis. It also can be used for generat ..."
Abstract
 Add to MetaCart
Abstract. We have developed a proof assistant based on manysorted term rewriting, unfailing completion, and inductive reasoning. We are going to interface it to our computer algebra library. Its application also includes automated program and digital device analysis. It also can be used for generating certificates for proofs and programs, with automatic certificate check. The system and the CA library are implemented in the Haskell language. Key words: automatic equational prover, term rewriting, inductive reasoning, proof certificate. 1