Automatic Proof Procedures for Polynomials and Special Functions

Lead Research Organisation: University of Cambridge
Department Name: Computer Science and Technology

Abstract

An engineering design is expected to satisfy safety constraints, many of which can be expressed as mathematical and logical formulas. Computer software exists that can check some such formulas automatically, but although they can have a large and complicated logical structure, the mathematical component currently has to be linear: in other words, involving nothing more complicated than addition. Real-world engineering problems involve sophisticated mathematical concepts, such as polynomials and transcendental functions.The investigators have developed software (called MetiTarski and RAHD) that can solve such problems in many cases. The current project will extend the scope of this software, increasing its power and targeting it at specific real-world application areas. One such application is analogue circuitry, which is widespread in consumer electronics. The project will investigate many other potential applications In engineering and the mathematical sciences.

Planned Impact

Who will benefit from this research? The project will deliver two open-source pieces of mathematical software: MetiTarski and RAHD. MetiTarski has potential applications throughout the engineering sector, and possibly in financial mathematics. RAHD will be a component of MetiTarski, and it also has scientific applications in its own right. The main target beneficiaries are engineering firms and particularly those devoted to high integrity systems. Both software tools also have potential applications to university mathematics teaching. How will they benefit from this research? MetiTarski has the potential to be useful in the design of hybrid and control systems, analogue circuits, and other areas of engineering that rely on differential equations or real valued special functions. Engineering firms may be able to design products more cheaply than before, conferring economic benefits. These products may also be safer than before, when simulation is replaced or supplemented by formal proof; therefore, a further benefit is enhanced public safety. What will be done to ensure that they benefit from this research? The project is designed from the outset to target the development of MetiTarski on the needs of potential users. We shall engage with experts from various industrial sectors to obtain problems and test data. In this way, limitations of MetiTarski and RAHD will be identified and addressed. We shall visit our engineering experts to exchange results. We shall present findings and demonstrate our software at conferences frequented by industrialists, in addition to the usual academic conferences. We shall also strive to make our software robust, well-documented and easy to use. We have a good track record with regard to Isabelle, which now has users across the developed world.
 
Description One of our primary goals is to deliver our technology in the form of software tools, in particular, our theorem-prover MetiTarski. Version 1.9 was released to the research community in August 2011, and a dramatically more powerful Version 2.0 was released in the first half of 2012. Version 2.4 was released in October 2014.

We have made fundamental discoveries about how such software should be built for best performance, in particular through our investigations of backtracking and through special modifications of the decision procedures that we call. We are also making progress on applications of this software in control engineering, for example, to prove stability. We have developed new technology for this purpose. Other work has examined the role of machine learning in supporting computer algebra generally. Very recent work, conducted in 2017 by interns from Cadence, shows that MetiTarski outperforms traditional methods for validating certain types of floating-point hardware. In one experiment, MetiTarski detected an error in the design of an algorithm. (This work is still unpublished, for commercial reasons.)
Exploitation Route Integration with the PVS proof assistant makes it available to users such as NASA. MetiTarski is also integrated with the KeYmaera hybrid system verifier and the Why3 program verifier. Copies of MetiTarski continue to be downloaded regularly. The experiments noted above under floating point hardware are leading to further enquiries from scientists in industry.
Sectors Aerospace, Defence and Marine,Digital/Communication/Information Technologies (including Software),Education,Transport

URL http://www.cl.cam.ac.uk/~lp15/papers/Arith/index.html
 
Description In preliminary work with Cadence, a Cambridge undergraduate investigated the potential of using MetiTarski to verify bespoke designs for floating point hardware for the logarithm function. These experiments were positive and the work will continue.
First Year Of Impact 2017
Sector Digital/Communication/Information Technologies (including Software)
Impact Types Economic

 
Title MetiTarski version 2.0 
Description A major new release of our theorem proving software. This version can be used with a greater number of external tools (including Mathematica and Z3). It is much more powerful than before, and can finally be built on Windows machines. 
Type Of Technology Software 
Year Produced 2012 
Open Source License? Yes  
Impact Used at many research centres, including NASA Langley. 
URL http://www.cl.cam.ac.uk/~lp15/papers/Arith/