the application rule M : x:a: B N : A M N : (x:a: B) N and the reduction rule (x: A: B) N! Bfx := Ng. Their algorithm is not fully satisfactory in the
|
|
- Berniece Richardson
- 6 years ago
- Views:
Transcription
1 The Semi-Full Closure of Pure Type Systems? Gilles Barthe Institutionen for Datavetenskap, Chalmers Tekniska Hogskola, Goteborg, Sweden Departamento de Informatica, Universidade do Minho, Braga, Portugal Abstract. We show that every functional Pure Type System may be extended to a semi-full Pure Type System. Moreover, the extension is conservative and preserves weak normalization. Based on these results, we give a new, conceptually simple type-checking algorithm for functional Pure Type Systems. 1 Introduction Pure Type Systems (PTSs) [1] capture in a unied setting many typed -calculi that form the basis of typed functional languages and type-theory based proofdevelopment systems. One central issue in the theory of PTSs is the problem of type-checking, which consists in deciding whether a judgment M : A is derivable according to the rules of a given PTS S. Although type-checking is undecidable in general, most systems of interest have decidable type-checking. For such systems, the question remains whether it is possible to nd reasonable, sound and complete, algorithms for type-checking. The existence of such algorithms is not obvious and indeed the completeness of the most natural typechecking algorithm, due to R. Pollack [8], remains an open problem. In a nutshell, the problem is caused by the second premise of the abstraction rule, which makes it dicult to prove completeness by induction on the structure of derivations. Nevertheless several authors have proposed type-checking algorithms that are sound and complete for some specic classes of PTSs. In the early 90s, R. Pollack [7, 8] introduced the class of semi-full PTSs informally a PTS is semi-full if it has \enough rules" and gave a sound and complete type-checking algorithm for PTSs in that class. Unfortunately, many PTSs of interest are not semi-full. Later L.S. van Benthem Jutting, J. McKinna and R. Pollack [3, 8] gave an alternative algorithm that is sound and complete for functional PTSs, a large class of PTSs that comprises most of the systems that appear in the literature. In order to check for the second premise of the abstraction rule, their algorithm invokes a complex derivability relation with -application and -conversion, as given by? This is a revised version of the article appearing in the proceedings of MFCS'98. The present version diers from the proceedings version in the proofs of Lemma 4 and Proposition 1, which have been substantially simplied. In addition, the present version corrects the abstraction rule in Figure 2.
2 the application rule M : x:a: B N : A M N : (x:a: B) N and the reduction rule (x: A: B) N! Bfx := Ng. Their algorithm is not fully satisfactory in the sense that it requires to consider an extended framework. More recently, P. Severi [9] has suggested another algorithm that appeals to Pure Type Systems without the -condition (PTSWs). Those are a variant of PTSs in which the abstraction rule is?; x : A ` M : B x:a: M : x:a: B Again PTSWs are used to check for the second premise of the abstraction rule. While Severi's algorithm eliminates the need for considering new reduction relations, it still introduces a new framework. As a result, Severi needs to prove numerous properties for PTSWs before proving the soundness and completeness of the algorithm. Finally there are other algorithms that are concerned with the smaller class of (weakly) injective PTSs [2, 6]. These algorithms are simpler but do not cover all existing systems. For example some of the languages of the Automath family [4] and predicative F! [5] are not weakly injective. The purpose of this paper is to present a new sound and complete typechecking algorithm for functional PTSs. The novelty of our algorithm is to remain within the framework of PTSs. It is an improvement over [3, 8, 9]: our algorithm is conceptually clearer and suppresses the need for introducing new frameworks such as the ones of [3, 8, 9]. In order to dene our algorithm and prove it correct, we show that every functional PTS may be extended conservatively to a semi-full PTS, its semi-full closure. This result makes it possible to check, using Pollack's algorithm for semi-full PTSs, the second clause in the abstraction rule in the semi-full closure of the PTS under consideration. Contents The paper is organized as follows. Section 2 briey reviews the definition of PTSs. Section 3 introduces the semi-full closure of a PTS. Section 4 provides a sound and complete type-checking algorithm for functional PTSs. 2 Pure Type Systems In this section, we present the syntax of PTSs and refer to standard texts, see e.g. [1], for examples and motivations. Denition 1 (Specication). A specication is a triple S = (S; A; R) where S is a set of sorts, A S S is a set of axioms and R S S S is a set of rules. A specication S = (S; A; R) is functional if for every s 1 ; s 2 ; s 0 2 ; s 3; s S, (s 1 ; s 2 ) 2 A ^ (s 1 ; s 0 2) 2 A ) s 2 s 0 2 (s 1 ; s 2 ; s 3 ) 2 R ^ (s 1 ; s 2 ; s 0 3) 2 R ) s 3 s 0 3
3 Every specication S yields a PTS S as specied below. Throughout this section, S = (S; A; R) is a xed specication. Denition 2 (Pure Type System). 1. The set T of pseudo-terms is given by the abstract syntax T = V j S j T T j V : T :T j V : T :T where V is a xed countably innite set of variables. 2. -reduction! is dened as the compatible closure of the contraction (x:a: M) N! Mfx := Ng where f := g is the standard substitution operator. The reexive-transitive and reexive-symmetric-transitive closures of! are denoted by! and = respectively. 3. A pseudo-context is a nite ordered list x 1 : A 1 ; : : : ; x n : A n where x 1 ; : : : ; x n 2 V and A 1 ; : : : ; A n 2 T. The empty context is denoted by hi and the set of pseudo-contexts is denoted by G. If? 2 G, we let dom(? ) = fx j 9t 2 T : x : t 2? g. 4. A judgment is a triple M : A where? 2 G and M; A 2 T. The rules of Pure Type Systems are given in Figure 1. If M : A is derivable according to those rules, then? and M are legal. 5. S = (E; G;! ; `) is the Pure Type System (PTS) induced by S. Some of the results of this paper are concerned with normalization. Denition 3. We write S j= WN() and S j= SN() respectively if every legal term in S is -weakly normalizing and -strongly normalizing respectively. We conclude this section with a list of properties of PTSs. Lemma 1 (Closure properties). 1. Substitution. If?; x : A; ` B : C and a : A, then 1?; fx := ag ` Afx := ag : Bfx := ag. 2. Correctness of Types. If A : B then either B 2 S or there exists s 2 S such that B : s. 3. Correctness of Contexts. If?; x : C; ` A : B then there exists s 2 S such that C : s. 4. Subject Reduction. If M : A and M! N then N : A. 5. Predicate Reduction. If M : A and A! A 0 then M : A 0. Lemma 2 (Uniqueness of Types). Assume S is functional. M : A ^ M : A 0 ) A = A 0 1 Substitution is extended from pseudo-terms to pseudo-contexts in the usual way.
4 (axiom) hi ` s 1 : s 2 if (s 1; s 2) 2 A (start) (weakening) A : s?; x : A ` x : A A : B C : s?; x : C ` A : B and A 2 V [ S (product) (application) (abstraction) (conversion) A : s 1?; x : A ` B : s 2 (x: A: B) : s 3 if (s 1; s 2; s 3) 2 R F : (x: A: B) a : A F a : Bfx := ag?; x : A ` b : B (x: A: B) : s x:a: b : x: A: B A : B B 0 : s A : B 0 if B = B 0 Fig. 1. Rules for Pure Type Systems 3 The semi-full closure of a specication Semi-fullness is a technical condition ensuring that a PTS \has enough rules". This is to be contrasted with negative notions such as functionality or injectivity which ensure that a PTS \does not have too many rules". Because of the nature of semi-fullness, every PTS may be extended to a semi-full one while a non-functional or non-injective PTS may not be extended to a functional or an injective one. In fact, there are several ways to extend a PTS into a semi-full one. The next denition suggests two possibilities: the stratied closure, which is layered so as to facilitate reasoning, and the compact closure, which is more suited for type-checking purposes. Denition 4 (Semi-full, semi-full closure). Let S = (S; A; R) be a specication. Dene O = fs 2 S j 9s 0 ; s 00 2 S: (s; s 0 ; s 00 ) 2 Rg P = f(s 1 ; s 2 ) 2 O S j 8s 2 S: (s 1 ; s 2 ; s) 62 Rg 1. S is semi-full if P = ;. 2. The semi-full closure of S is the specication S = (S ; A; R ) where S = S [ fg and R = R [ f(s 1 ; s 2 ; ) j (s 1 ; s 2 ) 2 Pg [ f(s; ; ) j s 2 Og
5 The next result provides an alternative characterization of semi-fullness; in fact it corresponds to Pollack's original denition of semi-fullness. Lemma 3. Let S = (S; A; R) be a specication. 1. S is semi-full if for every s S and (s 1; s 2 ; s 3 ) 2 R, there exists s S such that (s 1 ; s 0 2 ; s0 3) 2 R. 2. S is semi-full. 3. If S is functional so is S. We conclude this section with two basic observations, which are fundamental for type-checking purposes. Below we use ` to denote derivability in S, where S is any given specication. Lemma 4. Let S = (S; A; R) be a functional specication. If x:a: B : s and?; x : A ` B : s 2 and s 2 S then x:a: B : s. Proof. By Correctness of sorts, there exists s 2 S such that A : s 1. A fortiori A : s 1 and?; x : A ` B : s 2. Moreover, we know (from generation on x:a:b : s that there exists (s 0 1 ; s0 2 ; s) 2 such that? R ` A : s 0 1 and?; x : A ` B : s 0 2. Since s 2 S, one concludes (s 1 ; s 2 ; s 3 ) 2 R. By (product), it follows x:a: B : s. Proposition 1. Let S be a functional specication. Proof. Dene : T! T as follows: S j= WN() ) S j= WN() (s) = s (x) = x (x:a: B) = x:(a): (B) (x:a: M) = x:(a): (M) ((P ))fx := (N)g (M N) = (M) (N) s 2 S x 2 V if M x:a: P otherwise One can show by induction on the structure of derivations that M : A ) (? ) ` (M) : (A) provided A 6= and (? ) is legal in S. As M = (M), it follows that M 2 WN(). To conclude, rst observe that for every M : A with A 6=, there exists? 0, M 0 and A 0 such that (? 0 ) is legal in S,? 0 ` M 0 : A 0 and M 0 2 WN() ) M 2 WN(). The key observation is that y cannot be bound because there is no rule of the form (; s; s 0 ). Hence one can safely replace subterms of the form y P by variables, say x y P, in such a way that x y P = x whenever y0 P 0 y P = y 0 P 0. By doing so, one obtains the desired judgement. Finally, we are left to treat the case where M : A with A =. One can proceed by induction on the structure of terms.
6 4 Type-checking In this section, we exploit the decidability of type-checking for semi-full normalizing PTSs [3, 8] to establish the decidability of type-checking for functional normalizing PTSs. (axiom) hi ` s 1 : s 2 if (s 1; s 2) 2 A (start)?; x : A ` A :! wh s x : A (weakening) (product) A : B?; x : C ` C :! wh s A : B and A 2 V [ S A :! wh s 1?; x : A ` B :! wh s 2 (x: A: B) : s 3 if (s 1; s 2; s 3) 2 R (application)? ` F :! wh (x: A 0 : B) F a : Bfx := ag a : A if A = A 0 (abstraction)?; x : A ` b : B A : s B 2 S ) B 2 S x:a: b : x: A: B if s 2 O Fig. 2. Syntax-directed rules for semi-full closures An important step towards decidability of type-checking is to provide a syntax-directed presentation of the rules of PTSs. In a nutshell, a set of rules is syntax-directed if the premises of a rule are determined up to inessential details by its conclusion. The next denition provides such a set of rules. It uses an auxiliary relation ` which instantiates the derivability relation ` of [3, 8] to S. Denition 5 (Syntax-directed Rules). 1. Weak-head reduction! wh is dened as the closure 2 of the contraction (x : A: P ) Q R 1 : : : R n! wh P fx := Qg R 1 : : : R n 2. A sort s is a typed sort, written s 2 S, if 9s 0 2 S: (s; s 0 ) 2 A. 3. The derivability relation M : A is given by the rules of Figure 2 where we write wh A if 9A 0 2 T : ^ A A0 0! wh A. 2 We insist on the closure not being compatible so weak-head reduction diers from -reduction by applying only at the top-level.
7 4. The derivability relation nat M : A is given by the rules of Figure 3 where we write nat M :! wh A if 9A 0 2 T : nat M : A 0 ^ A 0! wh A. The soundness and completeness of ` Proposition 2 ([3]). For every specication S, over ` is already known. 1. Soundness: M : A ) M : A. 2. Completeness: M : A ) 9A 0 2 T : M : A0 ^ A = A 0 (axiom) hi `nat s 1 : s 2 if (s 1; s 2) 2 A (start) (weakening) nat A :! wh s?; x : A `nat x : A nat A : B nat C :! wh s?; x : C `nat A : B and A 2 V [ S (product) nat A :! wh s 1?; x : A `nat B :! wh s 2 nat (x: A: B) : s 3 if (s 1; s 2; s 3) 2 R (application) nat F :! wh (x: A 0 : B) nat a : A nat F a : Bfx := ag (abstraction)?; x : A `nat b : B nat x:a: b : x: A: B x: A: B : s if A = A 0 if s 2 S Fig. 3. Syntax-directed rules for functional Pure Type Systems Using the above proposition, we conclude that `nat is sound and complete with respect to `. Theorem 1. If S is functional, then 1. Soundness: nat M : A ) M : A. 2. Completeness: M : A ) 9A 0 2 T : nat M : A 0 ^ A = A 0 Proof. Soundness is proved by induction on the derivations, using Lemma 4 in the (abstraction) rule. Completeness is also proved by induction on the structure of derivations, using soundness. The proofs are routine. Corollary 1 (Decidability of type-checking). If S = (S; A; R) is a functional specication, then type-checking is decidable provided S, A and R are recursive and S j= WN(). Proof. We need to prove that all side-conditions are decidable. Weak normalization is needed in order to decide -convertibility. Details are omitted.
8 Acknowledgments The author is supported by a European TMR Fellowship. References 1. H. Barendregt. Lambda calculi with types. In S. Abramsky, D. Gabbay, and T. Maibaum, editors, Handbook of Logic in Computer Science, pages 117{309. Oxford Science Publications, Volume G. Barthe. Type checking injective pure type systems. Manuscript, L.S. van Benthem Jutting, J. McKinna, and R. Pollack. Checking algorithms for pure type systems. In H. Barendregt and T. Nipkow, editors, Proceedings of TYPES'93, volume 806 of Lecture Notes in Computer Science, pages 19{61. Springer-Verlag, R. Nederpelt, H. Geuvers, and R. de Vrijer, editors. Selected papers on Automath, volume 133 of Studies in Logic and the Foundations of Mathematics. North-Holland, Amsterdam, S. Peyton Jones and E. Meijer. Henk: a typed intermediate language. Proceedings of the ACM Workshop on Types in Compilation, E. Poll. A typechecker for bijective pure type systems. Technical Report CSN93/22, Technical University of Eindhoven, June R. Pollack. Typechecking in pure type systems. In B. Nordstrom, editor, Informal proceedings of Logical Frameworks'92, pages 271{288, R. Pollack. The Theory of LEGO: A Proof Checker for the Extended Calculus of Constructions. PhD thesis, University of Edinburgh, P. Severi. Normalisation in lambda calculus and its relation to type inference. PhD thesis, Technical University of Eindhoven, 1996.
1.1 On -reduction Type theory has almost always been studied without -conversion (which is the analogue of -conversion on product type level). That is
On -conversion in the -cube and the combination with abbreviations Fairouz Kamareddine University of Glasgow Department of Computing Science 17 Lilybank Gardens Glasgow G12 8QQ Scotland FAX: +44 141 330
More informationCalculus of Inductive Constructions
Calculus of Inductive Constructions Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) Calculus of Inductive Constructions
More informationType checking in the presence of meta-variables
Type checking in the presence of meta-variables Ulf Norell and Catarina Coquand Department of Computer Science and Engineering Chalmers University of Technology {ulfn,catarina}@cs.chalmers.se Abstract.
More informationComparing Cubes. Steffen van Bakel Luigi Liquori Simona Ronchi della Rocca Paweł Urzyczyn
Comparing Cubes Steffen van Bakel Luigi Liquori Simona Ronchi della Rocca Paweł Urzyczyn Afdeling Informatica, Universiteit Nijmegen, Toernooiveld 1, 6525 ED Nijmegen, Nederland. E-mail steffen@cs.kun.nl.
More informationLecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1
CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanford.edu) January 11, 2018 Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 In this lecture
More informationLecture slides & distribution files:
Type Theory Lecture slides & distribution files: http://www.cs.rhul.ac.uk/home/zhaohui/ttlectures.html Zhaohui Luo Department of Computer Science Royal Holloway, University of London April 2011 2 Type
More informationExtracting the Range of cps from Affine Typing
Extracting the Range of cps from Affine Typing Extended Abstract Josh Berdine, Peter W. O Hearn Queen Mary, University of London {berdine, ohearn}@dcs.qmul.ac.uk Hayo Thielecke The University of Birmingham
More informationFoundations of AI. 9. Predicate Logic. Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution
Foundations of AI 9. Predicate Logic Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution Wolfram Burgard, Andreas Karwath, Bernhard Nebel, and Martin Riedmiller 09/1 Contents Motivation
More informationhas developed a specication of portions of the IEEE 854 oating-point standard in PVS [7]. In PVS, the injective function space injection can be dened
PVS: Combining Specication, Proof Checking, and Model Checking? To appear in CAV'96 S. Owre, S. Rajan, J. M. Rushby, N. Shankar, and M. Srivas Computer Science Laboratory, SRI International, Menlo Park
More informationA Note on Fairness in I/O Automata. Judi Romijn and Frits Vaandrager CWI. Abstract
A Note on Fairness in I/O Automata Judi Romijn and Frits Vaandrager CWI P.O. Box 94079, 1090 GB Amsterdam, The Netherlands judi@cwi.nl, fritsv@cwi.nl Abstract Notions of weak and strong fairness are studied
More information.Math 0450 Honors intro to analysis Spring, 2009 Notes #4 corrected (as of Monday evening, 1/12) some changes on page 6, as in .
0.1 More on innity.math 0450 Honors intro to analysis Spring, 2009 Notes #4 corrected (as of Monday evening, 1/12) some changes on page 6, as in email. 0.1.1 If you haven't read 1.3, do so now! In notes#1
More informationProving the Genericity Lemma by Leftmost Reduction is Simple
Proving the Genericity Lemma by Leftmost Reduction is Simple Jan Kuper University of Twente, Department of Computer Science P.O.Box 217, 7500 AE Enschede, The Netherlands e-mail: jankuper~cs.utwente.ul
More informationAn experiment with variable binding, denotational semantics, and logical relations in Coq. Adam Chlipala University of California, Berkeley
A Certified TypePreserving Compiler from Lambda Calculus to Assembly Language An experiment with variable binding, denotational semantics, and logical relations in Coq Adam Chlipala University of California,
More informationSORT INFERENCE \coregular" signatures, they derive an algorithm for computing a most general typing for expressions e which is only slightly more comp
Haskell Overloading is DEXPTIME{complete Helmut Seidl Fachbereich Informatik Universitat des Saarlandes Postfach 151150 D{66041 Saarbrucken Germany seidl@cs.uni-sb.de Febr., 1994 Keywords: Haskell type
More informationHigher-Order Conditional Term Rewriting. In this paper, we extend the notions of rst-order conditional rewrite systems
Higher-Order Conditional Term Rewriting in the L Logic Programming Language Preliminary Results Amy Felty AT&T Bell Laboratories 600 Mountain Avenue Murray Hill, NJ 07974 Abstract In this paper, we extend
More informationProvably Correct Software
Provably Correct Software Max Schäfer Institute of Information Science/Academia Sinica September 17, 2007 1 / 48 The Need for Provably Correct Software BUT bugs are annoying, embarrassing, and cost gazillions
More information3.4 Deduction and Evaluation: Tools Conditional-Equational Logic
3.4 Deduction and Evaluation: Tools 3.4.1 Conditional-Equational Logic The general definition of a formal specification from above was based on the existence of a precisely defined semantics for the syntax
More informationTaxonomic Syntax for First Order Inference. Abstract: We identify a new polynomial time decidable fragment of rst order
Taxonomic Syntax for First Order Inference DAVID MCALLESTER and ROBERT GIVAN Massachusetts Institute of Technology, Cambridge Massachusetts Abstract: We identify a new polynomial time decidable fragment
More informationType Safety. Java and ML are type safe, or strongly typed, languages. C and C++ are often described as weakly typed languages.
Java and ML are type safe, or strongly typed, languages. CMPSCI 630: Programming Languages Spring 2009 (with thanks to Robert Harper) C and C++ are often described as weakly typed languages. What does
More informationProgramming Languages Fall 2014
Programming Languages Fall 2014 Lecture 7: Simple Types and Simply-Typed Lambda Calculus Prof. Liang Huang huang@qc.cs.cuny.edu 1 Types stuck terms? how to fix it? 2 Plan First I For today, we ll go back
More informationTOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3.
TOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3. 301. Definition. Let m be a positive integer, and let X be a set. An m-tuple of elements of X is a function x : {1,..., m} X. We sometimes use x i instead
More informationConsistency and Set Intersection
Consistency and Set Intersection Yuanlin Zhang and Roland H.C. Yap National University of Singapore 3 Science Drive 2, Singapore {zhangyl,ryap}@comp.nus.edu.sg Abstract We propose a new framework to study
More informationMartin-L f's Type Theory. B. Nordstr m, K. Petersson and J. M. Smith. Contents. 5.4 The set of functions (Cartesian product of a family of sets) 24
Martin-L f's Type Theory B. Nordstr m, K. Petersson and J. M. Smith Contents 1 Introduction : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 1.1 Dierent formulations of type theory : : : :
More informationto automatically generate parallel code for many applications that periodically update shared data structures using commuting operations and/or manipu
Semantic Foundations of Commutativity Analysis Martin C. Rinard y and Pedro C. Diniz z Department of Computer Science University of California, Santa Barbara Santa Barbara, CA 93106 fmartin,pedrog@cs.ucsb.edu
More information,, 1{48 () c Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Optimal Representations of Polymorphic Types with Subtyping * ALEXAN
,, 1{48 () c Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Optimal Representations of Polymorphic Types with Subtyping * ALEXANDER AIKEN aiken@cs.berkeley.edu EECS Department, University
More informationCMSC 336: Type Systems for Programming Languages Lecture 5: Simply Typed Lambda Calculus Acar & Ahmed January 24, 2008
CMSC 336: Type Systems for Programming Languages Lecture 5: Simply Typed Lambda Calculus Acar & Ahmed January 24, 2008 Contents 1 Solution to the Exercise 1 1.1 Semantics for lambda calculus.......................
More informationABriefOverviewofAgda A Functional Language with Dependent Types
ABriefOverviewofAgda A Functional Language with Dependent Types Ana Bove, Peter Dybjer, and Ulf Norell e-mail: {bove,peterd,ulfn}@chalmers.se Chalmers University of Technology, Gothenburg, Sweden Abstract.
More informationA MECHANIZATION OF TYPE THEORY. Gerard P. HUBT IRIA - LABORIA Rocquencourt FRANCE
Session 6 Logic: II Theorem Proving and A MECHANIZATION OF TYPE THEORY Gerard P. HUBT IRIA - LABORIA Rocquencourt FRANCE ABSTRACT A refutational system of logic for a language of order w ia presented.
More informationEdinburgh Research Explorer
Edinburgh Research Explorer System Description: CyNTHIA Citation for published version: Whittle, J, Bundy, A, Boulton, R & Lowe, H 1999, System Description: CyNTHIA. in Automated Deduction CADE-16: 16th
More informationReconciling Dierent Semantics for Concept Denition (Extended Abstract) Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica Universita di Ro
Reconciling Dierent Semantics for Concept Denition (Extended Abstract) Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica Universita di Roma \La Sapienza" Via Salaria 113, 00198 Roma, Italia
More informationBeluga: A Framework for Programming and Reasoning with Deductive Systems (System Description)
Beluga: A Framework for Programming and Reasoning with Deductive Systems (System Description) Brigitte Pientka and Joshua Dunfield McGill University, Montréal, Canada {bpientka,joshua}@cs.mcgill.ca Abstract.
More informationFigure 1: A cycle's covering. Figure : Two dierent coverings for the same graph. A lot of properties can be easily proved on coverings. Co
Covering and spanning tree of graphs Anne Bottreau bottreau@labri.u-bordeaux.fr LaBRI-Universit Bordeaux I 351 cours de la Lib ration 33405 Talence cedex FRANCE tel: (+33) 05 56 84 4 31, fax:(+33) 05 56
More informationA technique for adding range restrictions to. August 30, Abstract. In a generalized searching problem, a set S of n colored geometric objects
A technique for adding range restrictions to generalized searching problems Prosenjit Gupta Ravi Janardan y Michiel Smid z August 30, 1996 Abstract In a generalized searching problem, a set S of n colored
More informationhigher type are \fully applied" that is, each occurrence is applied to enough arguments to reach a base type. Thus we see that the methodology of logi
On Equivalence and Canonical Forms in the LF Type Theory (Extended Abstract) Robert Harper and Frank Pfenning Department of Computer Science Carnegie Mellon University July 22, 1999 Abstract Decidability
More informationProgram Design in PVS. Eindhoven University of Technology. Abstract. Hoare triples (precondition, program, postcondition) have
Program Design in PVS Jozef Hooman Dept. of Computing Science Eindhoven University of Technology P.O. Box 513, 5600 MB Eindhoven, The Netherlands e-mail: wsinjh@win.tue.nl Abstract. Hoare triples (precondition,
More informationSymmetry in Type Theory
Google May 29th, 2012 What is Symmetry? Definition Symmetry: Two or more things that initially look distinct, may actually be instances of a more general underlying principle. Why do we care? Simplicity.
More informationChapter 2 The Language PCF
Chapter 2 The Language PCF We will illustrate the various styles of semantics of programming languages with an example: the language PCF Programming language for computable functions, also called Mini-ML.
More informationwhere is a constant, 0 < <. In other words, the ratio between the shortest and longest paths from a node to a leaf is at least. An BB-tree allows ecie
Maintaining -balanced Trees by Partial Rebuilding Arne Andersson Department of Computer Science Lund University Box 8 S-22 00 Lund Sweden Abstract The balance criterion dening the class of -balanced trees
More informationDynamic Logic David Harel, The Weizmann Institute Dexter Kozen, Cornell University Jerzy Tiuryn, University of Warsaw The MIT Press, Cambridge, Massac
Dynamic Logic David Harel, The Weizmann Institute Dexter Kozen, Cornell University Jerzy Tiuryn, University of Warsaw The MIT Press, Cambridge, Massachusetts, 2000 Among the many approaches to formal reasoning
More informationOn Soft Topological Linear Spaces
Republic of Iraq Ministry of Higher Education and Scientific Research University of AL-Qadisiyah College of Computer Science and Formation Technology Department of Mathematics On Soft Topological Linear
More informationJ. Barkley Rosser, 81, a professor emeritus of mathematics and computer science at the University of Wisconsin who had served in government, died
Church-Rosser J. Barkley Rosser, 81, a professor emeritus of mathematics and computer science at the University of Wisconsin who had served in government, died Sept. 5, 1989. Along with Alan Turing and
More informationEXTENSIONS OF FIRST ORDER LOGIC
EXTENSIONS OF FIRST ORDER LOGIC Maria Manzano University of Barcelona CAMBRIDGE UNIVERSITY PRESS Table of contents PREFACE xv CHAPTER I: STANDARD SECOND ORDER LOGIC. 1 1.- Introduction. 1 1.1. General
More informationA Simplied NP-complete MAXSAT Problem. Abstract. It is shown that the MAX2SAT problem is NP-complete even if every variable
A Simplied NP-complete MAXSAT Problem Venkatesh Raman 1, B. Ravikumar 2 and S. Srinivasa Rao 1 1 The Institute of Mathematical Sciences, C. I. T. Campus, Chennai 600 113. India 2 Department of Computer
More informationIn a previous paper [5], the rst author introduced and studied constructor subtyping for one rst-order mutually recursive parametric datatype, and sho
Constructor subtyping Gilles Barthe 12 and Maria Jo~ao Frade 1 1 Departamento de Informatica, Universidade do Minho, Braga, Portugal 2 Institutionen for Datavetenskap, Chalmers Tekniska Hogskola, Goteborg,
More informationREPRESENTATION OF DISTRIBUTIVE LATTICES BY MEANS OF ORDERED STONE SPACES
REPRESENTATION OF DISTRIBUTIVE LATTICES BY MEANS OF ORDERED STONE SPACES H. A. PRIESTLEY 1. Introduction Stone, in [8], developed for distributive lattices a representation theory generalizing that for
More informationDependent Object Types - A foundation for Scala's type system
Dependent Object Types - A foundation for Scala's type system Draft of January 14, 2010 Do Not Distrubute Martin Odersky, Georey Alan Washburn EPFL Abstract. 1 Introduction This paper presents a proposal
More informationTidying up the Mess around the Subsumption Theorem in Inductive Logic Programming Shan-Hwei Nienhuys-Cheng Ronald de Wolf bidewolf
Tidying up the Mess around the Subsumption Theorem in Inductive Logic Programming Shan-Hwei Nienhuys-Cheng cheng@cs.few.eur.nl Ronald de Wolf bidewolf@cs.few.eur.nl Department of Computer Science, H4-19
More informationEulerian subgraphs containing given edges
Discrete Mathematics 230 (2001) 63 69 www.elsevier.com/locate/disc Eulerian subgraphs containing given edges Hong-Jian Lai Department of Mathematics, West Virginia University, P.O. Box. 6310, Morgantown,
More information1.3. Conditional expressions To express case distinctions like
Introduction Much of the theory developed in the underlying course Logic II can be implemented in a proof assistant. In the present setting this is interesting, since we can then machine extract from a
More informationA Boolean Expression. Reachability Analysis or Bisimulation. Equation Solver. Boolean. equations.
A Framework for Embedded Real-time System Design? Jin-Young Choi 1, Hee-Hwan Kwak 2, and Insup Lee 2 1 Department of Computer Science and Engineering, Korea Univerity choi@formal.korea.ac.kr 2 Department
More informationType Inference with Recursive Type Equations
Type Inference with Recursive Type Equations Mario Coppo Dipartimento di Informatica, Università di Torino, Corso Svizzera 185, 10149 Torino, Italy coppo@di.unito.it http://www.di.unito.it/ coppo Abstract.
More informationType and Eect Systems via Abstract Interpretation. Jer^ome Vouillon. Pierre Jouvelot. CRI, Ecole des Mines de Paris. Abstract
Type and Eect Systems via Abstract Interpretation Jer^ome Vouillon Pierre Jouvelot CRI, Ecole des Mines de Paris fvouillon, jouvelotg@cri.ensmp.fr July 12, 1995 Abstract Abstract interpretation and type
More informationChordal graphs and the characteristic polynomial
Discrete Mathematics 262 (2003) 211 219 www.elsevier.com/locate/disc Chordal graphs and the characteristic polynomial Elizabeth W. McMahon ;1, Beth A. Shimkus 2, Jessica A. Wolfson 3 Department of Mathematics,
More information6.001 Notes: Section 6.1
6.001 Notes: Section 6.1 Slide 6.1.1 When we first starting talking about Scheme expressions, you may recall we said that (almost) every Scheme expression had three components, a syntax (legal ways of
More informationA NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU
COQHOTT A NEW PROOF-ASSISTANT THAT REVISITS THE THEORETICAL FOUNDATIONS OF COQ USING HOMOTOPY TYPE THEORY NICOLAS TABAREAU The CoqHoTT project Design and implement a brand-new proof assistant by revisiting
More informationHigher-Order Recursive Path Orderings à la carte
Higher-Order Recursive Path Orderings à la carte Jean-Pierre Jouannaud LRI, Université de Paris Sud 9405 Orsay, FRANCE and LIX, Ecole Polytechnique 9400 Palaiseau, FRANCE Albert Rubio Technical University
More informationcontribution of this paper is to demonstrate that rule orderings can also improve eciency by reducing the number of rule applications. In eect, since
Rule Ordering in Bottom-Up Fixpoint Evaluation of Logic Programs Raghu Ramakrishnan Divesh Srivastava S. Sudarshan y Computer Sciences Department, University of Wisconsin-Madison, WI 53706, U.S.A. Abstract
More informationReactive Types. Jean-Pierre Talpin. Campus de Beaulieu, Rennes, France.
Reactive Types Jean-Pierre Talpin IRISA (INRIA-Rennes & CNRS URA 227) Campus de Beaulieu, 35000 Rennes, France E-mail: talpin@irisa.fr Abstract. Synchronous languages, such as Signal, are best suited for
More informationProving Theorems with Athena
Proving Theorems with Athena David R. Musser Aytekin Vargun August 28, 2003, revised January 26, 2005 Contents 1 Introduction 1 2 Proofs about order relations 2 3 Proofs about natural numbers 7 3.1 Term
More informationSubsumption. Principle of safe substitution
Recap on Subtyping Subsumption Some types are better than others, in the sense that a value of one can always safely be used where a value of the other is expected. Which can be formalized as by introducing:
More informationsketchy and presupposes knowledge of semantic trees. This makes that proof harder to understand than the proof we will give here, which only needs the
The Subsumption Theorem in Inductive Logic Programming: Facts and Fallacies Shan-Hwei Nienhuys-Cheng Ronald de Wolf cheng@cs.few.eur.nl bidewolf@cs.few.eur.nl Department of Computer Science, H4-19 Erasmus
More informationThunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA
Thunks (continued) Olivier Danvy, John Hatcli Department of Computing and Information Sciences Kansas State University Manhattan, Kansas 66506, USA e-mail: (danvy, hatcli)@cis.ksu.edu Abstract: Call-by-name
More informationA more efficient algorithm for perfect sorting by reversals
A more efficient algorithm for perfect sorting by reversals Sèverine Bérard 1,2, Cedric Chauve 3,4, and Christophe Paul 5 1 Département de Mathématiques et d Informatique Appliquée, INRA, Toulouse, France.
More informationA Canonical 1 Locally Named Representation of Binding. α -equivalence is identity. Randy Pollack. Masahiko Sato. LFCS, University of Edinburgh
A Canonical 1 Locally Named Representation of Binding Randy Pollack LFCS, University of Edinburgh Masahiko Sato Graduate School of Informatics, Kyoto University Version of December 7, 2009 1 α -equivalence
More informationWeak Normalization for the Simply-Typed Lambda-Calculus in Twelf
LFM 2004 Preliminary Version Weak Normalization for the Simply-Typed Lambda-Calculus in Twelf Andreas Abel 1 Department of Computer Science, Chalmers University of Technology Rännvägen 6, SWE-41296 Göteborg,
More informationSTABILITY AND PARADOX IN ALGORITHMIC LOGIC
STABILITY AND PARADOX IN ALGORITHMIC LOGIC WAYNE AITKEN, JEFFREY A. BARRETT Abstract. Algorithmic logic is the logic of basic statements concerning algorithms and the algorithmic rules of deduction between
More informationSyntactic Type Soundness for HM
Syntactic Type Soundness for HM Christian Skalka The Johns Hopkins University François Pottier INRIA Rocquencourt The system HM The system HM is a constraint based type framework: Sulzmann, PhD thesis
More informationTilings of the Euclidean plane
Tilings of the Euclidean plane Yan Der, Robin, Cécile January 9, 2017 Abstract This document gives a quick overview of a eld of mathematics which lies in the intersection of geometry and algebra : tilings.
More informationNegations in Refinement Type Systems
Negations in Refinement Type Systems T. Tsukada (U. Tokyo) 14th March 2016 Shonan, JAPAN This Talk About refinement intersection type systems that refute judgements of other type systems. Background Refinement
More informationOperational Semantics
15-819K: Logic Programming Lecture 4 Operational Semantics Frank Pfenning September 7, 2006 In this lecture we begin in the quest to formally capture the operational semantics in order to prove properties
More informationPoint-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS
Point-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS Definition 1.1. Let X be a set and T a subset of the power set P(X) of X. Then T is a topology on X if and only if all of the following
More informationLecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1
CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanfordedu) February 6, 2018 Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 In the
More informationLess naive type theory
Institute of Informatics Warsaw University 26 May 2007 Plan 1 Syntax of lambda calculus Why typed lambda calculi? 2 3 Syntax of lambda calculus Why typed lambda calculi? origins in 1930s (Church, Curry)
More informationtime using O( n log n ) processors on the EREW PRAM. Thus, our algorithm improves on the previous results, either in time complexity or in the model o
Reconstructing a Binary Tree from its Traversals in Doubly-Logarithmic CREW Time Stephan Olariu Michael Overstreet Department of Computer Science, Old Dominion University, Norfolk, VA 23529 Zhaofang Wen
More informationSynchronization Expressions: Characterization Results and. Implementation. Kai Salomaa y Sheng Yu y. Abstract
Synchronization Expressions: Characterization Results and Implementation Kai Salomaa y Sheng Yu y Abstract Synchronization expressions are dened as restricted regular expressions that specify synchronization
More informationSome Types of Regularity and Normality Axioms in ech Fuzzy Soft Closure Spaces
http://wwwnewtheoryorg ISSN: 2149-1402 Received: 21062018 Published: 22092018 Year: 2018, Number: 24, Pages: 73-87 Original Article Some Types of Regularity and Normality Axioms in ech Fuzzy Soft Closure
More informationarxiv: v1 [cs.lo] 25 Sep 2015
Counting isomorphism classes of β-normal linear lambda terms Noam Zeilberger September 28, 2015 arxiv:1509.07596v1 [cs.lo] 25 Sep 2015 Abstract Unanticipated connections between different fragments of
More informationAn LCF-Style Interface between HOL and First-Order Logic
An LCF-Style Interface between HOL and First-Order Logic Joe Hurd Computer Laboratory University of Cambridge, joe.hurd@cl.cam.ac.uk 1 Introduction Performing interactive proof in the HOL theorem prover
More informationTHREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions.
THREE LECTURES ON BASIC TOPOLOGY PHILIP FOTH 1. Basic notions. Let X be a set. To make a topological space out of X, one must specify a collection T of subsets of X, which are said to be open subsets of
More informationλ calculus is inconsistent
Content Rough timeline COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification Gerwin Klein, June Andronick, Toby Murray λ Intro & motivation, getting started [1] Foundations & Principles
More informationContents. Chapter 1 SPECIFYING SYNTAX 1
Contents Chapter 1 SPECIFYING SYNTAX 1 1.1 GRAMMARS AND BNF 2 Context-Free Grammars 4 Context-Sensitive Grammars 8 Exercises 8 1.2 THE PROGRAMMING LANGUAGE WREN 10 Ambiguity 12 Context Constraints in Wren
More informationLecture Notes on Program Equivalence
Lecture Notes on Program Equivalence 15-312: Foundations of Programming Languages Frank Pfenning Lecture 24 November 30, 2004 When are two programs equal? Without much reflection one might say that two
More informationPARSIFAL Summer 2011 Internship Report Logically validating logic programs
PARSIFAL Summer 2011 Internship Report Logically validating logic programs Chris Martens August 22, 2011 1 Overview Logic programs can be used to specify systems, and logic programming languages such as
More informationJournal of Asian Scientific Research WEAK SEPARATION AXIOMS VIA OPEN SET AND CLOSURE OPERATOR. Mustafa. H. Hadi. Luay. A. Al-Swidi
Journal of Asian Scientific Research Special Issue: International Conference on Emerging Trends in Scientific Research, 2014 journal homepage: http://www.aessweb.com/journals/5003 WEAK SEPARATION AXIOMS
More informationThe Formal Semantics of Programming Languages An Introduction. Glynn Winskel. The MIT Press Cambridge, Massachusetts London, England
The Formal Semantics of Programming Languages An Introduction Glynn Winskel The MIT Press Cambridge, Massachusetts London, England Series foreword Preface xiii xv 1 Basic set theory 1 1.1 Logical notation
More informationBasic Elements of Logical Graphs
Basic Elements of Logical Graphs Lucas Dixon CAM-CAD 2009 Abstract We considers how a particular kind of graph corresponds to multiplicative intuitionistic linear logic formula. The main feature of the
More informationHarvard School of Engineering and Applied Sciences CS 152: Programming Languages
Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 19 Tuesday, April 3, 2018 1 Introduction to axiomatic semantics The idea in axiomatic semantics is to give specifications
More informationType raising, continuations, and classical logic
Type raising, continuations, and classical logic Philippe de Groote Inria-Lorraine Abstract. There is a striking analogy between type raising, as introduced by Montague (973), and the notion of continuation
More informationFrom Types to Sets in Isabelle/HOL
From Types to Sets in Isabelle/HOL Extented Abstract Ondřej Kunčar 1 and Andrei Popescu 1,2 1 Fakultät für Informatik, Technische Universität München, Germany 2 Institute of Mathematics Simion Stoilow
More informationOn the Logical Foundations of Staged Computation
On the Logical Foundations of Staged Computation Frank Pfenning PEPM 00, Boston, MA January 22, 2000 1. Introduction 2. Judgments and Propositions 3. Intensional Types 4. Run-Time Code Generation 5. The
More informationFixed points of Kannan mappings in metric spaces endowed with a graph
An. Şt. Univ. Ovidius Constanţa Vol. 20(1), 2012, 31 40 Fixed points of Kannan mappings in metric spaces endowed with a graph Florin Bojor Abstract Let (X, d) be a metric space endowed with a graph G such
More informationDependent types and program equivalence. Stephanie Weirich, University of Pennsylvania with Limin Jia, Jianzhou Zhao, and Vilhelm Sjöberg
Dependent types and program equivalence Stephanie Weirich, University of Pennsylvania with Limin Jia, Jianzhou Zhao, and Vilhelm Sjöberg What are dependent types? Types that depend on values of other types
More informationA Nim game played on graphs II
Theoretical Computer Science 304 (2003) 401 419 www.elsevier.com/locate/tcs A Nim game played on graphs II Masahiko Fukuyama Graduate School of Mathematical Sciences, University of Tokyo, 3-8-1 Komaba,
More informationOn the Complexity of the Policy Improvement Algorithm. for Markov Decision Processes
On the Complexity of the Policy Improvement Algorithm for Markov Decision Processes Mary Melekopoglou Anne Condon Computer Sciences Department University of Wisconsin - Madison 0 West Dayton Street Madison,
More informationIdentifying non-redundant literals in clauses with uniqueness propagation
Identifying non-redundant literals in clauses with uniqueness propagation Hendrik Blockeel Department of Computer Science, KU Leuven Abstract. Several authors have proposed increasingly efficient methods
More informationLOGIC AND DISCRETE MATHEMATICS
LOGIC AND DISCRETE MATHEMATICS A Computer Science Perspective WINFRIED KARL GRASSMANN Department of Computer Science University of Saskatchewan JEAN-PAUL TREMBLAY Department of Computer Science University
More informationCSE-321 Programming Languages 2011 Final
Name: Hemos ID: CSE-321 Programming Languages 2011 Final Prob 1 Prob 2 Prob 3 Prob 4 Prob 5 Prob 6 Total Score Max 15 15 10 17 18 25 100 There are six problems on 18 pages in this exam, including one extracredit
More informationThe Calculus of Constructions and. Higher Order Logic. Toernooiveld 1, 6525 ED Nijmegen, August Abstract
The Calculus of Constructions and Higher Order Logic Herman Geuvers, Faculty of Mathematics and Computer Science, University of Nijmegen, Toernooiveld 1, 6525 ED Nijmegen, The Netherlands August 1992 Abstract
More informationStability of Networks and Protocols in the Adversarial Queueing. Model for Packet Routing. Ashish Goel. December 1, Abstract
Stability of Networks and Protocols in the Adversarial Queueing Model for Packet Routing Ashish Goel University of Southern California December 1, 2000 Abstract The adversarial queueing theory model for
More information2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006
2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006 The Encoding Complexity of Network Coding Michael Langberg, Member, IEEE, Alexander Sprintson, Member, IEEE, and Jehoshua Bruck,
More information