Linear Types for Continuations

Size: px
Start display at page:

Download "Linear Types for Continuations"

Transcription

1 1/28 Linear Types for Continuations Alex Simpson LFCS, School of Informatics University of Edinburgh, UK Joint work with: Jeff Egger (LFCS, Edinburgh) Rasmus Møgelberg (ITU, Copenhagen)

2 Linear Types for Continuations 2/28 Part 1 Some CPS Translations

3 Linear Types for Continuations 3/28 Call-by-value CPS translation Type translation: (σ τ) Rv = σ Rv (τ Rv R) R (σ τ) Rv = σ Rv τ Rv Term translation: Γ t: τ = Γ Rv t Rv : (τ Rv R) R Faithful but not full (can also model control operators) (Kleisli category of (( ) R) R monad)

4 Linear Types for Continuations 4/28 Call-by-name CPS translation Type translation: (σ τ) Rn = (σ Rn R) τ Rn (σ τ) Rn = σ Rn + τ Rn Term translation: Γ t: τ = Γ Rn R t Rn : τ Rn R Faithful but not full (can also model control operators) (Opposite of Kleisli category of (( ) R) R monad)

5 Linear Types for Continuations 5/28 Cbv linearly-used CPS translation Type translation: (σ τ) Rv = σ Rv (τ Rv R) R (σ τ) Rv = σ Rv τ Rv Term translation: Γ t: τ = Γ Rv t Rv : (τ Rv R) R Full and faithful [Hasegawa 2002] (Kleisli category of (( ) R) R monad on intuitionistic category)

6 Linear Types for Continuations 6/28 Cbn linearly-used CPS translation Type translation: (σ τ) Rn =!(σ Rn R) τ Rn (σ τ) Rn = σ Rn τ Rn Term translation: Γ t: τ = Γ Rn R t Rn : τ Rn R Full and faithful [Hasegawa 2004] (Opposite of Kleisli category of (( ) R) R monad on linear category)

7 Linear Types for Continuations 7/28 Part 2 The Enriched Effect Calculus

8 Linear Types for Continuations 8/28 The Enriched Effect Calculus (EEC) [EMS 2009] A more general target language than ILL Based on distinction between values and computations. Cf. [Filinski 1996], [Levy 1999, 2004] A value is a pervasive static object, it just is. Values can be copied and discarded. There is no natural notion of linear function between general value types. A computation has a dynamic side: it can be computed/invoked/evaluated/executed. There is a natural intuition of linear functions between computation types: the argument computation is executed exactly once. Linear functions are generalised evaluation contexts/stacks.

9 Linear Types for Continuations 9/28 EEC type system Value types: A, B,... ::= α α 1 A B A B!A A B!A B 0 A B Computation types: A, B,... ::= α 1 A B A B!A!A B 0 A B. Typing judgements: Γ t: A Γ z : A t: B The linearly-used CPS translations land in the EEC fragment of ILL.

10 Linear Types for Continuations 10/28 Example rules Rules are inherited from ILL. e.g., Γ, x: A t: B Γ λx: A. t: A B Γ t: A Γ! t:! A Γ z : A t: B Γ λz : A. t: A B Γ s: A B Γ t: A Γ s(t): B Γ t:! A Γ, x: A u: B Γ let!x t in u: B Γ s: A B Γ t: A Γ s[t]: B We have the Girard isomorphism: A B =!A B

11 Linear Types for Continuations 11/28 Other isomorphisms of EEC (!A B) C = A (B C) = B (A C) (As value types)!a!b =!(A B)!1 A = A!(A B) C =!A!B C!A 0 = 0!A (B C) = (!A B) (!A C) (As computation types) These isomorphisms are all familiar from ILL

12 Linear Types for Continuations 12/28 Differences from linear logic 1. Distinction between computation types and value types. 2. A B is not assumed to be a computation type itself. Thus (A B) C value type (A B) C computation (hence value) type (A B) C not available A B C not available 3.!A B is the application of a single primitive type-constructor!( ) ( ) to A and B. (There is no symmetric.) 4. Commutativity does not hold, i.e., let!x s in let!y t in u let!y t in let!x s in u

13 Linear Types for Continuations 13/28 Models of EEC A model of the enriched effect calculus is given by [EMS 2009]: categories V (value types) and C (computation types) V is cartesian closed (models 1, A B, A B) C is V-enriched (models A B) C has V-powers (models A B) and V-copowers (models!a B) C has finite V-enriched products (models 1, A B) and coproducts (models 0, A B) a V-enriched adjunction F U : C V (models!a) We write the entire model as F U : C V. (All structure other than the adjunction is determined by universal properties.)

14 Linear Types for Continuations 14/28 Models of ILL are models of EEC A linear/nonlinear model [Benton 1995] is given by symmetric monoidal closed category C (the linear category), a cartesian closed category V (the intuitionistic category) and a monoidal adjunction F U : C V. If C also has finite products and coproducts then the model is said to have additives Proposition [EMS 2009] If F U : C V is a linear/nonlinear model with additives then it is a model of the enriched effect calculus. N.B. The linear-logic syntax of EEC agrees with the interpretation of ILL in a linear/nonlinear model. EEC is a fragment of ILL interpretable in a wider class of models.

15 Linear Types for Continuations 15/28 Models of computational effects expand to models of EEC Call-by-push-value (CBPV) [Levy 1999,2004] is a type theory for computational effects extending Moggi s computational metalanguage [Moggi 1991] to include call-by-name. Adjunction models [Levy 2005] are the natural models of call-by-push-value (CBPV), generalising Moggi s strong monads. Every model of EEC is an adjunction model of CBPV Theorem [EMS 2009] Every adjunction model of CBPV fully embeds in a model of the enriched effect calculus. EEC is a conservative extension of CBPV (hence of Moggi s computational metalanguage) with a gain in expressivity and (essentially) no loss in range of applicability

16 Linear Types for Continuations 16/28 EEC as a metalanguage for effects Understand!A as Moggi s type T A of computations (with effects) that produce results of type A The call-by-value (cbv) translation [Moggi] translates a simple type σ to a value type σ v. The call-by-name (cbn) translation (cf. [Filinski, Levy]) translates σ to a computation type σ n. (σ τ) v = σ v τ v (σ τ) n = σ n τ n (σ τ) v = σ v!τ v (σ τ) n = σ n τ n. Typing judgements Γ t: σ get translated to: Γ v t v :!σ v The new linear connectives are not used! Γ n t n : σ n

17 Linear Types for Continuations 17/28 Part 3 Linearly-used CPS in EEC

18 Linear Types for Continuations 18/28 Linearly-used CPS translation of EEC to itself [EMS 2010] Let R be a chosen computation type. A value type A translates to a value type A VR. A computation type A translates to a computation type A CR. These translations satisfy A VR = A CR R. A typing judgement Γ t: A translates to Γ VR t VR : A VR A typing judgement Γ z : A u: B translates to Γ VR z : B CR u CR : A CR

19 Linear Types for Continuations 19/28 α VR = α α VR = α CR R α CR = α 1 VR = 1 1 CR = 0 (A B) VR = A VR B VR (A B) CR = A CR B CR (A B) VR = A VR B VR (A B) CR =! A VR B CR (!A) VR = (!A) CR R (!A) CR = A VR R (A B) VR = B CR A CR (!A B) VR = (!A B) CR R (!A B) CR = A VR B CR (0) VR = (0) CR R (0) CR = 1 (A B) VR = (A B) CR R (A B) CR = A CR B CR R VR = R R CR =! 1

20 Linear Types for Continuations 20/28 Recovering cbv linearly-used CPS translation (σ τ) Rv = σ Rv (τ Rv R) R (σ τ) Rv = σ Rv τ Rv Γ t: τ = Γ Rv t Rv : (τ Rv R) R Recovered as: σ Rv t Rv = (σ v ) VR = (t v ) VR

21 Linear Types for Continuations 21/28 Recovering cbn linearly-used CPS translation (σ τ) Rn =!(σ Rn R) τ Rn (σ τ) Rn = σ Rn τ Rn Γ t: τ = Γ Rn R t Rn : τ Rn R Recovered as: σ Rn = (σ n ) CR t Rn = (t n ) VR

22 Linear Types for Continuations 22/28 Fundamental theorem of EEC translation Theorem (Involution property [EMS 2010]) We have isomorphisms A = A VR VR A = CR CR A modulo which t = t VR VR and u = u CR CR. Our proof of this is semantic. The translation arises as a self-duality of the initial (syntactic) model of EEC. (Obtaining a syntactic proof looks like a formidable exercise.) Corollary The translations ( ) VR and ( ) CR are full and faithful. Corollary The translations ( ) Rv and ( ) Rn are full and faithful. [Hasegawa 2002, 2004] has analogous results for the ( ) Rv and ( ) Rn translations into ILL rather than EEC

23 Linear Types for Continuations 23/28 Part 4 Adding Control to EEC

24 Linear Types for Continuations 24/28 EEC + Control New value type: stk A. New typing rules: Γ, x: stk A t: A Γ letstk x. t: A Γ t: stk A Γ u: A Γ chngstk t. u: B Γ t: stk B Γ z : A u: B Γ t [z]u: stk A Γ ignored: stk 0 Plus suitable equations. Modelled on CBPV + Control [Levy 2004]

25 Linear Types for Continuations 25/28 A reformulation of EEC + Control Interpret stk A as A 0 and add canonical isomorphisms A = (A 0) 0 I.e., add constants: r A : ((A 0) 0) A and equations making them inverse to the canonical λz : A. λy : A 0. y[z] : A (A 0) 0 This appears in [MS 2007] in the context of a polymorphic language. (N.B. Canonical A = (A 0) 0 is incompatible with ILL)

26 Linear Types for Continuations 26/28 Jump With Argument (JWA) If we add canonical isomorphisms for computation and value types we obtain Jump With Argument [Levy 2004]. A = (A 0) 0 (1) A = (A 0) 0 (2) Principle (2) is harmless in the sense that EEC + (1) + (2) can be interpreted in EEC + (1) without changing the computation types. This is a reformulation of the equivalence between CBPV + Control and JWA in [Levy 2004]

27 Linear Types for Continuations 27/28 Summary The enriched effect calculus conservatively extends effect calculi (Moggi s computational metalanguage, CBPV) with much of the expressivity of intuitionistic linear logic. Models of EEC strictly generalises models of ILL. The cbv and cbn liinearly-used CPS translations extend to a translation of EEC into itself. (Such a self translation is not available for for ILL or CBPV.) Control can be added to EEC by simple axioms involving. (Such axioms do not make sense in ILL.) In general EEC is a promising language for representing linear usage of effects. E.g., linear-usage of (local) state [Møgelberg & Staton].

28 Linear Types for Continuations 28/28 EMS literature references [MS 2007] Relational parametricity for control considered as a computational effect. MFPS [EMS 2009] Enriching an effect calculus with linear types. CSL [EMS 2010] Linearly-used Continuations in the Enriched Effect Calculus. FoSSaCS 2010.

Linearly Used Effects: Monadic and CPS Transformations into the Linear Lambda Calculus

Linearly Used Effects: Monadic and CPS Transformations into the Linear Lambda Calculus Linearly Used Effects: Monadic and CPS Transformations into the Linear Lambda Calculus Masahito Hasegawa Research Institute for Mathematical Sciences, Kyoto University hassei@kurimskyoto-uacjp Abstract

More information

Parametric Domain-theoretic models of Linear Abadi & Plotkin Logic

Parametric Domain-theoretic models of Linear Abadi & Plotkin Logic Parametric Domain-theoretic models of Linear Abadi & Plotkin Logic Lars Birkedal Rasmus Ejlers Møgelberg Rasmus Lerchedahl Petersen IT University Technical Report Series TR-00-7 ISSN 600 600 February 00

More information

Direct models of the computational lambda-calculus

Direct models of the computational lambda-calculus Electronic Notes in Theoretical Computer Science 20 (1999) URL: http://www.elsevier.nl/locate/entcs/volume20.html 49 pages Direct models of the computational lambda-calculus Carsten Führmann 1 Division

More information

FUNCTIONAL ANALYSIS LECTURE NOTES: QUOTIENT SPACES

FUNCTIONAL ANALYSIS LECTURE NOTES: QUOTIENT SPACES FUNCTIONAL ANALYSIS LECTURE NOTES: QUOTIENT SPACES CHRISTOPHER HEIL 1. Cosets and the Quotient Space Any vector space is an abelian group under the operation of vector addition. So, if you are have studied

More information

Notions of computation and monads

Notions of computation and monads Notions of computation and monads Eugenio Moggi Abstract The λ-calculus is considered an useful mathematical tool in the study of programming languages, since programs can be identified with λ-terms. However,

More information

Coeffects: Unified static analysis of context-dependence

Coeffects: Unified static analysis of context-dependence Coeffects: Unified static analysis of context-dependence Tomas Petricek, Dominic Orchard and Alan Mycroft University of Cambridge, UK {tp322,dao29,am}@cl.cam.ac.uk Abstract. Monadic effect systems provide

More information

Non-deterministic Semantics and the Undecidability of Boolean BI

Non-deterministic Semantics and the Undecidability of Boolean BI 1 Non-deterministic Semantics and the Undecidability of Boolean BI DOMINIQUE LARCHEY-WENDLING, LORIA CNRS, Nancy, France DIDIER GALMICHE, LORIA Université Henri Poincaré, Nancy, France We solve the open

More information

A Note on Context Logic

A Note on Context Logic A Note on Context Logic Philippa Gardner Imperial College London This note describes joint work with Cristiano Calcagno and Uri Zarfaty. It introduces the general theory of Context Logic, and has been

More information

Section IV.21. The Field of Quotients of an Integral Domain

Section IV.21. The Field of Quotients of an Integral Domain IV.21 Field of Quotients 1 Section IV.21. The Field of Quotients of an Integral Domain Note. This section is a homage to the rational numbers! Just as we can start with the integers Z and then build the

More information

How To Prove The Dirichlet Unit Theorem

How To Prove The Dirichlet Unit Theorem Chapter 6 The Dirichlet Unit Theorem As usual, we will be working in the ring B of algebraic integers of a number field L. Two factorizations of an element of B are regarded as essentially the same if

More information

Observational Program Calculi and the Correctness of Translations

Observational Program Calculi and the Correctness of Translations Observational Program Calculi and the Correctness of Translations Manfred Schmidt-Schauss 1, David Sabel 1, Joachim Niehren 2, and Jan Schwinghammer 1 Goethe-University, Frankfurt, Germany 2 INRIA Lille,

More information

NOTES ON CATEGORIES AND FUNCTORS

NOTES ON CATEGORIES AND FUNCTORS NOTES ON CATEGORIES AND FUNCTORS These notes collect basic definitions and facts about categories and functors that have been mentioned in the Homological Algebra course. For further reading about category

More information

Complete Axioms for Categorical Fixed-point Operators

Complete Axioms for Categorical Fixed-point Operators Complete Axioms for Categorical Fixed-point Operators Alex Simpson and Gordon Plotin LFCS, Division of Informatics, University of Edinburgh, JCMB, King s Buildings, Edinburgh, EH9 3JZ {als,gdp}@dcs.ed.ac.u

More information

Semantics and Verification of Software

Semantics and Verification of Software Semantics and Verification of Software Lecture 21: Nondeterminism and Parallelism IV (Equivalence of CCS Processes & Wrap-Up) Thomas Noll Lehrstuhl für Informatik 2 (Software Modeling and Verification)

More information

Summary Last Lecture. Automated Reasoning. Outline of the Lecture. Definition sequent calculus. Theorem (Normalisation and Strong Normalisation)

Summary Last Lecture. Automated Reasoning. Outline of the Lecture. Definition sequent calculus. Theorem (Normalisation and Strong Normalisation) Summary Summary Last Lecture sequent calculus Automated Reasoning Georg Moser Institute of Computer Science @ UIBK Winter 013 (Normalisation and Strong Normalisation) let Π be a proof in minimal logic

More information

Chapter 7: Functional Programming Languages

Chapter 7: Functional Programming Languages Chapter 7: Functional Programming Languages Aarne Ranta Slides for the book Implementing Programming Languages. An Introduction to Compilers and Interpreters, College Publications, 2012. Fun: a language

More information

CHAPTER 7 GENERAL PROOF SYSTEMS

CHAPTER 7 GENERAL PROOF SYSTEMS CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes

More information

Left-Handed Completeness

Left-Handed Completeness Left-Handed Completeness Dexter Kozen Computer Science Department Cornell University RAMiCS, September 19, 2012 Joint work with Alexandra Silva Radboud University Nijmegen and CWI Amsterdam Result A new

More information

Andrew Pitts chapter for D. Sangorgi and J. Rutten (eds), Advanced Topics in Bisimulation and Coinduction, Cambridge Tracts in Theoretical Computer

Andrew Pitts chapter for D. Sangorgi and J. Rutten (eds), Advanced Topics in Bisimulation and Coinduction, Cambridge Tracts in Theoretical Computer Andrew Pitts chapter for D. Sangorgi and J. Rutten (eds), Advanced Topics in Bisimulation and Coinduction, Cambridge Tracts in Theoretical Computer Science No. 52, chapter 5, pages 197 232 ( c 2011 CUP)

More information

Modal Proofs as Distributed Programs (Extended Abstract)

Modal Proofs as Distributed Programs (Extended Abstract) Modal Proofs as Distributed Programs (Extended Abstract) Limin Jia and David Walker Princeton University 35 Olden St., Princeton, NJ 08544, USA {ljia,dpw}@cs.princeton.edu Abstract. We develop a new foundation

More information

Degrees of Truth: the formal logic of classical and quantum probabilities as well as fuzzy sets.

Degrees of Truth: the formal logic of classical and quantum probabilities as well as fuzzy sets. Degrees of Truth: the formal logic of classical and quantum probabilities as well as fuzzy sets. Logic is the study of reasoning. A language of propositions is fundamental to this study as well as true

More information

Bindings, mobility of bindings, and the -quantifier

Bindings, mobility of bindings, and the -quantifier ICMS, 26 May 2007 1/17 Bindings, mobility of bindings, and the -quantifier Dale Miller, INRIA-Saclay and LIX, École Polytechnique This talk is based on papers with Tiu in LICS2003 & ACM ToCL, and experience

More information

Ideal Class Group and Units

Ideal Class Group and Units Chapter 4 Ideal Class Group and Units We are now interested in understanding two aspects of ring of integers of number fields: how principal they are (that is, what is the proportion of principal ideals

More information

Research Note. Bi-intuitionistic Boolean Bunched Logic

Research Note. Bi-intuitionistic Boolean Bunched Logic UCL DEPARTMENT OF COMPUTER SCIENCE Research Note RN/14/06 Bi-intuitionistic Boolean Bunched Logic June, 2014 James Brotherston Dept. of Computer Science University College London Jules Villard Dept. of

More information

Mathematics Course 111: Algebra I Part IV: Vector Spaces

Mathematics Course 111: Algebra I Part IV: Vector Spaces Mathematics Course 111: Algebra I Part IV: Vector Spaces D. R. Wilkins Academic Year 1996-7 9 Vector Spaces A vector space over some field K is an algebraic structure consisting of a set V on which are

More information

Categorical Monads and Computer Programming

Categorical Monads and Computer Programming London Mathematical Society Impact150 Stories 1 (2015) 9 14 C 2015 Author(s) doi:10.1112/i150lms/t.0002 Categorical Monads and Computer Programming Nick Benton Abstract The categorical notion of monad

More information

ON UNIQUE FACTORIZATION DOMAINS

ON UNIQUE FACTORIZATION DOMAINS ON UNIQUE FACTORIZATION DOMAINS JIM COYKENDALL AND WILLIAM W. SMITH Abstract. In this paper we attempt to generalize the notion of unique factorization domain in the spirit of half-factorial domain. It

More information

Call-by-Value is Dual to Call-by-Name

Call-by-Value is Dual to Call-by-Name Call-by-Value is Dual to Call-by-Name Philip Wadler Avaya Labs [email protected] ABSTRACT The rules of classical logic may be formulated in pairs corresponding to De Morgan duals: rules about & are dual

More information

INTRODUCTORY SET THEORY

INTRODUCTORY SET THEORY M.Sc. program in mathematics INTRODUCTORY SET THEORY Katalin Károlyi Department of Applied Analysis, Eötvös Loránd University H-1088 Budapest, Múzeum krt. 6-8. CONTENTS 1. SETS Set, equal sets, subset,

More information

Section 1.4. Lines, Planes, and Hyperplanes. The Calculus of Functions of Several Variables

Section 1.4. Lines, Planes, and Hyperplanes. The Calculus of Functions of Several Variables The Calculus of Functions of Several Variables Section 1.4 Lines, Planes, Hyperplanes In this section we will add to our basic geometric understing of R n by studying lines planes. If we do this carefully,

More information

ADJUNCTION MODELS FOR CALL-BY-PUSH-VALUE WITH STACKS

ADJUNCTION MODELS FOR CALL-BY-PUSH-VALUE WITH STACKS ADJUNCTION MODELS FOR CALL-BY-PUSH-VALUE WITH STACKS PAUL BLAIN LEVY ABSTRACT. Call-by-push-value is a semantic machine code, providing a set of simple primitives from which both the call-by-value and

More information

Verifying security protocols using theorem provers

Verifying security protocols using theorem provers 1562 2007 79-86 79 Verifying security protocols using theorem provers Miki Tanaka National Institute of Information and Communications Technology Koganei, Tokyo 184-8795, Japan Email: [email protected]

More information

GROUP ALGEBRAS. ANDREI YAFAEV

GROUP ALGEBRAS. ANDREI YAFAEV GROUP ALGEBRAS. ANDREI YAFAEV We will associate a certain algebra to a finite group and prove that it is semisimple. Then we will apply Wedderburn s theory to its study. Definition 0.1. Let G be a finite

More information

ORIENTATIONS. Contents

ORIENTATIONS. Contents ORIENTATIONS Contents 1. Generators for H n R n, R n p 1 1. Generators for H n R n, R n p We ended last time by constructing explicit generators for H n D n, S n 1 by using an explicit n-simplex which

More information

Blame for All. Jeremy G. Siek. Amal Ahmed. Robert Bruce Findler. Philip Wadler. Abstract. 1. Introduction

Blame for All. Jeremy G. Siek. Amal Ahmed. Robert Bruce Findler. Philip Wadler. Abstract. 1. Introduction Blame for All Amal Ahmed Indiana University [email protected] Robert Bruce Findler Northwestern University [email protected] Jeremy G. Siek University of Colorado at Boulder [email protected]

More information

Simulation-Based Security with Inexhaustible Interactive Turing Machines

Simulation-Based Security with Inexhaustible Interactive Turing Machines Simulation-Based Security with Inexhaustible Interactive Turing Machines Ralf Küsters Institut für Informatik Christian-Albrechts-Universität zu Kiel 24098 Kiel, Germany [email protected]

More information

A Propositional Dynamic Logic for CCS Programs

A Propositional Dynamic Logic for CCS Programs A Propositional Dynamic Logic for CCS Programs Mario R. F. Benevides and L. Menasché Schechter {mario,luis}@cos.ufrj.br Abstract This work presents a Propositional Dynamic Logic in which the programs are

More information

Notes from February 11

Notes from February 11 Notes from February 11 Math 130 Course web site: www.courses.fas.harvard.edu/5811 Two lemmas Before proving the theorem which was stated at the end of class on February 8, we begin with two lemmas. The

More information

Properties of Real Numbers

Properties of Real Numbers 16 Chapter P Prerequisites P.2 Properties of Real Numbers What you should learn: Identify and use the basic properties of real numbers Develop and use additional properties of real numbers Why you should

More information

Introduction to Type Theory

Introduction to Type Theory Introduction to Type Theory Herman Geuvers Radboud University Nijmegen, The Netherlands Technical University Eindhoven, The Netherlands 1 Overview These notes comprise the lecture Introduction to Type

More information

ISOMETRIES OF R n KEITH CONRAD

ISOMETRIES OF R n KEITH CONRAD ISOMETRIES OF R n KEITH CONRAD 1. Introduction An isometry of R n is a function h: R n R n that preserves the distance between vectors: h(v) h(w) = v w for all v and w in R n, where (x 1,..., x n ) = x

More information

Introduction to Algebraic Geometry. Bézout s Theorem and Inflection Points

Introduction to Algebraic Geometry. Bézout s Theorem and Inflection Points Introduction to Algebraic Geometry Bézout s Theorem and Inflection Points 1. The resultant. Let K be a field. Then the polynomial ring K[x] is a unique factorisation domain (UFD). Another example of a

More information

ABSTRACT ALGEBRA: A STUDY GUIDE FOR BEGINNERS

ABSTRACT ALGEBRA: A STUDY GUIDE FOR BEGINNERS ABSTRACT ALGEBRA: A STUDY GUIDE FOR BEGINNERS John A. Beachy Northern Illinois University 2014 ii J.A.Beachy This is a supplement to Abstract Algebra, Third Edition by John A. Beachy and William D. Blair

More information

Linear Algebra Notes for Marsden and Tromba Vector Calculus

Linear Algebra Notes for Marsden and Tromba Vector Calculus Linear Algebra Notes for Marsden and Tromba Vector Calculus n-dimensional Euclidean Space and Matrices Definition of n space As was learned in Math b, a point in Euclidean three space can be thought of

More information

Introduction to Finite Fields (cont.)

Introduction to Finite Fields (cont.) Chapter 6 Introduction to Finite Fields (cont.) 6.1 Recall Theorem. Z m is a field m is a prime number. Theorem (Subfield Isomorphic to Z p ). Every finite field has the order of a power of a prime number

More information

CODING TRUE ARITHMETIC IN THE MEDVEDEV AND MUCHNIK DEGREES

CODING TRUE ARITHMETIC IN THE MEDVEDEV AND MUCHNIK DEGREES CODING TRUE ARITHMETIC IN THE MEDVEDEV AND MUCHNIK DEGREES PAUL SHAFER Abstract. We prove that the first-order theory of the Medvedev degrees, the first-order theory of the Muchnik degrees, and the third-order

More information

Arkansas Tech University MATH 4033: Elementary Modern Algebra Dr. Marcel B. Finan

Arkansas Tech University MATH 4033: Elementary Modern Algebra Dr. Marcel B. Finan Arkansas Tech University MATH 4033: Elementary Modern Algebra Dr. Marcel B. Finan 3 Binary Operations We are used to addition and multiplication of real numbers. These operations combine two real numbers

More information

Elements of Abstract Group Theory

Elements of Abstract Group Theory Chapter 2 Elements of Abstract Group Theory Mathematics is a game played according to certain simple rules with meaningless marks on paper. David Hilbert The importance of symmetry in physics, and for

More information

Group Theory. Contents

Group Theory. Contents Group Theory Contents Chapter 1: Review... 2 Chapter 2: Permutation Groups and Group Actions... 3 Orbits and Transitivity... 6 Specific Actions The Right regular and coset actions... 8 The Conjugation

More information

LIMITS AND CONTINUITY

LIMITS AND CONTINUITY LIMITS AND CONTINUITY 1 The concept of it Eample 11 Let f() = 2 4 Eamine the behavior of f() as approaches 2 2 Solution Let us compute some values of f() for close to 2, as in the tables below We see from

More information

GROUPS ACTING ON A SET

GROUPS ACTING ON A SET GROUPS ACTING ON A SET MATH 435 SPRING 2012 NOTES FROM FEBRUARY 27TH, 2012 1. Left group actions Definition 1.1. Suppose that G is a group and S is a set. A left (group) action of G on S is a rule for

More information

Abstract Algebra Cheat Sheet

Abstract Algebra Cheat Sheet Abstract Algebra Cheat Sheet 16 December 2002 By Brendan Kidwell, based on Dr. Ward Heilman s notes for his Abstract Algebra class. Notes: Where applicable, page numbers are listed in parentheses at the

More information

T ( a i x i ) = a i T (x i ).

T ( a i x i ) = a i T (x i ). Chapter 2 Defn 1. (p. 65) Let V and W be vector spaces (over F ). We call a function T : V W a linear transformation form V to W if, for all x, y V and c F, we have (a) T (x + y) = T (x) + T (y) and (b)

More information

1 Sets and Set Notation.

1 Sets and Set Notation. LINEAR ALGEBRA MATH 27.6 SPRING 23 (COHEN) LECTURE NOTES Sets and Set Notation. Definition (Naive Definition of a Set). A set is any collection of objects, called the elements of that set. We will most

More information

Linear Algebra I. Ronald van Luijk, 2012

Linear Algebra I. Ronald van Luijk, 2012 Linear Algebra I Ronald van Luijk, 2012 With many parts from Linear Algebra I by Michael Stoll, 2007 Contents 1. Vector spaces 3 1.1. Examples 3 1.2. Fields 4 1.3. The field of complex numbers. 6 1.4.

More information

System BV is NP-complete

System BV is NP-complete System BV is NP-complete Ozan Kahramanoğulları 1,2 Computer Science Institute, University of Leipzig International Center for Computational Logic, TU Dresden Abstract System BV is an extension of multiplicative

More information

Intuitionistic Type Theory. Per Martin-Löf

Intuitionistic Type Theory. Per Martin-Löf Intuitionistic Type Theory Per Martin-Löf Notes by Giovanni Sambin of a series of lectures given in Padua, June 1980 Contents Introductory remarks............................ 1 Propositions and judgements.......................

More information

INCIDENCE-BETWEENNESS GEOMETRY

INCIDENCE-BETWEENNESS GEOMETRY INCIDENCE-BETWEENNESS GEOMETRY MATH 410, CSUSM. SPRING 2008. PROFESSOR AITKEN This document covers the geometry that can be developed with just the axioms related to incidence and betweenness. The full

More information

G = G 0 > G 1 > > G k = {e}

G = G 0 > G 1 > > G k = {e} Proposition 49. 1. A group G is nilpotent if and only if G appears as an element of its upper central series. 2. If G is nilpotent, then the upper central series and the lower central series have the same

More information

4. FIRST STEPS IN THE THEORY 4.1. A

4. FIRST STEPS IN THE THEORY 4.1. A 4. FIRST STEPS IN THE THEORY 4.1. A Catalogue of All Groups: The Impossible Dream The fundamental problem of group theory is to systematically explore the landscape and to chart what lies out there. We

More information

Chapter 13: Basic ring theory

Chapter 13: Basic ring theory Chapter 3: Basic ring theory Matthew Macauley Department of Mathematical Sciences Clemson University http://www.math.clemson.edu/~macaule/ Math 42, Spring 24 M. Macauley (Clemson) Chapter 3: Basic ring

More information

Turing Degrees and Definability of the Jump. Theodore A. Slaman. University of California, Berkeley. CJuly, 2005

Turing Degrees and Definability of the Jump. Theodore A. Slaman. University of California, Berkeley. CJuly, 2005 Turing Degrees and Definability of the Jump Theodore A. Slaman University of California, Berkeley CJuly, 2005 Outline Lecture 1 Forcing in arithmetic Coding and decoding theorems Automorphisms of countable

More information

Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods. Software Engineering and Formal Methods Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

More information

COMMUTATIVE RINGS. Definition: A domain is a commutative ring R that satisfies the cancellation law for multiplication:

COMMUTATIVE RINGS. Definition: A domain is a commutative ring R that satisfies the cancellation law for multiplication: COMMUTATIVE RINGS Definition: A commutative ring R is a set with two operations, addition and multiplication, such that: (i) R is an abelian group under addition; (ii) ab = ba for all a, b R (commutative

More information

Invertible elements in associates and semigroups. 1

Invertible elements in associates and semigroups. 1 Quasigroups and Related Systems 5 (1998), 53 68 Invertible elements in associates and semigroups. 1 Fedir Sokhatsky Abstract Some invertibility criteria of an element in associates, in particular in n-ary

More information

System Description: Delphin A Functional Programming Language for Deductive Systems

System Description: Delphin A Functional Programming Language for Deductive Systems System Description: Delphin A Functional Programming Language for Deductive Systems Adam Poswolsky 1 and Carsten Schürmann 2 1 Yale University [email protected] 2 IT University of Copenhagen [email protected]

More information

Remarks on Non-Fregean Logic

Remarks on Non-Fregean Logic STUDIES IN LOGIC, GRAMMAR AND RHETORIC 10 (23) 2007 Remarks on Non-Fregean Logic Mieczys law Omy la Institute of Philosophy University of Warsaw Poland [email protected] 1 Introduction In 1966 famous Polish

More information

Section 1.1. Introduction to R n

Section 1.1. Introduction to R n The Calculus of Functions of Several Variables Section. Introduction to R n Calculus is the study of functional relationships and how related quantities change with each other. In your first exposure to

More information

o-minimality and Uniformity in n 1 Graphs

o-minimality and Uniformity in n 1 Graphs o-minimality and Uniformity in n 1 Graphs Reid Dale July 10, 2013 Contents 1 Introduction 2 2 Languages and Structures 2 3 Definability and Tame Geometry 4 4 Applications to n 1 Graphs 6 5 Further Directions

More information

PROOFS AND TYPES JEAN-YVES GIRARD PAUL TAYLOR YVES LAFONT. CAMBRIDGE UNIVERSITY PRESS Cambridge. Translated and with appendices by

PROOFS AND TYPES JEAN-YVES GIRARD PAUL TAYLOR YVES LAFONT. CAMBRIDGE UNIVERSITY PRESS Cambridge. Translated and with appendices by PROOFS AND TYPES JEAN-YVES GIRARD Translated and with appendices by PAUL TAYLOR YVES LAFONT CAMBRIDGE UNIVERSITY PRESS Cambridge New York Melbourne New Rochelle Sydney ii Published by the Press Syndicate

More information

So let us begin our quest to find the holy grail of real analysis.

So let us begin our quest to find the holy grail of real analysis. 1 Section 5.2 The Complete Ordered Field: Purpose of Section We present an axiomatic description of the real numbers as a complete ordered field. The axioms which describe the arithmetic of the real numbers

More information

Finite dimensional C -algebras

Finite dimensional C -algebras Finite dimensional C -algebras S. Sundar September 14, 2012 Throughout H, K stand for finite dimensional Hilbert spaces. 1 Spectral theorem for self-adjoint opertors Let A B(H) and let {ξ 1, ξ 2,, ξ n

More information

Computing exponents modulo a number: Repeated squaring

Computing exponents modulo a number: Repeated squaring Computing exponents modulo a number: Repeated squaring How do you compute (1415) 13 mod 2537 = 2182 using just a calculator? Or how do you check that 2 340 mod 341 = 1? You can do this using the method

More information

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1.

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1. MATH10212 Linear Algebra Textbook: D. Poole, Linear Algebra: A Modern Introduction. Thompson, 2006. ISBN 0-534-40596-7. Systems of Linear Equations Definition. An n-dimensional vector is a row or a column

More information

Introduction to type systems

Introduction to type systems Introduction to type systems p. 1/5 Introductory Course on Logic and Automata Theory Introduction to type systems [email protected] Based on slides by Jeff Foster, UMD Introduction to type systems

More information

(0, 0) : order 1; (0, 1) : order 4; (0, 2) : order 2; (0, 3) : order 4; (1, 0) : order 2; (1, 1) : order 4; (1, 2) : order 2; (1, 3) : order 4.

(0, 0) : order 1; (0, 1) : order 4; (0, 2) : order 2; (0, 3) : order 4; (1, 0) : order 2; (1, 1) : order 4; (1, 2) : order 2; (1, 3) : order 4. 11.01 List the elements of Z 2 Z 4. Find the order of each of the elements is this group cyclic? Solution: The elements of Z 2 Z 4 are: (0, 0) : order 1; (0, 1) : order 4; (0, 2) : order 2; (0, 3) : order

More information

Foundational Proof Certificates

Foundational Proof Certificates An application of proof theory to computer science INRIA-Saclay & LIX, École Polytechnique CUSO Winter School, Proof and Computation 30 January 2013 Can we standardize, communicate, and trust formal proofs?

More information

88 CHAPTER 2. VECTOR FUNCTIONS. . First, we need to compute T (s). a By definition, r (s) T (s) = 1 a sin s a. sin s a, cos s a

88 CHAPTER 2. VECTOR FUNCTIONS. . First, we need to compute T (s). a By definition, r (s) T (s) = 1 a sin s a. sin s a, cos s a 88 CHAPTER. VECTOR FUNCTIONS.4 Curvature.4.1 Definitions and Examples The notion of curvature measures how sharply a curve bends. We would expect the curvature to be 0 for a straight line, to be very small

More information

1 Symmetries of regular polyhedra

1 Symmetries of regular polyhedra 1230, notes 5 1 Symmetries of regular polyhedra Symmetry groups Recall: Group axioms: Suppose that (G, ) is a group and a, b, c are elements of G. Then (i) a b G (ii) (a b) c = a (b c) (iii) There is an

More information

A New Generic Digital Signature Algorithm

A New Generic Digital Signature Algorithm Groups Complex. Cryptol.? (????), 1 16 DOI 10.1515/GCC.????.??? de Gruyter???? A New Generic Digital Signature Algorithm Jennifer Seberry, Vinhbuu To and Dongvu Tonien Abstract. In this paper, we study

More information

Parametric Curves. (Com S 477/577 Notes) Yan-Bin Jia. Oct 8, 2015

Parametric Curves. (Com S 477/577 Notes) Yan-Bin Jia. Oct 8, 2015 Parametric Curves (Com S 477/577 Notes) Yan-Bin Jia Oct 8, 2015 1 Introduction A curve in R 2 (or R 3 ) is a differentiable function α : [a,b] R 2 (or R 3 ). The initial point is α[a] and the final point

More information

The Ideal Class Group

The Ideal Class Group Chapter 5 The Ideal Class Group We will use Minkowski theory, which belongs to the general area of geometry of numbers, to gain insight into the ideal class group of a number field. We have already mentioned

More information

8.1 Examples, definitions, and basic properties

8.1 Examples, definitions, and basic properties 8 De Rham cohomology Last updated: May 21, 211. 8.1 Examples, definitions, and basic properties A k-form ω Ω k (M) is closed if dω =. It is exact if there is a (k 1)-form σ Ω k 1 (M) such that dσ = ω.

More information

On the generation of elliptic curves with 16 rational torsion points by Pythagorean triples

On the generation of elliptic curves with 16 rational torsion points by Pythagorean triples On the generation of elliptic curves with 16 rational torsion points by Pythagorean triples Brian Hilley Boston College MT695 Honors Seminar March 3, 2006 1 Introduction 1.1 Mazur s Theorem Let C be a

More information