Results 1  10
of
21
Propositional computability logic I
 ACM Transactions on Computational Logic
"... Computability logic (CL) is a systematic formal theory of computational tasks and resources, which, in a sense, can be seen as a semanticsbased alternative to (the syntactically introduced) linear logic. With its expressive and flexible language, where formulas represent computational problems and ..."
Abstract

Cited by 24 (18 self)
 Add to MetaCart
Computability logic (CL) is a systematic formal theory of computational tasks and resources, which, in a sense, can be seen as a semanticsbased alternative to (the syntactically introduced) linear logic. With its expressive and flexible language, where formulas represent computational problems and “truth ” is understood as algorithmic solvability, CL potentially offers a comprehensive logical basis for constructive applied theories and computing systems inherently requiring constructive and computationally meaningful underlying logics. Among the best known constructivistic logics is Heyting’s intuitionistic calculus INT, whose language can be seen as a special fragment of that of CL. The constructivistic philosophy of INT, however, just like the resource philosophy of linear logic, has never really found an intuitively convincing and mathematically strict semantical justification. CL has good claims to provide such a justification and hence a materialization of Kolmogorov’s known thesis “INT = logic of problems”. The present paper contains a soundness proof for INT with respect to the CL semantics. It is expected to constitute part 1 of a twopiece series on the intuitionistic fragment of CL, with part 2 containing an anticipated completeness proof. 1
On the unity of duality
 Special issue on “Classical Logic and Computation
, 2008
"... Most type systems are agnostic regarding the evaluation strategy for the underlying languages, with the value restriction for ML which is absent in Haskell as a notable exception. As type systems become more precise, however, detailed properties of the operational semantics may become visible becaus ..."
Abstract

Cited by 12 (2 self)
 Add to MetaCart
Most type systems are agnostic regarding the evaluation strategy for the underlying languages, with the value restriction for ML which is absent in Haskell as a notable exception. As type systems become more precise, however, detailed properties of the operational semantics may become visible because properties captured by the types may be sound under one strategy but not the other. For example, intersection types distinguish between callbyname and callbyvalue functions, because the subtyping law (A → B) ∩ (A → C) ≤ A → (B ∩ C) is unsound for the latter in the presence of effects. In this paper we develop a prooftheoretic framework for analyzing the interaction of types with evaluation order, based on the notion of polarity. Polarity was discovered through linear logic, but we propose a fresh origin in Dummett’s program of justifying the logical laws through alternative verificationist or pragmatist “meaningtheories”, which include a bias towards either introduction or elimination rules. We revisit Dummett’s analysis using the tools of MartinLöf’s judgmental method, and then show how to extend it to a unified polarized logic, with Girard’s “shift ” connectives acting as intermediaries. This logic safely combines intuitionistic and dual intuitionistic reasoning principles, while simultaneously admitting a focusing interpretation for the classical sequent calculus. Then, by applying the CurryHoward isomorphism to polarized logic, we obtain a single programming language in which evaluation order is reflected at the level of types. Different logical notions correspond directly to natural programming constructs, such as patternmatching, explicit substitutions, values and callbyvalue continuations. We give examples demonstrating the expressiveness of the language and type system, and prove a basic but modular type safety result. We conclude with a brief discussion of extensions to the language with additional effects and types, and sketch the sort of explanation this can provide for operationallysensitive typing phenomena. 1
The logic of interactive Turing reduction
 Journal of Symbolic Logic
"... The paper gives a soundness and completeness proof for the implicative fragment of intuitionistic calculus with respect to the semantics of computability logic, which understands intuitionistic implication as interactive algorithmic reduction. This concept — more precisely, the associated concept of ..."
Abstract

Cited by 11 (11 self)
 Add to MetaCart
The paper gives a soundness and completeness proof for the implicative fragment of intuitionistic calculus with respect to the semantics of computability logic, which understands intuitionistic implication as interactive algorithmic reduction. This concept — more precisely, the associated concept of reducibility — is a generalization of Turing reducibility from the traditional, input/output sorts of problems to computational tasks of arbitrary degrees of interactivity.
Program synthesis
 Automated Deduction  A Basis for Applications
, 1998
"... Since almost 30 years software production has to face two major problems: the cost of nonstandard software, caused by long development times and the constant need for maintenance, and a lack of confidence in the reliability of software. Recent accidents like the crash of KAL’s 747 in August 1997 or ..."
Abstract

Cited by 10 (1 self)
 Add to MetaCart
Since almost 30 years software production has to face two major problems: the cost of nonstandard software, caused by long development times and the constant need for maintenance, and a lack of confidence in the reliability of software. Recent accidents like the crash of KAL’s 747 in August 1997 or the
the beginning was game semantics
, 2009
"... The intuitionistic fragment of computability logic at the propositional level ..."
Abstract

Cited by 10 (7 self)
 Add to MetaCart
The intuitionistic fragment of computability logic at the propositional level
Ordinals and Interactive Programs
, 2000
"... The work reported in this thesis arises from the old idea, going back to the origins of constructive logic, that a proof is fundamentally a kind of program. If proofs can be ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
The work reported in this thesis arises from the old idea, going back to the origins of constructive logic, that a proof is fundamentally a kind of program. If proofs can be
Toggling operators in computability logic
, 904
"... Computability logic (CL) is a recently introduced semantical platform and research program for redeveloping logic as a formal theory of computability, as opposed to the formal theory of truth which it has more traditionally been. Formulas in CL stand for interactive computational problems, seen as g ..."
Abstract

Cited by 4 (4 self)
 Add to MetaCart
Computability logic (CL) is a recently introduced semantical platform and research program for redeveloping logic as a formal theory of computability, as opposed to the formal theory of truth which it has more traditionally been. Formulas in CL stand for interactive computational problems, seen as games between a machine and its environment; logical operators represent operations on such entities; and “truth ” is understood as existence of an effective solution, i.e., of an algorithmic winning strategy. The formalism of CL is openended, and may undergo series of extensions as the studies of the subject advance. Propositional connectives and quantifiers in it come in a variety of indispensable versions. So far three — parallel, sequential and choice — sorts of conjunction and disjunction have been studied, with the first and the third sorts being reminiscent of the multiplicative and additive operators of linear logic, respectively. The present paper adds one more natural kind to this collection, termed toggling. The toggling operations can be characterized as lenient versions of choice operations where choices are retractable, being allowed to be reconsidered any finite number of times. This way, they model trialanderror style decision steps in interactive computation. The main technical result of this paper is constructing a sound and complete axiomatization for the propositional fragment of computability logic whose vocabulary, together with negation, includes all four — parallel, toggling, sequential and choice — kinds of conjunction and disjunction. Along with toggling conjunction and disjunction, the paper also introduces the toggling versions of quantifiers and recurrence (“exponential”) operations.
Reviewing the classical and the de Bruijn notation for λcalculus and pure type systems
 Logic and Computation
, 2001
"... This article is a brief review of the type free λcalculus and its basic rewriting notions, and of the pure type system framework which generalises many type systems. Both the type free λcalculus and the pure type systems are presented using variable names and de Bruijn indices. Using the presentat ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
This article is a brief review of the type free λcalculus and its basic rewriting notions, and of the pure type system framework which generalises many type systems. Both the type free λcalculus and the pure type systems are presented using variable names and de Bruijn indices. Using the presentation of the λcalculus with de Bruijn indices, we illustrate how a calculus of explicit substitutions can be obtained. In addition, de Bruijn's notation for the λcalculus is introduced and some of its advantages are outlined.
Propositional Functions and Families of Types
 In Workshop on Programming Logic
, 1989
"... Introduction In order to capture some of the programmers errors, several computer languages, like Pascal and ML, are equipped with a type system. Using the CurryHoward interpretation of propositions as types [3, 8], or as we shall say here, propositions as sets, a type system can be made strong en ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Introduction In order to capture some of the programmers errors, several computer languages, like Pascal and ML, are equipped with a type system. Using the CurryHoward interpretation of propositions as types [3, 8], or as we shall say here, propositions as sets, a type system can be made strong enough to be used to specify the task a program is supposed to do. This is one of the basis for MartinLof's suggestion in [11] to use his formulation of type theory for programming; his ideas are exploited in [14] and there are several computer implementations of type theory [4, 16]. Similar ideas are also behind Coquand and Huet's calculus of constructions [2]. The idea of propositions as sets is closely related to the intuitionistic explanations of the logical constants given by Heyting [7]. In MartinLof's type theory, the interpretation of propositions as sets is fundamental since the notions of proposition and set are identical. So a logical constant is definitionally equal to th