9 research outputs found

    On Extensions of AF2 with Monotone and Clausular (Co)inductive Definitions

    Get PDF
    This thesis discusses some extensions of second-order logic AF2 with primitive constructors representing least and greatest fixed points of monotone operators, which allow to define predicates by induction and coinduction. Though the expressive power of second-order logic has been well-known for a long time and suffices to define (co)inductive predicates by means of its (co)induction principles, it is more user-friendly to have a direct way of defining predicates inductively. Moreover recent applications in computer science oblige to consider also coinductive definitions useful for handling infinite objects, the most prominent example being the data type of streams or infinite lists. Main features of our approach are the use clauses in the (co)inductive definition mechanism, concept which simplifies the syntactic shape of the predicates, as well as the inclusion of not only (co)iteration but also primitive (co)recursion principles and in the case of coinductive definitions an inversion principle. For sake of generality we consider full monotone, and not only positive definitions, after all positivity is only used to ensure monotonicity. Working towards practical use of our systems we give them realizability interpretations where the systems of realizers are strongly normalizing extensions of the second-order polymorphic lambda calculus, system F in Curry-style, with (co)inductive types corresponding directly to the logical systems via the Curry-Howard correspondence. Such realizability interpretations are therefore not reductive: the definition of realizability for a (co)inductive definition is again a (co)inductive definition. As main application of realizability we extend the so-called programming-with-proofs paradigm of Krivine and Parigot to our logics, by means of which a correct program of the lambda calculus can be extracted from a proof in the logic

    Mendler-style Iso-(Co)inductive predicates: a strongly normalizing approach

    Full text link
    We present an extension of the second-order logic AF2 with iso-style inductive and coinductive definitions specifically designed to extract programs from proofs a la Krivine-Parigot by means of primitive (co)recursion principles. Our logic includes primitive constructors of least and greatest fixed points of predicate transformers, but contrary to the common approach, we do not restrict ourselves to positive operators to ensure monotonicity, instead we use the Mendler-style, motivated here by the concept of monotonization of an arbitrary operator on a complete lattice. We prove an adequacy theorem with respect to a realizability semantics based on saturated sets and saturated-valued functions and as a consequence we obtain the strong normalization property for the proof-term reduction, an important feature which is absent in previous related work.Comment: In Proceedings LSFA 2011, arXiv:1203.542

    A coinductive approach to verified exact real number computation

    Get PDF
    We present an approach to verified programs for exact real number computation that is based on inductive and coinductive definitions and program extraction from proofs. We informally discuss the theoretical background of this method and give examples of extracted programs implementing the translation between the representation by fast converging rational Cauchy sequences and the signed binary digit representations of real numbers

    Optimized Program Extraction for Induction and Coinduction

    Get PDF
    The paper proves soundness of an optimized realizability interpretationfor a logic supporting strictly positive induction and coinduction. Theoptimization concerns the special treatment of Harrop formulas whichyields simpler extracted programs. It is shown that wellfounded inductionis an instance of strictly positive induction and from this a newcomputationally meaningful formulation of the Archimedean property forreal numbers is derived. An example of program extraction in computableanalysis shows that Archimedean induction can be used to eliminatecountable choic

    Enhanced Realizability Interpretation for Program Extraction

    Get PDF
    This thesis presents Intuitionistic Fixed Point Logic (IFP), a schema for formal systems aimed to work with program extraction from proofs. IFP in its basic form allows proof construction based on natural deduction inference rules, extended by induction and coinduction. The corresponding system RIFP (IFP with realiz-ers) enables transforming logical proofs into programs utilizing the enhanced re-alizability interpretation. The theoretical research is put into practice in PRAWF1, a Haskell-based proof assistant for program extraction

    Intuitionistic fixed point logic

    Get PDF
    The logical system IFP introduced in this paper supports program extraction from proofs, unifying theoretical and practical advantages: Based on first-order logic and powerful strictly positive inductive and coinductive definitions, IFP support abstract axiomatic mathematics with a large amount of classical logic. The Haskell-like target programming language has a denotational and an operational semantics which are linked through a computational adequacy theorem that extends to infinite data. Program extraction is fully verified and highly optimised, thus extracted programs are guaranteed to be correct and free of junk. A case study in exact real number computation underpins IFP's effectiveness

    Intuitionistic Fixed Point Logic

    Full text link
    We study the system IFP of intuitionistic fixed point logic, an extension of intuitionistic first-order logic by strictly positive inductive and coinductive definitions. We define a realizability interpretation of IFP and use it to extract computational content from proofs about abstract structures specified by arbitrary classically true disjunction free formulas. The interpretation is shown to be sound with respect to a domain-theoretic denotational semantics and a corresponding lazy operational semantics of a functional language for extracted programs. We also show how extracted programs can be translated into Haskell. As an application we extract a program converting the signed digit representation of real numbers to infinite Gray-code from a proof of inclusion of the corresponding coinductive predicates.Comment: 65 page

    Interactive theorem proving and program extraction.

    Get PDF
    corecore