742 research outputs found
Theorem of three circles in Coq
The theorem of three circles in real algebraic geometry guarantees the
termination and correctness of an algorithm of isolating real roots of a
univariate polynomial. The main idea of its proof is to consider polynomials
whose roots belong to a certain area of the complex plane delimited by straight
lines. After applying a transformation involving inversion this area is mapped
to an area delimited by circles. We provide a formalisation of this rather
geometric proof in Ssreflect, an extension of the proof assistant Coq,
providing versatile algebraic tools. They allow us to formalise the proof from
an algebraic point of view.Comment: 27 pages, 5 figure
Proof-checking Euclid
We used computer proof-checking methods to verify the correctness of our
proofs of the propositions in Euclid Book I. We used axioms as close as
possible to those of Euclid, in a language closely related to that used in
Tarski's formal geometry. We used proofs as close as possible to those given by
Euclid, but filling Euclid's gaps and correcting errors. Euclid Book I has 48
propositions, we proved 235 theorems. The extras were partly "Book Zero",
preliminaries of a very fundamental nature, partly propositions that Euclid
omitted but were used implicitly, partly advanced theorems that we found
necessary to fill Euclid's gaps, and partly just variants of Euclid's
propositions. We wrote these proofs in a simple fragment of first-order logic
corresponding to Euclid's logic, debugged them using a custom software tool,
and then checked them in the well-known and trusted proof checkers HOL Light
and Coq.Comment: 53 page
Certified Universal Gathering in for Oblivious Mobile Robots
We present a unified formal framework for expressing mobile robots models,
protocols, and proofs, and devise a protocol design/proof methodology dedicated
to mobile robots that takes advantage of this formal framework. As a case
study, we present the first formally certified protocol for oblivious mobile
robots evolving in a two-dimensional Euclidean space. In more details, we
provide a new algorithm for the problem of universal gathering mobile oblivious
robots (that is, starting from any initial configuration that is not bivalent,
using any number of robots, the robots reach in a finite number of steps the
same position, not known beforehand) without relying on a common orientation
nor chirality. We give very strong guaranties on the correctness of our
algorithm by proving formally that it is correct, using the COQ proof
assistant. This result demonstrates both the effectiveness of the approach to
obtain new algorithms that use as few assumptions as necessary, and its
manageability since the amount of developed code remains human readable.Comment: arXiv admin note: substantial text overlap with arXiv:1506.0160
Homotopy Type Theory in Lean
We discuss the homotopy type theory library in the Lean proof assistant. The
library is especially geared toward synthetic homotopy theory. Of particular
interest is the use of just a few primitive notions of higher inductive types,
namely quotients and truncations, and the use of cubical methods.Comment: 17 pages, accepted for ITP 201
Classical Mathematics for a Constructive World
Interactive theorem provers based on dependent type theory have the
flexibility to support both constructive and classical reasoning. Constructive
reasoning is supported natively by dependent type theory and classical
reasoning is typically supported by adding additional non-constructive axioms.
However, there is another perspective that views constructive logic as an
extension of classical logic. This paper will illustrate how classical
reasoning can be supported in a practical manner inside dependent type theory
without additional axioms. We will see several examples of how classical
results can be applied to constructive mathematics. Finally, we will see how to
extend this perspective from logic to mathematics by representing classical
function spaces using a weak value monad.Comment: v2: Final copy for publicatio
Coinductive Formal Reasoning in Exact Real Arithmetic
In this article we present a method for formally proving the correctness of
the lazy algorithms for computing homographic and quadratic transformations --
of which field operations are special cases-- on a representation of real
numbers by coinductive streams. The algorithms work on coinductive stream of
M\"{o}bius maps and form the basis of the Edalat--Potts exact real arithmetic.
We use the machinery of the Coq proof assistant for the coinductive types to
present the formalisation. The formalised algorithms are only partially
productive, i.e., they do not output provably infinite streams for all possible
inputs. We show how to deal with this partiality in the presence of syntactic
restrictions posed by the constructive type theory of Coq. Furthermore we show
that the type theoretic techniques that we develop are compatible with the
semantics of the algorithms as continuous maps on real numbers. The resulting
Coq formalisation is available for public download.Comment: 40 page
- …