96 research outputs found

    Datatype defining rewrite systems for naturals and integers

    Get PDF

    Datatype defining rewrite systems for naturals and integers

    Get PDF
    A datatype defining rewrite system (DDRS) is an algebraic (equational) specification intended to specify a datatype. When interpreting the equations from left-to-right, a DDRS defines a term rewriting system that must be ground-complete. First we define two DDRSs for the ring of integers, each comprising twelve rewrite rules, and prove their ground-completeness. Then we introduce natural number and integer arithmetic specified according to unary view, that is, arithmetic based on a postfix unary append constructor (a form of tallying). Next we specify arithmetic based on two other views: binary and decimal notation. The binary and decimal view have as their characteristic that each normal form resembles common number notation, that is, either a digit, or a string of digits without leading zero, or the negated versions of the latter. Integer arithmetic in binary and decimal notation is based on (postfix) digit append functions. For each view we define a DDRS, and in each case the resulting datatype is a canonical term algebra that extends a corresponding canonical term algebra for natural numbers. Then, for each view, we consider an alternative DDRS based on tree constructors that yields comparable normal forms, which for that view admits expressions that are algorithmically more involved. For all DDRSs considered, ground-completeness is proven

    On the Most Suitable Axiomatization of Signed Integers

    Get PDF
    Part 4: Regular PapersInternational audienceThe standard mathematical definition of signed integers, based on set theory, is not well-adapted to the needs of computer science. For this reason, many formal specification languages and theorem provers have designed alternative definitions of signed integers based on term algebras , by extending the Peano-style construction of unsigned naturals using "zero" and "succ" to the case of signed integers. We compare the various approaches used in CADP, CASL, Coq, Isabelle/HOL, KIV, Maude, mCRL2, PSF, SMT-LIB, TLA+, etc. according to objective criteria and suggest an "optimal" definition of signed integers

    Dual Number Meadows

    Get PDF

    Formal proofs in real algebraic geometry: from ordered fields to quantifier elimination

    Get PDF
    This paper describes a formalization of discrete real closed fields in the Coq proof assistant. This abstract structure captures for instance the theory of real algebraic numbers, a decidable subset of real numbers with good algorithmic properties. The theory of real algebraic numbers and more generally of semi-algebraic varieties is at the core of a number of effective methods in real analysis, including decision procedures for non linear arithmetic or optimization methods for real valued functions. After defining an abstract structure of discrete real closed field and the elementary theory of real roots of polynomials, we describe the formalization of an algebraic proof of quantifier elimination based on pseudo-remainder sequences following the standard computer algebra literature on the topic. This formalization covers a large part of the theory which underlies the efficient algorithms implemented in practice in computer algebra. The success of this work paves the way for formal certification of these efficient methods.Comment: 40 pages, 4 figure

    One-sided differentiability: a challenge for computer algebra systems

    Get PDF
    Computer Algebra Systems (CASs) are extremely powerful and widely used digital tools. Focusing on differentiation, CASs include a command that computes the derivative of functions in one variable (and also the partial derivative of functions in several variables). We will focus in this article on real-valued functions of one real variable. Since CASs usually compute the derivative of real-valued functions as a whole, the value of the computed derivative at points where the left derivative and the right derivative are different (that we will call conflicting points) should be something like "undefined", although this isn't always the case: the output could strongly differ depending on the chosen CAS. We have analysed and compared in this article how some well-known CASs behave when addressing differentiation at the conflicting points of five different functions chosen by the authors. Finally, the ability for calculating one-sided limits of CASs allows to directly compute the result in these cumbersome cases using the formal definition of one-sided derivative, which we have also analysed and compared for the selected CASs. Regarding teaching, this is an important issue, as it is a topic of Secondary Education and nowadays the use of CASs as an auxiliary digital tool for teaching mathematics is very common

    Aspects of the theory of containers within automated theorem proving

    Get PDF
    This thesis explores applications of the theory of containers within automated theorem proving. Container theory provides a foundational analysis of data types as containers, specified by a type SS of shapes and a function P assigning to each shape its set of positions for data.More importantly, a representation theorem guarantees that polymorphic functions between container data types are given by container morphisms, which are characterised by mappings between shapes and positions. Container theory is interesting, in this context, for the following reasons. A mechanism for representing and reasoning with ellipsis (the dots in x_1, x_2, ... , x_n) in lists, existing in the literature, has proved to be very useful for formalisations involving abstractions. Success with this mechanism came by means of a meta-level representation through which many functions that normally require recursive definitions can be given explicit ones. As a result, not only can induction and generalisation be eliminated from proofs but, by means of an associated portrayal system, the resulting proofs are also intuitive and much closer to informal mathematical proofs. This ellipsis mechanism, however, is not based on any formal theory, making it rather exiguous in comparison with rival techniques. There also remains questions about its scope and applications. Our aim is to improve this ellipsis mechanism. In this connection, we hypothesize that the theory of containers provides a formal underpinning for such representations. In order to test our hypothesis, we identify limitations of the ellipsis mechanism and show how they can be addressed within the theory of containers. We subsequently develop a new reasoning system based on containers, which does not suffer from these limitations. This judicious container-based system endorses representations of polymorphic rewrite rules using arithmetic, which naturally lends itself to applications of arithmetic decision procedures. We exploit this facet to develop a new technique for deciding properties of lists. Our technique is developed within a quasi-container setting: shape maps are given as piecewise-linear functions, while a new representation is derived for re-indexing functions that obviates the need for dependent types, which are fundamental in a judicious container approach. We show that this new setting enables us to represent and reason about a large class of properties
    • …
    corecore