Recursive Functions
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
2.1 the Algebra of Sets
Chapter 2 I Abstract Algebra 83 part of abstract algebra, sets are fundamental to all areas of mathematics and we need to establish a precise language for sets. We also explore operations on sets and relations between sets, developing an “algebra of sets” that strongly resembles aspects of the algebra of sentential logic. In addition, as we discussed in chapter 1, a fundamental goal in mathematics is crafting articulate, thorough, convincing, and insightful arguments for the truth of mathematical statements. We continue the development of theorem-proving and proof-writing skills in the context of basic set theory. After exploring the algebra of sets, we study two number systems denoted Zn and U(n) that are closely related to the integers. Our approach is based on a widely used strategy of mathematicians: we work with specific examples and look for general patterns. This study leads to the definition of modified addition and multiplication operations on certain finite subsets of the integers. We isolate key axioms, or properties, that are satisfied by these and many other number systems and then examine number systems that share the “group” properties of the integers. Finally, we consider an application of this mathematics to check digit schemes, which have become increasingly important for the success of business and telecommunications in our technologically based society. Through the study of these topics, we engage in a thorough introduction to abstract algebra from the perspective of the mathematician— working with specific examples to identify key abstract properties common to diverse and interesting mathematical systems. 2.1 The Algebra of Sets Intuitively, a set is a “collection” of objects known as “elements.” But in the early 1900’s, a radical transformation occurred in mathematicians’ understanding of sets when the British philosopher Bertrand Russell identified a fundamental paradox inherent in this intuitive notion of a set (this paradox is discussed in exercises 66–70 at the end of this section). -
“The Church-Turing “Thesis” As a Special Corollary of Gödel's
“The Church-Turing “Thesis” as a Special Corollary of Gödel’s Completeness Theorem,” in Computability: Turing, Gödel, Church, and Beyond, B. J. Copeland, C. Posy, and O. Shagrir (eds.), MIT Press (Cambridge), 2013, pp. 77-104. Saul A. Kripke This is the published version of the book chapter indicated above, which can be obtained from the publisher at https://mitpress.mit.edu/books/computability. It is reproduced here by permission of the publisher who holds the copyright. © The MIT Press The Church-Turing “ Thesis ” as a Special Corollary of G ö del ’ s 4 Completeness Theorem 1 Saul A. Kripke Traditionally, many writers, following Kleene (1952) , thought of the Church-Turing thesis as unprovable by its nature but having various strong arguments in its favor, including Turing ’ s analysis of human computation. More recently, the beauty, power, and obvious fundamental importance of this analysis — what Turing (1936) calls “ argument I ” — has led some writers to give an almost exclusive emphasis on this argument as the unique justification for the Church-Turing thesis. In this chapter I advocate an alternative justification, essentially presupposed by Turing himself in what he calls “ argument II. ” The idea is that computation is a special form of math- ematical deduction. Assuming the steps of the deduction can be stated in a first- order language, the Church-Turing thesis follows as a special case of G ö del ’ s completeness theorem (first-order algorithm theorem). I propose this idea as an alternative foundation for the Church-Turing thesis, both for human and machine computation. Clearly the relevant assumptions are justified for computations pres- ently known. -
The Five Fundamental Operations of Mathematics: Addition, Subtraction
The five fundamental operations of mathematics: addition, subtraction, multiplication, division, and modular forms Kenneth A. Ribet UC Berkeley Trinity University March 31, 2008 Kenneth A. Ribet Five fundamental operations This talk is about counting, and it’s about solving equations. Counting is a very familiar activity in mathematics. Many universities teach sophomore-level courses on discrete mathematics that turn out to be mostly about counting. For example, we ask our students to find the number of different ways of constituting a bag of a dozen lollipops if there are 5 different flavors. (The answer is 1820, I think.) Kenneth A. Ribet Five fundamental operations Solving equations is even more of a flagship activity for mathematicians. At a mathematics conference at Sundance, Robert Redford told a group of my colleagues “I hope you solve all your equations”! The kind of equations that I like to solve are Diophantine equations. Diophantus of Alexandria (third century AD) was Robert Redford’s kind of mathematician. This “father of algebra” focused on the solution to algebraic equations, especially in contexts where the solutions are constrained to be whole numbers or fractions. Kenneth A. Ribet Five fundamental operations Here’s a typical example. Consider the equation y 2 = x3 + 1. In an algebra or high school class, we might graph this equation in the plane; there’s little challenge. But what if we ask for solutions in integers (i.e., whole numbers)? It is relatively easy to discover the solutions (0; ±1), (−1; 0) and (2; ±3), and Diophantus might have asked if there are any more. -
CS311H: Discrete Mathematics Recursive Definitions Recursive
Recursive Definitions CS311H: Discrete Mathematics I Should be familiar with recursive functions from programming: Recursive Definitions public int fact(int n) { if(n <= 1) return 1; return n * fact(n - 1); Instructor: I¸sıl Dillig } I Recursive definitions are also used in math for defining sets, functions, sequences etc. Instructor: I¸sıl Dillig, CS311H: Discrete Mathematics Recursive Definitions 1/18 Instructor: I¸sıl Dillig, CS311H: Discrete Mathematics Recursive Definitions 2/18 Recursive Definitions in Math Recursively Defined Functions I Consider the following sequence: I Just like sequences, functions can also be defined recursively 1, 3, 9, 27, 81,... I Example: I This sequence can be defined recursively as follows: f (0) = 3 f (n + 1) = 2f (n) + 3 (n 1) a0 = 1 ≥ an = 3 an 1 · − I What is f (1)? I First part called base case; second part called recursive step I What is f (2)? I Very similar to induction; in fact, recursive definitions I What is f (3)? sometimes also called inductive definitions Instructor: I¸sıl Dillig, CS311H: Discrete Mathematics Recursive Definitions 3/18 Instructor: I¸sıl Dillig, CS311H: Discrete Mathematics Recursive Definitions 4/18 Recursive Definition Examples Recursive Definitions of Important Functions I Some important functions/sequences defined recursively I Consider f (n) = 2n + 1 where n is non-negative integer I Factorial function: I What’s a recursive definition for f ? f (1) = 1 f (n) = n f (n 1) (n 2) · − ≥ I Consider the sequence 1, 4, 9, 16,... I Fibonacci numbers: 1, 1, 2, 3, 5, 8, 13, 21,... I What is a recursive -
Chapter 3 Induction and Recursion
Chapter 3 Induction and Recursion 3.1 Induction: An informal introduction This section is intended as a somewhat informal introduction to The Principle of Mathematical Induction (PMI): a theorem that establishes the validity of the proof method which goes by the same name. There is a particular format for writing the proofs which makes it clear that PMI is being used. We will not explicitly use this format when introducing the method, but will do so for the large number of different examples given later. Suppose you are given a large supply of L-shaped tiles as shown on the left of the figure below. The question you are asked to answer is whether these tiles can be used to exactly cover the squares of an 2n × 2n punctured grid { a 2n × 2n grid that has had one square cut out { say the 8 × 8 example shown in the right of the figure. 1 2 CHAPTER 3. INDUCTION AND RECURSION In order for this to be possible at all, the number of squares in the punctured grid has to be a multiple of three. It is. The number of squares is 2n2n − 1 = 22n − 1 = 4n − 1 ≡ 1n − 1 ≡ 0 (mod 3): But that does not mean we can tile the punctured grid. In order to get some traction on what to do, let's try some small examples. The tiling is easy to find if n = 1 because 2 × 2 punctured grid is exactly covered by one tile. Let's try n = 2, so that our punctured grid is 4 × 4. -
Recursive Definitions and Structural Induction 1 Recursive Definitions
Massachusetts Institute of Technology Course Notes 6 6.042J/18.062J, Fall ’02: Mathematics for Computer Science Professor Albert Meyer and Dr. Radhika Nagpal Recursive Definitions and Structural Induction 1 Recursive Definitions Recursive definitions say how to build something from a simpler version of the same thing. They have two parts: • Base case(s) that don’t depend on anything else. • Combination case(s) that depend on simpler cases. Here are some examples of recursive definitions: Example 1.1. Define a set, E, recursively as follows: 1. 0 E, 2 2. if n E, then n + 2 E, 2 2 3. if n E, then n E. 2 − 2 Using this definition, we can see that since 0 E by 1., it follows from 2. that 0 + 2 = 2 E, and 2 2 so 2 + 2 = 4 E, 4 + 2 = 6 E, : : : , and in fact any nonegative even number is in E. Also, by 3., 2 2 2; 4; 6; E. − − − · · · 2 Is anything else in E? The definition doesn’t say so explicitly, but an implicit condition on a recursive definition is that the only way things get into E is as a consequence of 1., 2., and 3. So clearly E is exactly the set of even integers. Example 1.2. Define a set, S, of strings of a’s and b’s recursively as follows: 1. λ S, where λ is the empty string, 2 2. if x S, then axb S, 2 2 3. if x S, then bxa S, 2 2 4. if x; y S, then xy S. -
A Quick Algebra Review
A Quick Algebra Review 1. Simplifying Expressions 2. Solving Equations 3. Problem Solving 4. Inequalities 5. Absolute Values 6. Linear Equations 7. Systems of Equations 8. Laws of Exponents 9. Quadratics 10. Rationals 11. Radicals Simplifying Expressions An expression is a mathematical “phrase.” Expressions contain numbers and variables, but not an equal sign. An equation has an “equal” sign. For example: Expression: Equation: 5 + 3 5 + 3 = 8 x + 3 x + 3 = 8 (x + 4)(x – 2) (x + 4)(x – 2) = 10 x² + 5x + 6 x² + 5x + 6 = 0 x – 8 x – 8 > 3 When we simplify an expression, we work until there are as few terms as possible. This process makes the expression easier to use, (that’s why it’s called “simplify”). The first thing we want to do when simplifying an expression is to combine like terms. For example: There are many terms to look at! Let’s start with x². There Simplify: are no other terms with x² in them, so we move on. 10x x² + 10x – 6 – 5x + 4 and 5x are like terms, so we add their coefficients = x² + 5x – 6 + 4 together. 10 + (-5) = 5, so we write 5x. -6 and 4 are also = x² + 5x – 2 like terms, so we can combine them to get -2. Isn’t the simplified expression much nicer? Now you try: x² + 5x + 3x² + x³ - 5 + 3 [You should get x³ + 4x² + 5x – 2] Order of Operations PEMDAS – Please Excuse My Dear Aunt Sally, remember that from Algebra class? It tells the order in which we can complete operations when solving an equation. -
7.2 Binary Operators Closure
last edited April 19, 2016 7.2 Binary Operators A precise discussion of symmetry benefits from the development of what math- ematicians call a group, which is a special kind of set we have not yet explicitly considered. However, before we define a group and explore its properties, we reconsider several familiar sets and some of their most basic features. Over the last several sections, we have considered many di↵erent kinds of sets. We have considered sets of integers (natural numbers, even numbers, odd numbers), sets of rational numbers, sets of vertices, edges, colors, polyhedra and many others. In many of these examples – though certainly not in all of them – we are familiar with rules that tell us how to combine two elements to form another element. For example, if we are dealing with the natural numbers, we might considered the rules of addition, or the rules of multiplication, both of which tell us how to take two elements of N and combine them to give us a (possibly distinct) third element. This motivates the following definition. Definition 26. Given a set S,abinary operator ? is a rule that takes two elements a, b S and manipulates them to give us a third, not necessarily distinct, element2 a?b. Although the term binary operator might be new to us, we are already familiar with many examples. As hinted to earlier, the rule for adding two numbers to give us a third number is a binary operator on the set of integers, or on the set of rational numbers, or on the set of real numbers. -
Church's Thesis and the Conceptual Analysis of Computability
Church’s Thesis and the Conceptual Analysis of Computability Michael Rescorla Abstract: Church’s thesis asserts that a number-theoretic function is intuitively computable if and only if it is recursive. A related thesis asserts that Turing’s work yields a conceptual analysis of the intuitive notion of numerical computability. I endorse Church’s thesis, but I argue against the related thesis. I argue that purported conceptual analyses based upon Turing’s work involve a subtle but persistent circularity. Turing machines manipulate syntactic entities. To specify which number-theoretic function a Turing machine computes, we must correlate these syntactic entities with numbers. I argue that, in providing this correlation, we must demand that the correlation itself be computable. Otherwise, the Turing machine will compute uncomputable functions. But if we presuppose the intuitive notion of a computable relation between syntactic entities and numbers, then our analysis of computability is circular.1 §1. Turing machines and number-theoretic functions A Turing machine manipulates syntactic entities: strings consisting of strokes and blanks. I restrict attention to Turing machines that possess two key properties. First, the machine eventually halts when supplied with an input of finitely many adjacent strokes. Second, when the 1 I am greatly indebted to helpful feedback from two anonymous referees from this journal, as well as from: C. Anthony Anderson, Adam Elga, Kevin Falvey, Warren Goldfarb, Richard Heck, Peter Koellner, Oystein Linnebo, Charles Parsons, Gualtiero Piccinini, and Stewart Shapiro. I received extremely helpful comments when I presented earlier versions of this paper at the UCLA Philosophy of Mathematics Workshop, especially from Joseph Almog, D. -
Rules for Matrix Operations
Math 2270 - Lecture 8: Rules for Matrix Operations Dylan Zwick Fall 2012 This lecture covers section 2.4 of the textbook. 1 Matrix Basix Most of this lecture is about formalizing rules and operations that we’ve already been using in the class up to this point. So, it should be mostly a review, but a necessary one. If any of this is new to you please make sure you understand it, as it is the foundation for everything else we’ll be doing in this course! A matrix is a rectangular array of numbers, and an “m by n” matrix, also written rn x n, has rn rows and n columns. We can add two matrices if they are the same shape and size. Addition is termwise. We can also mul tiply any matrix A by a constant c, and this multiplication just multiplies every entry of A by c. For example: /2 3\ /3 5\ /5 8 (34 )+( 10 Hf \i 2) \\2 3) \\3 5 /1 2\ /3 6 3 3 ‘ = 9 12 1 I 1 2 4) \6 12 1 Moving on. Matrix multiplication is more tricky than matrix addition, because it isn’t done termwise. In fact, if two matrices have the same size and shape, it’s not necessarily true that you can multiply them. In fact, it’s only true if that shape is square. In order to multiply two matrices A and B to get AB the number of columns of A must equal the number of rows of B. So, we could not, for example, multiply a 2 x 3 matrix by a 2 x 3 matrix. -
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. -
Basic Concepts of Set Theory, Functions and Relations 1. Basic
Ling 310, adapted from UMass Ling 409, Partee lecture notes March 1, 2006 p. 1 Basic Concepts of Set Theory, Functions and Relations 1. Basic Concepts of Set Theory........................................................................................................................1 1.1. Sets and elements ...................................................................................................................................1 1.2. Specification of sets ...............................................................................................................................2 1.3. Identity and cardinality ..........................................................................................................................3 1.4. Subsets ...................................................................................................................................................4 1.5. Power sets .............................................................................................................................................4 1.6. Operations on sets: union, intersection...................................................................................................4 1.7 More operations on sets: difference, complement...................................................................................5 1.8. Set-theoretic equalities ...........................................................................................................................5 Chapter 2. Relations and Functions ..................................................................................................................6