COMS 6100 Class Notes
|
|
- Edwin Barton
- 5 years ago
- Views:
Transcription
1 COMS 6100 Class Notes Daniel Solus November 1, General Remarks We will start with a small overview of the material from the end of last class. Since we were interrupted by the fire alarm. 2 Review 2.1 List Operators push/pop shift/unshift reverse split/join grep map Note: split is very useful for parseing text. You can split on multiple levels. I use this all the time! We looked at a few basic examples of list operators in action. In particular sort, reverse sort, split and join of starters. Then we looked at the more complex operators. 1
2 2.2 List Operators Examples: p r i n t \ n L i s t Operators \n ; = qw( cat f i s h dog cow ) ; = r e v e r s e ( s o r ) ; p r i n t I have the f o l l o w i n g p e t s \n ; p r i n t I have the f o l l o w i n g p e t s \n ; my $word = s t r e s s e d ; my $mirror = r e v e r s e $word ; p r i n t $word backwards i s $mirror \n ; my %wheels = ( u n i c y c l e => 1, bike => 2, t r i c y c l e => 3, car => 4, atv => 4, semi => 18, ) ; my %c o u n t 2 v e h i c l e = r e v e r s e %wheels ; # b e c a r e f u l o f key value p a i r s that have d u p l i c a t e v a l u e s being l o s t s p r i n t \%c o u n t 2 v e h i c l e :. j o i n (,, %c o u n t 2 v e h i c l e ). \n ; my $sentance = The quick brown fox... ; = s p l i t (, $sentance ) ; p r i n t ( Found the f o l l o w i n g words : \. j o i n ). \ \n ) ; j u i c e s = qw( apple cranapple orange grape apple c i d e r ) ; = grep ( / apple j u i c e s ) ; p r i n t ( These j u i c e s c o n tain apple : \ n ) ; f o r e a c h my $ j ) { p r i n t ( $ j. \n ) ; Question: Answer: What if we have more than one value? (when using.join) join only puts a, in between (be careful of duplicate values!) Note: $ is the fill in the blank variable Example: CHOMP, removes new line if they exist. but CHOMP alone will operate on $ 2
3 2.3 List Operators Examples: Continuing with list operator examples we looked at three blocks using grep, map and map again. The last block shows that we can use map instead of a loop to get all the primes less than 10. = ( 2, 3, 5, 7, 1 1, 1 3, 1 7, 1 9 ) ; = grep { $ < ; # $ i s the f i l l i n the blank v a r i a b l e p r i n t ( \nthese are the s m a l l e r primes : \ n ) ; f o r e a c h my $ i ) { p r i n t ( $ i. \n ) ; perfectsquaresofprimes = map { $ ; p r i n t ( \nthese are the p e r f e c t s q u a r e s o f the f i r s t primes : \ n ) ; f o r e a c h my $ i ) { p r i n t ( $ i. \n ) ; = map { $ < 10? $ : ( ; # same as using grep p r i n t ( \nthese are the s m a l l e r primes : \ n ) ; f o r e a c h my $ i ) { p r i n t ( $ i. \n ) ; 3 Flow Control We will take another look at flow control, which we have seen multiple times now, in Perl. Perl is much more expressive with flow control and conditional statements. This allows for greater flexiablity and efficiency. 3.1 Basics Conditional: if, elsif, else, unless - is the opposite of if, same as if (not $expression) Loop statements: While, until do, for, foreach Modifiers 3
4 3.2 Conditional Examples: my $a = 0 ; my $b = 1 ; i f (! $a &&! $b ) { p r i n t Neither \n ; # c o n v e n t i o n a l i f ( not $a and not $b ) { p r i n t Neither \n ; # same, but with e n g l i s h i f ( not ( $a or $b ) ) { p r i n t Neither \n ; # same, but with p a r e n t h e s e s u n l e s s ( $a or $b ) { p r i n t Neither \n ; # same, but maybe the c l e a r e s t Below is the basic outline for the loop structures while, until, and do while taken verbatim: Loop statements while( continuation_expression){ # loops while continuation_expression evaluates to true statement(s); until( expression){ # loops until expression evaluates to true statement(s); do{ # execute this block, at least once, #and then while continuation_expression is true statement(s); while( continuation_expression); while( continuation_expression); # either an infinite loop, or does nothing Question Who would like to see a loop example? 3.3 Loop Examples: 4
5 my $hungry = 1 ; while ( $hungry ) { $hungry = eat ( $banana ) ; my $answer ; my $ c o r r e c t ; do{ $answer = get answer ( ) ; $ c o r r e c t = check ( $answer ) ; while ( $ c o r r e c t ) ; 3.4 For Loop Outline: The following outlines how to execute a for loop in Perl explicitly. f o r ( i n i t i a l i z i a t i o n ; c o n t i n u a t i o n e x p r e s s i o n ; increment ) { # 1) i n i t i a l i z i a t i o n happens only once, at the very beginning # 2) then, the c o n t i n u a t i o n e x p r e s s i o n i s checked, i f i t true, then the block i s exectued # 3) then, increment, # 4) Go to 2 statement ( s ) ; 3.5 For Loop Examples: Let s do a countdown! p r i n t \nloops : \ n ; p r i n t \ncountdown : \ n ; f o r ( my $ i = 1 0 ; $ i >= 0 ; $i ){ p r i n t $ i... \ n ; p r i n t \ncountdown : \ n ; f o r e a c h my $ i ( r e v e r s e ) { p r i n t $ i... \ n ; 5
6 Question: Answer: index Just wondering if i gets lost with the decrement? Perl keeps the scope of the variable within the loop. just a loop 4 Modifiers Modify simple statements Parenthese usually are not needed Works well to set default values when needed 4.1 Valid modifiers: if unless while until when for foreach 4.2 Modifier Example I: p r i n t \ nmodifier Examples... \ n ; my $c ; my $ d e f a u l t = DEFAULT ; $a = $ d e f a u l t u n l e s s d e f i n e d $a ; $b = $ d e f a u l t u n l e s s d e f i n e d $b ; $c = $ d e f a u l t u n l e s s d e f i n e d $c ; p r i n t a : $a, b : $b, c : $c \n ; $a was already set to 0; $b was already set to 1 and $c was unde- Note: fined 6
7 Note: Note: Use modifiers if they fit your style. A big part of this is to recognize modifiers used in other s code. 4.3 Modifier Example II: my $balance = ; my $ d e p o s i t = 0 ; my $withdrawal ; p r i n t balance : $balance ( i n i t i a l ) \n ; $balance += $ d e p o s i t i f $ d e p o s i t ; p r i n t balance : $balance \n ; $ d e p o s i t = ; $balance += $ d e p o s i t i f $ d e p o s i t ; p r i n t balance : $balance \n ; $withdrawal = ; $ b a l a n c e = $withdrawal i f $withdrawal and $withdrawal <= $balance ; p r i n t balance : $balance \n ; This examples increments (and decrements) the balance variable after the requirement variable is modified. This is a style of coding that is familiar and intuitive. Understanding modifier usage is important when reading other people s code. 5 Subroutines A subroutine is a group of related statements treated as a single task. Perl allows for named subroutines and anonymous subroutines. There are various ways of handling arguments and subroutines. 5.1 Declaring Subroutines Call a subroutine by it s name, usually followed by parentheses enclosing any arguments. Parentheses are not needed if the subroutines is declaring first (use the parentheses anyway). Subroutines can call themselves (recursive subroutines) 7
8 Subroutines are another datatype. Names may begin with and & character but is not needed to call. 5.2 Arguments 1. Pass by value 2. Pass by reference Note: arguments are copied into the fill in the blank 5.3 Returning 1. return command 2. last executed statement is returned if there is no return command 3. + scalar or a flat list. 5.4 Subroutine Structure 1. Declare subroutine 2. Copy arguments (before perl overwrites ) 3. Check arguments 4. Perform computation 5. Return results 5.5 Subroutine Example I: p r i n t ( f a c t o r i a l ( 5 ). \n ) ; # p a r e n t h e s e s are r e q u i r e d sub f a c t o r i a l { my ( $n ) ; # f i l l i n the blank array r e t u r n $n i f $n <= 2 ; $n f a c t o r i a l ( $n 1) ; # by d e f a u l t, a s u b r o u t i n e r e t u r n s the l a s t executed statement p r i n t ( f a c t o r i a l 5) ; p r i n t ( \n ) ; # p a r e n t h e s e s not r e q u i r e d p r i n t ( &f a c t o r i a l ( 5 ). \n ) ; # & i s o p t i o n a l 8
9 Note: Subroutine to calculate factorial of n with no final return command. 5.6 Subroutine Example II: sub ten { r e t u r n wantarray ( )? ( ) : 1 0 ; = ten ( ) ; # 1, 2, 3, 4, 5, 6 7, 8, 9, 1 0 p r i n t ( \n ) ; my $value = ten ( ) ; # 10 p r i n t ( \ $value : $value \n ) ; ( $value ) = ten ( ) ; p r i n t ( (\ $value ) : $value \n ) ; my ( $one, $two ) = ten ( ) ; p r i n t ( (\ $one, \$two ) : ( $one, $two ) \n ) ; Note: wantarray indicates datatype to be used. 5.7 Subroutine Example III: # 1) Declare s u b r o u t i n e sub f i b o n a c c i { # 2) Copy arguments ( b e f o r e p e r l o v e r w r i t e s ) my ( $n ) ; # 3) Check arguments d i e Number must be p o s i t i v e i f $n <= 0 ; # 4) Perform computation # 5) Return r e s u l t s r e t u r n 1 i f $n <= 2 ; r e t u r n ( f i b o n a c c i ( $n 1) + f i b o n a c c i ( $n 2) ) ; f o r e a c h my $ i ( ) { my $ f i b = f i b o n a c c i ( $ i ) ; p r i n t f i b o n a c c i ( $ i ) i s $ f i b \n ; Subroutine prints out the first seven Fibonacci numbers. 9
Enumeration and generation of all constitutional alkane isomers of methane to icosane using recursive generation and a modified Morgan s algorithm
The C n H 2n+2 challenge Zürich, November 21st 2015 Enumeration and generation of all constitutional alkane isomers of methane to icosane using recursive generation and a modified Morgan s algorithm Andreas
More informationCOMS 6100 Class Notes
COMS 6100 Class Notes Daniel Solus September 20, 2016 1 General Remarks The Lecture notes submitted by the class have been very good. Integer division seemed to be a common oversight when working the Fortran
More informationTheory of Computation Lecture Notes. Problems and Algorithms. Class Information
Theory of Computation Lecture Notes Prof. Yuh-Dauh Lyuu Dept. Computer Science & Information Engineering and Department of Finance National Taiwan University Problems and Algorithms c 2004 Prof. Yuh-Dauh
More informationFunctions in Python L435/L555. Dept. of Linguistics, Indiana University Fall Functions in Python. Functions.
L435/L555 Dept. of Linguistics, Indiana University Fall 2016 1 / 18 What is a function? Definition A function is something you can call (possibly with some parameters, i.e., the things in parentheses),
More informationDecidability and Undecidability
Decidability and Undecidability Major Ideas from Last Time Every TM can be converted into a string representation of itself. The encoding of M is denoted M. The universal Turing machine U TM accepts an
More informationFactorial Designs. Outline. Definition. Factorial designs. Factorial designs. Higher order interactions
1 Factorial Designs Outline 2 Factorial designs Conditions vs. levels Naming Why use them Main effects Interactions Simple main effect Graphical definition Additivity definition Factorial designs Independent
More informationComputational Models Lecture 8 1
Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. May 11/13, 2015 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationMoving into the information age: From records to Google Earth
Moving into the information age: From records to Google Earth David R. R. Smith Psychology, School of Life Sciences, University of Hull e-mail: davidsmith.butterflies@gmail.com Introduction Many of us
More informationEvolving a New Feature for a Working Program
Evolving a New Feature for a Working Program Mike Stimpson arxiv:1104.0283v1 [cs.ne] 2 Apr 2011 January 18, 2013 Abstract A genetic programming system is created. A first fitness function f 1 is used to
More informationTuring Machines Part II
Turing Machines Part II Problem Set Set Five Five due due in in the the box box up up front front using using a late late day. day. Hello Hello Condensed Slide Slide Readers! Readers! This This lecture
More informationTuring Machines Part II
Turing Machines Part II Hello Hello Condensed Slide Slide Readers! Readers! This This lecture lecture is is almost almost entirely entirely animations that that show show how how each each Turing Turing
More information1. Problem I calculated these out by hand. It was tedious, but kind of fun, in a a computer should really be doing this sort of way.
. Problem 5.2-. I calculated these out by hand. It was tedious, but kind of fun, in a a computer should really be doing this sort of way. 2 655 95 45 243 77 33 33 93 86 5 36 8 3 5 2 4 2 2 2 4 2 2 4 4 2
More informationA Note on Turing Machine Design
CS103 Handout 17 Fall 2013 November 11, 2013 Problem Set 7 This problem explores Turing machines, nondeterministic computation, properties of the RE and R languages, and the limits of RE and R languages.
More informationMathematical Induction
Mathematical Induction MAT231 Transition to Higher Mathematics Fall 2014 MAT231 (Transition to Higher Math) Mathematical Induction Fall 2014 1 / 21 Outline 1 Mathematical Induction 2 Strong Mathematical
More informationTallahassee Community College. 1. Define addition. 2. Draw a picture of 3 apples + 2 apples. 3. Write the directions for adding on the number line.
Tallahassee Community College 4 I. Understanding Addition ADDITION OF WHOLE NUMBERS (DEFINITIONS AND PROPERTIES) 1. Define addition. 2. Draw a picture of 3 apples + 2 apples. 3. Write the directions for
More informationHow to Make or Plot a Graph or Chart in Excel
This is a complete video tutorial on How to Make or Plot a Graph or Chart in Excel. To make complex chart like Gantt Chart, you have know the basic principles of making a chart. Though I have used Excel
More informationSearching. Sorting. Lambdas
.. s Babes-Bolyai University arthur@cs.ubbcluj.ro Overview 1 2 3 Feedback for the course You can write feedback at academicinfo.ubbcluj.ro It is both important as well as anonymous Write both what you
More informationComputational Models Lecture 8 1
Computational Models Lecture 8 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. April 18/ May 2, 2016 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationIntroduction to Turing Machines. Reading: Chapters 8 & 9
Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages
More informationDiscrete Mathematical Structures: Theory and Applications
Chapter 1: Foundations: Sets, Logic, and Algorithms Discrete Mathematical Structures: Theory and Applications Learning Objectives Learn about sets Explore various operations on sets Become familiar with
More informationFinite State Transducers
Finite State Transducers Eric Gribkoff May 29, 2013 Original Slides by Thomas Hanneforth (Universitat Potsdam) Outline 1 Definition of Finite State Transducer 2 Examples of FSTs 3 Definition of Regular
More informationUniversal Turing Machine. Lecture 20
Universal Turing Machine Lecture 20 1 Turing Machine move the head left or right by one cell read write sequentially accessed infinite memory finite memory (state) next-action look-up table Variants don
More informationFunctional Big-step Semantics
Functional Big-step Semantics FM talk, 11 Mar 2015 Magnus Myréen Books Big-step semantics are defined as inductively defined relation. Functions are better! me Context: CakeML verified compiler Old compiler:
More informationTopic Contents. Factoring Methods. Unit 3: Factoring Methods. Finding the square root of a number
Topic Contents Factoring Methods Unit 3 The smallest divisor of an integer The GCD of two numbers Generating prime numbers Computing prime factors of an integer Generating pseudo random numbers Raising
More informationTuring Machines Part Two
Turing Machines Part Two Recap from Last Time Our First Turing Machine q acc a start q 0 q 1 a This This is is the the Turing Turing machine s machine s finiteisttiteiconntont. finiteisttiteiconntont.
More informationHow Latent Semantic Indexing Solves the Pachyderm Problem
How Latent Semantic Indexing Solves the Pachyderm Problem Michael A. Covington Institute for Artificial Intelligence The University of Georgia 2011 1 Introduction Here I present a brief mathematical demonstration
More informationLoop Convergence. CS 536: Science of Programming, Fall 2018
Solved Loop Convergence CS 536: Science of Programming, Fall 2018 A. Why Diverging programs aren t useful, so it s useful to know how to show that loops terminate. B. Objectives At the end of this lecture
More informationAnalysis of Algorithms CMPSC 565
Analysis of Algorithms CMPSC 565 LECTURES 38-39 Randomized Algorithms II Quickselect Quicksort Running time Adam Smith L1.1 Types of randomized analysis Average-case analysis : Assume data is distributed
More informationOutline. 1 Merging. 2 Merge Sort. 3 Complexity of Sorting. 4 Merge Sort and Other Sorts 2 / 10
Merge Sort 1 / 10 Outline 1 Merging 2 Merge Sort 3 Complexity of Sorting 4 Merge Sort and Other Sorts 2 / 10 Merging Merge sort is based on a simple operation known as merging: combining two ordered arrays
More information2 - Strings and Binomial Coefficients
November 14, 2017 2 - Strings and Binomial Coefficients William T. Trotter trotter@math.gatech.edu Basic Definition Let n be a positive integer and let [n] = {1, 2,, n}. A sequence of length n such as
More informationCOMP 355 Advanced Algorithms Algorithm Design Review: Mathematical Background
COMP 355 Advanced Algorithms Algorithm Design Review: Mathematical Background 1 Polynomial Time Brute force. For many non-trivial problems, there is a natural brute force search algorithm that checks every
More informationSolving Equations. Lesson Fifteen. Aims. Context. The aim of this lesson is to enable you to: solve linear equations
Mathematics GCSE Module Four: Basic Algebra Lesson Fifteen Aims The aim of this lesson is to enable you to: solve linear equations solve linear equations from their graph solve simultaneous equations from
More informationhighlights proof by contradiction what about the real numbers?
CSE 311: Foundations of Computing Fall 2013 Lecture 27: Turing machines and decidability highlights Cardinality A set S is countableiffwe can writeit as S={s 1, s 2, s 3,...} indexed by N Set of rationals
More informationTuring Machines Part Three
Turing Machines Part Three What problems can we solve with a computer? What kind of computer? Very Important Terminology Let M be a Turing machine. M accepts a string w if it enters an accept state when
More informationMath Review. for the Quantitative Reasoning measure of the GRE General Test
Math Review for the Quantitative Reasoning measure of the GRE General Test www.ets.org Overview This Math Review will familiarize you with the mathematical skills and concepts that are important for solving
More informationProblem One: Order Relations i. What three properties does a binary relation have to have to be a partial order?
CS103 Handout 16 Fall 2011 November 4, 2011 Extra Practice Problems Many of you have expressed interest in additional practice problems to review the material from the first four weeks of CS103. This handout
More informationThe maximum-subarray problem. Given an array of integers, find a contiguous subarray with the maximum sum. Very naïve algorithm:
The maximum-subarray problem Given an array of integers, find a contiguous subarray with the maximum sum. Very naïve algorithm: Brute force algorithm: At best, θ(n 2 ) time complexity 129 Can we do divide
More informationOptimizing Finite Automata
Optimizing Finite Automata We can improve the DFA created by MakeDeterministic. Sometimes a DFA will have more states than necessary. For every DFA there is a unique smallest equivalent DFA (fewest states
More informationData Structures and Algorithms CSE 465
Data Structures and Algorithms CSE 465 LECTURE 8 Analyzing Quick Sort Sofya Raskhodnikova and Adam Smith Reminder: QuickSort Quicksort an n-element array: 1. Divide: Partition the array around a pivot
More informationDenotational Semantics of Programs. : SimpleExp N.
Models of Computation, 2010 1 Denotational Semantics of Programs Denotational Semantics of SimpleExp We will define the denotational semantics of simple expressions using a function : SimpleExp N. Denotational
More informationIn Which We Conclude Calculus by Using Taylor Series to Prove Euler s Identity Calculus 12, Veritas Prep.
In Which We Conclude Calculus by Using Taylor Series to Prove Euler s Identity Calculus 12, Veritas Prep. 23 February 2011 Name: Directions: Feel free to use scrap paper if you need it. Show all your work
More informationTuring Machines Part One
Turing Machines Part One What problems can we solve with a computer? Regular Languages CFLs Languages recognizable by any feasible computing machine All Languages That same drawing, to scale. All Languages
More informationBlocking Synchronization: Streams Vijay Saraswat (Dec 10, 2012)
1 Streams Blocking Synchronization: Streams Vijay Saraswat (Dec 10, 2012) Streams provide a very simple abstraction for determinate parallel computation. The intuition for streams is already present in
More informationREVIEW: Waves on a String
Lecture 14: Solution to the Wave Equation (Chapter 6) and Random Walks (Chapter 7) 1 Description of Wave Motion REVIEW: Waves on a String We are all familiar with the motion of a transverse wave pulse
More informationMathematical Background. Unsigned binary numbers. Powers of 2. Logs and exponents. Mathematical Background. Today, we will review:
Mathematical Background Mathematical Background CSE 373 Data Structures Today, we will review: Logs and eponents Series Recursion Motivation for Algorithm Analysis 5 January 007 CSE 373 - Math Background
More informationFootnotes to Linear Algebra (MA 540 fall 2013), T. Goodwillie, Bases
Footnotes to Linear Algebra (MA 540 fall 2013), T. Goodwillie, Bases November 18, 2013 1 Spanning and linear independence I will outline a slightly different approach to the material in Chapter 2 of Axler
More informationComputational Complexity
Computational Complexity S. V. N. Vishwanathan, Pinar Yanardag January 8, 016 1 Computational Complexity: What, Why, and How? Intuitively an algorithm is a well defined computational procedure that takes
More informationManipulating Equations
Manipulating Equations Now that you know how to set up an equation, the next thing you need to do is solve for the value that the question asks for. Above all, the most important thing to remember when
More informationLisp Introduction. Dr. Neil T. Dantam. Spring CSCI-498/598 RPM, Colorado School of Mines. Dantam (Mines CSCI, RPM) Lisp Spring / 88
Lisp Introduction Dr. Neil T. Dantam CSCI-498/598 RPM, Colorado School of Mines Spring 28 Dantam (Mines CSCI, RPM) Lisp Spring 28 / 88 Outline Lisp Common Lisp by Example Implementation Details Typing
More informationStudy skills for mathematicians
PART I Study skills for mathematicians CHAPTER 1 Sets and functions Everything starts somewhere, although many physicists disagree. Terry Pratchett, Hogfather, 1996 To think like a mathematician requires
More informationR: A Quick Reference
R: A Quick Reference Colorado Reed January 17, 2012 Contents 1 Basics 2 1.1 Arrays and Matrices....................... 2 1.2 Lists................................ 3 1.3 Loading Packages.........................
More informationRemainders. We learned how to multiply and divide in elementary
Remainders We learned how to multiply and divide in elementary school. As adults we perform division mostly by pressing the key on a calculator. This key supplies the quotient. In numerical analysis and
More informationNeural Networks Learning the network: Backprop , Fall 2018 Lecture 4
Neural Networks Learning the network: Backprop 11-785, Fall 2018 Lecture 4 1 Recap: The MLP can represent any function The MLP can be constructed to represent anything But how do we construct it? 2 Recap:
More informationApplied Statistics in Business & Economics, 5 th edition
A PowerPoint Presentation Package to Accompany Applied Statistics in Business & Economics, 5 th edition David P. Doane and Lori E. Seward Prepared by Lloyd R. Jaisingh McGraw-Hill/Irwin Copyright 2015
More informationMatrices and Vectors. Definition of Matrix. An MxN matrix A is a two-dimensional array of numbers A =
30 MATHEMATICS REVIEW G A.1.1 Matrices and Vectors Definition of Matrix. An MxN matrix A is a two-dimensional array of numbers A = a 11 a 12... a 1N a 21 a 22... a 2N...... a M1 a M2... a MN A matrix can
More informationComputational Models Lecture 8 1
Computational Models Lecture 8 1 Handout Mode Nachum Dershowitz & Yishay Mansour. Tel Aviv University. May 17 22, 2017 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationFundamentals of Mathematics I
Fundamentals of Mathematics I Kent State Department of Mathematical Sciences Fall 2008 Available at: http://www.math.kent.edu/ebooks/10031/book.pdf August 4, 2008 Contents 1 Arithmetic 2 1.1 Real Numbers......................................................
More informationType 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 informationAbstract & Applied Linear Algebra (Chapters 1-2) James A. Bernhard University of Puget Sound
Abstract & Applied Linear Algebra (Chapters 1-2) James A. Bernhard University of Puget Sound Copyright 2018 by James A. Bernhard Contents 1 Vector spaces 3 1.1 Definitions and basic properties.................
More informationModels of Computation, Recall Register Machines. A register machine (sometimes abbreviated to RM) is specified by:
Models of Computation, 2010 1 Definition Recall Register Machines A register machine (sometimes abbreviated M) is specified by: Slide 1 finitely many registers R 0, R 1,..., R n, each capable of storing
More informationClojure Concurrency Constructs, Part Two. CSCI 5828: Foundations of Software Engineering Lecture 13 10/07/2014
Clojure Concurrency Constructs, Part Two CSCI 5828: Foundations of Software Engineering Lecture 13 10/07/2014 1 Goals Cover the material presented in Chapter 4, of our concurrency textbook In particular,
More informationInduction and Recursion
. All rights reserved. Authorized only for instructor use in the classroom. No reproduction or further distribution permitted without the prior written consent of McGraw-Hill Education. Induction and Recursion
More informationThe Inductive Proof Template
CS103 Handout 24 Winter 2016 February 5, 2016 Guide to Inductive Proofs Induction gives a new way to prove results about natural numbers and discrete structures like games, puzzles, and graphs. All of
More informationMOL410/510 Problem Set 1 - Linear Algebra - Due Friday Sept. 30
MOL40/50 Problem Set - Linear Algebra - Due Friday Sept. 30 Use lab notes to help solve these problems. Problems marked MUST DO are required for full credit. For the remainder of the problems, do as many
More informationRandom Number Generation. Stephen Booth David Henty
Random Number Generation Stephen Booth David Henty Introduction Random numbers are frequently used in many types of computer simulation Frequently as part of a sampling process: Generate a representative
More informationModule 1: Analyzing the Efficiency of Algorithms
Module 1: Analyzing the Efficiency of Algorithms Dr. Natarajan Meghanathan Professor of Computer Science Jackson State University Jackson, MS 39217 E-mail: natarajan.meghanathan@jsums.edu What is an Algorithm?
More informationimport java. u t i l. ;... Scanner sc = new Scanner ( System. in ) ;
CPSC 490 Input Input will always arrive on stdin. You may assume input is well-formed with respect to the problem specification; inappropriate input (e.g. text where a number was specified, number out
More informationWarm-up Quantifiers and the harmonic series Sets Second warmup Induction Bijections. Writing more proofs. Misha Lavrov
Writing more proofs Misha Lavrov ARML Practice 3/16/2014 and 3/23/2014 Warm-up Using the quantifier notation on the reference sheet, and making any further definitions you need to, write the following:
More informationOn my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work
Lab 5 : Linking Name: Sign the following statement: On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work 1 Objective The main objective of this lab is to experiment
More informationWho am I? Math 1080: Numerical Linear Algebra. Books. Format
Who am I? Math 18: Numerical Linear Algebra M M Sussman sussmanm@mathpittedu Office Hours: MW 1:45PM-2:45PM, Thack 622 Part-time faculty in Math Dept Experience at Bettis lab Administer 27/271 Numerical
More informationText Search and Closure Properties
Text Search and Closure Properties CSCI 330 Formal Languages and Automata Theory Siu On CHAN Fall 208 Chinese University of Hong Kong /28 Text Search grep program grep -E regex file.txt Searches for an
More informationMathematical Foundations of Programming. Nicolai Kraus. Draft of February 15, 2018
Very short lecture notes: Mathematical Foundations of Programming University of Nottingham, Computer Science, module code G54FOP, Spring 2018 Nicolai Kraus Draft of February 15, 2018 What is this? This
More informationMathematical Proofs. e x2. log k. a+b a + b. Carlos Moreno uwaterloo.ca EIT e π i 1 = 0.
Mathematical Proofs Carlos Moreno cmoreno @ uwaterloo.ca EIT-4103 N k=0 log k 0 e x2 e π i 1 = 0 dx a+b a + b https://ece.uwaterloo.ca/~cmoreno/ece250 Mathematical Proofs Standard reminder to set phones
More informationTuring Machines. Wolfgang Schreiner
Turing Machines Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at Wolfgang Schreiner
More informationCSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY
CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY RYAN DOUGHERTY If we want to talk about a program running on a real computer, consider the following: when a program reads an instruction,
More informationHomework Assignment 4 Root Finding Algorithms The Maximum Velocity of a Car Due: Friday, February 19, 2010 at 12noon
ME 2016 A Spring Semester 2010 Computing Techniques 3-0-3 Homework Assignment 4 Root Finding Algorithms The Maximum Velocity of a Car Due: Friday, February 19, 2010 at 12noon Description and Outcomes In
More informationTHE LOGIC OF COMPOUND STATEMENTS
CHAPTER 2 THE LOGIC OF COMPOUND STATEMENTS Copyright Cengage Learning. All rights reserved. SECTION 2.1 Logical Form and Logical Equivalence Copyright Cengage Learning. All rights reserved. Logical Form
More informationText Search and Closure Properties
Text Search and Closure Properties CSCI 3130 Formal Languages and Automata Theory Siu On CHAN Chinese University of Hong Kong Fall 2017 1/30 Text Search 2/30 grep program grep -E regexp file.txt Searches
More informationDay 1: Over + Over Again
Welcome to Morning Math! The current time is... huh, that s not right. Day 1: Over + Over Again Welcome to PCMI! We know you ll learn a great deal of mathematics here maybe some new tricks, maybe some
More informationTheory of Computation Lecture Notes
Theory of Computation Lecture Notes Prof. Yuh-Dauh Lyuu Dept. Computer Science & Information Engineering and Department of Finance National Taiwan University c 2008 Prof. Yuh-Dauh Lyuu, National Taiwan
More informationBig , and Definition Definition
Big O, Ω, and Θ Big-O gives us only a one-way comparison; if f is O(g) then g eventually is bigger than f from that point on, but in fact f could be very small in comparison. Example; 3n is O(2 2n ). We
More informationENEE 459E/CMSC 498R In-class exercise February 10, 2015
ENEE 459E/CMSC 498R In-class exercise February 10, 2015 In this in-class exercise, we will explore what it means for a problem to be intractable (i.e. it cannot be solved by an efficient algorithm). There
More informationMathematical Proofs. e x2. log k. a+b a + b. Carlos Moreno uwaterloo.ca EIT e π i 1 = 0.
Mathematical Proofs Carlos Moreno cmoreno @ uwaterloo.ca EIT-4103 N k=0 log k 0 e x2 e π i 1 = 0 dx a+b a + b https://ece.uwaterloo.ca/~cmoreno/ece250 Today's class: Mathematical Proofs We'll investigate
More informationIntroductory Quantum Chemistry Prof. K. L. Sebastian Department of Inorganic and Physical Chemistry Indian Institute of Science, Bangalore
Introductory Quantum Chemistry Prof. K. L. Sebastian Department of Inorganic and Physical Chemistry Indian Institute of Science, Bangalore Lecture - 4 Postulates Part 1 (Refer Slide Time: 00:59) So, I
More informationTuring machines and linear bounded automata
and linear bounded automata Informatics 2A: Lecture 30 John Longley School of Informatics University of Edinburgh jrl@inf.ed.ac.uk 25 November 2016 1 / 17 The Chomsky hierarchy: summary Level Language
More informationAt the start of the term, we saw the following formula for computing the sum of the first n integers:
Chapter 11 Induction This chapter covers mathematical induction. 11.1 Introduction to induction At the start of the term, we saw the following formula for computing the sum of the first n integers: Claim
More informationTopic 17. Analysis of Algorithms
Topic 17 Analysis of Algorithms Analysis of Algorithms- Review Efficiency of an algorithm can be measured in terms of : Time complexity: a measure of the amount of time required to execute an algorithm
More information1 Sequences and Summation
1 Sequences and Summation A sequence is a function whose domain is either all the integers between two given integers or all the integers greater than or equal to a given integer. For example, a m, a m+1,...,
More informationComputer Science & Engineering 423/823 Design and Analysis of Algorithms
Computer Science & Engineering 423/823 Design and Analysis of Algorithms Lecture 03 Dynamic Programming (Chapter 15) Stephen Scott and Vinodchandran N. Variyam sscott@cse.unl.edu 1/44 Introduction Dynamic
More informationAn Introduction to Z3
An Introduction to Z3 Huixing Fang National Trusted Embedded Software Engineering Technology Research Center April 12, 2017 Outline 1 SMT 2 Z3 Huixing Fang (ECNU) An Introduction to Z3 April 12, 2017 2
More informationLab 2: Static Response, Cantilevered Beam
Contents 1 Lab 2: Static Response, Cantilevered Beam 3 1.1 Objectives.......................................... 3 1.2 Scalars, Vectors and Matrices (Allen Downey)...................... 3 1.2.1 Attribution.....................................
More informationTuring Machines, diagonalization, the halting problem, reducibility
Notes on Computer Theory Last updated: September, 015 Turing Machines, diagonalization, the halting problem, reducibility 1 Turing Machines A Turing machine is a state machine, similar to the ones we have
More informationFinding Limits Graphically and Numerically
Finding Limits Graphically and Numerically 1. Welcome to finding limits graphically and numerically. My name is Tuesday Johnson and I m a lecturer at the University of Texas El Paso. 2. With each lecture
More informationConstructors - Cont. must be distinguished by the number or type of their arguments.
Constructors - Cont. 1 Constructors can be overloaded! must be distinguished by the number or type of their arguments. 2 When no constructor is defined, there is a default constructor with no arguments.
More information1 ListElement l e = f i r s t ; / / s t a r t i n g p o i n t 2 while ( l e. next!= n u l l ) 3 { l e = l e. next ; / / next step 4 } Removal
Präsenzstunden Today In the same room as in the first week Assignment 5 Felix Friedrich, Lars Widmer, Fabian Stutz TA lecture, Informatics II D-BAUG March 18, 2014 HIL E 15.2 15:00-18:00 Timon Gehr (arriving
More informationWithout a Vector Calculus Coordinate System
Classroom Tips and Techniques: Point-and-Click Access to the Differential Operators of Vector Calculus Robert J. Lopez Emeritus Professor of Mathematics and Maple Fellow Maplesoft Introduction The -operator
More information8 Primes and Modular Arithmetic
8 Primes and Modular Arithmetic 8.1 Primes and Factors Over two millennia ago already, people all over the world were considering the properties of numbers. One of the simplest concepts is prime numbers.
More informationMATH 521, WEEK 2: Rational and Real Numbers, Ordered Sets, Countable Sets
MATH 521, WEEK 2: Rational and Real Numbers, Ordered Sets, Countable Sets 1 Rational and Real Numbers Recall that a number is rational if it can be written in the form a/b where a, b Z and b 0, and a number
More informationO Notation (Big Oh) We want to give an upper bound on the amount of time it takes to solve a problem.
O Notation (Big Oh) We want to give an upper bound on the amount of time it takes to solve a problem. defn: v(n) = O(f(n)) constants c and n 0 such that v(n) c f(n) whenever n > n 0 Termed complexity:
More informationMITOCW ocw f99-lec05_300k
MITOCW ocw-18.06-f99-lec05_300k This is lecture five in linear algebra. And, it will complete this chapter of the book. So the last section of this chapter is two point seven that talks about permutations,
More information