4,287 research outputs found
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
A Historical Perspective on Runtime Assertion Checking in Software Development
This report presents initial results in the area of software testing and analysis produced as part of the Software Engineering Impact Project. The report describes the historical development of runtime assertion checking, including a description of the origins of and significant features associated with assertion checking mechanisms, and initial findings about current industrial use. A future report will provide a more comprehensive assessment of development practice, for which we invite readers of this report to contribute information
A deterministic version of Pollard's p-1 algorithm
In this article we present applications of smooth numbers to the
unconditional derandomization of some well-known integer factoring algorithms.
We begin with Pollard's algorithm, which finds in random polynomial
time the prime divisors of an integer such that is smooth. We
show that these prime factors can be recovered in deterministic polynomial
time. We further generalize this result to give a partial derandomization of
the -th cyclotomic method of factoring () devised by Bach and
Shallit.
We also investigate reductions of factoring to computing Euler's totient
function . We point out some explicit sets of integers that are
completely factorable in deterministic polynomial time given . These
sets consist, roughly speaking, of products of primes satisfying, with the
exception of at most two, certain conditions somewhat weaker than the
smoothness of . Finally, we prove that oracle queries for
values of are sufficient to completely factor any integer in less
than deterministic
time.Comment: Expanded and heavily revised version, to appear in Mathematics of
Computation, 21 page
Enhancing Reuse of Constraint Solutions to Improve Symbolic Execution
Constraint solution reuse is an effective approach to save the time of
constraint solving in symbolic execution. Most of the existing reuse approaches
are based on syntactic or semantic equivalence of constraints; e.g. the Green
framework is able to reuse constraints which have different representations but
are semantically equivalent, through canonizing constraints into syntactically
equivalent normal forms. However, syntactic/semantic equivalence is not a
necessary condition for reuse--some constraints are not syntactically or
semantically equivalent, but their solutions still have potential for reuse.
Existing approaches are unable to recognize and reuse such constraints.
In this paper, we present GreenTrie, an extension to the Green framework,
which supports constraint reuse based on the logical implication relations
among constraints. GreenTrie provides a component, called L-Trie, which stores
constraints and solutions into tries, indexed by an implication partial order
graph of constraints. L-Trie is able to carry out logical reduction and logical
subset and superset querying for given constraints, to check for reuse of
previously solved constraints. We report the results of an experimental
assessment of GreenTrie against the original Green framework, which shows that
our extension achieves better reuse of constraint solving result and saves
significant symbolic execution time.Comment: this paper has been submitted to conference ISSTA 201
The Uses of Argument in Mathematics
Stephen Toulmin once observed that `it has never been customary for
philosophers to pay much attention to the rhetoric of mathematical debate'.
Might the application of Toulmin's layout of arguments to mathematics remedy
this oversight?
Toulmin's critics fault the layout as requiring so much abstraction as to
permit incompatible reconstructions. Mathematical proofs may indeed be
represented by fundamentally distinct layouts. However, cases of genuine
conflict characteristically reflect an underlying disagreement about the nature
of the proof in question.Comment: 10 pages, 5 figures. To be presented at the Ontario Society for the
Study of Argumentation Conference, McMaster University, May 2005 and LOGICA
2005, Hejnice, Czech Republic, June 200
From Euclidean Geometry to Knots and Nets
This document is the Accepted Manuscript of an article accepted for publication in Synthese. Under embargo until 19 September 2018. The final publication is available at Springer via https://doi.org/10.1007/s11229-017-1558-x.This paper assumes the success of arguments against the view that informal mathematical proofs secure rational conviction in virtue of their relations with corresponding formal derivations. This assumption entails a need for an alternative account of the logic of informal mathematical proofs. Following examination of case studies by Manders, De Toffoli and Giardino, Leitgeb, Feferman and others, this paper proposes a framework for analysing those informal proofs that appeal to the perception or modification of diagrams or to the inspection or imaginative manipulation of mental models of mathematical phenomena. Proofs relying on diagrams can be rigorous if (a) it is easy to draw a diagram that shares or otherwise indicates the structure of the mathematical object, (b) the information thus displayed is not metrical and (c) it is possible to put the inferences into systematic mathematical relation with other mathematical inferential practices. Proofs that appeal to mental models can be rigorous if the mental models can be externalised as diagrammatic practice that satisfies these three conditions.Peer reviewe
The Euclid-Mullin graph
We introduce the Euclid-Mullin graph, which encodes all instances of Euclid's
proof of the infinitude of primes. We investigate structural properties of the
graph both theoretically and numerically; in particular, we prove that it is
not a tree.Comment: 24 pages, 2 figures, to appear in Journal of Number Theor
- …