von Neumann Architecture

Similar documents
Donald Beaver. Penn State University, State College, PA 16802, USA. Abstract. We consider molecular models for computing and derive a

Quantum Computing. Richard Jozsa Centre for Quantum Information and Foundations DAMTP University of Cambridge

How Does Nature Compute?

Computers of the Future? Moore s Law Ending in 2018?

Integer and Vector Multiplication by Using DNA

Using DNA to Solve NP-Complete Problems. Richard J. Lipton y. Princeton University. Princeton, NJ 08540

A brief survey on quantum computing

Announcements. Problem Set 6 due next Monday, February 25, at 12:50PM. Midterm graded, will be returned at end of lecture.

Data Structures in Java

Limits and Future of Computing Where do we go from here?

Universal Turing Machine. Lecture 20

Self-reproducing programs. And Introduction to logic. COS 116, Spring 2012 Adam Finkelstein

Q = Set of states, IE661: Scheduling Theory (Fall 2003) Primer to Complexity Theory Satyaki Ghosh Dastidar

Lecture 19: Universality and Computability

conp = { L L NP } (1) This problem is essentially the same as SAT because a formula is not satisfiable if and only if its negation is a tautology.

Cryptographic Protocols Notes 2

MAA509: Quantum Computing and Information Introduction

16.1 Countability. CS125 Lecture 16 Fall 2014

九州工業大学学術機関リポジトリ PROCEDURES FOR LOGIC AND ARITHMETIC OPERATIONS WITH DNA MOLECULES. Author(s) Fujiwara, Akihiro; Matsumoto, Kenic

On P Systems with Active Membranes

Number Theory: Applications. Number Theory Applications. Hash Functions II. Hash Functions III. Pseudorandom Numbers

quantum mechanics is a hugely successful theory... QSIT08.V01 Page 1

Quantum Computing. Separating the 'hope' from the 'hype' Suzanne Gildert (D-Wave Systems, Inc) 4th September :00am PST, Teleplace

Decidable Languages - relationship with other classes.

1.0 Introduction to Quantum Systems for Information Technology 1.1 Motivation

Quantum Computing 101. ( Everything you wanted to know about quantum computers but were afraid to ask. )

FORMAL LANGUAGES, AUTOMATA AND COMPUTATION

Introduction to Quantum Computing

DNA Computing Can we use DNA to do massive computations? Organisms do it DNA has very high information. Even more promising uses of DNA

biologically-inspired computing lecture 18

Shor s Algorithm. Polynomial-time Prime Factorization with Quantum Computing. Sourabh Kulkarni October 13th, 2017

(a) Definition of TMs. First Problem of URMs

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: NP-Completeness I Date: 11/13/18

CSE 2001: Introduction to Theory of Computation Fall Suprakash Datta

How can ideas from quantum computing improve or speed up neuromorphic models of computation?

Quantum Computers. Peter Shor MIT

Simon s algorithm (1994)

quantum information technology Tad Hogg HP Labs

Quantum Computing. Vraj Parikh B.E.-G.H.Patel College of Engineering & Technology, Anand (Affiliated with GTU) Abstract HISTORY OF QUANTUM COMPUTING-

Security Implications of Quantum Technologies

1 Background on Information Theory

Automata Theory CS Complexity Theory I: Polynomial Time

CSCI3390-Lecture 14: The class NP

Computational Models Lecture 8 1

From Sequential Circuits to Real Computers

CSE 2001: Introduction to Theory of Computation Fall Suprakash Datta

Computer Sciences Department

Lecture notes on Turing machines

Quantum computing and the entanglement frontier. John Preskill NAS Annual Meeting 29 April 2018

CSE 105 THEORY OF COMPUTATION

Analysis of Algorithms. Unit 5 - Intractable Problems

Algorithmic Number Theory and Public-key Cryptography

Umans Complexity Theory Lectures

A Universal Turing Machine

Complexity - Introduction + Complexity classes

Errors, Eavesdroppers, and Enormous Matrices

CSCI 2200 Foundations of Computer Science Spring 2018 Quiz 3 (May 2, 2018) SOLUTIONS

Boolean circuits. Lecture Definitions

Theory of Computation

Non-emptiness Testing for TMs

Theory of Computation. Theory of Computation

COMPARATIVE ANALYSIS ON TURING MACHINE AND QUANTUM TURING MACHINE

Homework. Turing Machines. Announcements. Plan for today. Now our picture looks like. Languages

Lecture 25: Cook s Theorem (1997) Steven Skiena. skiena

Sample Project: Simulation of Turing Machines by Machines with only Two Tape Symbols

Computation. Some history...

Turing Machine properties. Turing Machines. Alternate TM definitions. Alternate TM definitions. Alternate TM definitions. Alternate TM definitions

Development. biologically-inspired computing. lecture 16. Informatics luis rocha x x x. Syntactic Operations. biologically Inspired computing

3130CIT Theory of Computation

Mathematics of Public Key Cryptography

Limits of Computability

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits

An Architectural Framework For Quantum Algorithms Processing Unit (QAPU)

1 Showing Recognizability

Part I: Definitions and Properties

Quantum computing for beginners

An Introduction. Dr Nick Papanikolaou. Seminar on The Future of Cryptography The British Computer Society 17 September 2009

Great Ideas in Theoretical Computer Science. Lecture 28: A Gentle Introduction to Quantum Computation

7.1 The Origin of Computer Science

Notes. Number Theory: Applications. Notes. Number Theory: Applications. Notes. Hash Functions I

Chapter 5. Finite Automata

Lecture 19: Finish NP-Completeness, conp and Friends

An Approach to Computational Complexity in Membrane Computing

18.310A Final exam practice questions

CS151 Complexity Theory. Lecture 1 April 3, 2017

CSE370: Introduction to Digital Design

Verification of quantum computation

NP-completeness. Chapter 34. Sergey Bereg

Algorithm Design and Analysis

Quantum computing with superconducting qubits Towards useful applications

RYERSON UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE CPS 616 FINAL EXAM WINTER 2015

CISC 4090 Theory of Computation

Active Tile Self Assembly:

Mapping Reducibility. Human-aware Robotics. 2017/11/16 Chapter 5.3 in Sipser Ø Announcement:

Secrets of Quantum Information Science

MACHINE COMPUTING. the limitations

15.1 Proof of the Cook-Levin Theorem: SAT is NP-complete

COMPUTATIONAL COMPLEXITY

CS294: Pseudorandomness and Combinatorial Constructions September 13, Notes for Lecture 5

Quantum Cryptography. Marshall Roth March 9, 2007

Transcription:

Computing with DNA & Review and Study Suggestions 1 Wednesday, April 29, 2009 von Neumann Architecture Refers to the existing computer architectures consisting of a processing unit a single separate storage structure to hold both instructions and data Implements a Turing Machine 2 Wednesday, April 29, 2009 1

DNA Computing Existing genetic engineering tools can slice, create, and rebuild DNA sequences: Custom sequences can be made to order. Duplication, replication, and selection operations exist for DNA sequences. Many ( 10 15 ) different DNA sequences can be operated on at the same time in a single test tube. DNA acts as memory; computation is carried out by complementary bases 3 Wednesday, April 29, 2009 How can DNA manipulations lead to computation? In 1993, Leonard Adleman (USC) proposed DNA computing Storage DNA and binary strings encode information Alphabet DNA has a 4-letter alphabet: A, C, G, T Computers have a 2-letter alphabet: 0, 1 Operations We can synthesize any strand of DNA We can generate any binary sequence 4 4 Wednesday, April 29, 2009 2

How can DNA strings carry out computation? DNA strings attach to each other (twist into a double helix) if they have complementary elements in corresponding positions. A and T are complements C and G are complements Adleman devised a DNA manipulation technique to solve the Hamiltonian Path (HP) problem. 5 Wednesday, April 29, 2009 DNA sequences were created They allowed the execution of trillions of operations in parallel From Adleman s 98 Scientific American paper 6 Wednesday, April 29, 2009 3

Adleman s first DNA computation operated on a 7-node, 14-edge directed graph. The algorithm is probabilistic. With high probability it will generate a Hamiltonian path, if one exists. It is a hard-wired, not a programmed solution. The setup is for one graph. It needs to be repeated from scratch for another graph. Demonstrated feasibility and started a new area: DNA Computing 7 Wednesday, April 29, 2009 Overview of the HP DNA algorithm Given is a directed graph G and nodes s and t 1. Generate DNA sequences to represent nodes and edges. 2. Generate DNA strands representing paths. 3. From among the paths, select a path that: begins at s and ends at t has length n 1 is a simple path 8 Wednesday, April 29, 2009 4

Encoding of nodes and edges For every node v i : generate a random DNA strand R i of length 20 For every edge (v i, v j ): create the string S(i,j), which consists of the first half of R i and the second half of R j. Example: v 2 as R 2 = ATCGAACGTTTTAACGTAGT v 3 as R 3 = TCGAATTACGTAGAACGTTT edge (v 2,v 3 ) as TTAACGTAGTTCGAATTACG 9 Wednesday, April 29, 2009 Initial conditions Start node s has strand R s and end node t has strand R t For every edge (s, v i ), create the edge strand consisting of R s and the first half of R i For every edge (v i, t), create the edge strand consisting of the second half of R i followed by R t Consider a path < s, v 1, v 2, > R s = TTCATTCGCCTTAAAGGACT R 1 = GTAGTACGTTTCGGCGTAGA R 2 = ATCGAACGTATTAACGTAGT TTCATTCGCCTTAAAGGACTGTAGTACGTTTCGGCGTAGAATCGAACGTATTA 10 Wednesday, April 29, 2009 10 5

What goes on in the test tube? Complement of the node strands lots of them Edge strands lots of them DNA strands attach to form double strands if they have complementary elements in the corresponding positions. 11 Wednesday, April 29, 2009 11 Generate R s = TTCATTCGCCTTAAAGGACT R 1 = GTAGTACGTTTCGGCGTAGA R 2 = ATCGAACGTATTAACGTAGT What goes into the tube c(r s ) = AAGTAAGCGGAATTTCCTGA c(r 1 ) = CATCATGCAAAGCCGCAACA c(r 2 ) = TAGCTTGCATAATTGCATCA edge (s, v 1 ): TTCATTCGCCTTAAAGGACTGTAGTACGTT edge (v 1, v 2 ): TCGGCGTAGAATCGAACGTA Reaction TTCATTCGCCTTAAAGGACTGTAGTACGTTTCGGCGTAGAATCGAACGTA AAGTAAGCGGAATTTCCTGACATCATGCAAAGCCGCAACATAGCTTGCATAATTGCATC 12 6

Putting it all together 1. Generate DNA sequences representing nodes and edges. 2. Mix to generate the paths. 3. From among the paths, select a path that begins at s and ends at t has length n 1 is a simple path Step 3 involves operations like merge, amplify, test-ifempty, separate, separate-by-length, separate-bypositions. 13 Wednesday, April 29, 2009 http://www.msri i.org/ext/larryg/pages/11.htm 14 7

Progress since 1993 Other problems were solved using Adleman s approach (formula satisfiability, factoring numbers, combinatorial problems with a large solution space). It was shown that DNA computation does not provide additional computational power beyond that of a Turing machine. Between 2002-04, researchers from the Weizmann Institute of Science (Israel) developed a programmable molecular computing machine composed of enzymes (hardware) and DNA molecules (data). 15 Wednesday, April 29, 2009 15 What about quantum computing? A quantum computer uses quantum mechanical phenomena - superposition and entanglement - to perform operations on data. Quantum properties are used to represent data and perform operations. Quantum computing has the potential to support a new kind on computation A system with n qubits can perform 2 n calculations at one The technology supporting quantum computation has not yet been developed 16 8

Quantum Computing Quantum computers would be different from traditional computers as well as DNA computers. A quantum computer could not solve unsolvable problems (like the Halting Problem) But, exponential time algorithms may have feasible solutions. Fast integer factorization would break cryptographic p systems Security of existing methods for public key encryption (RSA systems) would no longer be guaranteed 17 Wednesday, April 29, 2009 Review and study suggestions Exam will have some programming questions, some explain questions Sample questions will be posted on Blackboard this week Programming questions Write one line statements achieving what is specified Write small programs (like in exam 2) Know how to generate plots/visuals (not Cytoscape) Explain Questions Give short answers addressing the point Don t reproduce material from sources 18 Wednesday, April 29, 2009 9

19 Review and study suggestions Work through lab material and lab problems Understand what the focus of the lab was Read posted solutions Re-solve problems Understand code posted in association with lectures Change it, break it Make sure to review Recursion Graph operations Dictionaries Be able to read class definitions and methods Review and study suggestions Chapters covered from Zelle 1, 2, 3, 4 6, 7, 8, 11 13 (except 13.3) Software packages (basic uses) MatPLotLib, VPython, NetworkX, NumPy Learning Python Book Mainly for looking up material and seeing different examples There are a number of Python features we did not cover 20 Wednesday, April 29, 2009 10