whatiscs.ppt - PowerPoint PPT Presentation

About This Presentation
Title:

whatiscs.ppt

Description:

whatiscs.ppt version: 20101117 So, what is CS? CS tries to answer these questions: What is computation? More generally, what is a procedure? Which functions are (or ... – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 21
Provided by: CSEDepa
Learn more at: https://cse.buffalo.edu
Category:

less

Transcript and Presenter's Notes

Title: whatiscs.ppt


1
whatiscs.ppt
  • version 20101117

2
What Is Computer Science?
  • William J. Rapaport
  • Department of Computer Science Engineering,
  • Department of Philosophy, Department of
    Linguistics,
  • and Center for Cognitive Science
  • rapaport_at_buffalo.edu
  • http//www.cse.buffalo.edu/rapaport

3
Why Ask?
  • Academic / political purposes
  • Should UBs CSE be in CAS? SEAS? SOI? SCS?
  • Pedagogy What should we teach in Intro CS?
  • programming?
  • theory?
  • ?
  • Do CSists merely program?
  • Publicity for prospective students?

4
Why Ask?
  • Intellectual / philosophical motivation
  • What is CS really?
  • Is it like something else?
  • math?
  • electrical engineering?
  • Is it sui generis

5
Is CS sui generis?
  • Computer science has such intimate relations
    with so many other subjects that it is hard to
    see it as a thing in itself.
  • Marvin Minsky
  • Computer science differs from the known sciences
    so deeply that it has to be viewed as a new
    species among the sciences.
  • Juris Hartmanis

6
Fundamental Principle of What Is Questions
  • There are no sharp boundaries in nature
  • only continua spectra
  • We carve nature at joints (Plato)of our own
    devising (Kant)
  • ?There may be no good answer beyond
  • CS is what CSists do!
  • But What do they do?

7
Newell, Perlis, Simon 1967Newell Simon
1976Simon 1969/1996
  • CS the science of computers
  • not a natural science, but
  • a science of the artificial
  • computers includes
  • hardware, algorithms, etc.
  • So
  • CS the artificial science engineering of
    computers surrounding phenomena

8
Knuth 1974
  • CS the study of algorithms
  • Algorithms what you can teach a computer
  • Which functions (I-O) can be efficiently
    computed?
  • Need a computer to find out!
  • So
  • CS study of algorithms
    surrounding phenomena

9
Hartmanis 1992
  • CS study of information
  • how to represent info
  • how to process info
  • the machines that do this

10
Shapiro 2001
  • CS natural science of procedures
  • including algorithms,
  • recipes (specifications vague)
  • non-halting ( interactive) procedures
  • heuristics (incorrect O/P)

11
Brooks 1996
  • CS ? science
  • not concerned with discovery
  • CS engineering
  • concerned with making
  • physical computers
  • S/W systems

12
Denning 2010
  • Computing is a 4th great domain of science
    alongside the physical, life, and social
    sciences.
  • CS
  • discovery (science)
  • implementation (engineering)
  • of information processes

13
What Is Computation?
  • function
  • set of I/O pairs (relation)
  • same I/P ? same O/P
  • function machine

14
What Is Computation? Functions
  • But function machine ? function!
  • functions dont do anything
  • function machine needs gears
  • i.e.) algorithm!
  • but not all functions are algorithmic
    (computable)!
  • function machine
  • computer!

15
Computable Functions
  • A function is computable
  • there is an algorithm that computes it
  • i.e.) that specifies how
  • I/P can be transformed into O/P

16
Algorithm
  • Algorithm for problem P
  • finite procedure for solving P
  • finite instructions
  • completable in finite time (?)
  • completable in finite steps (?)
  • instructions unambiguous for executor
  • know how to do each instruction
  • know what to do next
  • must halt (?)
  • O/P must be correct (?)

17
4 Great Insights of CS
  • Bacon/Leibniz/Boole/Turing/Shannon/Morse
  • All information about any computable problem
    can be represented using only 2 nouns 0, 1

18
4 Great Insights of CS
  • Turings Insight
  • Every algorithm can be expressed in a language
    for a Turing machine
  • arbitrarily long tape divided into squares
  • read / write head
  • only 2 verbs ( basic instructions)
  • move(dir) (where dir L, R)
  • print(sym) (where sym 0, 1, nil)

19
4 Great Insights of CS
  • Boehm Jacopinis insight
  • structured programming
  • only need 3 grammar rules
  • sequence (first do this then do that)
  • selection (if P, then do this else do that)
  • repetition (while P do this)
  • recursively, this that can be
  • any basic instruction
  • any complex instruction created by grammar rules
  • optional
  • exit
  • named procedures
  • recursion

20
4 Great Insights of CS
  • Church-Turing Thesis
  • An algorithm isdef anything equivalent to a
    Turing-machine program
  • TM Post production system lambda calculus
    Markov algorithm recursive functions
    register machines, etc.
  • There are non-computable functions
  • e.g.) Halting Problem

21
So, what is CS?
  • CS tries to answer these questions
  • What is computation?
  • More generally, what is a procedure?
  • Which functions are (or are not)
  • computable?
  • efficiently computable?
  • theoretical CS
  • How can they be computed?
  • what specific algorithms do the job?
  • what machines are needed?
  • other branches of CS
Write a Comment
User Comments (0)
About PowerShow.com