Introduction

# Introduction - Harvard CS121 and CSCI E-207 Lecture 1:...

This preview shows pages 1–10. Sign up to view the full content.

Harvard CS121 and CSCI E-207 Lecture 1: Introduction and Overview Harry Lewis September 2, 2009

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Harvard CS121 September 2, 2009 Introduction to Formal Systems and Computation Computer Science 121 and CSCI E-207 Objective: Make a theory out of the idea of computation . 1
Harvard CS121 September 2, 2009 What is “computation”? “Processing of information based on a ﬁnite set of operations or rules.” Paper + Pencil Arithmetic 121 + 99 220 Abacus Calculator w/moving parts (Babbage wheels, Mark I) Digital Computers 2

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Harvard CS121 September 2, 2009 Further computing devices Programs in C, Java. The Internet and other distributed systems. Cells/DNA? The human brain? Quantum computers? 3
Harvard CS121 September 2, 2009 What do we want in a “theory”? Generality Technology-independent Abstraction: ignores inessential details Precision Mathematical, formal. Can prove theorems about computation, both positive (what can be computed) and negative (what cannot be computed). 4

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Harvard CS121 September 2, 2009 Representing “Information” Alphabet Ex: a, b, c, . . . , z . Strings: ﬁnite concatenation of alphabet symbols, order matters Ex: qaz, abbab ε = empty string (length 0; sometimes e ) we focus on discrete computations 5
Harvard CS121 September 2, 2009 Computational Problems (i.e. Tasks) A single question that has inﬁnitely many different instances PARITY : given a string x , does it have an even number of a ’s? MAJORITY : given a string x , does it have more a ’s than b ’s? 6

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Harvard CS121 September 2, 2009 Examples of computational problems on numbers ADDITION : given two numbers x, y , compute x + y . PRIMALITY : given a number x , is x prime? Examples of computational problems about computer programs C SYNTAX: given a string of ASCII symbols, does it follow the syntax rules for the C programming language? HALTING PROBLEM : given a computer program (say in C ), can it ever get stuck in an inﬁnite loop? 7
Harvard CS121 September 2, 2009 Computational problems from pure and applied mathematics DIOPHANTINE EQUATIONS : Given a polynomial equation (e.g. x 2 + 3 xyz - 44 z 3 = 0 ), does it have an integer solution? TRAVELLING SALESMAN PROBLEM

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
This is the end of the preview. Sign up to access the rest of the document.

## This document was uploaded on 12/24/2011.

### Page1 / 30

Introduction - Harvard CS121 and CSCI E-207 Lecture 1:...

This preview shows document pages 1 - 10. Sign up to view the full document.

View Full Document
Ask a homework question - tutors are online