David Evans CS200: Computer Science University of Virginia Computer Science Class 1: Introduction.

Slides:



Advertisements
Similar presentations
Class 3: Rules of Evaluation David Evans cs1120 Fall 2009.
Advertisements

The Subject-Matter of Ethics
1 CS150 Fall 2005: 1. Introduction David Evans CS150 Spring 2007 University of Virginia Computer Science Class 1: Introduction.
Jack Boncales. Preface  Jack Boncales  Born March 23, 1990  I have lived in Ridgefield Park, NJ in Bergen County since I was one.  Only child  Went.
Basic Structures: Sets, Functions, Sequences, Sums, and Matrices
Math 191: Mathematics and Geometry for Designers Lecture Notes Based on The Book Mathematics in Our World by Allan G. Bluman.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 3: Rules of Evaluation.
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 18: The Story So Far.
Cs2220: Engineering Software Class 1: Engineering Software? Fall 2010 University of Virginia David Evans.
CAS LX 502 Semantics 1b. The Truth Ch. 1.
Lecture 24: Gödel’s Proof CS150: Computer Science
Introduction to the Adjective/Noun Theme. © 2012 Math As A Second Language All Rights Reserved next #1 Taking the Fear out of Math.
How Newton Unified the Motions of the Moon, Sun, and Apples.
1 CS150 Fall 2005: 1. Introduction David Evans CS150: Computer Science University of Virginia Computer Science Class 1:
A Career in Physics and Astronomy Steven R. Spangler University of Iowa.
Copyright © Cengage Learning. All rights reserved.
Introduction To Logarithms. Logarithms were originally developed to simplify complex arithmetic calculations. They were designed to transform multiplicative.
Predicates & Quantifiers Goal: Introduce predicate logic, including existential & universal quantification Introduce translation between English sentences.
22 March 2009Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Formal.
10 November David Evans Things Every Self-Respecting Computer Scientist.
Class 36: Proofs about Unprovability David Evans University of Virginia cs1120.
A. Language : Language, as a matter of common knowledge, is the medium of communication through which we express our emotions ideas, feelings and thoughts.
Unit 11, Part 2: Introduction To Logarithms. Logarithms were originally developed to simplify complex arithmetic calculations. They were designed to transform.
David Evans Class 15: Golden Ages and Astrophysics CS200: Computer Science University of Virginia Computer Science.
Supporting the Transition from Arithmetic to Algebra Virginia Bastable, Susan Jo Russell, Deborah Schifter Teaching and Learning Algebra, MSRI, May 2008.
Unit 11, Part 2: Introduction To Logarithms. Logarithms were originally developed to simplify complex arithmetic calculations. They were designed to transform.
David Evans CS200: Computer Science University of Virginia Computer Science Class 24: Gödel’s Theorem.
David Evans Turing Machines, Busy Beavers, and Big Questions about Computing.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 2: Orders of Growth
David Evans Things Every Self-Respecting Computer Scientist Should Know 2.
Korea Advanced Institute of Science and Technology, Dept. of EECS, Div. of CS, Information Systems Lab. 1/10 CS204 Course Overview Prof.
Lecture 1 Computation and Languages CS311 Fall 2012.
CS 103 Discrete Structures Lecture 10 Basic Structures: Sets (1)
15 October 2003Computer Science1 David Evans ComputerScience.
Copyright © Cengage Learning. All rights reserved. CHAPTER 3 THE LOGIC OF QUANTIFIED STATEMENTS THE LOGIC OF QUANTIFIED STATEMENTS.
David Evans CS200: Computer Science University of Virginia Computer Science Class 38: Fixed Points and Biological Computing.
David Evans cs1120 Fall 2009 University of Virginia Computer Science Class 1: Introduction.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 3: Rules of Evaluation.
David Evans 101 Things Every Computer Scientist Should Know University of Virginia Department of.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 20: Objects I invented the term Object-
What is Science?.
David Evans Class 21: The Story So Far (Quicksort, Continuing Golden Ages) CS200: Computer Science University of Virginia.
CompSci 102 Discrete Math for Computer Science
Lecture 2: Formal Systems and Languages MU! CS150: Computer Science
David Evans Lecture 13: Astrophysics and Cryptology CS200: Computer Science University of Virginia Computer Science.
David Evans Things Every Self-Respecting Computer Scientist Should Know 2 Ethics and.
Discrete Structures Predicate Logic 1 Dr. Muhammad Humayoun Assistant Professor COMSATS Institute of Computer Science, Lahore.
Introduction to Philosophy Lecture 1-a What is philosophy? By David Kelsey.
Cs1120 Fall 2009 David Evans Lecture 18: Changing State Sounds of Colossus:
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 15: Intractable Problems (Smiley.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 22: Objects I invented the term Object-
Copyright © Peter Cappello 2011 Predicates & Quantifiers.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 8: Crash Course in Computational Complexity.
Lecture 3: Rules of Evaluation CS150: Computer Science
Education in and from the Greco-Roman World CIV February 2016 Class 14.
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 22: Objectifying Objects.
CS 655: Programming Languages Scheming Schemers, Mocking Mockingbirds, and Objecting Objectively Lecture 1:Wherefore CS655? The use of cripples the mind;
Cs205: engineering software university of virginia fall 2006 David Evans Object-Oriented Programming.
Introduction to CSCI 1311 Dr. Mark C. Lewis
Sets CS 202, Spring 2007 Epp, chapter 5.
Praktische Informatik 1
Lecture 1: Introduction Background just got here last week
Class 1: Introduction CS200: Computer Science University of Virginia
Why study Software Design/Engineering ?
Class 22: Inheritance CS150: Computer Science University of Virginia
Class 1: Introduction CS150 Spring 2007 University of Virginia
Predicates & Quantifiers
Copyright © Cengage Learning. All rights reserved.
Lecture 22: Gödel’s Theorem CS200: Computer Science
1000 Things Every Self-Respecting Computer Scientist Should Know
Presentation transcript:

David Evans CS200: Computer Science University of Virginia Computer Science Class 1: Introduction

14 January 2004CS 200 Spring What is Computer Science?

14 January 2004CS 200 Spring Let AB and CD be the two given numbers not relatively prime. It is required to find the greatest common measure of AB and CD. If now CD measures AB, since it also measures itself, then CD is a common measure of CD and AB. And it is manifest that it is also the greatest, for no greater number than CD measures CD. Euclid’s Elements, Book VII, Proposition 2 (300BC)

14 January 2004CS 200 Spring The note on the inflected line is only difficult to you, because it is so easy. There is in fact nothing in it, but you think there must be some grand mystery hidden under that word inflected! Whenever from any point without a given line, you draw a long to any point in the given line, you have inflected a line upon a given line. Ada Byron (age 19), letter to Annabella Acheson (explaining Euclid), 1834

14 January 2004CS 200 Spring By the word operation, we mean any process which alters the mutual relation of two or more things, be this relation of what kind it may. This is the most general definition, and would include all subjects in the universe... Supposing, for instance, that the fundamental relations of pitched sounds in the science of harmony and of musical composition were susceptible of such expression and adaptations, the engine might compose elaborate and scientific pieces of music of any degree of complexity or extent. Ada Byron, 1843

14 January 2004CS 200 Spring What is the difference between Euclid and Ada? “It depends on what your definition of ‘is’ is.” Bill Gates (at Microsoft’s anti- trust trial)

14 January 2004CS 200 Spring Geometry vs. Computer Science Geometry (mathematics) is about declarative knowledge: “what is” If now CD measures AB, since it also measures itself, then CD is a common measure of CD and AB Computer Science is about imperative knowledge: “how to” Computer Science has nothing to do with beige (or translucent blue) boxes called “computers” and is not a science.

14 January 2004CS 200 Spring Computer Science “How to” knowledge: Ways of describing information processes (computations) Ways of predicting properties of information processes Language Logic What kinds of things do we want to predict?

14 January 2004CS 200 Spring Science, Engineering, Other?

14 January 2004CS 200 Spring Science? Understanding Nature through Observation –About real things like bowling balls, black holes, antimatter, electrons, comets, etc. Math and Computer Science are about fake things like numbers, graphs, functions, lists, etc. –Computer Science is a useful tool for doing real science, but not a real science

14 January 2004CS 200 Spring Engineering? “Engineering is design under constraint… Engineering is synthetic - it strives to create what can be, but it is constrained by nature, by cost, by concerns of safety, reliability, environmental impact, manufacturability, maintainability and many other such 'ilities.'...” William Wulf

14 January 2004CS 200 Spring Apollo Guidance Computer, Cubic Foot Why did they need to fit the guidance computer in the rocket?

14 January 2004CS 200 Spring Measuring Computers 1 bit = smallest unit of information –True or False –0 or 1 –If we start with 2 possible choices, and get 1 bit, we can eliminate one of the choices

14 January 2004CS 200 Spring How much power? Apollo Computer: bits of changeable memory Lab machines have 512 MB (RAM) –1 Megabyte = 1024 Kilobytes, 1 Kilobyte = 1024 Bytes, 1 Byte = 8 bits –512 MB > (* ) ~ 4.3 Billion bits > (round (/ (* ) 30720)) If Apollo Guidance Computer power is 1 inch, you have 2.2 miles! You have times more power than AGC You will understand this notation soon…but don’t worry if you don’t now

Computing Power (in Apollo Control Computer Units) Moore’s Law: computing power doubles every 18 months!

14 January 2004CS 200 Spring Constraints Computer Scientists Face Not like those for engineers: –Cost, weight, physics, etc. –If ~8 Million times what people had in 1969 isn’t enough for you, wait until 2006 and you will have 20 Million times… More like those for Musicians and Poets: –Imagination and Creativity –Complexity of what we can understand

14 January 2004CS 200 Spring So, what is computer science? Science –No: its about fake things like numbers, not about observing and understanding nature Engineering –No: we don’t have to deal with engineering- type constraints Liberal Art

14 January 2004CS 200 Spring Liberal Arts: ~1100 I lliberal Arts –arts for the non-free: pursued for economic reasons Liberal Arts –arts for the free: pursued for intrinsic reasons I make bold to say that I never have despised anything belonging to erudition, but have learned much which to others seemed to be trifling and foolish. … Some things are worth knowing on their own account; but others, although apparently offering no return for our trouble, should not be neglected, because without them the former cannot be thoroughly mastered. … Didascalicum, Hugo of St. Victor, around 1120

14 January 2004CS 200 Spring The Liberal Arts Trivium (3 roads) language Quadrivium (4 roads) numbers GrammarRhetoricLogicArithmetic Geometry Music Astronomy

14 January 2004CS 200 Spring Liberal Arts Grammar: study of meaning in written expression Rhetoric: comprehension of verbal and written discourse Logic: argumentative discourse for discovering truth Arithmetic: understanding numbers Geometry: quantification of space Music: number in time Astronomy: laws of the planets and stars Yes, we need to understand meaning to describe computations Interfaces between components, discourse between programs and users Logic for controlling and reasoning about computations Yes (PS 6) Yes (PS 1, 2, 3) Yes, its called GEB for a reason! Yes (we’ll read Neil DeGrasse Tyson’s essay) Trivium Quadrivium

14 January 2004CS 200 Spring Bold (Possibly Untrue) Claim CS200 is the most consistent with the original intent of a Liberal Arts education of any course offered at UVa this semester!

14 January 2004CS 200 Spring College of Arts and Sciences? What is the real name of the College? –Web site: “College of Arts and Sciences” –Then what does “CLAS” stand for? Col-Lege of Arts and Sciences? –Why does it have Government, Math and Foreign Languages Departments? My theory: –The “Liberal” is Silent

14 January 2004CS 200 Spring First Main Theme: Recursive Definitions

14 January 2004CS 200 Spring What is the longest word in the English language?

14 January 2004CS 200 Spring According to Guinness floccipoccinihilipilification the act of rendering useless

14 January 2004CS 200 Spring Making Longer Words antifloccipoccinihilipilification the act of rendering not useless antiantifloccipoccinihilipilification the act of rendering useless

14 January 2004CS 200 Spring Language is Recursive No matter what word you think is the longest word, I can always make up a longer one! word ::= anti-word If you have a word, you can always make up a new word by adding anti in front. Since the result is a word, you can make a longer new word by adding anti- in front again.

14 January 2004CS 200 Spring Recursive Definitions We can define things in terms of themselves Recursive definitions are different from circular definitions: they eventually end with something real word ::= anti-word word ::= floccipoccinihilipilification

14 January 2004CS 200 Spring Recursive Definitions Allow us to express infinitely many things starting with a few. This is powerful! We will see lots of examples in this course.

14 January 2004CS 200 Spring Charge Before 5pm Thursday: –Registration survey (see course web site) Before Friday: –Read and sign CS 200 Pledge –Read GEB p Anyone who can produce “MU”, gets an automatic A+ in the course Don’t floccipoccinihilipilificate

14 January 2004CS 200 Spring Thanks! 2003 CS 200 students, 2002 CS200 students, 2001 CS655 students 2002 Assistant Coaches: Jon Erdman, Dante Guanlao, Stephen Liang, Portman Wills 2003 Assistant Coaches: Rachel Dada, Jacques Fournier, Spencer Stockdale, Katie Winstanley 2004 Assistant Coaches: Sarah Bergkuist, Andrew Connors, Patrick Rooney, Katie Winstanley Guest Speakers: Radhika Nagpal (2002), Tim Koogle (2003) teachers: Gerry Sussman, Bob Berwick CS Department: Jim Cohoon, Ginny Hilton, Anita Jones, John Knight, Worthy Martin, Chris Milner, Brenda Perkins, Gabe Robins, Jack Stankovic Teaching Resource Center: Marva Barnett, Freda Fretwell UTF Fellows: Phoebe Crisman, John Lach, Debra Lyon, Emily Scida, Brian Smith, David Waldner; UTF Mentor: Judith Shatin Anna Chefter, Chris Frost, Thad Hughes, Jerry McGann, Shawn O’Hargan, Mike Peck