Learn More
Systolic online algorithms for the multiplication of univariate polynomials and of multiple precision integers are synthesised using a novel method based on the following functional (or inductive) view: a systolic array is a head processor followed by an identical tail array. The synthesis method consists in first unfolding the functional expression of the(More)
Theorema is a project that aims at supporting the entire process of mathematical theory exploration within one coherent logic and software system. This survey paper illustrates the style of Theorema-supported mathematical theory exploration by a case study (the automated synthesis of an algorithm for the construction of Gröbner Bases) and gives an overview(More)
A generalization of the binary algorithm for operation at 'word level " by using a new concept of 'modular conjugates " computes the GCD of multiprecision integers two times faster than Lehmer–Euclid method. Most importantly, however, the new algorithm is suitable for systolic parallelization, in 'least-significant digits jirst " pipelined manner and for(More)
The Theorema project aims at extending current computer algebra systems by facilities for supporting mathematical proving. The present early-prototype version of the The-orema software system is implemented in Mathematica 3.0. The system consists of a general higher-order predicate logic prover and a collection of special provers that call each other(More)
We present the design and the implementation of a prototype verification condition generator for imperative programs. The generator is part of the Theorema system, a computer aided mathematical assistant which offers automated reasoning and computer algebra facilities. We use Hoare Logic and the weakest precondition strategy, but in addition we propose a(More)
Most of the properties established during program verification are either invariants or depend crucially on invariants. The effectiveness of automated verification of (imperative) programs is therefore sensitive to the ease with which invariants, even trivial ones, can be automatically deduced. We present a method for invariant generation that relies on(More)
We present an algorithm that generates automatically (algebraic) invariant properties of a loop with conditionals. In the proposed algorithm program analysis is performed in order to transform the code into a form for which algebraic and combinatorial techniques can be applied to obtain invariant properties. These invariants are then used for verifying(More)