Lecture Notes on THEORY of COMPUTATION MODULE
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
A Proof of Cantor's Theorem
Cantor’s Theorem Joe Roussos 1 Preliminary ideas Two sets have the same number of elements (are equinumerous, or have the same cardinality) iff there is a bijection between the two sets. Mappings: A mapping, or function, is a rule that associates elements of one set with elements of another set. We write this f : X ! Y , f is called the function/mapping, the set X is called the domain, and Y is called the codomain. We specify what the rule is by writing f(x) = y or f : x 7! y. e.g. X = f1; 2; 3g;Y = f2; 4; 6g, the map f(x) = 2x associates each element x 2 X with the element in Y that is double it. A bijection is a mapping that is injective and surjective.1 • Injective (one-to-one): A function is injective if it takes each element of the do- main onto at most one element of the codomain. It never maps more than one element in the domain onto the same element in the codomain. Formally, if f is a function between set X and set Y , then f is injective iff 8a; b 2 X; f(a) = f(b) ! a = b • Surjective (onto): A function is surjective if it maps something onto every element of the codomain. It can map more than one thing onto the same element in the codomain, but it needs to hit everything in the codomain. Formally, if f is a function between set X and set Y , then f is surjective iff 8y 2 Y; 9x 2 X; f(x) = y Figure 1: Injective map. -
Linear Transformation (Sections 1.8, 1.9) General View: Given an Input, the Transformation Produces an Output
Linear Transformation (Sections 1.8, 1.9) General view: Given an input, the transformation produces an output. In this sense, a function is also a transformation. 1 4 3 1 3 Example. Let A = and x = 1 . Describe matrix-vector multiplication Ax 2 0 5 1 1 1 in the language of transformation. 1 4 3 1 31 5 Ax b 2 0 5 11 8 1 Vector x is transformed into vector b by left matrix multiplication Definition and terminologies. Transformation (or function or mapping) T from Rn to Rm is a rule that assigns to each vector x in Rn a vector T(x) in Rm. • Notation: T: Rn → Rm • Rn is the domain of T • Rm is the codomain of T • T(x) is the image of vector x • The set of all images T(x) is the range of T • When T(x) = Ax, A is a m×n size matrix. Range of T = Span{ column vectors of A} (HW1.8.7) See class notes for other examples. Linear Transformation --- Existence and Uniqueness Questions (Section 1.9) Definition 1: T: Rn → Rm is onto if each b in Rm is the image of at least one x in Rn. • i.e. codomain Rm = range of T • When solve T(x) = b for x (or Ax=b, A is the standard matrix), there exists at least one solution (Existence question). Definition 2: T: Rn → Rm is one-to-one if each b in Rm is the image of at most one x in Rn. • i.e. When solve T(x) = b for x (or Ax=b, A is the standard matrix), there exists either a unique solution or none at all (Uniqueness question). -
The Partial Function Computed by a TM M(W)
CS601 The Partial Function Computed by a TM Lecture 2 8 y if M on input “.w ” eventually <> t M(w) halts with output “.y ” ≡ t :> otherwise % Σ Σ .; ; Usually, Σ = 0; 1 ; w; y Σ? 0 ≡ − f tg 0 f g 2 0 Definition 2.1 Let f :Σ? Σ? be a total or partial function. We 0 ! 0 say that f is a partial, recursive function iff TM M(f = M( )), 9 · i.e., w Σ?(f(w) = M(w)). 8 2 0 Remark 2.2 There is an easy to compute 1:1 and onto map be- tween 0; 1 ? and N [Exercise]. Thus we can think of the contents f g of a TM tape as a natural number and talk about f : N N ! being a recursive function. If the partial, recursive function f is total, i.e., f : N N then we ! say that f is a total, recursive function. A partial function that is not total is called strictly partial. 1 CS601 Some Recursive Functions Lecture 2 Proposition 2.3 The following functions are recursive. They are all total except for peven. copy(w) = ww σ(n) = n + 1 plus(n; m) = n + m mult(n; m) = n m × exp(n; m) = nm (we let exp(0; 0) = 1) 1 if n is even χ (n) = even 0 otherwise 1 if n is even p (n) = even otherwise % Proof: Exercise: please convince yourself that you can build TMs to compute all of these functions! 2 Recursive Sets = Decidable Sets = Computable Sets Definition 2.4 Let S Σ? or S N. -
Iris: Monoids and Invariants As an Orthogonal Basis for Concurrent Reasoning
Iris: Monoids and Invariants as an Orthogonal Basis for Concurrent Reasoning Ralf Jung David Swasey Filip Sieczkowski Kasper Svendsen MPI-SWS & MPI-SWS Aarhus University Aarhus University Saarland University [email protected] fi[email protected] [email protected] [email protected] rtifact * Comple * Aaron Turon Lars Birkedal Derek Dreyer A t te n * te A is W s E * e n l l C o L D C o P * * Mozilla Research Aarhus University MPI-SWS c u e m s O E u e e P n R t v e o d t * y * s E a [email protected] [email protected] [email protected] a l d u e a t Abstract TaDA [8], and others. In this paper, we present a logic called Iris that We present Iris, a concurrent separation logic with a simple premise: explains some of the complexities of these prior separation logics in monoids and invariants are all you need. Partial commutative terms of a simpler unifying foundation, while also supporting some monoids enable us to express—and invariants enable us to enforce— new and powerful reasoning principles for concurrency. user-defined protocols on shared state, which are at the conceptual Before we get to Iris, however, let us begin with a brief overview core of most recent program logics for concurrency. Furthermore, of some key problems that arise in reasoning compositionally about through a novel extension of the concept of a view shift, Iris supports shared state, and how prior approaches have dealt with them. -
Enumerations of the Kolmogorov Function
Enumerations of the Kolmogorov Function Richard Beigela Harry Buhrmanb Peter Fejerc Lance Fortnowd Piotr Grabowskie Luc Longpr´ef Andrej Muchnikg Frank Stephanh Leen Torenvlieti Abstract A recursive enumerator for a function h is an algorithm f which enu- merates for an input x finitely many elements including h(x). f is a aEmail: [email protected]. Department of Computer and Information Sciences, Temple University, 1805 North Broad Street, Philadelphia PA 19122, USA. Research per- formed in part at NEC and the Institute for Advanced Study. Supported in part by a State of New Jersey grant and by the National Science Foundation under grants CCR-0049019 and CCR-9877150. bEmail: [email protected]. CWI, Kruislaan 413, 1098SJ Amsterdam, The Netherlands. Partially supported by the EU through the 5th framework program FET. cEmail: [email protected]. Department of Computer Science, University of Mas- sachusetts Boston, Boston, MA 02125, USA. dEmail: [email protected]. Department of Computer Science, University of Chicago, 1100 East 58th Street, Chicago, IL 60637, USA. Research performed in part at NEC Research Institute. eEmail: [email protected]. Institut f¨ur Informatik, Im Neuenheimer Feld 294, 69120 Heidelberg, Germany. fEmail: [email protected]. Computer Science Department, UTEP, El Paso, TX 79968, USA. gEmail: [email protected]. Institute of New Techologies, Nizhnyaya Radi- shevskaya, 10, Moscow, 109004, Russia. The work was partially supported by Russian Foundation for Basic Research (grants N 04-01-00427, N 02-01-22001) and Council on Grants for Scientific Schools. hEmail: [email protected]. School of Computing and Department of Mathe- matics, National University of Singapore, 3 Science Drive 2, Singapore 117543, Republic of Singapore. -
Functions and Inverses
Functions and Inverses CS 2800: Discrete Structures, Spring 2015 Sid Chaudhuri Recap: Relations and Functions ● A relation between sets A !the domain) and B !the codomain" is a set of ordered pairs (a, b) such that a ∈ A, b ∈ B !i.e. it is a subset o# A × B" Cartesian product – The relation maps each a to the corresponding b ● Neither all possible a%s, nor all possible b%s, need be covered – Can be one-one, one&'an(, man(&one, man(&man( Alice CS 2800 Bob A Carol CS 2110 B David CS 3110 Recap: Relations and Functions ● ) function is a relation that maps each element of A to a single element of B – Can be one-one or man(&one – )ll elements o# A must be covered, though not necessaril( all elements o# B – Subset o# B covered b( the #unction is its range/image Alice Balch Bob A Carol Jameson B David Mews Recap: Relations and Functions ● Instead of writing the #unction f as a set of pairs, e usually speci#y its domain and codomain as: f : A → B * and the mapping via a rule such as: f (Heads) = 0.5, f (Tails) = 0.5 or f : x ↦ x2 +he function f maps x to x2 Recap: Relations and Functions ● Instead of writing the #unction f as a set of pairs, e usually speci#y its domain and codomain as: f : A → B * and the mapping via a rule such as: f (Heads) = 0.5, f (Tails) = 0.5 2 or f : x ↦ x f(x) ● Note: the function is f, not f(x), – f(x) is the value assigned b( f the #unction f to input x x Recap: Injectivity ● ) function is injective (one-to-one) if every element in the domain has a unique i'age in the codomain – +hat is, f(x) = f(y) implies x = y Albany NY New York A MA Sacramento B CA Boston .. -
Division by Zero in Logic and Computing Jan Bergstra
Division by Zero in Logic and Computing Jan Bergstra To cite this version: Jan Bergstra. Division by Zero in Logic and Computing. 2021. hal-03184956v2 HAL Id: hal-03184956 https://hal.archives-ouvertes.fr/hal-03184956v2 Preprint submitted on 19 Apr 2021 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. DIVISION BY ZERO IN LOGIC AND COMPUTING JAN A. BERGSTRA Abstract. The phenomenon of division by zero is considered from the per- spectives of logic and informatics respectively. Division rather than multi- plicative inverse is taken as the point of departure. A classification of views on division by zero is proposed: principled, physics based principled, quasi- principled, curiosity driven, pragmatic, and ad hoc. A survey is provided of different perspectives on the value of 1=0 with for each view an assessment view from the perspectives of logic and computing. No attempt is made to survey the long and diverse history of the subject. 1. Introduction In the context of rational numbers the constants 0 and 1 and the operations of addition ( + ) and subtraction ( − ) as well as multiplication ( · ) and division ( = ) play a key role. When starting with a binary primitive for subtraction unary opposite is an abbreviation as follows: −x = 0 − x, and given a two-place division function unary inverse is an abbreviation as follows: x−1 = 1=x. -
Classical First-Order Logic Software Formal Verification
Classical First-Order Logic Software Formal Verification Maria Jo~aoFrade Departmento de Inform´atica Universidade do Minho 2008/2009 Maria Jo~aoFrade (DI-UM) First-Order Logic (Classical) MFES 2008/09 1 / 31 Introduction First-order logic (FOL) is a richer language than propositional logic. Its lexicon contains not only the symbols ^, _, :, and ! (and parentheses) from propositional logic, but also the symbols 9 and 8 for \there exists" and \for all", along with various symbols to represent variables, constants, functions, and relations. There are two sorts of things involved in a first-order logic formula: terms, which denote the objects that we are talking about; formulas, which denote truth values. Examples: \Not all birds can fly." \Every child is younger than its mother." \Andy and Paul have the same maternal grandmother." Maria Jo~aoFrade (DI-UM) First-Order Logic (Classical) MFES 2008/09 2 / 31 Syntax Variables: x; y; z; : : : 2 X (represent arbitrary elements of an underlying set) Constants: a; b; c; : : : 2 C (represent specific elements of an underlying set) Functions: f; g; h; : : : 2 F (every function f as a fixed arity, ar(f)) Predicates: P; Q; R; : : : 2 P (every predicate P as a fixed arity, ar(P )) Fixed logical symbols: >, ?, ^, _, :, 8, 9 Fixed predicate symbol: = for \equals" (“first-order logic with equality") Maria Jo~aoFrade (DI-UM) First-Order Logic (Classical) MFES 2008/09 3 / 31 Syntax Terms The set T , of terms of FOL, is given by the abstract syntax T 3 t ::= x j c j f(t1; : : : ; tar(f)) Formulas The set L, of formulas of FOL, is given by the abstract syntax L 3 φ, ::= ? j > j :φ j φ ^ j φ _ j φ ! j t1 = t2 j 8x: φ j 9x: φ j P (t1; : : : ; tar(P )) :, 8, 9 bind most tightly; then _ and ^; then !, which is right-associative. -
Division by Zero: a Survey of Options
Division by Zero: A Survey of Options Jan A. Bergstra Informatics Institute, University of Amsterdam Science Park, 904, 1098 XH, Amsterdam, The Netherlands [email protected], [email protected] Submitted: 12 May 2019 Revised: 24 June 2019 Abstract The idea that, as opposed to the conventional viewpoint, division by zero may produce a meaningful result, is long standing and has attracted inter- est from many sides. We provide a survey of some options for defining an outcome for the application of division in case the second argument equals zero. The survey is limited by a combination of simplifying assumptions which are grouped together in the idea of a premeadow, which generalises the notion of an associative transfield. 1 Introduction The number of options available for assigning a meaning to the expression 1=0 is remarkably large. In order to provide an informative survey of such options some conditions may be imposed, thereby reducing the number of options. I will understand an option for division by zero as an arithmetical datatype, i.e. an algebra, with the following signature: • a single sort with name V , • constants 0 (zero) and 1 (one) for sort V , • 2-place functions · (multiplication) and + (addition), • unary functions − (additive inverse, also called opposite) and −1 (mul- tiplicative inverse), • 2 place functions − (subtraction) and = (division). Decimal notations like 2; 17; −8 are used as abbreviations, e.g. 2 = 1 + 1, and −3 = −((1 + 1) + 1). With inverse the multiplicative inverse is meant, while the additive inverse is referred to as opposite. 1 This signature is referred to as the signature of meadows ΣMd in [6], with the understanding that both inverse and division (and both opposite and sub- traction) are present. -
Chapter 10: Symbolic Trails and Formal Proofs of Validity, Part 2
Essential Logic Ronald C. Pine CHAPTER 10: SYMBOLIC TRAILS AND FORMAL PROOFS OF VALIDITY, PART 2 Introduction In the previous chapter there were many frustrating signs that something was wrong with our formal proof method that relied on only nine elementary rules of validity. Very simple, intuitive valid arguments could not be shown to be valid. For instance, the following intuitively valid arguments cannot be shown to be valid using only the nine rules. Somalia and Iran are both foreign policy risks. Therefore, Iran is a foreign policy risk. S I / I Either Obama or McCain was President of the United States in 2009.1 McCain was not President in 2010. So, Obama was President of the United States in 2010. (O v C) ~(O C) ~C / O If the computer networking system works, then Johnson and Kaneshiro will both be connected to the home office. Therefore, if the networking system works, Johnson will be connected to the home office. N (J K) / N J Either the Start II treaty is ratified or this landmark treaty will not be worth the paper it is written on. Therefore, if the Start II treaty is not ratified, this landmark treaty will not be worth the paper it is written on. R v ~W / ~R ~W 1 This or statement is obviously exclusive, so note the translation. 427 If the light is on, then the light switch must be on. So, if the light switch in not on, then the light is not on. L S / ~S ~L Thus, the nine elementary rules of validity covered in the previous chapter must be only part of a complete system for constructing formal proofs of validity. -
Upper and Lower Bounds on Continuous-Time Computation
Upper and lower bounds on continuous-time computation Manuel Lameiras Campagnolo1 and Cristopher Moore2,3,4 1 D.M./I.S.A., Universidade T´ecnica de Lisboa, Tapada da Ajuda, 1349-017 Lisboa, Portugal [email protected] 2 Computer Science Department, University of New Mexico, Albuquerque NM 87131 [email protected] 3 Physics and Astronomy Department, University of New Mexico, Albuquerque NM 87131 4 Santa Fe Institute, 1399 Hyde Park Road, Santa Fe, New Mexico 87501 Abstract. We consider various extensions and modifications of Shannon’s General Purpose Analog Com- puter, which is a model of computation by differential equations in continuous time. We show that several classical computation classes have natural analog counterparts, including the primitive recursive functions, the elementary functions, the levels of the Grzegorczyk hierarchy, and the arithmetical and analytical hierarchies. Key words: Continuous-time computation, differential equations, recursion theory, dynamical systems, elementary func- tions, Grzegorczyk hierarchy, primitive recursive functions, computable functions, arithmetical and analytical hierarchies. 1 Introduction The theory of analog computation, where the internal states of a computer are continuous rather than discrete, has enjoyed a recent resurgence of interest. This stems partly from a wider program of exploring alternative approaches to computation, such as quantum and DNA computation; partly as an idealization of numerical algorithms where real numbers can be thought of as quantities in themselves, rather than as strings of digits; and partly from a desire to use the tools of computation theory to better classify the variety of continuous dynamical systems we see in the world (or at least in its classical idealization). -
Hyperoperations and Nopt Structures
Hyperoperations and Nopt Structures Alister Wilson Abstract (Beta version) The concept of formal power towers by analogy to formal power series is introduced. Bracketing patterns for combining hyperoperations are pictured. Nopt structures are introduced by reference to Nept structures. Briefly speaking, Nept structures are a notation that help picturing the seed(m)-Ackermann number sequence by reference to exponential function and multitudinous nestings thereof. A systematic structure is observed and described. Keywords: Large numbers, formal power towers, Nopt structures. 1 Contents i Acknowledgements 3 ii List of Figures and Tables 3 I Introduction 4 II Philosophical Considerations 5 III Bracketing patterns and hyperoperations 8 3.1 Some Examples 8 3.2 Top-down versus bottom-up 9 3.3 Bracketing patterns and binary operations 10 3.4 Bracketing patterns with exponentiation and tetration 12 3.5 Bracketing and 4 consecutive hyperoperations 15 3.6 A quick look at the start of the Grzegorczyk hierarchy 17 3.7 Reconsidering top-down and bottom-up 18 IV Nopt Structures 20 4.1 Introduction to Nept and Nopt structures 20 4.2 Defining Nopts from Nepts 21 4.3 Seed Values: “n” and “theta ) n” 24 4.4 A method for generating Nopt structures 25 4.5 Magnitude inequalities inside Nopt structures 32 V Applying Nopt Structures 33 5.1 The gi-sequence and g-subscript towers 33 5.2 Nopt structures and Conway chained arrows 35 VI Glossary 39 VII Further Reading and Weblinks 42 2 i Acknowledgements I’d like to express my gratitude to Wikipedia for supplying an enormous range of high quality mathematics articles.