27 research outputs found
Interactive observability in Ludics: The geometry of tests
AbstractLudics [J.-Y. Girard, Locus solum, Math. Structures in Comput. Sci. 11 (2001) 301–506] is a recent proposal of analysis of interaction, developed by abstracting away from proof-theory. It provides an elegant, abstract setting in which interaction between agents (proofs/programs/processes) can be studied at a foundational level, together with a notion of equivalence from the point of view of the observer.An agent should be seen as some kind of black box. An interactive observation on an agent is obtained by testing it against other agents.In this paper we explore what can be observed interactively in this setting. In particular, we characterize the objects that can be observed in a single test: the primitive observables of the theory.Our approach builds on an analysis of the geometrical properties of the agents, and highlights a deep interleaving between two partial orders underlying the combinatorial structures: the spatial one and the temporal one
Global semantic typing for inductive and coinductive computing
Inductive and coinductive types are commonly construed as ontological
(Church-style) types, denoting canonical data-sets such as natural numbers,
lists, and streams. For various purposes, notably the study of programs in the
context of global semantics, it is preferable to think of types as semantical
properties (Curry-style). Intrinsic theories were introduced in the late 1990s
to provide a purely logical framework for reasoning about programs and their
semantic types. We extend them here to data given by any combination of
inductive and coinductive definitions. This approach is of interest because it
fits tightly with syntactic, semantic, and proof theoretic fundamentals of
formal logic, with potential applications in implicit computational complexity
as well as extraction of programs from proofs. We prove a Canonicity Theorem,
showing that the global definition of program typing, via the usual (Tarskian)
semantics of first-order logic, agrees with their operational semantics in the
intended model. Finally, we show that every intrinsic theory is interpretable
in a conservative extension of first-order arithmetic. This means that
quantification over infinite data objects does not lead, on its own, to
proof-theoretic strength beyond that of Peano Arithmetic. Intrinsic theories
are perfectly amenable to formulas-as-types Curry-Howard morphisms, and were
used to characterize major computational complexity classes Their extensions
described here have similar potential which has already been applied
From coinductive proofs to exact real arithmetic: theory and applications
Based on a new coinductive characterization of continuous functions we
extract certified programs for exact real number computation from constructive
proofs. The extracted programs construct and combine exact real number
algorithms with respect to the binary signed digit representation of real
numbers. The data type corresponding to the coinductive definition of
continuous functions consists of finitely branching non-wellfounded trees
describing when the algorithm writes and reads digits. We discuss several
examples including the extraction of programs for polynomials up to degree two
and the definite integral of continuous maps
Extracting Imperative Programs from Proofs: In-place Quicksort
The process of program extraction is primarily associated with
functional programs with less focus on imperative program extraction. In this paper we consider a standard problem for imperative programming: In-place Quicksort. We formalize a proof that every array of natural numbers can be sorted and apply a realizability
interpretation to extract a program from the proof. Using monads we
are able to exhibit the inherent imperative nature of the extracted
program. We see this as a first step towards an automated extraction of imperative programs. The case study is carried out in the interactive proof assistant Minlog
Extracting verified decision procedures: DPLL and Resolution
This article is concerned with the application of the program extraction technique to a new class of problems: the synthesis of decision procedures for the classical satisfiability problem that are correct by construction. To this end, we formalize a completeness proof for the DPLL proof system and extract a SAT solver from it. When applied to a propositional formula in conjunctive normal form the program produces either a satisfying assignment or a DPLL derivation showing its unsatisfiability. We use non-computational quantifiers to remove redundant computational content from the extracted program and translate it into Haskell to improve performance. We also prove the equivalence between the resolution proof system and the DPLL proof system with a bound on the size of the resulting resolution proof. This demonstrates that it is possible to capture quantitative information about the extracted program on the proof level. The formalization is carried out in the interactive proof assistant Minlog
Limits of real numbers in the binary signed digit representation
We extract verified algorithms for exact real number computation from
constructive proofs. To this end we use a coinductive representation of reals
as streams of binary signed digits. The main objective of this paper is the
formalisation of a constructive proof that real numbers are closed with respect
to limits. All the proofs of the main theorem and the first application are
implemented in the Minlog proof system and the extracted terms are further
translated into Haskell. We compare two approaches. The first approach is a
direct proof. In the second approach we make use of the representation of reals
by a Cauchy-sequence of rationals. Utilizing translations between the two
represenation and using the completeness of the Cauchy-reals, the proof is very
short. In both cases we use Minlog's program extraction mechanism to
automatically extract a formally verified program that transforms a converging
sequence of reals, i.e. a sequence of streams of binary signed digits together
with a modulus of convergence, into the binary signed digit representation of
its limit. The correctness of the extracted terms follows directly from the
soundness theorem of program extraction. As a first application we use the
extracted algorithms together with Heron's method to construct an algorithm
that computes square roots with respect to the binary signed digit
representation. In a second application we use the convergence theorem to show
that the signed digit representation of real numbers is closed under
multiplication.Comment: 27 pages, 2 figure
A coinductive approach to computing with compact sets
Exact representations of real numbers such as the signed digit representation or more generally linear fractional representations or the infinite Gray code represent real numbers as infinite streams of digits. In earlier work by the first author it was shown how to extract certified algorithms working with the signed digit representations from constructiveproofs. In this paper we lay the foundation for doing a similar thing with nonempty compact sets. It turns out that a representation by streams of finitely many digits is impossible and instead trees are needed
Recommended from our members
Mathematical Logic: Proof Theory, Constructive Mathematics
The workshop “Mathematical Logic: Proof Theory, Constructive Mathematics” was centered around proof-theoretic aspects of current mathematics, constructive mathematics and logical aspects of computational complexity
Optimized Program Extraction for Induction and Coinduction
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
Extracting total Amb programs from proofs
We present a logical system CFP (Concurrent Fixed Point Logic) supporting the
extraction of nondeterministic and concurrent programs that are provably total
and correct. CFP is an intuitionistic first-order logic with inductive and
coinductive definitions extended by two propositional operators: Rrestriction,
a strengthening of implication, and an operator for total concurrency. The
source of the extraction are formal CFP proofs, the target is a lambda calculus
with constructors and recursion extended by a constructor Amb (for McCarthy's
amb) which is interpreted operationally as globally angelic choice and is used
to implement nondeterminism and concurrency. The correctness of extracted
programs is proven via an intermediate domain-theoretic denotational semantics.
We demonstrate the usefulness of our system by extracting a nondeterministic
program that translates infinite Gray code into the signed digit
representation. A noteworthy feature of CFP is the fact that the proof rules
for restriction and concurrency involve variants of the classical law of
excluded middle that would not be interpretable computationally without Amb.Comment: 39 pages + 4 pages appendix. arXiv admin note: text overlap with
arXiv:2104.1466