Operational and Denotational Semantics. Solution.

Size: px
Start display at page:

Download "Operational and Denotational Semantics. Solution."

Transcription

1 Operational and Denotational Semantics Please turn in by April 5, 2011 (-1 point penalty per day late) Solution. We consider an enriched, typed λ-calculus with constants for arithmetic expressions and recursion. Note that the essential question is question 9. This is the one that takes the longest to answer, and the one that will really tell me whether you understand (variants of) techniques we have seen in theλ-calculus. The types are σ,τ ::= Nat σ τ. All the terms in the language come with explicit types. In particular, we assume an infinite, countable set of variables of each type τ, and write x τ for a variable of type τ. The terms t of typeτ (in short, t : τ) are defined by induction on their size by : every variable x τ is of typeτ ; ifn : τ, then λx σ N is a term of type σ τ ; ifm : σ τ andn : σ, then MN is a term of type τ ; for each n N, there is a distinct constant n : Nat ; there are distinct constants pred : Nat Nat (subtract one), succ : Nat (add one), ifz τ : Nat τ τ τ (test if first argument equals 0), and Y τ : (τ τ) τ (fixpoint, recursion). As in the λ-calculus, the terms are understood up to α-renaming. This takes the special form thatx σ can be replaced by any fresh variable y σ of the same typeσ inλx σ t. We drop type indices whenever they are irrelevant or can be reconstructed from context. We define its semantics not through reduction, but by building a machine directly. The contexts are defined by the grammar E := EN succe prede ifz E N P, where N, P denote terms.. We see contexts as particular terms, with a unique occurrence of a specific variable that does not occur in any term, called the hole. A context E is of type σ τ when E is of type τ, assuming the hole of type σ. E[M] denotes the replacement of the hole by M (of typeσ). Our machine is a transition system whose configurations are pairs E M. Intuitively, in such a configuration, the machine is in the process of evaluating E[M], and the focus is currently on the subterm M. 1

2 The machine rules come into two groups. The first form the redex discovery rules. E.g., in (DApp), the machine tries to evaluate MN, and proceeds by pushing the argument N into the context and focusing on the function part M. (DApp) E MN E[ N] M (DIf) E[ MNP] ifz E[ifz N P] M (DPred) E[ N] pred E[pred ] N (DSucc) E[ N] succ E[succ ] N The second group of rules computes : (β) E[ N] λx P E P[x := N] (Y) E[ N] Y E N(YN) (pred) E[pred ] n+1 E n (succ) E[succ ] n E n+1 (ifz0) E[ifz N P] 0 E N (ifz1) E[ifz N P] n+1 E P We do not take the closure of under contexts, whatever this may mean. The relation is entirely specified by the rules above. We also consider a denotational semantics of the above terms. First, we define the cpo τ of all values of typeτ : Nat isn, the set of all natural numbers plus an added, so-called bottom element. These are ordered by m n iff m = or m = n. (Think as all element of N being incomparable and above.) σ τ is the dcpo [ σ τ ] of all continuous maps from σ to τ. They are ordered byf g iff f(x) g(x) in τ for every x σ. 1. Show that every term t has exactly one type. This is by induction on the size oft, using the fact that every term has at least one type by definition, and conversely that the type is determined from a unique typing rule. E.g., if our term is MN, then M has a unique type, N has a unique type, and since MN has a type at all, it must be obtained by the rule if M : σ τ and N : σ then MN is a term of type τ, which determines τ uniquely. If our term is λx σ N, then N has a unique type τ, and therefore the unique type of λx σ N is σ τ. This is the only interesting case, and justifies why we explicitly decorate the variable x σ with its type. Finally, the types of variables and constants are uniquely determined. 2. Show that τ has a least element τ, for every type τ. By abuse of language, we shall write instead of τ, and call it bottom. It is useful to think of as non-termination. By induction on τ. N has as its least element, and if τ is the least element of τ, then the constant map with value τ is the bottom element of σ τ. Then we define the semantics t ρ of terms t : τ as values in τ in environments ρ mapping each variable x σ to an element of σ, by : x σ ρ = ρ(x σ ) ; MN ρ = M ρ( N ρ) ; λx σ N ρ is the function that maps each v σ to N (ρ[x σ := v]) ; n ρ = n, for every n N ; 2

3 pred ρ is the map that sendsn+1 to n N, and0and to ; succ ρ is the map that sendsn N to n+1, and to ; ifz τ ρ is the map that sendsu,v,w to ifu =, to v if u = 0, and to w ifu = 0, ; Y τ ρ is the map that sendsf [ τ τ ] to sup n N f n ( τ ). 3. Given any continuous map f [ τ τ ], show that lfp(f) = sup n N f n ( τ ) exists in τ, and is the least fixpoint of f. A fixpoint of f is an element v such that f(v) = v. It is least iff v w for every other fixpoint w. (This is meant to explain the definition of Y τ ρ.) We first check that (f n ( τ )) n N is a chain, i.e., f 0 ( τ ) f 1 ( τ )... f n ( τ )... It is enough to check that f n ( τ ) f n+1 ( τ ) for every n N, and this is done by induction on n. If n = 0, this is because f 0 ( τ ) = τ is least. Otherwise, f n ( τ ) = f(f n 1 ( τ )) f(f n ( τ )) = f n+1 ( τ ) by induction hypothesis and the fact thatf is monotonic. Now lfp(f) is a fixpoint : f(lfp(f)) = f(sup n N f n ( τ ) = sup n N f n+1 ( τ ), because f is continuous and (f n ( τ )) n N is a chain ; we conclude because sup n N f n ( τ ) = sup(f 0 ( τ ),sup n N f n+1 ( τ )) = sup( τ,sup n N f n+1 ( τ )) = sup n N f n+1 ( τ ). We claim that lfp(f) is the least one. Assume x is another fixpoint. By induction on n, f n ( τ ) x : this is clear if n = 0, since τ is least, otherwise f n+1 ( τ ) = f(f n ( τ )) f(x) (by induction hypothesis, and sincef is monotonic)= x (sincexis a fixpoint). Taking sups on each side, lfp(f) x. 4. Establish soundness : if E M n, then E[M] ρ = n, for every n N, and every environment ρ. We first show that : (1) ife M E M, then E[M] ρ = E [M ] ρ. By induction on the number of steps, it will follow that if E M n, then E[M] ρ = [n] ρ = n. Claim (1) is obvious in the cases of the rules(dapp),(dif),(dpred) and(dsucc), since in these cases E[M] = E [M ]. For the other rules, we note that for any configuration E M, E M ρ = E (ρ[ M ρ]). This is a form of the substitution lemma we have seen in the lectures, and is proved by induction on the size ofe. It remains to show that : (β) (λx P)N ρ = P[x := N] ρ : the left-hand side is (v P (ρ[x := v]))( N ρ) = P (ρ[x := N ρ]), which is equal to the right-hand side by the substitution lemma. (Y) YN ρ = N(YN) ρ : the left-hand side is lfp(f), wheref = N ρ, while the right-hand side is f(lfp(f)). These two are equal because lfp(f) is a fixpoint of f, as we have seen. (pred) predn+1 ρ = n ρ : both sides equaln. (succ) succn ρ = n+1 ρ : both sides equalsn+1. 3

4 (ifz0) ifz 0 N P ρ = N ρ : obvious. (ifz1) ifz n+1 N P ρ = P ρ : obvious. The rest of the questions aim at establishing the converse of soundness, a property known as computational adequacy. This is harder : notice in particular that computational adequacy entails that if E[M] ρ = n for every n N, and every environment ρ, then E M must terminate (on the configuration n). We first show that we can only hope to prove computational adequacy in a limited setting. First, we only consider ground configurations : call a term ground iff it has no free variable, and a configuration E M ground iff E[M] is ground. Then E[M] ρ does not depend on ρ, and we shall write it E[M]. 5. One might think of proving computational adequacy at every type τ, i.e., that if E M is ground, and E[M] is a value v τ (the same for every environment ρ), then E M M for some canonical ground term M : τ with M = v. By canonical, we mean that there is a unique canonical term M such that M = v. Show that this is hopeless : canonicality fails, at least for some type τ other than Nat. Take E =, M 1 = λx σ succ1 and M 2 = λx σ 2. These two terms have the same value, namely the constant2function. Canonicality would imply that M 1 and M 2 would rewrite to the same M. But M 1 and M 2 do not rewrite at all. Define σ on ground terms by M σ N iff for every context E of typeσ Nat, if E M n then E N n. Extend σ to non-ground terms by M σ N iff Mθ σ Nθ for every well-typed substitution θ of ground terms for all variables in M and N. A substitution θ is well-typed iff x σ θ is a term of typeσ for every variable x σ in its domain. 6. Show that : M[x σ := N] τ (λx σ M)N wheneverm : τ, N : σ ; M(YM) τ YM provided M : τ τ ; ifn Nat M then n+1 Nat succm ; ifn+1 Nat M then n Nat predm ; if0 Nat M then N τ ifz M N P (where N : τ,p : τ), ifn+1 Nat M then P τ ifz M N P (where N : τ, P : τ). We show the claims assuming each side of the inequalities ground. The general case follows by applying some well-typed substitutionθ throughout. M[x σ := N] τ (λx σ M)N : ife M[x σ := N] n, thene (λx σ M)N E[ N] λx σ M (by(dapp)) E M[x σ := N] (by(β)) n (by assumption). M(YM) τ YM : similarly,e YM E[ M]Y E M(YM) by(dapp) and (Y). Ifn+1 Nat M thenn Nat predm. This is slightly different. Assume thate n m for some m N. So E[pred ] n+1 E n (by (pred)) m. Since n+1 Nat M, and using the context E[pred ], E[pred ] M m. But then E predm E[ M] pred (by(dapp)) E[pred ] M (by(dpred)) m. 4

5 If n+1 Nat M then n Nat predm. Similar, using(succ) and(dsucc) instead. If 0 Nat M then N τ ifz M N P. Assume E N m, and use the context E[ifz N P]. Since0 Nat M ande[ifz N P] 0 E N (by(ifz0)) m, we must havee[ifz N P] M m, soe ifz M N P E[ P] ifzmn E[ NP] ifzm E[ MNP] ifz E[ifz N P] M E N m, using(dapp) three times, then (DIf). If n+1 Nat M then P τ ifz M N P. Similar, using(ifz1) instead. The main tool in the proof of computational adequacy is the use of a so-called logical relation. This is a notion similar to the reducibility sets RED τ defined in the lectures, except there are now binary relations, i.e., sets of pairs. Here, a logical relation is a family of binary relations R τ, indexed by types τ, between values in τ and ground terms M : τ. These are defined by induction on types as follows. For short, we say for all N R σ v instead of for every term N : σ, every value v σ, if N R σ v then. M R Nat u iff u =, oruis a natural number n andn Nat M. M R σ τ f iff for all N R σ v, MN R τ f(v). 7. Given M : τ, let MR τ be the set {u τ M R τ u}. Show that MR τ is Scott-closed, i.e., both downward closed (ifu v andm R τ v thenm R τ u) and stable under directed sups (if (u i ) i I is a directed family in τ, andm R τ u i for every i I, thenm R τ sup i I u i ). Show also thatmr τ is non-empty, i.e., contains. By induction on types. MR Nat is { } {n N n Nat M, so it contains and is downward closed (the only elements below n N are n and ). It is also closed under directed sups because every non-empty subsetaof N is : either A = { } and this is clear, oracontains somen N, then everym A is below some element above both n andmby directedness, which implies m n since n is maximal in N. MR σ τ contains σ τ, since for all N R σ v, MN R τ σ τ (v) = τ, by induction hypothesis onτ. If f MR σ τ and g f, then for all N R σ v, MN R τ f(v) by definition hence MN R τ g(v) since MNR τ is downward closed by induction hypothesis on τ. So g MR σ τ. If(f i ) i I is a directed family inmr τ, then for allnr σ v,mnr τ f i (v). SinceMNR τ is closed under directed sups by induction hypothesis on τ, MN R τ sup i I (f i (v)) = (sup i I f i )(v). SoM R σ τ sup i I f i. 8. Show that if M τ N and M R τ u, then N R τ u. In other words, the set R τ u = {M : τ M R τ u} is upward closed in τ. By induction on types again. If M Nat N and M R Nat u, then either u = and N R Nat u is by definition, or u = n N, n Nat M. Now, Nat is transitive. Precisely, for every E of the right type, and every well-typed substitution θ of ground terms for variables, for everym N, the latter states that ife n m thene M m, andm Nat N then implies thate N m. Son Nat N. Sinceu = n,nr Nat u. 5

6 On function types σ τ, the key argument is that whenever M σ τ N, then for every P : σ, MP τ NP, i.e., that for every E of the right type, and every well-typed substitutionθ of ground terms for variables, for everym N, ife MP m then E NP m. The only reduction E MP m must use (DApp) as the first rule, hence be of the forme MP E[ P] M m. SinceM σ τ N one must havee[ P] N m, hencee NP m, using(dapp). So assume that M σ τ N and M R σ τ f. For all P R σ v, MP R τ f(v). We have seen thatmp τ NP, so by induction hypothesis onτ, NP R τ f(v). SoN R σ τ f. 9. Given a well-typed substitution θ, and an environment ρ, write θ R ρ iff x σ θ R σ ρ(x σ ) for every variable x σ in the domain ofθ. Prove the Basic Lemma : ifθr ρ, and M is a term of type τ, then MθR τ M ρ. By induction on the size ofm this time. If M is a variablex σ, then this is the induction hypothesis. IfM is an applicationnp, withp : σ, then by induction hypothesisnθr σ τ N ρ and Pθ R σ P ρ, so Mθ = (Nθ)(Pθ) R τ N ρ( P ρ) = M ρ by definition of R σ τ. If M is an abstraction λx σ N, and τ = σ σ, then we must show that for all P R σ v ((λx σ N)θ)P R σ N (ρ[x σ := v]). Using α-renaming, we may assume x σ fresh, and therefore θ [x σ := P] to be a meaningful well-typed substitution θ such that Nθ = Nθ[x σ := P]. Note that for every variable y in the domain of θ, yθ is in logical relation to ρ (y), where ρ = ρ[x σ := v]. This is by assumption if y is in the domain of θ, and follows from P R σ v if y = x σ. So by induction hypothesis Nθ R σ N ρ. We conclude since Nθ = Nθ[x σ := P] σ ((λx σ N)θ)P (Question 6, first item) and using Question 8. If M is a constantn,n N, then we must show thatn Nat n. This is obvious. If M is the constant pred, then we must show that for all P R Nat v, predp R Nat pred ρ(v). If v = or if v = 0, then pred ρ(v) =, so this results from the fact that predpr Nat contains (Question 7, last item). Otherwise, v = n+1 for somen N, and we must show thatpredp R Nat n under the assumption thatp R Nat n+1. Equivalently, we must shown Nat predp under the assumptionn+1 Nat P. This is Question 6, item 4. The casem = succ similarly follows from Question 6, item 3. The case M = ifz similarly follows from Question 6, item 5 (if v = 0) or item 6 (if v = n+1 for somen N). Finally, we deal with the casem = Y τ. We must show that for allp R τ τ f,yp R τ sup n N f n ( ). Since YPR τ is Scott-closed (Question 7), it is enough to show that YP R τ f n ( ) for every n N. We show this by induction on n N. If n = 0, this is obvious since YPR τ contains (Question 7, last item). Otherwise, by induction hypothesis YP R τ f n 1 ( ). Since P R τ τ f, by definition of R τ τ, P(YP) R τ 6

7 f n ( ). ButP(YP) τ YP by Question 6, item 2. SinceR τ f n ( ) is upward-closed (Question 8),YP R τ f n ( ), and we conclude. 10. Conclude that computational adequacy holds : given a ground configuration E M such that E[M] : Nat, E[M] = n N if and only ife M n. One direction is Question 4. Conversely, if E[M] = n N, then E[M] R Nat n by Question 9, using the identity substitution (since E M is ground). By definition, n Nat E[M]. Using an empty context, E[M] n. Now the first machine rules in the latter reduction must be redex discovery rules, until we reach the configuration E M. Formally, we show that if E E[M] n, then E [E] M n, by induction on the size of E. If E =, this is clear. If E = E 1 N, then the only applicable rule is (DApp), yieldinge E[M] E [ N] E 1 [M] n. IfE = succe 1, then the first two rules must be(dapp) and(dpred), yieldinge E[M] E [ E 1 [M]] succ E [succ ] E 1 [M] n; ife = prede 1, then these are(dapp) and(dsucc) ; if E = ifz E 1 N P, then these are(dapp) (three times) and(dif). 7

Topology in Denotational Semantics

Topology in Denotational Semantics Journées Topologie et Informatique Thomas Ehrhard Preuves, Programmes et Systèmes (PPS) Université Paris Diderot - Paris 7 and CNRS March 21, 2013 What is denotational semantics? The usual stateful approach

More information

The L Machines are very high-level, in two senses:

The L Machines are very high-level, in two senses: What is a Computer? State of the machine. CMPSCI 630: Programming Languages An Abstract Machine for Control Spring 2009 (with thanks to Robert Harper) Internal registers, memory, etc. Initial and final

More information

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω 1 Preliminaries In this chapter we first give a summary of the basic notations, terminology and results which will be used in this thesis. The treatment here is reduced to a list of definitions. For the

More information

CS 4110 Programming Languages & Logics. Lecture 16 Programming in the λ-calculus

CS 4110 Programming Languages & Logics. Lecture 16 Programming in the λ-calculus CS 4110 Programming Languages & Logics Lecture 16 Programming in the λ-calculus 30 September 2016 Review: Church Booleans 2 We can encode TRUE, FALSE, and IF, as: TRUE λx. λy. x FALSE λx. λy. y IF λb.

More information

Consequence Relations and Natural Deduction

Consequence Relations and Natural Deduction Consequence Relations and Natural Deduction Joshua D. Guttman Worcester Polytechnic Institute September 9, 2010 Contents 1 Consequence Relations 1 2 A Derivation System for Natural Deduction 3 3 Derivations

More information

Element x is R-minimal in X if y X. R(y, x).

Element x is R-minimal in X if y X. R(y, x). CMSC 22100/32100: Programming Languages Final Exam M. Blume December 11, 2008 1. (Well-founded sets and induction principles) (a) State the mathematical induction principle and justify it informally. 1

More information

Notes on ordinals and cardinals

Notes on ordinals and cardinals Notes on ordinals and cardinals Reed Solomon 1 Background Terminology We will use the following notation for the common number systems: N = {0, 1, 2,...} = the natural numbers Z = {..., 2, 1, 0, 1, 2,...}

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

Propositional Logic Language

Propositional Logic Language Propositional Logic Language A logic consists of: an alphabet A, a language L, i.e., a set of formulas, and a binary relation = between a set of formulas and a formula. An alphabet A consists of a finite

More information

Lambda-Calculus (cont): Fixpoints, Naming. Lecture 10 CS 565 2/10/08

Lambda-Calculus (cont): Fixpoints, Naming. Lecture 10 CS 565 2/10/08 Lambda-Calculus (cont): Fixpoints, Naming Lecture 10 CS 565 2/10/08 Recursion and Divergence Consider the application: Ω ((λ x. (x x)) (λ x. (x x))) Ω evaluates to itself in one step. It has no normal

More information

Lecture 2: Syntax. January 24, 2018

Lecture 2: Syntax. January 24, 2018 Lecture 2: Syntax January 24, 2018 We now review the basic definitions of first-order logic in more detail. Recall that a language consists of a collection of symbols {P i }, each of which has some specified

More information

Metainduction in Operational Set Theory

Metainduction in Operational Set Theory Metainduction in Operational Set Theory Luis E. Sanchis Department of Electrical Engineering and Computer Science Syracuse University Syracuse, NY 13244-4100 Sanchis@top.cis.syr.edu http://www.cis.syr.edu/

More information

Supplementary Notes on Inductive Definitions

Supplementary Notes on Inductive Definitions Supplementary Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 August 29, 2002 These supplementary notes review the notion of an inductive definition

More information

1 Algorithms for Permutation Groups

1 Algorithms for Permutation Groups AM 106/206: Applied Algebra Madhu Sudan Lecture Notes 9 October 3, 2016 References: Based on text by Akos Seress on Permutation Group Algorithms. Algorithm due to Sims. 1 Algorithms for Permutation Groups

More information

Domain theory and denotational semantics of functional programming

Domain theory and denotational semantics of functional programming Domain theory and denotational semantics of functional programming Martín Escardó School of Computer Science, Birmingham University MGS 2007, Nottingham, version of April 20, 2007 17:26 What is denotational

More information

Denotational semantics: proofs

Denotational semantics: proofs APPENDIX A Denotational semantics: proofs We show that every closed term M has a computable functional [[M ] as its denotation. A.1. Unification We show that for any two constructor terms one can decide

More information

A call-by-name lambda-calculus machine

A call-by-name lambda-calculus machine A call-by-name lambda-calculus machine Jean-Louis Krivine University Paris VII, C.N.R.S. 2 place Jussieu 75251 Paris cedex 05 (krivine@pps.jussieu.fr) Introduction We present, in this paper, a particularly

More information

Programming Language Concepts: Lecture 18

Programming Language Concepts: Lecture 18 Programming Language Concepts: Lecture 18 Madhavan Mukund Chennai Mathematical Institute madhavan@cmi.ac.in http://www.cmi.ac.in/~madhavan/courses/pl2009 PLC 2009, Lecture 18, 30 March 2009 One step reduction

More information

Automated Reasoning Lecture 17: Inductive Proof (in Isabelle)

Automated Reasoning Lecture 17: Inductive Proof (in Isabelle) Automated Reasoning Lecture 17: Inductive Proof (in Isabelle) Jacques Fleuriot jdf@inf.ed.ac.uk Recap Previously: Unification and Rewriting This time: Proof by Induction (in Isabelle) Proof by Mathematical

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 September 2, 2004 These supplementary notes review the notion of an inductive definition and

More information

Denotational semantics

Denotational semantics Denotational semantics Semantics and Application to Program Verification Antoine Miné École normale supérieure, Paris year 2015 2016 Course 4 4 March 2016 Course 4 Denotational semantics Antoine Miné p.

More information

3.3 Accumulation Sequences

3.3 Accumulation Sequences 3.3. ACCUMULATION SEQUENCES 25 3.3 Accumulation Sequences Overview. One of the most important mathematical ideas in calculus is that of an accumulation of change for physical quantities. As we have been

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 August 28, 2003 These supplementary notes review the notion of an inductive definition and give

More information

Typed Arithmetic Expressions

Typed Arithmetic Expressions Typed Arithmetic Expressions CS 550 Programming Languages Jeremy Johnson TAPL Chapters 3 and 5 1 Types and Safety Evaluation rules provide operational semantics for programming languages. The rules provide

More information

Space-aware data flow analysis

Space-aware data flow analysis Space-aware data flow analysis C. Bernardeschi, G. Lettieri, L. Martini, P. Masci Dip. di Ingegneria dell Informazione, Università di Pisa, Via Diotisalvi 2, 56126 Pisa, Italy {cinzia,g.lettieri,luca.martini,paolo.masci}@iet.unipi.it

More information

CHAPTER 8: EXPLORING R

CHAPTER 8: EXPLORING R CHAPTER 8: EXPLORING R LECTURE NOTES FOR MATH 378 (CSUSM, SPRING 2009). WAYNE AITKEN In the previous chapter we discussed the need for a complete ordered field. The field Q is not complete, so we constructed

More information

Mathematics 114L Spring 2018 D.A. Martin. Mathematical Logic

Mathematics 114L Spring 2018 D.A. Martin. Mathematical Logic Mathematics 114L Spring 2018 D.A. Martin Mathematical Logic 1 First-Order Languages. Symbols. All first-order languages we consider will have the following symbols: (i) variables v 1, v 2, v 3,... ; (ii)

More information

Syntax. Notation Throughout, and when not otherwise said, we assume a vocabulary V = C F P.

Syntax. Notation Throughout, and when not otherwise said, we assume a vocabulary V = C F P. First-Order Logic Syntax The alphabet of a first-order language is organised into the following categories. Logical connectives:,,,,, and. Auxiliary symbols:.,,, ( and ). Variables: we assume a countable

More information

Lecture Notes on Data Abstraction

Lecture Notes on Data Abstraction Lecture Notes on Data Abstraction 15-814: Types and Programming Languages Frank Pfenning Lecture 14 October 23, 2018 1 Introduction Since we have moved from the pure λ-calculus to functional programming

More information

Part II Logic and Set Theory

Part II Logic and Set Theory Part II Logic and Set Theory Theorems Based on lectures by I. B. Leader Notes taken by Dexter Chua Lent 2015 These notes are not endorsed by the lecturers, and I have modified them (often significantly)

More information

MIT Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology

MIT Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology MIT 6.035 Foundations of Dataflow Analysis Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology Dataflow Analysis Compile-Time Reasoning About Run-Time Values of Variables

More information

Kleene realizability and negative translations

Kleene realizability and negative translations Q E I U G I C Kleene realizability and negative translations Alexandre Miquel O P. D E. L Ō A U D E L A R April 21th, IMERL Plan 1 Kleene realizability 2 Gödel-Gentzen negative translation 3 Lafont-Reus-Streicher

More information

Programming Languages and Types

Programming Languages and Types Programming Languages and Types Klaus Ostermann based on slides by Benjamin C. Pierce Where we re going Type Systems... Type systems are one of the most fascinating and powerful aspects of programming

More information

Tree sets. Reinhard Diestel

Tree sets. Reinhard Diestel 1 Tree sets Reinhard Diestel Abstract We study an abstract notion of tree structure which generalizes treedecompositions of graphs and matroids. Unlike tree-decompositions, which are too closely linked

More information

arxiv: v1 [cs.pl] 19 May 2016

arxiv: v1 [cs.pl] 19 May 2016 arxiv:1605.05858v1 [cs.pl] 19 May 2016 Domain Theory: An Introduction Robert Cartwright Rice University Rebecca Parsons ThoughtWorks, Inc. Moez AbdelGawad SRTA-City Hunan University This monograph is an

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

λ 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

ISTITUTO DI ANALISI DEI SISTEMI ED INFORMATICA

ISTITUTO DI ANALISI DEI SISTEMI ED INFORMATICA ISTITUTO DI ANALISI DEI SISTEMI ED INFORMATICA CONSIGLIO NAZIONALE DELLE RICERCHE A. Pettorossi, M. Proietti TOTALLY CORRECT LOGIC PROGRAM TRANSFORMATIONS VIA WELL-FOUNDED ANNOTATIONS R. 639 Febbraio 2006

More information

Convex Optimization Notes

Convex Optimization Notes Convex Optimization Notes Jonathan Siegel January 2017 1 Convex Analysis This section is devoted to the study of convex functions f : B R {+ } and convex sets U B, for B a Banach space. The case of B =

More information

Classical Propositional Logic

Classical Propositional Logic The Language of A Henkin-style Proof for Natural Deduction January 16, 2013 The Language of A Henkin-style Proof for Natural Deduction Logic Logic is the science of inference. Given a body of information,

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

arxiv: v1 [cs.lo] 30 Dec 2018

arxiv: v1 [cs.lo] 30 Dec 2018 arxiv:1812.11573v1 [cs.lo] 30 Dec 2018 A Probabilistic and Non-Deterministic Call-by-Push-Value Language Jean Goubault-Larrecq January 1, 2019 Abstract There is no known way of giving a domain-theoretic

More information

CS 6110 Lecture 35 Solving Domain Equations 19 April 2013 Lecturer: Andrew Myers

CS 6110 Lecture 35 Solving Domain Equations 19 April 2013 Lecturer: Andrew Myers CS 6110 Lecture 35 Solving Domain Equations 19 April 2013 Lecturer: Andrew Myers To develop a denotational semantics for a language with recursive types, or to give a denotational semantics for the untyped

More information

A Propositional Dynamic Logic for Instantial Neighborhood Semantics

A Propositional Dynamic Logic for Instantial Neighborhood Semantics A Propositional Dynamic Logic for Instantial Neighborhood Semantics Johan van Benthem, Nick Bezhanishvili, Sebastian Enqvist Abstract We propose a new perspective on logics of computation by combining

More information

Models of Computation,

Models of Computation, Models of Computation, 2010 1 Induction We use a lot of inductive techniques in this course, both to give definitions and to prove facts about our semantics So, it s worth taking a little while to set

More information

Logic and Probability Lecture 3: Beyond Boolean Logic

Logic and Probability Lecture 3: Beyond Boolean Logic Logic and Probability Lecture 3: Beyond Boolean Logic Wesley Holliday & Thomas Icard UC Berkeley & Stanford August 13, 2014 ESSLLI, Tübingen Wesley Holliday & Thomas Icard: Logic and Probability, Lecture

More information

CS422 - Programming Language Design

CS422 - Programming Language Design 1 CS422 - Programming Language Design Denotational Semantics Grigore Roşu Department of Computer Science University of Illinois at Urbana-Champaign 2 Denotational semantics, also known as fix-point semantics,

More information

The Logic of Proofs, Semantically

The Logic of Proofs, Semantically The Logic of Proofs, Semantically Melvin Fitting Dept. Mathematics and Computer Science Lehman College (CUNY), 250 Bedford Park Boulevard West Bronx, NY 10468-1589 e-mail: fitting@lehman.cuny.edu web page:

More information

Consequence Relations and Natural Deduction

Consequence Relations and Natural Deduction Consequence Relations and Natural Deduction Joshua D Guttman Worcester Polytechnic Institute September 16, 2010 Contents 1 Consequence Relations 1 2 A Derivation System for Natural Deduction 3 3 Derivations

More information

Tutorial on Semantics Part I

Tutorial on Semantics Part I Tutorial on Semantics Part I Basic Concepts Prakash Panangaden 1 1 School of Computer Science McGill University on sabbatical leave at Department of Computer Science Oxford University Fields Institute,

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

Step-indexed models of call-by-name: a tutorial example

Step-indexed models of call-by-name: a tutorial example Step-indexed models of call-by-name: a tutorial example Aleš Bizjak 1 and Lars Birkedal 1 1 Aarhus University {abizjak,birkedal}@cs.au.dk June 19, 2014 Abstract In this tutorial paper we show how to construct

More information

CS632 Notes on Relational Query Languages I

CS632 Notes on Relational Query Languages I CS632 Notes on Relational Query Languages I A. Demers 6 Feb 2003 1 Introduction Here we define relations, and introduce our notational conventions, which are taken almost directly from [AD93]. We begin

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

September 14. Fall Software Foundations CIS 500

September 14. Fall Software Foundations CIS 500 CIS 500 Software Foundations Fall 2005 September 14 CIS 500, September 14 1 Announcements I will be away September 19-October 5. I will be reachable by email. Fastest response cis500@cis.upenn.edu No office

More information

DR.RUPNATHJI( DR.RUPAK NATH )

DR.RUPNATHJI( DR.RUPAK NATH ) Contents 1 Sets 1 2 The Real Numbers 9 3 Sequences 29 4 Series 59 5 Functions 81 6 Power Series 105 7 The elementary functions 111 Chapter 1 Sets It is very convenient to introduce some notation and terminology

More information

arxiv: v2 [cs.lo] 7 Jan 2019

arxiv: v2 [cs.lo] 7 Jan 2019 A Probabilistic and Non-Deterministic Call-by-Push-Value Language arxiv:1812.11573v2 [cs.lo] 7 Jan 2019 Jean Goubault-Larrecq January 8, 2019 Abstract There is no known way of giving a domain-theoretic

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

A Quantified Logic of Evidence

A Quantified Logic of Evidence A Quantified Logic of Evidence Melvin Fitting Dept. Mathematics and Computer Science Lehman College (CUNY), 250 Bedford Park Boulevard West Bronx, NY 10468-1589 e-mail: melvin.fitting@lehman.cuny.edu web

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

CS3110 Fall 2013 Lecture 11: The Computable Real Numbers, R (10/3)

CS3110 Fall 2013 Lecture 11: The Computable Real Numbers, R (10/3) CS3110 Fall 2013 Lecture 11: The Computable Real Numbers, R (10/3) Robert Constable 1 Lecture Plan More about the rationals dependent types enumerating Q (Q is countable) Function inverses bijections one-one

More information

Provably Total Functions of Arithmetic with Basic Terms

Provably Total Functions of Arithmetic with Basic Terms Provably Total Functions of Arithmetic with Basic Terms Evgeny Makarov INRIA Orsay, France emakarov@gmail.com A new characterization of provably recursive functions of first-order arithmetic is described.

More information

CHAPTER 2. Computability

CHAPTER 2. Computability CHAPTER 2 Computability At this point we leave the general setting of logic and aim to get closer to mathematics. We introduce free algebras (for example, the natural numbers) as basic data structures

More information

Operational Semantics

Operational Semantics Operational Semantics Semantics and applications to verification Xavier Rival École Normale Supérieure Xavier Rival Operational Semantics 1 / 50 Program of this first lecture Operational semantics Mathematical

More information

Sequences. Chapter 3. n + 1 3n + 2 sin n n. 3. lim (ln(n + 1) ln n) 1. lim. 2. lim. 4. lim (1 + n)1/n. Answers: 1. 1/3; 2. 0; 3. 0; 4. 1.

Sequences. Chapter 3. n + 1 3n + 2 sin n n. 3. lim (ln(n + 1) ln n) 1. lim. 2. lim. 4. lim (1 + n)1/n. Answers: 1. 1/3; 2. 0; 3. 0; 4. 1. Chapter 3 Sequences Both the main elements of calculus (differentiation and integration) require the notion of a limit. Sequences will play a central role when we work with limits. Definition 3.. A Sequence

More information

Neighborhood Semantics for Modal Logic An Introduction May 12-17, ESSLLI 2007

Neighborhood Semantics for Modal Logic An Introduction May 12-17, ESSLLI 2007 An Introduction May 12-17, ESSLLI 2007 Eric Pacuit staff.science.uva.nl/ epacuit epacuit@staff.science.uva.nl July 3, 2007 Welcome to! The course will consist of five 90 minute lectures roughly organized

More information

1 More finite deterministic automata

1 More finite deterministic automata CS 125 Section #6 Finite automata October 18, 2016 1 More finite deterministic automata Exercise. Consider the following game with two players: Repeatedly flip a coin. On heads, player 1 gets a point.

More information

Homework #2 Solutions Due: September 5, for all n N n 3 = n2 (n + 1) 2 4

Homework #2 Solutions Due: September 5, for all n N n 3 = n2 (n + 1) 2 4 Do the following exercises from the text: Chapter (Section 3):, 1, 17(a)-(b), 3 Prove that 1 3 + 3 + + n 3 n (n + 1) for all n N Proof The proof is by induction on n For n N, let S(n) be the statement

More information

The Banach-Tarski paradox

The Banach-Tarski paradox The Banach-Tarski paradox 1 Non-measurable sets In these notes I want to present a proof of the Banach-Tarski paradox, a consequence of the axiom of choice that shows us that a naive understanding of the

More information

Programming Language Concepts: Lecture 16

Programming Language Concepts: Lecture 16 Programming Language Concepts: Lecture 16 Madhavan Mukund Chennai Mathematical Institute madhavan@cmi.ac.in http://www.cmi.ac.in/~madhavan/courses/pl2009 PLC 2009, Lecture 16, 23 March 2009 λ-calculus:

More information

Modal and temporal logic

Modal and temporal logic Modal and temporal logic N. Bezhanishvili I. Hodkinson C. Kupke Imperial College London 1 / 83 Overview Part II 1 Soundness and completeness. Canonical models. 3 lectures. 2 Finite model property. Filtrations.

More information

2 C. A. Gunter ackground asic Domain Theory. A poset is a set D together with a binary relation v which is reexive, transitive and anti-symmetric. A s

2 C. A. Gunter ackground asic Domain Theory. A poset is a set D together with a binary relation v which is reexive, transitive and anti-symmetric. A s 1 THE LARGEST FIRST-ORDER-AXIOMATIZALE CARTESIAN CLOSED CATEGORY OF DOMAINS 1 June 1986 Carl A. Gunter Cambridge University Computer Laboratory, Cambridge C2 3QG, England Introduction The inspiration for

More information

Lecture 3: Semantics of Propositional Logic

Lecture 3: Semantics of Propositional Logic Lecture 3: Semantics of Propositional Logic 1 Semantics of Propositional Logic Every language has two aspects: syntax and semantics. While syntax deals with the form or structure of the language, it is

More information

Concrete Domains. Gilles Kahn INRIA Sophia Antipolis Gordon D. Plotkin University of Edinburgh

Concrete Domains. Gilles Kahn INRIA Sophia Antipolis Gordon D. Plotkin University of Edinburgh Concrete Domains Gilles Kahn INRIA Sophia Antipolis Gordon D. Plotkin University of Edinburgh May 21, 1993 Abstract This paper introduces the theory of a particular kind of computation domains called concrete

More information

Truth-Functional Logic

Truth-Functional Logic Truth-Functional Logic Syntax Every atomic sentence (A, B, C, ) is a sentence and are sentences With ϕ a sentence, the negation ϕ is a sentence With ϕ and ψ sentences, the conjunction ϕ ψ is a sentence

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

Logical specification and coinduction

Logical specification and coinduction Logical specification and coinduction Robert J. Simmons Carnegie Mellon University, Pittsburgh PA 15213, USA, rjsimmon@cs.cmu.edu, WWW home page: http://www.cs.cmu.edu/ rjsimmon Abstract. The notion of

More information

1. Propositional Calculus

1. Propositional Calculus 1. Propositional Calculus Some notes for Math 601, Fall 2010 based on Elliott Mendelson, Introduction to Mathematical Logic, Fifth edition, 2010, Chapman & Hall. 2. Syntax ( grammar ). 1.1, p. 1. Given:

More information

Practice Test III, Math 314, Spring 2016

Practice Test III, Math 314, Spring 2016 Practice Test III, Math 314, Spring 2016 Dr. Holmes April 26, 2016 This is the 2014 test reorganized to be more readable. I like it as a review test. The students who took this test had to do four sections

More information

FIXED POINTS AND EXTENSIONALITY IN TYPED FUNCTIONAL PROGRAMMING LANGUAGES

FIXED POINTS AND EXTENSIONALITY IN TYPED FUNCTIONAL PROGRAMMING LANGUAGES FIXED POINTS AND EXTENSIONALITY IN TYPED FUNCTIONAL PROGRAMMING LANGUAGES a dissertation submitted to the department of computer science and the committee on graduate studies of stanford university in

More information

Lambda-Calculus (I) 2nd Asian-Pacific Summer School on Formal Methods Tsinghua University, August 23, 2010

Lambda-Calculus (I) 2nd Asian-Pacific Summer School on Formal Methods Tsinghua University, August 23, 2010 Lambda-Calculus (I) jean-jacques.levy@inria.fr 2nd Asian-Pacific Summer School on Formal Methods Tsinghua University, August 23, 2010 Plan computation models lambda-notation bound variables conversion

More information

Denoting computation

Denoting computation A jog from Scott Domains to Hypercoherence Spaces 13/12/2006 Outline Motivation 1 Motivation 2 What Does Denotational Semantic Mean? Trivial examples Basic things to know 3 Scott domains di-domains 4 Event

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

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

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

Safety Analysis versus Type Inference

Safety Analysis versus Type Inference Information and Computation, 118(1):128 141, 1995. Safety Analysis versus Type Inference Jens Palsberg palsberg@daimi.aau.dk Michael I. Schwartzbach mis@daimi.aau.dk Computer Science Department, Aarhus

More information

Notes on Inductive Sets and Induction

Notes on Inductive Sets and Induction Notes on Inductive Sets and Induction Finite Automata Theory and Formal Languages TMV027/DIT21 Ana Bove, March 15th 2018 Contents 1 Induction over the Natural Numbers 2 1.1 Mathematical (Simple) Induction........................

More information

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska

cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 3 CHAPTER 1 SETS, RELATIONS, and LANGUAGES 6. Closures and Algorithms 7. Alphabets and Languages 8. Finite Representation

More information

2. Introduction to commutative rings (continued)

2. Introduction to commutative rings (continued) 2. Introduction to commutative rings (continued) 2.1. New examples of commutative rings. Recall that in the first lecture we defined the notions of commutative rings and field and gave some examples of

More information

Type Systems. Lecture 2 Oct. 27th, 2004 Sebastian Maneth.

Type Systems. Lecture 2 Oct. 27th, 2004 Sebastian Maneth. Type Systems Lecture 2 Oct. 27th, 2004 Sebastian Maneth http://lampwww.epfl.ch/teaching/typesystems/2004 Today 1. What is the Lambda Calculus? 2. Its Syntax and Semantics 3. Church Booleans and Church

More information

Logic Michælmas 2003

Logic Michælmas 2003 Logic Michælmas 2003 ii Contents 1 Introduction 1 2 Propositional logic 3 3 Syntactic implication 5 3.0.1 Two consequences of completeness.............. 7 4 Posets and Zorn s lemma 9 5 Predicate logic

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

17.1 Correctness of First-Order Tableaux

17.1 Correctness of First-Order Tableaux Applied Logic Lecture 17: Correctness and Completeness of First-Order Tableaux CS 4860 Spring 2009 Tuesday, March 24, 2009 Now that we have introduced a proof calculus for first-order logic we have to

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

Formal Techniques for Software Engineering: Denotational Semantics

Formal Techniques for Software Engineering: Denotational Semantics Formal Techniques for Software Engineering: Denotational Semantics Rocco De Nicola IMT Institute for Advanced Studies, Lucca rocco.denicola@imtlucca.it May 2013 Lesson 4 R. De Nicola (IMT-Lucca) FoTSE@LMU

More information

SLD-Resolution And Logic Programming (PROLOG)

SLD-Resolution And Logic Programming (PROLOG) Chapter 9 SLD-Resolution And Logic Programming (PROLOG) 9.1 Introduction We have seen in Chapter 8 that the resolution method is a complete procedure for showing unsatisfiability. However, finding refutations

More information

COSE312: Compilers. Lecture 14 Semantic Analysis (4)

COSE312: Compilers. Lecture 14 Semantic Analysis (4) COSE312: Compilers Lecture 14 Semantic Analysis (4) Hakjoo Oh 2017 Spring Hakjoo Oh COSE312 2017 Spring, Lecture 14 May 8, 2017 1 / 30 Denotational Semantics In denotational semantics, we are interested

More information

Type Systems. Today. 1. What is the Lambda Calculus. 1. What is the Lambda Calculus. Lecture 2 Oct. 27th, 2004 Sebastian Maneth

Type Systems. Today. 1. What is the Lambda Calculus. 1. What is the Lambda Calculus. Lecture 2 Oct. 27th, 2004 Sebastian Maneth Today 1. What is the Lambda Calculus? Type Systems 2. Its Syntax and Semantics 3. Church Booleans and Church Numerals 4. Lazy vs. Eager Evaluation (call-by-name vs. call-by-value) Lecture 2 Oct. 27th,

More information

Database Theory VU , SS Complexity of Query Evaluation. Reinhard Pichler

Database Theory VU , SS Complexity of Query Evaluation. Reinhard Pichler Database Theory Database Theory VU 181.140, SS 2018 5. Complexity of Query Evaluation Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 17 April, 2018 Pichler

More information

Löwenheim-Skolem Theorems, Countable Approximations, and L ω. David W. Kueker (Lecture Notes, Fall 2007)

Löwenheim-Skolem Theorems, Countable Approximations, and L ω. David W. Kueker (Lecture Notes, Fall 2007) Löwenheim-Skolem Theorems, Countable Approximations, and L ω 0. Introduction David W. Kueker (Lecture Notes, Fall 2007) In its simplest form the Löwenheim-Skolem Theorem for L ω1 ω states that if σ L ω1

More information