88 research outputs found
Implicit complexity for coinductive data: a characterization of corecurrence
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].Comment: In Proceedings DICE 2011, arXiv:1201.034
Radical anti-realism and substructural logics
We first provide the outline of an argument in favour of a radical form of anti-realism premised on the need to comply with two principles, implicitness and immanence, when trying to frame assertability-conditions. It follows from the first principle that one ought to avoid explicit bounding of the length of computations, as is the case for some strict finitists, and look for structural weakening instead. In order to comply with the principle of immanence, one ought to take into account the difference between being able to recognize a proof when presented with one and being able to produce one and thus avoid the idealization of our cognitive capacities that arise within Hilbert-style calculi. We then explore the possibility of weakening structural rules in order to comply with radical anti-realist strictures
The Computational Contents of Ramified Corecurrence
Abstract. The vast power of iterated recurrence is tamed by data ram-ification: if a function over words is definable by ramified recurrence and composition, then it is feasible, i.e. computable in polynomial time, i.e. any computation using the first n input symbols can have at most p(n) distinct configurations, for some polynomial p. Here we prove a dual result for coinductive data: if a function over streams is definable by ramified corecurrence, then any computation to obtain the first n symbols of the output can have at most p(n) distinct configurations, for some polynomial p. The latter computation is by multi-cursor finite state transducer on streams. A consequence is that a function over finite streams is definable by ram-ified corecurrence iff it is Turing-computable in logarithmic space. Such corecursive definitions over finite streams are of practical interest, be-cause large finite data is normally used as a knowledge base to be con-sumed, rather than as recurrence template. Thus, we relate a syntac-tically restricted computation model, amenable to static analysis, to a major complexity class for streaming algorithms.
- …