Lecture 23: Everything Else You Should Know (but won’t see on Exam 2)

Slides:



Advertisements
Similar presentations
12-3 RNA and Protein Synthesis
Advertisements

Biotechnolgy. Basic Molecular Biology Core of biotechnology.
May International and European M.Eng. Introduction of 5th year technical options Master of Engineering for 2003 Introduction for students to the.
Distributed AI an overview. D Goforth - COSC 4117, fall Why distributed AI? situated expert – the importance of general knowledge and incorporation.
28 July Doors Creating Time Zones. 28 July What is a Time Zone? A designated period of time in which access can be granted to a secure area.
Algorithms and Data Structures Lecture III
Eigen-decomposition Techniques for Skywave Interference Detection in Loran-C Receivers Abbas Mohammed, Fernand Le Roux and David Last Dept. of Telecommunications.
SWCAP Budgeting July 30, 2003.
July 30, Pro Rata Budgeting. July 30, Pro Rata Budgeting Pro Rata Detail by Funds reports are available on the Internet no later than October.
David Evans CS201j: Engineering Software? University of Virginia Computer Science Lecture 3: Abstraction by Specification.
CompTest Residual Curing Stresses in Thin [0/90] Unsymmetric Composite Plates Marco Gigliotti°, Michael R. Wisnom, Kevin Potter Department of Aerospace.
A. BobbioReggio Emilia, June 17-18, Dependability & Maintainability Theory and Methods 3. Reliability Block Diagrams Andrea Bobbio Dipartimento di.
Do Now:.  TRANSCRIPTION: process that makes an RNA copy of DNA.  RNA is single-stranded, and T is replaced by U (A-U; G-C)  RNA polymerase makes RNA,
Basic Molecular Biology for CS374 Scientific Method: The widely held philosophy that a theory can never be proved, only disproved, and that all attempts.
Basic Molecular Biology for CS262 Omkar Deshpande.
RNA and Protein Synthesis
Introduction to Bioinformatics Spring 2008 Yana Kortsarts, Computer Science Department Bob Morris, Biology Department.
Recap Sometimes it is necessary to conduct Bad Science – often the product of having too much information Human Genome Project changed natural scientists.
FROM GENE TO PROTEIN: TRANSCRIPTION & RNA PROCESSING Chapter 17.
GENE EXPRESSION.
12-3: RNA AND PROTEIN SYNTHESIS Biology 2. DNA double helix structure explains how DNA can be copied, but not how genes work GENES: sequence of DNA that.
10 November David Evans Things Every Self-Respecting Computer Scientist.
From DNA to Proteins Lesson 1. Lesson Objectives State the central dogma of molecular biology. Describe the structure of RNA, and identify the three main.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 12: Decrypting Work Circle Fractal.
David Evans Things Every Self-Respecting Computer Scientist Should Know 2.
Molecular Biology Primer. Starting 19 th century… Cellular biology: Cell as a fundamental building block 1850s+: ``DNA’’ was discovered by Friedrich Miescher.
AP Biology Discussion Notes Wednesday 01/28/2015.
Chapter 13: RNA and Protein Synthesis
David Evans CS200: Computers, Programs and Computing University of Virginia Computer Science Class 39: Meaning of Life.
DNA and Protein Synthesis A Brief Tutorial. Background DNA is the genetic material. DNA is the genetic material. Sometimes called “the blueprint of.
15 October 2003Computer Science1 David Evans ComputerScience.
12-3 RNA and Protein Synthesis
David Evans CS200: Computer Science University of Virginia Computer Science Class 38: Fixed Points and Biological Computing.
BSC Developmental Biology Patterns of Inheritance EvolutionEcology.
David Evans cs1120 Fall 2009 University of Virginia Computer Science Class 1: Introduction.
David Evans 101 Things Every Computer Scientist Should Know University of Virginia Department of.
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.
Transcription and Translation How genes are expressed (a.k.a. How proteins are made) Biology.
DNA Structure and Protein Synthesis (also known as Gene Expression)
How Genes Function Quiz 6D. Four main points of how genes function Nucleotides (symbols in the language) are arranged into codons (letters) Codons (letters.
RNA & Protein Synthesis Ribose RNA. DNARNA StructureDouble Stranded Single Stranded Bases- PurinesAdenine (A) Guanine (G) Bases - Pyrimidines Cytosine.
The Genetic Code. The DNA that makes up the human genome can be subdivided into information bytes called genes. Each gene encodes a unique protein that.
Objective Explain the function and structure of RNA. Determine how transcription produces a RNA copy of DNA. Analyze the purpose of transcription.
DNA, RNA. Genes A segment of a chromosome that codes for a protein. –Genes are composed of DNA.
David Evans CS201j: Engineering Software University of Virginia Computer Science Lecture 23: Snakes Tournament.
DNA and RNA DNA and RNA. DNA DNA -Deoxyribonucleic acid DNA -Deoxyribonucleic acid The nucleic acid that stores and transmits the genetic information.
DNA, RNA & PROTEIN SYNTHESIS FROM GENE TO PROTEIN.
The Central Dogma of Biology Why It’s Important DNA contains instructions for making proteins, which determine an organism’s traits.
AP Biology Discussion Notes Wednesday 2/10/2015. Goals for Today Be able to describe how DNA & RNA molecules differ from each other. Be able to name and.
Introduction to molecular biology Data Mining Techniques.
DNA AND ITS STRUCTURE. DNA is located inside the nucleus.
12-3 RNA and Protein Synthesis Page 300. A. Introduction 1. Chromosomes are a threadlike structure of nucleic acids and protein found in the nucleus of.
Molecular Genetics Transcription & Translation
GENE EXPRESSION © 2016 Paul Billiet ODWS.
DNA Deoxyribonucleic Acid
RNA and Protein Synthesis
RNA and Protein Synthesis
Protein Synthesis.
Nucleotide.
Unit 2.1: BASIC PRINCIPLES OF HUMAN GENETICS
1000 Things Every Self-Respecting Computer Scientist Should Know
Central Dogma Central Dogma categorized by: DNA Replication Transcription Translation From that, we find the flow of.
RNA and Protein Synthesis
DNA: the molecule of heredity
Science Review Week 3 DNA and RNA.
Genes Determine the characteristics of individuals.
Unit 3: Genetics Part 1: Genetic Informaiton
Presentation transcript:

David Evans http://www.cs.virginia.edu/evans Lecture 23: Everything Else You Should Know (but won’t see on Exam 2) CS201j: Engineering Software University of Virginia Computer Science David Evans http://www.cs.virginia.edu/evans

Menu Course Evaluations 101 Things Every Computer Scientist should know Course Charge 20 November 2003 CS 201J Fall 2003

Course Pledge You Signed I will provide useful feedback. I realize this is an experimental course and it is important that I let the course staff know what they need to improve the course. I will not wait until the end of the course to make the course staff aware of any problems. I will provide feedback either anonymously (using the course feedback form) or by contacting the course staff directly. I will fill out all course evaluation surveys honestly and thoroughly. 20 November 2003 CS 201J Fall 2003

Two Surveys Required Official SEAS Survey You receive email about it Administrators read it to determine whether or not to fire me CS201J Specific Survey: handed out today Specific questions to help improve future editions of CS201 I do read all of the surveys completely Department head and curriculum committee will read SEAS survey 20 November 2003 CS 201J Fall 2003

101 Questions 000 What is Computer Science? 001 What problem did the first electronic programmable computer solve? 010 What are the world’s most complex programs? 011 How do Computer Scientists manage complexity? 100 What is and is not computable? 101 Who invented the Internet? 20 November 2003 CS 201J Fall 2003

0. What is Computer Science? 20 November 2003 CS 201J Fall 2003

Let AB and CD be the two given numbers not relatively prime 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) 20 November 2003 CS 201J Fall 2003

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 20 November 2003 CS 201J Fall 2003

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) 20 November 2003 CS 201J Fall 2003

Geometry vs. Computer Science Geometry (mathematics) is about declarative knowledge: “what is” Computer Science is about imperative knowledge: “how to” Ways of describing imperative processes (computations) Ways of reasoning about (predicting) what imperative processes will do Language Logic 20 November 2003 CS 201J Fall 2003

Was CS201J a Computer Science Course? No! Only about 30% of CS201J is computer science. Most of it is software engineering. If you want to take a Computer Science course, Consider taking CS200 in the Spring 20 November 2003 CS 201J Fall 2003

1. What problem did the first electronic programmable computer solve? 20 November 2003 CS 201J Fall 2003

Colossus First Programmable Computer Bletchley Park, 1943 Designed by Tommy Flowers 10 Colossi in operation at end of WWII Destroyed in 1960, kept secret until 1970s 2 years before ENIAC – calculating artillery tables 20 November 2003 CS 201J Fall 2003

Colossus’ Problem Decode Nazi high command messages from Lorenz Machine XOR encoding: Ci = Mi  Ki Perfect cipher, if K is random and secret 20 November 2003 CS 201J Fall 2003

Why perfectly secure? Key: 1100000100110 For any given ciphertext, all plaintexts are equally possible. Ciphertext: 0100111110101 Key: 1100000100110 Plaintext: 1000111010011 = “CS” 1 B 20 November 2003 CS 201J Fall 2003

Breaking Lorenz Operator and receiver need same keys Generate key bits using rotor machine, start with same configuration One operator retransmitted a message (but abbreviated message header the second time!) Enough for Bletchley Park to figure out key – and structure of machine that generated it! But still had to try all configurations 20 November 2003 CS 201J Fall 2003

Colossus Read ciphertext and Lorenz wheel patterns from tapes Tried each alignment, calculated correlation with German Decoded messages (63M letters by 10 Colossus machines) that enabled Allies to know German troop locations to plan D-Day 20 November 2003 CS 201J Fall 2003

2. What are the world’s most complex programs? 20 November 2003 CS 201J Fall 2003

Complex Programs Apollo Guidance Software ~36K instructions F-22 Steath Fighter Avionics Software 1.5M lines of code (Ada) 5EEE (phone switching software) 18M lines Windows XP ~50M lines (1 error per kloc ~ 50,000 bugs) Anything more complex? 20 November 2003 CS 201J Fall 2003

Human Genome Produces 60 Trillion Cells (6 * 1013) 50 Million die every second! 20 November 2003 CS 201J Fall 2003

DNA Sequence of nucleotides: adenine (A), guanine (G), cytosine (C), and thymine (T) Two strands, A must attach to T and G must attach to C G C A T 20 November 2003 CS 201J Fall 2003

Codons Three nucleotides encode an amino acid Sequence of amino acids makes a protein But, there are only 20 amino acids, so there may be several different ways to encode the same one From http://web.mit.edu/esgbio/www/dogma/dogma.html 20 November 2003 CS 201J Fall 2003

Central Dogma of Biology (Crick, 1957) Transcription Translation DNA RNA Protein Image from http://www.umich.edu/~protein/ DNA makes RNA RNA makes proteins Proteins make us 20 November 2003 CS 201J Fall 2003

Shortest (Known) Life Program Nanoarchaeum equitans 490,885 bases (522 genes) = 490,885 * ¼ * 21/64 = 40,268 bytes Parasite: no metabolic capacity, must steal from host Complete components for information processing: transcription, replication, enzymes for DNA repair Size of compiling C++ “Hello World”: Windows (bcc32): 112,640 bytes Linux (g++): 11,358 bytes http://www.mediscover.net/Extremophiles.cfm KO Stetter and Dr Rachel Reinhard discovered in deep oceans in Iceland, 120m deep, temperatures close to 100 C 400 millionths of a millimeter across 20 November 2003 CS 201J Fall 2003

The Make-Human Program 3 Billion Base Pairs Each nucleotide is 2 bits (4 possibilities) 3B bases * 1 byte/4 pairs = 750 MB Highly redundant encoding (21/64) ~ 250 MB Only 5% is transcribed (exons) ~ 12 MB 95% junk (intons): genomes from viruses reverse transcribed into human genome, but inactive CD = 650 MB Wal-Mart’s database is 280 Terabytes 20 November 2003 CS 201J Fall 2003

Expressiveness of DNA Genetic sequence for 2 humans differs in only 2 million bases 4 million bits = 0.5 MB 1/3 of a floppy disk <1% of Windows 2000 20 November 2003 CS 201J Fall 2003

3. How do Computer Scientists manage complexity? 20 November 2003 CS 201J Fall 2003

Adapted from Gerard Holzmann’s FSE Slides Abstraction Adapted from Gerard Holzmann’s FSE Slides 20 November 2003 CS 201J Fall 2003

Abstraction in CS201J Abstraction by Specification Data Abstraction Abstract away how details by saying what a procedure does Data Abstraction Abstract away representation details by specifying what you can do with something Subtyping Abstract away actual type details by allowing many types to be used in the same way (?) Concurrency Abstract away when details (?) 20 November 2003 CS 201J Fall 2003

4. What is and is not computable? 20 November 2003 CS 201J Fall 2003

Halting Problem Input: a procedure P Output: true if P halts (finishes execution), false otherwise. Is it possible it implement a procedure that correctly implements halts and always terminates? 20 November 2003 CS 201J Fall 2003

Halts is not Computable boolean contradictHalts (Program P) if (halts “contradictHalts (P);”) while (true) ; else return true; If contradictHalts halts, the if test is true if enters the while loop - it doesn’t halt! If contradictHalts doesn’t halt, the if test if false, and it evaluates to true. It halts! 20 November 2003 CS 201J Fall 2003

Learned Discussion on Computability (Video)

Ali G Multiplication Problem Input: a list of n numbers Output: the product of all the numbers Is it computable? Yes – a straightforward algorithm solves it. Can real computers solve it? 20 November 2003 CS 201J Fall 2003

Ali G was Right! Theory assumes ideal computers: Real computers have: Unlimited memory Unlimited power Unlimited (finite) time Real computers have: Limited memory, time, power outages, flaky programming languages, etc. There are many decidable problems we cannot solve with real computer: the numbers do matter 20 November 2003 CS 201J Fall 2003

5. Who Invented the Internet? skip 20 November 2003 CS 201J Fall 2003

What is a Network? A group of three or more connected entities communicating indirectly Ancient Greeks had beacon chain networks on Greek island mountaintops 20 November 2003 CS 201J Fall 2003

Chappe’s Semaphore Network First Line (Paris to Lille), 1794 Mobile Semaphore Telegraph Used in the Crimean War 1853-1856 20 November 2003 CS 201J Fall 2003

internetwork A collection of multiple networks connected together, so messages can be transmitted between nodes on different networks. 20 November 2003 CS 201J Fall 2003

The First Internetwork 1800: Sweden and Denmark worried about Britain invading Edelcrantz proposes link across strait separating Sweden and Denmark to connect their (signaling) telegraph networks 1801: British attack Copenhagen, transmit message to Sweden, but they don’t help. Denmark signs treaty with Britain, and stops communications with Sweden 20 November 2003 CS 201J Fall 2003

First Use of The Internet October 1969: First packets on the ARPANet from UCLA to Stanford. Starts to send "LOGIN", but it crashes on the G. 20 July 1969: Live video (b/w) and audio transmitted from moon to Earth, and to several hundred million televisions worldwide. 20 November 2003 CS 201J Fall 2003

Licklider and Taylor’s Vision Available within the network will be functions and services to which you subscribe on a regular basis and others that you call for when you need them. In the former group will be investment guidance, tax counseling, selective dissemination of information in your field of specialization, announcement of cultural, sport, and entertainment events that fit your interests, etc. In the latter group will be dictionaries, encyclopedias, indexes, catalogues, editing programs, teaching programs, testing programs, programming systems, data bases, and – most important – communication, display, and modeling programs. All these will be – at some late date in the history of networking - systematized and coherent; you will be able to get along in one basic language up to the point at which you choose a specialized language for its power or terseness. J. C. R. Licklider and Robert W. Taylor, The Computer as a Communication Device, April 1968 20 November 2003 CS 201J Fall 2003

The Modern Internet Packet Switching: Leonard Kleinrock (UCLA), Donald Davies and Paul Baran, Edelcrantz’s signaling network (1809) Internet Protocol: Vint Cerf, Bob Kahn Vision, Funding: J.C.R. Licklider, Bob Taylor Government: Al Gore (first politician to promote Internet, 1986; act to connect government networks to form “Interagency Network”) 20 November 2003 CS 201J Fall 2003

Charge 1 Exam 2 Out today Due Friday at 3:55PM Turn in to folder outside my office 20 November 2003 CS 201J Fall 2003

Charge 2 Course Evaluations SEAS Survey: follow the email instructions Course Specific survey Handed out today Turn in to folder outside my office when you turn in your exam 20 November 2003 CS 201J Fall 2003

Change the World! Charge 3 Caveat: before worrying about changing the world, make sure you turn in your exam Friday! 20 November 2003 CS 201J Fall 2003

Small, Simple Programs that Changed the World eBay (P. Omidyar) WorldWideWeb (Tim Berners-Lee) VisiCalc (Dan Bricklin and Bob Frankston) Smalltalk (Adele Goldberg, Alan Kay, Dan Ignalls) ? Altair BASIC (Bill Gates and Paul Allen) Napster (Shawn Fanning and Sean Parker) Tetris (Alexey Pazhitnov) (CS201J Student) 20 November 2003 CS 201J Fall 2003

Lawn Lighting: 7pm Thursday Never doubt that a small group of thoughtful, committed people can change the world. Indeed, it is the only thing that ever has. Margaret Mead