The Experts below are selected from a list of 1536 Experts worldwide ranked by ideXlab platform

Daniel Leivant - One of the best experts on this subject based on the ideXlab platform.

  • finitism imperative programs and Primitive Recursion
    2021
    Co-Authors: Daniel Leivant
    Abstract:

    The finitistic philosophy of mathematics, critical of referencing infinite totalities, has been associated from its inception with Primitive Recursion. That kinship was not initially substantiated, but is widely assumed, and is supported by Parson’s Theorem, which may be construed as equating finitistic reasoning with finitistic computing.

  • Primitive Recursion in the abstract
    2020
    Co-Authors: Daniel Leivant, Jean-yves Marion
    Abstract:

    Recurrence can be used as a function definition schema for any non-trivial free algebra, yielding the same computational complexity in all cases. We show that Primitive-recursive computing is in fact independent of free algebras altogether, and can be characterized by a generic programming principle, namely the control of iteration by the depletion of finite components of the underlying structure.

  • Implicit complexity for coinductive data: a characterization of corecurrence
    2012
    Co-Authors: Daniel Leivant, Ramyaa Ramyaa
    Abstract:

    We propose a framework for reasoning about programs that manipulate coinductive data as well as inductive data. Our approach is based on using equational programs, which support a seamless combination of computation and reasoning, and using productivity (fairness) as the fundamental assertion, rather than bi-simulation. The latter is expressible in terms of the former. As an application to this framework, we give an implicit characterization of corecurrence: a function is definable using corecurrence iff its productivity is provable using coinduction for formulas in which data-predicates do not occur negatively. This is an analog, albeit in weaker form, of a characterization of recurrence (i.e. Primitive Recursion) in [Leivant, Unipolar induction, TCS 318, 2004]

  • Intrinsic reasoning about functional programs II: unipolar induction and Primitive-Recursion
    2004
    Co-Authors: Daniel Leivant
    Abstract:

    AbstractWe continue from (Ann. Pure Appl. logic 114 (2002) 117) our study of reasoning about Recursion equations in rudimentary theories for inductive data, dubbed intrinsic theories. We show that the functions that are provable using unipolar induction are precisely the Primitive-recursive functions, where we call an instance of induction unipolar if data predicates do not occur in the induction formula both positively and negatively.Two special cases of this result are well known, namely induction over Σ10 and Π10. Here, however, induction formulas may have unrestricted quantifier alternations as long as those quantifiers that are relativized to data do not violate the prescribed restriction. The main technical challenge is in showing that the functions provable by unipolar induction, even in classical logic, are Primitive-recursive.The result is generic with respect to the underlying inductive data, suggesting a potentially useful formalization of Primitive-recursive mathematics

  • Stratified polymorphism and Primitive Recursion
    1999
    Co-Authors: Norman Danner, Daniel Leivant
    Abstract:

    Natural restrictions on the syntax of the second-order (i.e., polymorphic) lambda calculus are of interest for programming language theory. One of the authors showed in Leivant (1991) that when type abstraction in that calculus is stratified into levels, the definable numeric functions are precisely the super-elementary functions (level E4 in the Grzegorczyk Hierarchy). We define here a second-order lambda calculus in which type abstraction is stratified to levels up to ωω, an ordinal that permits highly uniform (and finite) type inference rules. Referring to this system, we show that the numeric functions definable in the calculus using ranks < ωl are precisely Grzegorczyk's class El+3 (l g 1). This generalizes Leivant (1991), where this is proved for l = 1. Thus, the numeric functions definable in our calculus are precisely the Primitive recursive functions.

Stefan Berghofer - One of the best experts on this subject based on the ideXlab platform.

  • A Recursion combinator for nominal datatypes
    2009
    Co-Authors: Christian Urban, Stefan Berghofer
    Abstract:

    Abstract. The nominal datatype package implements an infrastructure in Isabelle/HOL for defining languages involving binders and for reasoning conveniently about alpha-equivalence classes. Pitts stated some general conditions under which functions over alpha-equivalence classes can be defined by a form of structural Recursion and gave a clever proof for the existence of a Primitive-Recursion combinator. We give a version of this proof that works directly over nominal datatypes and does not rely upon auxiliary constructions. We further introduce proving tools and a heuristic that made the automation of our proof tractable. This automation is an essential prerequisite for the nominal datatype package to become useful. Keywords: Lambda-calculus, proof assistants, nominal logic, Primitive Recursion 1 Introduction The infrastructure provided by various datatype packages [2, 6] dramatically simplifies the embedding of languages without binders inside HOL-based proof assistants [4]. Because such proof assistants emphasise the development of theories by definition rather than axiom postulation, simple tasks like reasoning about lists would be fiendishly complicated without such an infrastructure. The purpose of the nominal datatype package1 is to provide an infrastructure in Isabelle/HOL for embedding languages with binders and for reasoning conveniently about them. Many ideas for this package originate from the nominal logic work by Pitts ([7], see also [11]). Using this package, the user can define the terms of, for example, the lambda-calculus as follows

  • a Recursion combinator for nominal datatypes implemented in isabelle hol
    2006
    Co-Authors: Christian Urban, Stefan Berghofer
    Abstract:

    The nominal datatype package implements an infrastructure in Isabelle/HOL for defining languages involving binders and for reasoning conveniently about alpha-equivalence classes. Pitts stated some general conditions under which functions over alpha-equivalence classes can be defined by a form of structural Recursion and gave a clever proof for the existence of a Primitive-Recursion combinator. We give a version of this proof that works directly over nominal datatypes and does not rely upon auxiliary constructions. We further introduce proving tools and a heuristic that made the automation of our proof tractable. This automation is an essential prerequisite for the nominal datatype package to become useful.

Alexander P Kreuzer - One of the best experts on this subject based on the ideXlab platform.

  • The results
    2013
    Co-Authors: Alexander P Kreuzer, Ens Lyon, Universität Bern
    Abstract:

    Reverse mathematics is a program which establishes which set existence axioms are necessary to prove a theorem. The usual systems of reverse mathematics are two-sorted. One sort for N and one for subsets of N. Base system RCA0. RCA0 contains basic arithmetic, Σ01-induction, the statement that all computable sets exist. Question in Reverse mathematics is: To what (set-existence) axioms is a theorem equivalent relative to RCA0? Example: Monotone convergence principle Each increasing sequence of (xn) ⊆ Q in [0, 1] has a supremum. This can be formulated in RCA0 in the following way. Rational numbers x = pq will be coded as a pair 〈p, q 〉: = 2p · 3q. The sequence xn = pnqn will be coded as the set {〈n, 2pn · 3qn 〉 : n ∈ N}. Want: for each n a 2−n good approximation to the supremum. Solution: {〈n, qm 〉 | ∀m ′> m (qm ′ −Q qm <Q 2−n)} This set is build by arithmetical quantification, i.e. contains quantification of natural numbers. The monotone convergence principle is equivalent to the corresponding system ACA0. Reverse mathematics Many theorems form mathematics can be analyzed this way. Most of them can be show to be equivalent to one of the big five systems. RCA0 ←WKL0 ← ACA0 ← ATR0 ← Π11-CA0 Higher order statement cannot be formulated in these systems. Higher order arithmetic Definition (RCAω0, Recursive comprehension, Kohlenbach ’05) RCAω0 is the finite type extension of RCA0: Sorted into type 0 for N, type 1 for NN, type 2 for NNN,..., contains basic arithmetic: 0, successor, +, ·, λ-abstraction, quantifier-free axiom of choice restricted to choice of numbers over functions (QF-AC1,0), i.e., ∀f1 ∃y0 Aqf(f, y)→∃G2 ∀f1 Aqf(f,G(f)) and a recursor R0, which provides Primitive Recursion (for numbers)

  • Primitive Recursion and the chain antichain principle
    2012
    Co-Authors: Alexander P Kreuzer
    Abstract:

    Let the chain antichain principle (CAC) be the statement that each partial order on N possesses an infinite chain or an infinite antichain. Chong, Slaman and Yang recently proved using forcing over non-standard models of arithmetic that CAC is Π1-conservative over RCA0 + Π 0 1-CP and so in particular that CAC does not imply Σ2-induction. We provide here a different purely syntactical and constructive proof of the statement that CAC (even together with WKL) does not imply Σ2-induction. In detail we show that WKL0 +CAC is Π 0 2-conservative over PRA and that one can extract Primitive recursive realizers for such statements. Moreover, our proof is finitary in the sense of Hilbert’s program. CAC implies that every sequence of real numbers has a monotone subsequence. This Bolzano-Weierstras like principle is commonly used in proofs. Our result makes it possible to extract Primitive recursive terms from such proofs. Our proof is based on the techniques we develop together with Kohlenbach in [21]. In the course of the proof we refine Howard’s ordinal analysis of bar Recursion. We also discuss the Erdős-Moser principle, which —taken together with CAC— is equivalent to RT2. Let the chain antichain principle (CAC) be the statement that every partial order on N contains either an infinite chain or an infinite antichain. This principle is a consequence of Ramsey’s theorem for pairs (RT2). The principle RT 2 2 states that for each coloring of unordered pairs of N there exists an infinite subset of N on which this coloring is constant. The chain antichain principle has been studied in the reverse mathematics of partial orders. Lately it has received much attention in the context of the classification of RT2 and in particular in the context of determining the strength of the first order consequences of RT2. It is known that RT 2 2 implies Π1-CP and that its first order consequences are implied by Σ 0 2-IA but it is not known where between these principles the first order consequences of RT2 lie, see [4, 11]. Chong, Slaman, Yang in [5] recently proved that CAC is Π1-conservative over RCA0 + Π 0 1-CP which implies that CAC does not yield Σ 0 2-induction. This result is remarkable since forcing over ω-models —which is usually used to obtain such conservativity results— is not applicable to obtain conservativity over Π1-CP, see [11, §6]. Chong, Slaman, Yang use instead a forcing over non-standard models Date: January 5, 2012. 2010 Mathematics Subject Classification. 03F35, 03B30, 03F10.

  • Primitive Recursion and the chain antichain principle
    2012
    Co-Authors: Alexander P Kreuzer
    Abstract:

    Let the chain antichain principle (CAC) be the statement that each partial order on $\mathbb{N}$ possesses an infinite chain or an infinite antichain. Chong, Slaman, and Yang recently proved using forcing over nonstandard models of arithmetic that CAC is $\Pi^1_1$-conservative over $\text{RCA}_0+\Pi^0_1\text{-CP}$ and so in particular that CAC does not imply $\Sigma^0_2$-induction. We provide here a different purely syntactical and constructive proof of the statement that CAC (even together with WKL) does not imply $\Sigma^0_2$-induction. In detail we show using a refinement of Howard's ordinal analysis of bar Recursion that $\text{WKL}_0^\omega+\text{CAC}$ is $\Pi^0_2$-conservative over PRA and that one can extract Primitive recursive realizers for such statements. Moreover, our proof is finitary in the sense of Hilbert's program. CAC implies that every sequence of $\mathbb{R}$ has a monotone subsequence. This Bolzano-Weierstras}-like principle is commonly used in proofs. Our result makes it possible to extract Primitive recursive terms from such proofs. We also discuss the Erdős-Moser principle, which—taken together with CAC—is equivalent to $\text{RT}^2_2$.

  • See Avigad, Feferman in Handbook of Proof Theory
    2012
    Co-Authors: Alexander P Kreuzer, Technische Universität Darmstadt, Non-principal Ultrafilters
    Abstract:

    RCAω0 is the finite type extension of RCA0: Sorted into type 0 for N, type 1 for NN, type 2 for NNN,..., contains basic arithmetic: 0, successor, +, ·, λ-abstraction, quantifier-free axiom of choice restricted to choice of numbers over functions (QF-AC1,0), i.e., ∀f1 ∃y0 Aqf(f, y)→∃G2 ∀f1 Aqf(f,G(f)) and a recursor R0, which provides Primitive Recursion (for numbers)

Loic Colson - One of the best experts on this subject based on the ideXlab platform.

  • on list Primitive Recursion and the complexity of computing inf
    1992
    Co-Authors: Loic Colson
    Abstract:

    We present a Primitive recursive programinf_with_lists computing the minimum of two natural numbersn andp (written in unary notation) and using Primitive Recursion on lists. This program has at first sight the required property of visiting simultaneously its inputs, so it is a counterexample to a theorem showing that such a program cannot be written in the language of Primitive Recursion on natural numbers, in the more general framework of Primitive Recursion on term algebras. However, its complexity is at leastinf(n,p)2 so it does not implement the algorithm we have in mind to computeinf(n,p).

  • about Primitive recursive algorithms
    1991
    Co-Authors: Loic Colson
    Abstract:

    In the last few years, there has been a growing interest for the application of proof-theoretical methods to the design of functional programming languages [3,11]. One approach relies on representation theorems [3,8,10], which show that a large class of general recursive functions can be encoded in a language where general Recursion is replaced by Primitive Recursion with functions, functionals,… as parameters [13].

Naohi Eguchi - One of the best experts on this subject based on the ideXlab platform.