Nominal Completion for Rewrite Systems with Binders

Size: px
Start display at page:

Download "Nominal Completion for Rewrite Systems with Binders"

Transcription

1 Nominal Completion for Rewrite Systems with Binders Maribel Fernández King s College London July 2012 Joint work with Albert Rubio

2 Summary Motivations Nominal Rewriting Closed nominal rules Confluence and Termination Completion Future work

3 First-order languages vs. languages with binders First-order data structures: numbers, lists, trees, etc. available in most programming languages. Few languages provide data structures with binding, needed in type checkers, program analysers, compilers, etc.

4 Binding operators: Examples Some concrete examples of binding operators (informally): Operational semantics: let a = N in M (fun a.m)n

5 Binding operators: Examples Some concrete examples of binding operators (informally): Operational semantics: let a = N in M (fun a.m)n π-calculus: P νa.q νa.(p Q) (a fv(p))

6 Binding operators: Examples Some concrete examples of binding operators (informally): Operational semantics: let a = N in M (fun a.m)n π-calculus: P νa.q νa.(p Q) (a fv(p)) Logic equivalences: P and ( x.q) x(p and Q) (x fv(p))

7 Binders - α-equivalence Binding operators are defined modulo renaming of bound variables, i.e., α-equivalence. Example: In x.p the variable x can be renamed. α-conversion is implicit, but x.p α y.p x may occur in P.

8 Binders - α-equivalence Binding operators are defined modulo renaming of bound variables, i.e., α-equivalence. Example: In x.p the variable x can be renamed. α-conversion is implicit, but x.p α y.p x may occur in P. x.p = α y.p{x y} Substitution of a bound name by a term has to avoid capture of other bound names: y fresh?

9 Binders - α-equivalence Binding operators are defined modulo renaming of bound variables, i.e., α-equivalence. Example: In x.p the variable x can be renamed. α-conversion is implicit, but x.p α y.p x may occur in P. x.p = α y.p{x y} Substitution of a bound name by a term has to avoid capture of other bound names: y fresh? Formal definition. There are several alternatives.

10 Formally: Alternatives: Encode in a first-order rewrite system e.g. use De Bruijn indices, encode alpha using operators such as lift and shift ; explicit substitutions. (-) α-equivalence has to be implemented (+) simple notion of substitution, efficient first-order matching

11 Formally: Alternatives: Encode in a first-order rewrite system e.g. use De Bruijn indices, encode alpha using operators such as lift and shift ; explicit substitutions. (-) α-equivalence has to be implemented (+) simple notion of substitution, efficient first-order matching Higher-order rewrite systems (CRS, HRS, ERS, etc.), e.g. app(lam([a]z(a)), Z ) Z(Z ) (+) Binders, functions, implicit α-equivalence (-) Substitution as a meta-operation, using β (-) Unification is undecidable in general

12 Alternative: Nominal Approach [Pitts, Gabbay, Urban,...] Inspired by nominal set theory (Fraenkel-Mostowski). Key ideas: Freshness conditions a#t, name swapping (a b) t. Example: app(lam([a]z), Z ) subst([a]z, Z ) a#m (λ([a]app(m, a)) M Terms with binders Built-in α-equivalence Efficient matching and unification algorithms Simple notion of substitution ( first-order ), non-capturing substitution has to be specified using rewrite rules. Dependencies of terms on names are implicit.

13 Nominal Syntax [Urban,Pitts,Gabbay: TCS 04] Function symbols: f, g... Variables: M, N, X, Y,... Atoms: a, b,... Swappings: (a b) Def. (a b)a = b, (a b)b = a, (a b)c = c Permutations: lists of swappings, denoted π (Id empty). Nominal Terms: Id X written as X. s, t ::= a π X [a]t f t (t 1,..., t n ) Example (ML): var(a), app(t, t ), lam([a]t), let(t, [a]t ), letrec[f ]([a]t, t ), subst([a]t, t ) Syntactic sugar: a, (tt ), λa.t, let a = t in t, letrec fa = t in t, t[a t ]

14 α-equivalence We use freshness to avoid name capture. a#x means a fv(x ) when X is instantiated. where ds(π, π )#X a α a π X α π X s 1 α t 1 s n α t n s α t (s 1,..., s n ) α (t 1,..., t n ) fs α ft s α t a#t [a]s α [a]t s α (a b) t [a]s α [b]t ds(π, π ) = {n π(n) π (n)} a#x, b#x (a b) X α X

15 α-equivalence We use freshness to avoid name capture. a#x means a fv(x ) when X is instantiated. a α a ds(π, π )#X π X α π X where s 1 α t 1 s n α t n s α t (s 1,..., s n ) α (t 1,..., t n ) fs α ft s α t a#t [a]s α [a]t s α (a b) t [a]s α [b]t ds(π, π ) = {n π(n) π (n)} a#x, b#x (a b) X α X b#x λ[a]x α λ[b](a b) X

16 Freshness Also defined by induction: a#b a#[a]s a#s 1 a#s n a#(s 1,..., s n ) π 1 (a)#x a#π X a#s a#s a#fs a#[b]s

17 Nominal Rewriting Rewriting on nominal terms. Applications: equational reasoning on data structures with binding; algebraic specifications of operators and data structures; operational semantics of programs; compilers, program transformations, etc.

18 Nominal Rewriting Nominal Rewriting Rules: l r V (r) V ( ) V (l) Example: prenex normal forms in first-order logic a#p P [a]q [a](p Q) a#p ( [a]q) P [a](q P) a#p P [a]q [a](p Q) a#p ( [a]q) P [a](q P) a#p P [a]q [a](p Q) a#p ( [a]q) P [a](q P) a#p P [a]q [a](p Q) a#p ( [a]q) P [a](q P) ( [a]q) [a] Q ( [a]q) [a] Q Reduction relation generated by (equivariant) nominal matching.

19 Nominal matching problem l α t where V (l) V (t) = has solution (, θ) if lθ α t Nominal matching is decidable [Urban, Pitts, Gabbay 2003] A solvable problem Pr has a unique most general solution: (Γ, θ) such that Γ Prθ. Efficient algorithms: linear in time and space [Calves-F.2008] BTW, nominal unification is quadratic [Calves-F.2010,Levy-Villaret2010]. But for general NRSs nominal matching is not sufficient: we need Equivariant Nominal Matching NP [Cheney2004]. If rules are closed, then nominal matching is sufficient.

20 Closed Rules Intuitively: no free names. R l r is closed when ( (l, r ))? (, A(R )#V (R) (l, r)) has a solution σ (where R is a freshened copy of R). Given R l r and s we write s R c t when, A(R )#V (, s) s R t and call this closed rewriting.

21 Examples The following rules are not closed: g(a) a [a]x X Why?

22 Examples The following rule is closed: Why? a#x [a]x X

23 Examples The following rules are closed, they define capture-avoiding substitution in the lambda calculus. We introduce a term-former subst which we sugar to t[a t ]. (Beta) (λ[a]x )X X [a X ] (σ App ) (XX )[a Y ] X [a Y ]X [a Y ] (σ var ) a[a X ] X (σ ɛ ) a#y Y [a X ] Y (σ fn ) b#y (λ[b]x )[a Y ] λ[b](x [a Y ])

24 Properties of Closed Rewriting Closed Nominal Rewriting: works uniformly in α equivalence classes of terms.

25 Properties of Closed Rewriting Closed Nominal Rewriting: works uniformly in α equivalence classes of terms. is expressive: can encode Combinatory Reduction Systems.

26 Properties of Closed Rewriting Closed Nominal Rewriting: works uniformly in α equivalence classes of terms. is expressive: can encode Combinatory Reduction Systems. efficient matching.

27 Properties of Closed Rewriting Closed Nominal Rewriting: works uniformly in α equivalence classes of terms. is expressive: can encode Combinatory Reduction Systems. efficient matching. inherits confluence conditions from first order rewriting.

28 Confluence Suppose 1 R i = i l i r i for i = 1, 2 are copies of two rules in R such that V (R 1 ) V (R 2 ) = (R 1 and R 2 could be copies of the same rule). 2 l 1 L[l 1 ] such that 1, 2, l 1?? l 2 has a principal solution (Γ, θ), so that Γ l 1 θ α l 2 θ and Γ i θ for i = 1, 2. Then Γ (r 1 θ, Lθ[r 2 θ]) is a critical pair. If L = [-] and R 1, R 2 are copies of the same rule, or if l 1 is a variable, then we say the critical pair is trivial. Critical Pair Lemma: A closed nominal rewrite system where all non-trivial critical pairs are joinable, is locally confluent. Orthogonality: If all the rules are closed, left-linear, and without superpositions nominal rewriting is confluent.

29 Termination Many techniques for first-order systems: well developed area. Example: recursive path ordering [Dershowitz] rpo: A well-founded precedence on function symbols generates a well-founded ordering on first-order terms.

30 Nominal rpo - Version 1 Idea: Equate all atoms (by collapsing them into a unique atom a). Precedence: extend a precedence on the signature Σ {a, [a] } Formally: 1 ˆt coincides with t except that all the atoms have been replaced by a distinguished atom a. 2 s > t if ŝ > rpo ˆt using a precedence > Σ on Σ {a, [a] }, such that f > Σ [a] > Σ a for all f Σ.

31 Nominal rpo version 1 Let be a freshness context, s, t nominal terms over Σ, and > Σ a precedence on Σ. We write s > t, if ŝ > ˆt as defined below, where is the reflexive closure of >, and > mul is the multiset extension of >. 1 [a]s > t if s t 2 s > [a]t if root(s) Σ and s > t 3 [a]s > [a]t if s > t 4 [a]s > a 5 f (s 1,..., s n ) > t if s i t for some i, f Σ 6 f (s 1,..., s n ) > g(t 1,..., t m ) if f > Σ g and f (s 1,..., s n ) > t i for all i 7 f (s 1,..., s n ) > a 8 f (s 1,..., s n ) > g(t 1,..., t m ) if f = Σ g and {s 1,..., s n } > mul {t 1,..., t m }.

32 Examples We can order the nominal rewriting rules that compute prenex normal form of first-order logic formulas: Use a precedence > Σ, > Σ, > Σ, > Σ, > Σ, > Σ Then a#p P [a]q > [a](p Q)

33 Example[Jouannaud-RubioCSL2008] HORPO to compare terms in λ-calculus extended with constants Example: f (g([x]f (x, x)), g([x]f (x, x))) > [x]f (x, x) in the HORPO and also in the nominal rpo (because g([a]f (a, a)) > a). More interesting: f (g(x, Y ))) > g(x, [a]f (h(y, a))) using the nominal rpo but not comparable with HORPO Proof: Assume f > Σ g > Σ h, then f (g(x, Y ))) > X and f (g(x, Y ))) > [a]f (h(y, a))). The first one is trivial (subterm relation). For the second, we show f (g(x, Y ))) > f (h(y, a))), which requires g(x, Y ) > h(y, a). Since g(x, Y ) > Y, and g(x, Y ) > a, we are done.

34 Nominal rpo - Version 1 Properties It is a reduction ordering: 1 transitive, irreflexive, well-founded, and preserved by context and substitution, because we have s > t if and only if ŝ > rpo ˆt 2 preserved by α, that is, it works uniformly in α-equivalence classes Not preserved under atom substitution. To obtain an ordering preserved by atom substitution we need to distinguish unabstracted atoms.

35 Nominal rpo Let > Σ be a precedence on Σ. Let C = {c 1, c 2,...} such that C A(, s, t) = s > t, defined by cases below, where is >. 1 [a]s > t if c#s,t (a c) s t, for an arbitrary c C A(, [a]s, t). 2 s > [a]t if root(s) Σ and c#s,t s > (a c) t, for an arbitrary c C A(, s, [a]t). 3 [a]s > [b]t if c#s,t (a c) s > (b c) t, for an arbitrary c C A(, [a]s, [b]t). 4 [a]s > [a]t if s > t. 5 [a]s > c if c C. 6 f (s 1,..., s n ) > t if s i t for some i. 7 f (s 1,..., s n ) > g(t 1,..., t m ) if f > Σ g and f (s 1,..., s n ) > t i for all i. 8 f (s 1,..., s n ) > c if c C. 9 f (s 1,..., s n ) > g(t 1,..., t m ) if f = Σ g and {s 1,..., s n } > mul {t 1,..., t m }.

36 Examples Precedence to order the rules for prenex normal form: > Σ, > Σ, > Σ, > Σ, > Σ, > Σ Example: a#p P [a]q > nrpo [a](p Q) Proof: since > Σ, we show a#p P [a]q > [a](p Q) We have an abstraction in the rhs, so we show a#p, c#p, c#q P [a]q > (a c) P (a c) Q We now compare their subterms. Since a#p, c#p, c#q P α (a c) P, it boils down to proving a#p, c#p, c#q [a]q > (a c) Q, We show a#p, c#p, c#q [a]q (a c) Q This is a consequence of a#p, c#p, c#q, c #Q (a c ) Q (a c) Q, which holds since ds((a c ), (a c)) = {a, c, c } and we can derive a#p, c#p, c#q, c #Q (a c ) Q (a c) Q

37 Properties The nominal rpo has the following properties: 1 If s > nrpo t then: 1 For all C[-], C[s] > nrpo C[t]. 2 For all π, π s > nrpo π t. 3 For all Γ such that Γ σ, Γ sσ > nrpo tσ. 2 It is a decidable, irreflexive and transitive relation. 3 It is well founded when the precedence is well-founded: there are no infinite descending chains s 1 > nrpo s 2 > nrpo... 4 Compatible with α and preserved by capture-avoiding atom-substitution.

38 Confluence and Termination of Nominal Rewriting If an equational theory can be represented by a confluent and terminating rewrite system, then equational reasoning can be mechanised. Closed rewriting is sufficient to decide equality modulo a nominal equational theory if the axioms can be oriented to form a confluent and terminating closed NRS [LFMTP2010].

39 Confluence and Termination of Nominal Rewriting Theorem If for all l r in an NRS R we have l > r, where > is one of the orderings defined above, then R is terminating. Newman s Lemma: Local confluence + termination implies confluence.

40 Kunth-Bendix Completion If a nominal rewriting system is not confluent, but it is terminating: compute critical pairs and try to add rules to join them. Key ideas: Critical pair lemma Nominal rpo to check termination Critical pairs CAN be added as rules (no problems with types or format as in other rewriting formalisms that manipulate binders)

41 Nominal Completion Transformation rules on pairs (E, R) (closed nominal equations and nominal rewriting rules) Input: (E, ) and a (well-founded) reduction ordering > Transformation rules: (E, R) (E s = t, R) if (s, t) critical pair of R (E s = t, R) (E, R s t) if s > t (E s = t, R) (E, R t s) if t > s (E s = t, R) (E, R) if s α t (E s = t, R) (E s = t, R) if s c R s (E s = t, R) (E s = t, R) if t c R t (E, R s t) (E, R s t ) if t c R t (E, R s t) (E s = t, R) if s c R s As in the case of first-order rewriting, the rule that computes critical pairs should be used in a controlled way.

42 Example The following rules are inspired by [Nipkow-Prehofer1998]. As ordering take nrpo with any precedence. (η) a#x λ([a]app(x, a)) X ( ) app(, Y ) There is a critical pair since the unification problem a#x, app(x, a)?? app(, Y ) has solution {X, Y a}: λ([a] ) = can be oriented into λ([a] ).

43 Example The following rules are inspired by Van de Pol s PhD thesis (1996). As ordering take nrpo with precedence Σ > + and Σ > app > id. a#f Σ(0, [a]app(f, a)) 0 a#f Σ(s(N), [a]app(f, a)) app(f, s(n)) + Σ(N, [a]app(f, a)) id(x ) X app(id0, X ) id(x ) With the fourth rule applied on the first and second we obtain two critical pairs: Σ(0, [a]id(a)) = 0 and Σ(s(N), [a]id(a)) = app(id0, s(n)) + Σ(N, [a]app(id0, a)) which can be simplified and oriented as follows: Σ(0, [a]a) 0 and Σ(s(N), [a]a) s(n) + Σ(N, [a]a).

44 Conclusion Nominal Terms: extension of first-order syntax, efficient matching modulo α. Clean semantics: Nominal Sets Equational reasoning and rewriting Completion as a tool to mechanise nominal equational logic Future work: functional abstraction and capture-avoiding substitution, more powerful type systems,...

Nominal Rewriting. Maribel Fernández. ISR - June King s College London

Nominal Rewriting. Maribel Fernández. ISR - June King s College London King s College London ISR - June 2009 - Course Syllabus Introduction First-order languages Languages with binding operators Specifying binders: α-equivalence Nominal terms Nominal unification (unification

More information

Nominal Matching and Alpha-Equivalence (Extended Abstract)

Nominal Matching and Alpha-Equivalence (Extended Abstract) Nominal Matching and Alpha-Equivalence (Extended Abstract) Christophe Calvès and Maribel Fernández King s College London, Department of Computer Science, Strand, London WC2R 2LS, UK Christophe.Calves@kcl.ac.uk

More information

Relating Nominal and Higher-Order Pattern Unification

Relating Nominal and Higher-Order Pattern Unification Relating Nominal and Higher-Order Pattern Unification James Cheney University of Edinburgh UNIF 2005 April 22, 2005 1 Motivation Higher-order unification: studied since ca. 1970 Undecidable, infinitary,

More information

Nominal Unification. Key words: Abstract Syntax, Alpha-Conversion, Binding Operations, Unification

Nominal Unification. Key words: Abstract Syntax, Alpha-Conversion, Binding Operations, Unification Nominal Unification Christian Urban a Andrew M. Pitts a Murdoch J. Gabbay b a University of Cambridge, Cambridge, UK b INRIA, Paris, France Abstract We present a generalisation of first-order unification

More information

Equational Logic. Chapter 4

Equational Logic. Chapter 4 Chapter 4 Equational Logic From now on First-order Logic is considered with equality. In this chapter, I investigate properties of a set of unit equations. For a set of unit equations I write E. Full first-order

More information

07 Equational Logic and Algebraic Reasoning

07 Equational Logic and Algebraic Reasoning CAS 701 Fall 2004 07 Equational Logic and Algebraic Reasoning Instructor: W. M. Farmer Revised: 17 November 2004 1 What is Equational Logic? Equational logic is first-order logic restricted to languages

More information

Capture-Avoiding Substitution as a Nominal Algebra

Capture-Avoiding Substitution as a Nominal Algebra Under consideration for publication in Formal Aspects of Computing Capture-Avoiding Substitution as a Nominal Algebra Murdoch J. Gabbay 1 and Aad Mathijssen 2 Abstract. Substitution is fundamental to the

More information

HORSes: format, termination and confluence

HORSes: format, termination and confluence HORSes: format, termination and confluence Jean-Pierre Jouannaud INRIA-LIAMA and singhua Software Chair Joint on-going work with Jianqi Li School of Software, singhua University Project CoqLF NList Cross-discipline

More information

Most General Unifiers in Generalized Nominal Unification

Most General Unifiers in Generalized Nominal Unification Most General Unifiers in Generalized Nominal Unification Yunus D K Kutz 1 and Manfred Schmidt-Schauß 2 1 Goethe-University Frankfurt am Main, Germany, kutz@kiinformatikuni-frankfurtde 2 Goethe-University

More information

Modularity of Confluence: A Simplified Proof

Modularity of Confluence: A Simplified Proof 1 Modularity of Confluence: A Simplified Proof Jan Willem Klop 1,2,5,6 Aart Middeldorp 3,5 Yoshihito Toyama 4,7 Roel de Vrijer 2 1 Department of Software Technology CWI, Kruislaan 413, 1098 SJ Amsterdam

More information

King s Research Portal

King s Research Portal King s Research Portal DOI: 10.1016/j.entcs.2016.06.004 Document Version Publisher's PDF, also known as Version of record Link to publication record in King's Research Portal Citation for published version

More information

Relating Nominal and Higher-Order Pattern Unification

Relating Nominal and Higher-Order Pattern Unification Relating Nominal and Higher-Order Pattern Unification James Cheney University of Edinburgh jcheney@inf.ed.ac.uk Abstract. Higher-order pattern unification and nominal unification are two approaches to

More information

Names and Symmetry in Computer Science

Names and Symmetry in Computer Science 1/27 Names and Symmetry in Computer Science Andrew Pitts Computer Laboratory LICS 2015 Tutorial 2/27 An introduction to nominal techniques motivated by Programming language semantics Automata theory Constructive

More information

Theorem 4.18 ( Critical Pair Theorem ) A TRS R is locally confluent if and only if all its critical pairs are joinable.

Theorem 4.18 ( Critical Pair Theorem ) A TRS R is locally confluent if and only if all its critical pairs are joinable. 4.4 Critical Pairs Showing local confluence (Sketch): Problem: If t 1 E t 0 E t 2, does there exist a term s such that t 1 E s E t 2? If the two rewrite steps happen in different subtrees (disjoint redexes):

More information

Nominal Lawvere Theories: A Category Theoretic Account of Equational Theories with Names

Nominal Lawvere Theories: A Category Theoretic Account of Equational Theories with Names Nominal Lawvere Theories: A Category Theoretic Account of Equational Theories with Names Ranald Clouston 1 Logic and Computation Group, Research School of Computer Science, The Australian National University,

More information

Outline. Overview. Introduction. Well-Founded Monotone Algebras. Monotone algebras. Polynomial Interpretations. Dependency Pairs

Outline. Overview. Introduction. Well-Founded Monotone Algebras. Monotone algebras. Polynomial Interpretations. Dependency Pairs Overview Lecture 1: Introduction, Abstract Rewriting Lecture 2: Term Rewriting Lecture 3: Combinatory Logic Lecture 4: Termination Lecture 5: Matching, Unification Lecture 6: Equational Reasoning, Completion

More information

Predicate Logic. Xinyu Feng 09/26/2011. University of Science and Technology of China (USTC)

Predicate Logic. Xinyu Feng 09/26/2011. University of Science and Technology of China (USTC) University of Science and Technology of China (USTC) 09/26/2011 Overview Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic?

More information

Cheat Sheet Equational Logic (Spring 2013) Terms. Inductive Construction. Positions: Denoting Subterms TERMS

Cheat Sheet Equational Logic (Spring 2013) Terms. Inductive Construction. Positions: Denoting Subterms TERMS TERMS Cheat Sheet Equational Logic (Spring 2013) The material given here summarizes those notions from the course s textbook [1] that occur frequently. The goal is to have them at hand, as a quick reminder

More information

Dependent Types and Explicit Substitutions

Dependent Types and Explicit Substitutions NASA/CR-1999-209722 ICASE Report No. 99-43 Dependent Types and Explicit Substitutions César Muñoz ICASE, Hampton, Virginia Institute for Computer Applications in Science and Engineering NASA Langley Research

More information

Towards Correctness of Program Transformations Through Unification and Critical Pair Computation

Towards Correctness of Program Transformations Through Unification and Critical Pair Computation Towards Correctness of Program Transformations Through Unification and Critical Pair Computation Conrad Rau and Manfred Schmidt-Schauß Institut für Informatik Johann Wolfgang Goethe-Universität Postfach

More information

The Lambda-Calculus Reduction System

The Lambda-Calculus Reduction System 2 The Lambda-Calculus Reduction System 2.1 Reduction Systems In this section we present basic notions on reduction systems. For a more detailed study see [Klop, 1992, Dershowitz and Jouannaud, 1990]. Definition

More information

Nominal Syntax and Semantics

Nominal Syntax and Semantics Nominal Syntax and Semantics Andrew Pitts University of Cambridge Computer Laboratory APPSEM 2005, 1 - p. 1 How best to reconcile Mathematics of syntax syntactical issues to do with name-binding and α-conversion

More information

Rewriting, Explicit Substitutions and Normalisation

Rewriting, Explicit Substitutions and Normalisation Rewriting, Explicit Substitutions and Normalisation XXXVI Escola de Verão do MAT Universidade de Brasilia Part 1/3 Eduardo Bonelli LIFIA (Fac. de Informática, UNLP, Arg.) and CONICET eduardo@lifia.info.unlp.edu.ar

More information

Semantic Labelling for Proving Termination of Combinatory Reduction Systems. Makoto Hamana

Semantic Labelling for Proving Termination of Combinatory Reduction Systems. Makoto Hamana Semantic Labelling for Proving Termination of Combinatory Reduction Systems Makoto Hamana Department of Computer Science, Gunma University, Japan WFLP 09 June, 2009. 1 2 Intro: Termination Proof by RPO

More information

Universal Algebra for Termination of Higher-Order Rewriting. Makoto Hamana

Universal Algebra for Termination of Higher-Order Rewriting. Makoto Hamana Universal Algebra for Termination of Higher-Order Rewriting Makoto Hamana Department of Computer Science, Gunma University, Japan RTA 05 2005, April 1 Intro: First-Order Term Rewriting System (TRS) Terms

More information

Theoretical Computer Science 323 (2004) Nominal unication. Cambridge CB3 OFD, UK b INRIA, Paris, France

Theoretical Computer Science 323 (2004) Nominal unication. Cambridge CB3 OFD, UK b INRIA, Paris, France Theoretical Computer Science 323 (2004) 473 497 www.elsevier.com/locate/tcs Nominal unication Christian Urban a, Andrew M. Pitts a;, Murdoch J. Gabbay b a University of Cambridge, Marconi Laboratory, William

More information

The Locally Nameless Representation

The Locally Nameless Representation Noname manuscript No. (will be inserted by the editor) The Locally Nameless Representation Arthur Charguéraud Received: date / Accepted: date Abstract This paper provides an introduction to the locally

More information

1 Introduction to Predicate Resolution

1 Introduction to Predicate Resolution 1 Introduction to Predicate Resolution The resolution proof system for Predicate Logic operates, as in propositional case on sets of clauses and uses a resolution rule as the only rule of inference. The

More information

Binding in Nominal Equational Logic

Binding in Nominal Equational Logic MFPS 2010 Binding in Nominal Equational Logic Ranald Clouston 1,2 Computer Laboratory, University of Cambridge, Cambridge CB3 0DF, United Kingdom Abstract Many formal systems, particularly in computer

More information

λ Slide 1 Content Exercises from last time λ-calculus COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification

λ Slide 1 Content Exercises from last time λ-calculus COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification Content COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification Toby Murray, June Andronick, Gerwin Klein λ Slide 1 Intro & motivation, getting started [1] Foundations & Principles Lambda

More information

A Recursion Combinator for Nominal Datatypes Implemented in Isabelle/HOL

A Recursion Combinator for Nominal Datatypes Implemented in Isabelle/HOL A Recursion Combinator for Nominal Datatypes Implemented in Isabelle/HOL Christian Urban and Stefan Berghofer Technische Universität München {urbanc,berghofe}@in.tum.de Abstract. The nominal datatype package

More information

On the Complexity of the Reflected Logic of Proofs

On the Complexity of the Reflected Logic of Proofs On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,

More information

CONSTRAINT SOLVING IN NON-PERMUTATIVE NOMINAL ABSTRACT SYNTAX

CONSTRAINT SOLVING IN NON-PERMUTATIVE NOMINAL ABSTRACT SYNTAX Logical Methods in Computer Science Vol. 7 (3:06) 2011, pp. 1 31 www.lmcs-online.org Submitted Jan. 3, 2011 Published Aug. 25, 2011 CONSTRAINT SOLVING IN NON-PERMUTATIVE NOMINAL ABSTRACT SYNTAX MATTHEW

More information

Rewrite Combinators. Stephen Diehl

Rewrite Combinators. Stephen Diehl Rewrite Combinators Stephen Diehl (@smdiehl) Term Rewriting Term rewriting is a system that consist of a set of objects, plus relations on how to transform those objects. Very general idea, well studied

More information

Nominal Unification with Atom-Variables

Nominal Unification with Atom-Variables Nominal Unification with Atom-Variables Manfred Schmidt-Schauß Goethe-University Frankfurt am Main, Germany David Sabel Goethe-University Frankfurt am Main, Germany Yunus D. K. Kutz Goethe-University Frankfurt

More information

An introduction to process calculi: Calculus of Communicating Systems (CCS)

An introduction to process calculi: Calculus of Communicating Systems (CCS) An introduction to process calculi: Calculus of Communicating Systems (CCS) Lecture 2 of Modelli Matematici dei Processi Concorrenti Paweł Sobociński University of Southampton, UK Intro to process calculi:

More information

A Proof Theory for Generic Judgments

A Proof Theory for Generic Judgments A Proof Theory for Generic Judgments Dale Miller INRIA/Futurs/Saclay and École Polytechnique Alwen Tiu École Polytechnique and Penn State University LICS 2003, Ottawa, Canada, 23 June 2003 Outline 1. Motivations

More information

This work was partially supported by CAPES PVE 146/2012 and CNPq UNIVERSAL /

This work was partially supported by CAPES PVE 146/2012 and CNPq UNIVERSAL / ominal arrowing Mauricio Ayala-Rincón 1, Maribel Fernández 2, and Daniele antes-sobrinho 3 1 Departamentos de Ciência da Computação e Matemática, Universidade de Brasília, Brasília, Brazil ayala@unb.br

More information

Translating Combinatory Reduction Systems into the Rewriting Calculus

Translating Combinatory Reduction Systems into the Rewriting Calculus Electronic Notes in Theoretical Computer Science 86 No. 2 (2003) URL: http://www.elsevier.nl/locate/entcs/volume86.html 17 pages Translating Combinatory Reduction Systems into the Rewriting Calculus Clara

More information

Alpha-Structural Recursion and Induction

Alpha-Structural Recursion and Induction Alpha-Structural Recursion and Induction ANDREW M. PITTS Cambridge University, Cambridge, UK Abstract. The nominal approach to abstract syntax deals with the issues of bound names and α-equivalence by

More information

Mathematical Synthesis of Equational Deduction Systems. Marcelo Fiore. Computer Laboratory University of Cambridge

Mathematical Synthesis of Equational Deduction Systems. Marcelo Fiore. Computer Laboratory University of Cambridge Mathematical Synthesis of Equational Deduction Systems Marcelo Fiore Computer Laboratory University of Cambridge TLCA 2009 3.VII.2009 Context concrete theories meta-theories Context concrete theories meta-theories

More information

The Curry-Howard Isomorphism

The Curry-Howard Isomorphism The Curry-Howard Isomorphism Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) The Curry-Howard Isomorphism MFES 2008/09

More information

Equational Reasoning and Completion. Dominik Klein

Equational Reasoning and Completion. Dominik Klein Equational Reasoning and Completion by Dominik Klein submitted to Japan Advanced Institute of Science and Technology in partial fulfillment of the requirements for the degree of Doctor of Philosophy Supervisor:

More information

Beyond First-Order Logic

Beyond First-Order Logic Beyond First-Order Logic Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) Beyond First-Order Logic MFES 2008/09 1 / 37 FOL

More information

A Polynomial Algorithm for Uniqueness of Normal Forms of Linear Shallow Term Rewrite Systems 1. Julian Zinn 2 and Rakesh Verma

A Polynomial Algorithm for Uniqueness of Normal Forms of Linear Shallow Term Rewrite Systems 1. Julian Zinn 2 and Rakesh Verma A Polynomial Algorithm for Uniqueness of Normal Forms of Linear Shallow Term Rewrite Systems 1 Julian Zinn 2 and Rakesh Verma Computer Science Department University of Houston Houston, TX, 77204, USA http://www.cs.uh.edu

More information

Predicate Logic. Xinyu Feng 11/20/2013. University of Science and Technology of China (USTC)

Predicate Logic. Xinyu Feng 11/20/2013. University of Science and Technology of China (USTC) University of Science and Technology of China (USTC) 11/20/2013 Overview Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic?

More information

The Logical Meeting Point of Multiset Rewriting and Process Algebra

The Logical Meeting Point of Multiset Rewriting and Process Algebra MFPS 20 @ MU May 25, 2004 The Logical Meeting Point of Multiset Rewriting and Process Algebra Iliano ervesato iliano@itd.nrl.navy.mil ITT Industries, inc @ NRL Washington, D http://theory.stanford.edu/~iliano

More information

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications NICTA Advanced Course Theorem Proving Principles, Techniques, Applications λ 1 CONTENT Intro & motivation, getting started with Isabelle Foundations & Principles Lambda Calculus Higher Order Logic, natural

More information

Gluing Nominal Theories

Gluing Nominal Theories École ormale Supérieure de Lyon Master d Informatique Fondamentale, 1 re année Gluing ominal Theories Florian Hatat with Roy L. Crole University of Leicester June August 2007 Contents 1 Introduction 2

More information

Complete Selection Functions for a Lazy Conditional Narrowing Calculus

Complete Selection Functions for a Lazy Conditional Narrowing Calculus Complete Selection Functions for a Lazy Conditional Narrowing Calculus Aart Middeldorp Institute of Information Sciences and Electronics University of Tsukuba, Tsukuba 305-8573, Japan ami@is.tsukuba.ac.jp

More information

Predicate Logic. x. x + 0 = x. Predicate logic over integer expressions: a language of logical assertions, for example. Why discuss predicate logic?

Predicate Logic. x. x + 0 = x. Predicate logic over integer expressions: a language of logical assertions, for example. Why discuss predicate logic? Predicate Logic Predicate logic over integer expressions: a language of logical assertions, for example x. x + 0 = x Why discuss predicate logic? It is an example of a simple language It has simple denotational

More information

Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison

Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison 1 Reasoning with Higher-Order Abstract Syntax and Contexts: A Comparison Amy Felty University of Ottawa July 13, 2010 Joint work with Brigitte Pientka, McGill University 2 Comparing Systems We focus on

More information

Formal SOS-Proofs for the Lambda-Calculus

Formal SOS-Proofs for the Lambda-Calculus LSFA 8 Formal SOS-Proofs for the Lambda-Calculus Christian Urban 1 and Julien Narboux TU Munich, Germany University of Strasbourg, France Abstract We describe in this paper formalisations for the properties

More information

1.3. BASIC COMPUTER SCIENCE PREREQUISITES 15

1.3. BASIC COMPUTER SCIENCE PREREQUISITES 15 1.3. BASIC COMPUTER SCIENCE PREREQUISITES 15 For example, if L is reducible to L and L P then L P. A decision problem is NP-hard if every problem in NP is polynomial time reducible to it. A decision problem

More information

Herbrand Theorem, Equality, and Compactness

Herbrand Theorem, Equality, and Compactness CSC 438F/2404F Notes (S. Cook and T. Pitassi) Fall, 2014 Herbrand Theorem, Equality, and Compactness The Herbrand Theorem We now consider a complete method for proving the unsatisfiability of sets of first-order

More information

CS522 - Programming Language Semantics

CS522 - Programming Language Semantics 1 CS522 - Programming Language Semantics Simply Typed Lambda Calculus Grigore Roşu Department of Computer Science University of Illinois at Urbana-Champaign 2 We now discuss a non-trivial extension of

More information

COMP6463: λ-calculus

COMP6463: λ-calculus COMP6463: λ-calculus 1. Basics Michael Norrish Michael.Norrish@nicta.com.au Canberra Research Lab., NICTA Semester 2, 2015 Outline Introduction Lambda Calculus Terms Alpha Equivalence Substitution Dynamics

More information

Nominal Dependent Types as a Logical Framework

Nominal Dependent Types as a Logical Framework ominal Dependent Types as a Logical Framework Elliot Fairweather, Maribel Fernández, ora Szasz, Alvaro Tasistro King s College London University ORT Uruguay July 20, 2011 Abstract We present a logical

More information

Completeness and Incompleteness in nominal Kleene algebra

Completeness and Incompleteness in nominal Kleene algebra 1/35 Completeness and Incompleteness in nominal Kleene algebra Dexter Kozen, Konstantinos Mamouras, Alexandra Silva Cornell University, University College London & HasLab INESC TEC September 28th, 2015

More information

Grammatical resources: logic, structure and control

Grammatical resources: logic, structure and control Grammatical resources: logic, structure and control Michael Moortgat & Dick Oehrle 1 Grammatical composition.................................. 5 1.1 Grammar logic: the vocabulary.......................

More information

7 RC Simulates RA. Lemma: For every RA expression E(A 1... A k ) there exists a DRC formula F with F V (F ) = {A 1,..., A k } and

7 RC Simulates RA. Lemma: For every RA expression E(A 1... A k ) there exists a DRC formula F with F V (F ) = {A 1,..., A k } and 7 RC Simulates RA. We now show that DRC (and hence TRC) is at least as expressive as RA. That is, given an RA expression E that mentions at most C, there is an equivalent DRC expression E that mentions

More information

Type Theory and Constructive Mathematics. Type Theory and Constructive Mathematics Thierry Coquand. University of Gothenburg

Type Theory and Constructive Mathematics. Type Theory and Constructive Mathematics Thierry Coquand. University of Gothenburg Type Theory and Constructive Mathematics Type Theory and Constructive Mathematics Thierry Coquand University of Gothenburg Content An introduction to Voevodsky s Univalent Foundations of Mathematics The

More information

Non- -overlappings TRSs are UN. Stefan Kahrs and Connor Smith University of Kent

Non- -overlappings TRSs are UN. Stefan Kahrs and Connor Smith University of Kent Non- -overlappings TRSs are UN Stefan Kahrs and Connor Smith University of Kent This is about: When is the equational theory of a TRS consistent (CON), when does it have unique normal forms (UN), How can

More information

Advanced Lambda Calculus Lecture 5

Advanced Lambda Calculus Lecture 5 Advanced Lambda Calculus Lecture 5 The fathers Alonzo Church (1903-1995) as mathematics student at Princeton University (1922 or 1924) Haskell B. Curry (1900-1982) as BA in mathematics at Harvard (1920)

More information

arxiv: v3 [cs.pl] 27 May 2013

arxiv: v3 [cs.pl] 27 May 2013 Epressibility in the Lambda Calculus with µ Clemens Grabmayer 1 and Jan Rochel 2 1 Department of Philosophy, Utrecht University PO Bo 8126, 358 TC Utrecht, The Netherlands clemensphil.uu.nl 2 Department

More information

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Today s class will be an introduction

More information

Groupe de travail. Analysis of Mobile Systems by Abstract Interpretation

Groupe de travail. Analysis of Mobile Systems by Abstract Interpretation Groupe de travail Analysis of Mobile Systems by Abstract Interpretation Jérôme Feret École Normale Supérieure http://www.di.ens.fr/ feret 31/03/2005 Introduction I We propose a unifying framework to design

More information

Automata Theory and Formal Grammars: Lecture 1

Automata Theory and Formal Grammars: Lecture 1 Automata Theory and Formal Grammars: Lecture 1 Sets, Languages, Logic Automata Theory and Formal Grammars: Lecture 1 p.1/72 Sets, Languages, Logic Today Course Overview Administrivia Sets Theory (Review?)

More information

Nominal Unification from a Higher-Order Perspective

Nominal Unification from a Higher-Order Perspective Nominal Unification from a Higher-Order Perspective Jordi Levy 1 and Mateu Villaret 2 1 Artificial Intelligence Research Institute (IIIA), Spanish Council for Scientific Research (CSIC), Barcelona, Spain

More information

Deciding Confluence of Certain Term Rewriting Systems in Polynomial Time

Deciding Confluence of Certain Term Rewriting Systems in Polynomial Time Deciding Confluence of Certain Term Rewriting Systems in Polynomial Time Ashish Tiwari SRI International 333 Ravenswood Ave Menlo Park, CA, U.S.A tiwari@csl.sri.com Abstract We present a polynomial time

More information

A REWRITING VIEW OF SIMPLE TYPING

A REWRITING VIEW OF SIMPLE TYPING A REWRITING VIEW OF SIMPLE TYPING AARON STUMP, HANS ZANTEMA, GARRIN KIMMELL, AND RUBA EL HAJ OMAR Computer Science, The University of Iowa e-mail address: astump@acm.org Department of Computer Science,

More information

First-Order Logic. 1 Syntax. Domain of Discourse. FO Vocabulary. Terms

First-Order Logic. 1 Syntax. Domain of Discourse. FO Vocabulary. Terms First-Order Logic 1 Syntax Domain of Discourse The domain of discourse for first order logic is FO structures or models. A FO structure contains Relations Functions Constants (functions of arity 0) FO

More information

Model Evolution with Equality Revised and Implemented

Model Evolution with Equality Revised and Implemented Model Evolution with Equality Revised and Implemented Peter Baumgartner 1 NICTA and The Australian National University, Canberra, Australia Björn Pelzer Institute for Computer Science, Universität Koblenz-Landau,

More information

hal , version 1-21 Oct 2009

hal , version 1-21 Oct 2009 ON SKOLEMISING ZERMELO S SET THEORY ALEXANDRE MIQUEL Abstract. We give a Skolemised presentation of Zermelo s set theory (with notations for comprehension, powerset, etc.) and show that this presentation

More information

Local Representations of Binding

Local Representations of Binding Local Representations of Binding Randy Pollack LFCS, University of Edinburgh Joint work with James McKinna, Christian Urban, Arthur Charguéraud, Brian Aydemir, Benjamin Pierce, Stephanie Weirich Version

More information

Categories, Proofs and Programs

Categories, Proofs and Programs Categories, Proofs and Programs Samson Abramsky and Nikos Tzevelekos Lecture 4: Curry-Howard Correspondence and Cartesian Closed Categories In A Nutshell Logic Computation 555555555555555555 5 Categories

More information

Murdoch J. Gabbay and Michael J. Gabbay

Murdoch J. Gabbay and Michael J. Gabbay a-logic Murdoch J. Gabbay and Michael J. Gabbay 1 Introduction Mathematics and computer science pervasively use logics formal languages for reasoning in. One of the most common is classical First-Order

More information

Under consideration for publication in Theory and Practice of Logic Programming 1. AC-KBO Revisited AKIHISA YAMADA

Under consideration for publication in Theory and Practice of Logic Programming 1. AC-KBO Revisited AKIHISA YAMADA Under consideration for publication in Theory and Practice of Logic Programming 1 AC-KBO Revisited AKIHISA YAMADA Research Institute for Secure Systems, AIST, Japan SARAH WINKLER Institute of Computer

More information

A Semantic Criterion for Proving Infeasibility in Conditional Rewriting

A Semantic Criterion for Proving Infeasibility in Conditional Rewriting A Semantic Criterion for Proving Infeasibility in Conditional Rewriting Salvador Lucas Raúl Gutiérrez DSIC, Universitat Politècnica de València, Spain 6 th International Workshop on Confluence, IWC 2017

More information

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw Applied Logic Lecture 1 - Propositional logic Marcin Szczuka Institute of Informatics, The University of Warsaw Monographic lecture, Spring semester 2017/2018 Marcin Szczuka (MIMUW) Applied Logic 2018

More information

Introduction to Logic in Computer Science: Autumn 2007

Introduction to Logic in Computer Science: Autumn 2007 Introduction to Logic in Computer Science: Autumn 2007 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Tableaux for First-order Logic The next part of

More information

Syntax of FOL. Introduction to Logic in Computer Science: Autumn Tableaux for First-order Logic. Syntax of FOL (2)

Syntax of FOL. Introduction to Logic in Computer Science: Autumn Tableaux for First-order Logic. Syntax of FOL (2) Syntax of FOL Introduction to Logic in Computer Science: Autumn 2007 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam The syntax of a language defines the way in which

More information

Lazy Strong Normalization

Lazy Strong Normalization Lazy Strong Normalization Luca Paolini 1,2 Dipartimento di Informatica Università di Torino (ITALIA) Elaine Pimentel 1,2 Departamento de Matemática Universidade Federal de Minas Gerais (BRASIL) Dipartimento

More information

First-Order Theorem Proving and Vampire

First-Order Theorem Proving and Vampire First-Order Theorem Proving and Vampire Laura Kovács 1,2 and Martin Suda 2 1 TU Wien 2 Chalmers Outline Introduction First-Order Logic and TPTP Inference Systems Saturation Algorithms Redundancy Elimination

More information

Equational Reasoning in Algebraic Structures: a Complete Tactic

Equational Reasoning in Algebraic Structures: a Complete Tactic Equational Reasoning in Algebraic Structures: a Complete Tactic Luís Cruz-Filipe 1,2 and Freek Wiedijk 1 1 NIII, University of Nijmegen, Netherlands and 2 CLC, Lisbon, Portugal Abstract We present rational,

More information

Clausal Presentation of Theories in Deduction Modulo

Clausal Presentation of Theories in Deduction Modulo Gao JH. Clausal presentation of theories in deduction modulo. JOURNAL OF COMPUTER SCIENCE AND TECHNOL- OGY 28(6): 1085 1096 Nov. 2013. DOI 10.1007/s11390-013-1399-0 Clausal Presentation of Theories in

More information

3.17 Semantic Tableaux for First-Order Logic

3.17 Semantic Tableaux for First-Order Logic 3.17 Semantic Tableaux for First-Order Logic There are two ways to extend the tableau calculus to quantified formulas: using ground instantiation using free variables Tableaux with Ground Instantiation

More information

Origin in Mathematical Logic

Origin in Mathematical Logic Lambda Calculus Origin in Mathematical Logic Foundation of mathematics was very much an issue in the early decades of 20th century. Cantor, Frege, Russel s Paradox, Principia Mathematica, NBG/ZF Origin

More information

Associative-commutative rewriting via flattening

Associative-commutative rewriting via flattening Associative-commutative rewriting via flattening Jean-Pierre Jouannaud LIX, École Polytechnique 91400 Palaiseau, France Email: jouannaud@lix.polytechnique.fr http://www.lix.polytechnique.fr/labo/jouannaud

More information

Logical Calculi for Reasoning with Binding

Logical Calculi for Reasoning with Binding Logical Calculi for Reasoning with Binding PROEFSCHRIFT ter verkrijging van de graad van doctor aan de Technische Universiteit Eindhoven, op gezag van de Rector Magnificus, prof.dr.ir. C.J. van Duijn,

More information

Propositional and Predicate Logic. jean/gbooks/logic.html

Propositional and Predicate Logic.   jean/gbooks/logic.html CMSC 630 February 10, 2009 1 Propositional and Predicate Logic Sources J. Gallier. Logic for Computer Science, John Wiley and Sons, Hoboken NJ, 1986. 2003 revised edition available on line at http://www.cis.upenn.edu/

More information

A proof checking kernel for the λπ-calculus modulo

A proof checking kernel for the λπ-calculus modulo A proof checking kernel for the λπ-calculus modulo Mathieu Boespflug, École Polytechnique PhD defense, 18 january 2011 Funded by Pythia of Delphi Pythia of Delphi True False Proof implies truth. 1 1 For

More information

Sequent Combinators: A Hilbert System for the Lambda Calculus

Sequent Combinators: A Hilbert System for the Lambda Calculus Sequent Combinators: A Hilbert System for the Lambda Calculus Healfdene Goguen Department of Computer Science, University of Edinburgh The King s Buildings, Edinburgh, EH9 3JZ, United Kingdom Fax: (+44)

More information

Disunification for Ultimately Periodic Interpretations

Disunification for Ultimately Periodic Interpretations Disunification for Ultimately Periodic Interpretations Matthias Horbach Max-Planck-Institut für Informatik and Saarland University Saarbrücken, Germany horbach@mpi-inf.mpg.de Abstract. Disunification is

More information

a-logic with arrows Murdoch J. Gabbay 1 Michael J. Gabbay 2 1 Introduction

a-logic with arrows Murdoch J. Gabbay 1 Michael J. Gabbay 2 1 Introduction a-logic with arrows Murdoch J. Gabbay 1 Michael J. Gabbay 2 Abstract We present an extension of first-order predicate logic with a novel predicate at t meaning intuitively this term is a variable symbol.

More information

Static Program Analysis

Static Program Analysis Static Program Analysis Xiangyu Zhang The slides are compiled from Alex Aiken s Michael D. Ernst s Sorin Lerner s A Scary Outline Type-based analysis Data-flow analysis Abstract interpretation Theorem

More information

First Order Logic (FOL) 1 znj/dm2017

First Order Logic (FOL) 1   znj/dm2017 First Order Logic (FOL) 1 http://lcs.ios.ac.cn/ znj/dm2017 Naijun Zhan March 19, 2017 1 Special thanks to Profs Hanpin Wang (PKU) and Lijun Zhang (ISCAS) for their courtesy of the slides on this course.

More information

Nominal Equational Logic

Nominal Equational Logic Electronic Notes in Theoretical Computer Science 172 (2007) 223 257 www.elsevier.com/locate/entcs Nominal Equational Logic Ranald A. Clouston 1 Andrew M. Pitts 2 Computer Laboratory, University of Cambridge,

More information

Computational Soundness of a Call by Name Calculus of Recursively-scoped Records. UMM Working Papers Series, Volume 2, Num. 3.

Computational Soundness of a Call by Name Calculus of Recursively-scoped Records. UMM Working Papers Series, Volume 2, Num. 3. Computational Soundness of a Call by Name Calculus of Recursively-scoped Records. UMM Working Papers Series, Volume 2, Num. 3. Elena Machkasova Contents 1 Introduction and Related Work 1 1.1 Introduction..............................

More information