635 research outputs found
A refinement-based approach to computational algebra in COQ
International audienceWe describe a step-by-step approach to the implementation and formal verification of efficient algebraic algorithms. Formal specifications are expressed on rich data types which are suitable for deriving essential theoretical properties. These specifications are then refined to concrete implementations on more efficient data structures and linked to their abstract counterparts. We illustrate this methodology on key applications: matrix rank computation, Winograd's fast matrix product, Karatsuba's polynomial multiplication, and the gcd of multivariate polynomials
Certification of programs with computational effects
In purely functional programming languages imperative features, more
generally computational effects are prohibited. However, non-functional lan-
guages do involve effects. The theory of decorated logic provides a rigorous
for- malism (with a refinement in operation signatures) for proving program
properties with respect to computational effects. The aim of this thesis is to
first develop Coq libraries and tools for verifying program properties in
decorated settings as- sociated with several effects: states, local state,
exceptions, non-termination, etc. Then, these tools will be combined to deal
with several effects
Computing Persistent Homology within Coq/SSReflect
Persistent homology is one of the most active branches of Computational
Algebraic Topology with applications in several contexts such as optical
character recognition or analysis of point cloud data. In this paper, we report
on the formal development of certified programs to compute persistent Betti
numbers, an instrumental tool of persistent homology, using the Coq proof
assistant together with the SSReflect extension. To this aim it has been
necessary to formalize the underlying mathematical theory of these algorithms.
This is another example showing that interactive theorem provers have reached a
point where they are mature enough to tackle the formalization of nontrivial
mathematical theories
Formalized linear algebra over Elementary Divisor Rings in Coq
This paper presents a Coq formalization of linear algebra over elementary
divisor rings, that is, rings where every matrix is equivalent to a matrix in
Smith normal form. The main results are the formalization that these rings
support essential operations of linear algebra, the classification theorem of
finitely presented modules over such rings and the uniqueness of the Smith
normal form up to multiplication by units. We present formally verified
algorithms computing this normal form on a variety of coefficient structures
including Euclidean domains and constructive principal ideal domains. We also
study different ways to extend B\'ezout domains in order to be able to compute
the Smith normal form of matrices. The extensions we consider are: adequacy
(i.e. the existence of a gdco operation), Krull dimension and
well-founded strict divisibility
Certification of Bounds of Non-linear Functions: the Templates Method
The aim of this work is to certify lower bounds for real-valued multivariate
functions, defined by semialgebraic or transcendental expressions. The
certificate must be, eventually, formally provable in a proof system such as
Coq. The application range for such a tool is widespread; for instance Hales'
proof of Kepler's conjecture yields thousands of inequalities. We introduce an
approximation algorithm, which combines ideas of the max-plus basis method (in
optimal control) and of the linear templates method developed by Manna et al.
(in static analysis). This algorithm consists in bounding some of the
constituents of the function by suprema of quadratic forms with a well chosen
curvature. This leads to semialgebraic optimization problems, solved by
sum-of-squares relaxations. Templates limit the blow up of these relaxations at
the price of coarsening the approximation. We illustrate the efficiency of our
framework with various examples from the literature and discuss the interfacing
with Coq.Comment: 16 pages, 3 figures, 2 table
- …