Writing: Algorithms, Mathematics, Definitions

Size: px
Start display at page:

Download "Writing: Algorithms, Mathematics, Definitions"

Transcription

1 Writing: Algorithms, Mathematics, Definitions Javier Larrosa UPC Barcelona Tech. Javier Larrosa (UPC Barcelona Tech) Writing. 1 / 31

2 Algorithms In CS we often write algorithms (that we have previously implemented and tested) Writing the algorithm differs from implementing it Writing is for communication purposes (clarity) Writing is done a posteriori (when key ideas are more clear) Writing means coding your thoughts (helps you settle down ideas) Javier Larrosa (UPC Barcelona Tech) Writing. 2 / 31

3 Writing Algorithms: example Celebrities In a social sub-network a celebrity is a person that everybody knows, but does not know anybody. Find an efficient algorithm that finds celebrities Think of the network as a directed graph G = (V, E) Function Celebrity (G) is foreach v V do if IsCelebrity(G, v) then return true; end return false; end Function IsCelebrity (G, v) is foreach w V s.t. w v do if (w, v) / E (v, w) E then return false; end return true; end Javier Larrosa (UPC Barcelona Tech) Writing. 3 / 31

4 Celebrity Algorithm 1 Function Celebrity (G) is i := 1; for j := 2..n do if (i, j) E then i := j; end return CheckCelebrity(G, i); end Invariants: i may be a celebrity [1..j] (except i) are not celebrities Javier Larrosa (UPC Barcelona Tech) Writing. 4 / 31

5 example Two useful properties 1 There is at most one celebrity 2 For any pair of vertices (u, v), if (u, v) E then u is not a celebrity, else v is not a celebrity Javier Larrosa (UPC Barcelona Tech) Writing. 5 / 31

6 Celebrity Algorithm 2 Function Celebrity (G = (V, E)) is S := V ; while S > 1 do (i, j) := S.FetchPair(); if (i, j) E then S.Push(j); else S.Push(i); end return CheckCelebrity(G, S); end Invariants: S set of potential celebrities Javier Larrosa (UPC Barcelona Tech) Writing. 6 / 31

7 Writing Algorithms: Example Search on an AND/OR tree Find the minimum cost AND/OR solution sub-tree Javier Larrosa (UPC Barcelona Tech) Writing. 7 / 31

8 Example Javier Larrosa (UPC Barcelona Tech) Writing. 8 / 31

9 Example Javier Larrosa (UPC Barcelona Tech) Writing. 9 / 31

10 Example Javier Larrosa (UPC Barcelona Tech) Writing. 10 / 31

11 Example Javier Larrosa (UPC Barcelona Tech) Writing. 11 / 31

12 Mathematics Technical writing has plenty in-line notation and Mathematics. A good style may make a difference in clarity: Mathematics is presented in italics (e.g of length n ) Use well established notation: (x, y, z) for a 3-d point v for vectors etc. Facilitate memorization (e.g. v for vectors, p for points, S for sets,...) Avoid unnecessary subscripts (e.g. x and y is better than x 1 and x 2 ) Avoid piling subscripts (e.g. x p j i ) Avoid unfamiliar symbols (e.g. Ξ, Θ) and unfamiliar accents (e.g. â, ǎ, ȧ) Javier Larrosa (UPC Barcelona Tech) Writing. 12 / 31

13 Mathematics Math vs. English Mathematics are hard to read but rigorous English is easy to read but ambiguous Use both and find the right balance Do not start sentences with mathematics (e.g. Dependency p q 1... q n is conditional is better than p q 1... q n is a conditional dependency ) Javier Larrosa (UPC Barcelona Tech) Writing. 13 / 31

14 Definitions In Scientific Writing, we often have to write definitions which combine text and math (and sometimes algorithms). Let s see some examples Javier Larrosa (UPC Barcelona Tech) Writing. 14 / 31

15 Hamiltonian Graph Javier Larrosa (UPC Barcelona Tech) Writing. 15 / 31

16 Hamiltonian Hamiltonian A graph is Hamiltonian if it contains a loop such that every vertex is visited exactly once Hamiltonian (more formal) Let G = (V, E) be an undirected graph with V = {1, 2,..., n}. A path of lenght k is a sequence of vertices v 1, v 2,..., v k such that (v i, v i+1 ) is in E. A cycle is a path that starts and ends at the same vertex (i.e, v 1 = v k ). A cycle is proper if the only repetition is the starting/ending vertex. We say that G is Hamiltonian if there is a proper cycle of size n + 1 Javier Larrosa (UPC Barcelona Tech) Writing. 16 / 31

17 Binary Search Tree Assume knowledge on trees (node, left child, right child,...) Javier Larrosa (UPC Barcelona Tech) Writing. 17 / 31

18 Binary Search Tree Binary Search Tree Consider binary trees where each vertex has an associated label. In a binary search tree every vertex satisfies that all the labels on its left (respectively, its right) are smaller than (respectively, greater than) or equal to its label. Javier Larrosa (UPC Barcelona Tech) Writing. 18 / 31

19 Binary Search Tree Notation Consider a binary tree T = (V, E) with root r V. Let v V be an arbitrary vertex. The sub-tree on the left and right of v are noted left(v) and right(v), respectively. Let s assume that each vertex has associated a numerical label noted label(v). Binary Search Tree (more formally) We say that T is a binary search tree if for every vertex v we have that: every label in left(v) is smaller than or equal to label(v) every label in right(v) is larger than or equal to label(v) Javier Larrosa (UPC Barcelona Tech) Writing. 19 / 31

20 n-queens Javier Larrosa (UPC Barcelona Tech) Writing. 20 / 31

21 n-queens n-queens The n-queens problem consists on placing n queens in an n n chess board in such a way that no pair of queens attack each other. Recall that, according to chess rules, queens can move any number of positions along rows, columns and diagonals n-queens (more formally) Let (x 1, x 2,..., x n ) be a set of variables taking values in the range 1..n. The n-queens problem consists on assigning one value to each variable in such a way that for all i, j = 1..n, with i j: x i x j (not in the same column) x i x j i j (not in the same diagonal) Javier Larrosa (UPC Barcelona Tech) Writing. 21 / 31

22 mastermind Javier Larrosa (UPC Barcelona Tech) Writing. 22 / 31

23 Mastermind Mastermind Mastermind is a code-breaking game for two players: the codemaker and the codebreaker. The codemaker makes up a code which keeps secret from the codebreaker. A code is a sequence of four colors out of 6 candidates. The same color can appear more than once in the code. The goal of the codebreaker is to discover the code as soon as possible during a sequence of guesses. After each guess the codemaker gives some feedback. In particular it tells the codebreaker how many colors have been guessed (irrespective of the position) and how many colors have been guessed in the right position. For example, if the code is (r, b, r, p) and the guess is (g, p, r, g) the feedback will be you got two right colors, one of them in the right position. The feedback will be used to refine the codebreaker guess in the subsequent iteration. Javier Larrosa (UPC Barcelona Tech) Writing. 23 / 31

24 Mastermind Mastermind (more formally) A code is a sequence C = (c 1, c 2, c 3, c 4 ) where each element is a number from 1 to 6. The game of Mastermind consists of discovering an unknown code C in a minimum number of guesses. After each guess G = (g 1, g 2, g 3, g 4 ) the codebreaker gets the following feedback, which will be used to refine subsequent guesses: Number of guessed numbers irrespective of the position. Formally, for each number i = 1..6, let C i be the number of times i occurs in C, and G i the number of times i occurs in G. The feedback is, 6 min{c i, G i } i=1 Number of positions where the guess matches with the code. Formally, number of positions j = 1..4 such that g j = c j Javier Larrosa (UPC Barcelona Tech) Writing. 24 / 31

25 Round Robin Schedule Javier Larrosa (UPC Barcelona Tech) Writing. 25 / 31

26 Round Robin Schedule Round Robin Consider a two-teams sport for which a tournament with n teams has to be scheduled. A round robin schedule is the pairing of the teams during n 1 weeks in such a way that any pair of teams are paired exactly once. We can assume n being an even number, since otherwise we can add a dummy team. Playing against the dummy team represents a resting week Javier Larrosa (UPC Barcelona Tech) Writing. 26 / 31

27 Round Robin Schedule Round Robin (more formal) Let n be an even natural number. A round robin schedule is a matrix M n n 1 such that for all 1 i n, 1 j < n: Teams play teams: M(i, j) [1..n] and M(i, j) i Teams are paired: if M(i, j) = k, then M(k, j) = i Same two teams only play once: 1 j<j <n, M(i, j) M(i, j ) Javier Larrosa (UPC Barcelona Tech) Writing. 27 / 31

28 Induced Width Javier Larrosa (UPC Barcelona Tech) Writing. 28 / 31

29 Induced Width Induced Width Let G = (V, E) be an undirected graph with V = {1, 2,..., n}. The neighbors of vertex v V is the set of vertices adjacent to v. Its higher neighbors are those whose index is larger than v. The width of v is the number of higher neighbors that it has. The width of G is the maximum width among all its vertices. The induced graph G = (V, E ) is obtained from G as follows: take its vertices in increasing order. When considering vertex v connect with a new edge any pair of higher neighbors that are not already connected. The induced width of G, is the width of its induced graph. Javier Larrosa (UPC Barcelona Tech) Writing. 29 / 31

30 Induced Width Width Let G = (V, E) be an undirected graph with V = {1, 2,..., n}. The neighbors of vertex v V, noted N(v) is the set of vertices adjacent to v, N(v) = {u V (v, u) G} The higher neighbors of v, noted HN(v) are those whose index is larger than v, HN(v) = {u V u > v, (v, u) G} The width of v, noted w(v) is the number of higher neighbors (i.e, W (v) = HN(v) ). The width of G is the maximum width among all its vertices, W (G) = max v V W (v) Javier Larrosa (UPC Barcelona Tech) Writing. 30 / 31

31 Induced Width Induced Width The induced graph G = (V, E ) is obtained from G as follows (see Algorithm 4): take its vertices in increasing order. When considering vertex v connect with a new edge any pair of higher neighbors that are not already connected. The induced width of G is the width of its induced graph G. Function InducedGraph (G) is G = (V, E ) is a graph; G G; foreach v V in increasing order do for u, w HN(v) do if (u, w) / E then E E {(u, w)}; end end return G ; end Algorithm 1: Computation of the induced graph G of a graph G. HN(v) denotes the set of neighbors of v with index higher than v in the graph that is being computed G Javier Larrosa (UPC Barcelona Tech) Writing. 31 / 31

Hamiltonian Graphs Graphs

Hamiltonian Graphs Graphs COMP2121 Discrete Mathematics Hamiltonian Graphs Graphs Hubert Chan (Chapter 9.5) [O1 Abstract Concepts] [O2 Proof Techniques] [O3 Basic Analysis Techniques] 1 Hamiltonian Paths and Circuits [O1] A Hamiltonian

More information

1 More finite deterministic automata

1 More finite deterministic automata CS 125 Section #6 Finite automata October 18, 2016 1 More finite deterministic automata Exercise. Consider the following game with two players: Repeatedly flip a coin. On heads, player 1 gets a point.

More information

CS Algorithms and Complexity

CS Algorithms and Complexity CS 50 - Algorithms and Complexity Linear Programming, the Simplex Method, and Hard Problems Sean Anderson 2/15/18 Portland State University Table of contents 1. The Simplex Method 2. The Graph Problem

More information

Notes for Lecture Notes 2

Notes for Lecture Notes 2 Stanford University CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation

More information

CSCI3390-Lecture 14: The class NP

CSCI3390-Lecture 14: The class NP CSCI3390-Lecture 14: The class NP 1 Problems and Witnesses All of the decision problems described below have the form: Is there a solution to X? where X is the given problem instance. If the instance is

More information

CS 170 Algorithms Spring 2009 David Wagner Final

CS 170 Algorithms Spring 2009 David Wagner Final CS 170 Algorithms Spring 2009 David Wagner Final PRINT your name:, (last) SIGN your name: (first) PRINT your Unix account login: Your TA s name: Name of the person sitting to your left: Name of the person

More information

CS60007 Algorithm Design and Analysis 2018 Assignment 1

CS60007 Algorithm Design and Analysis 2018 Assignment 1 CS60007 Algorithm Design and Analysis 2018 Assignment 1 Palash Dey and Swagato Sanyal Indian Institute of Technology, Kharagpur Please submit the solutions of the problems 6, 11, 12 and 13 (written in

More information

1 Computational Problems

1 Computational Problems Stanford University CS254: Computational Complexity Handout 2 Luca Trevisan March 31, 2010 Last revised 4/29/2010 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation

More information

Introduction to Solving Combinatorial Problems with SAT

Introduction to Solving Combinatorial Problems with SAT Introduction to Solving Combinatorial Problems with SAT Javier Larrosa December 19, 2014 Overview of the session Review of Propositional Logic The Conjunctive Normal Form (CNF) Modeling and solving combinatorial

More information

Markov Decision Processes

Markov Decision Processes Markov Decision Processes Lecture notes for the course Games on Graphs B. Srivathsan Chennai Mathematical Institute, India 1 Markov Chains We will define Markov chains in a manner that will be useful to

More information

CS173 Lecture B, November 3, 2015

CS173 Lecture B, November 3, 2015 CS173 Lecture B, November 3, 2015 Tandy Warnow November 3, 2015 CS 173, Lecture B November 3, 2015 Tandy Warnow Announcements Examlet 7 is a take-home exam, and is due November 10, 11:05 AM, in class.

More information

Classes of Problems. CS 461, Lecture 23. NP-Hard. Today s Outline. We can characterize many problems into three classes:

Classes of Problems. CS 461, Lecture 23. NP-Hard. Today s Outline. We can characterize many problems into three classes: Classes of Problems We can characterize many problems into three classes: CS 461, Lecture 23 Jared Saia University of New Mexico P is the set of yes/no problems that can be solved in polynomial time. Intuitively

More information

Using first-order logic, formalize the following knowledge:

Using first-order logic, formalize the following knowledge: Probabilistic Artificial Intelligence Final Exam Feb 2, 2016 Time limit: 120 minutes Number of pages: 19 Total points: 100 You can use the back of the pages if you run out of space. Collaboration on the

More information

Solving Deductive Games

Solving Deductive Games Solving Deductive Games Antonín Kučera (a joint work with Miroslav Klimoš) FI MU Brno Czech Republic Deductive games 2 players: codemaker + codebreaker codemakers selects a secret code codebreaker strives

More information

CS540 ANSWER SHEET

CS540 ANSWER SHEET CS540 ANSWER SHEET Name Email 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 1 2 Final Examination CS540-1: Introduction to Artificial Intelligence Fall 2016 20 questions, 5 points

More information

CS168: The Modern Algorithmic Toolbox Lectures #11 and #12: Spectral Graph Theory

CS168: The Modern Algorithmic Toolbox Lectures #11 and #12: Spectral Graph Theory CS168: The Modern Algorithmic Toolbox Lectures #11 and #12: Spectral Graph Theory Tim Roughgarden & Gregory Valiant May 2, 2016 Spectral graph theory is the powerful and beautiful theory that arises from

More information

Dominating Set. Chapter 26

Dominating Set. Chapter 26 Chapter 26 Dominating Set In this chapter we present another randomized algorithm that demonstrates the power of randomization to break symmetries. We study the problem of finding a small dominating set

More information

Dominating Set. Chapter Sequential Greedy Algorithm 294 CHAPTER 26. DOMINATING SET

Dominating Set. Chapter Sequential Greedy Algorithm 294 CHAPTER 26. DOMINATING SET 294 CHAPTER 26. DOMINATING SET 26.1 Sequential Greedy Algorithm Chapter 26 Dominating Set Intuitively, to end up with a small dominating set S, nodes in S need to cover as many neighbors as possible. It

More information

UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis

UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis Lecture 10 Class URL: http://vlsicad.ucsd.edu/courses/cse21-s14/ Lecture 10 Notes Midterm Good job overall! = 81; =

More information

Tribhuvan University Institute of Science and Technology Micro Syllabus

Tribhuvan University Institute of Science and Technology Micro Syllabus Tribhuvan University Institute of Science and Technology Micro Syllabus Course Title: Discrete Structure Course no: CSC-152 Full Marks: 80+20 Credit hours: 3 Pass Marks: 32+8 Nature of course: Theory (3

More information

Exam EDAF May 2011, , Vic1. Thore Husfeldt

Exam EDAF May 2011, , Vic1. Thore Husfeldt Exam EDAF05 25 May 2011, 8.00 13.00, Vic1 Thore Husfeldt Instructions What to bring. You can bring any written aid you want. This includes the course book and a dictionary. In fact, these two things are

More information

ECS 20: Discrete Mathematics for Computer Science UC Davis Phillip Rogaway June 12, Final Exam

ECS 20: Discrete Mathematics for Computer Science UC Davis Phillip Rogaway June 12, Final Exam ECS 20: Discrete Mathematics for Computer Science Handout F UC Davis Phillip Rogaway June 12, 2000 Final Exam Instructions: Read the questions carefully; maybe I m not asking what you assume me to be asking!

More information

On the Algorithmic Complexity of the Mastermind Game with Black-Peg Results

On the Algorithmic Complexity of the Mastermind Game with Black-Peg Results On the Algorithmic Complexity of the Mastermind Game with Black-Peg Results Michael T. Goodrich Dept. of Computer Science and Secure Computing and Networking Center University of California, Irvine http://www.ics.uci.edu/

More information

UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis

UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis UCSD CSE 21, Spring 2014 [Section B00] Mathematics for Algorithm and System Analysis Lecture 10 Class URL: http://vlsicad.ucsd.edu/courses/cse21-s14/ Lecture 10 Notes Midterm Good job overall! = 81; =

More information

CMSC 441: Algorithms. NP Completeness

CMSC 441: Algorithms. NP Completeness CMSC 441: Algorithms NP Completeness Intractable & Tractable Problems Intractable problems: As they grow large, we are unable to solve them in reasonable time What constitutes reasonable time? Standard

More information

Topics in Complexity

Topics in Complexity Topics in Complexity Please evaluate this course on Axess! Your feedback really does make a difference. Applied Complexity Theory Complexity theory has enormous practical relevance across various domains

More information

Chapter 8 The Disjoint Sets Class

Chapter 8 The Disjoint Sets Class Chapter 8 The Disjoint Sets Class 2 Introduction equivalence problem can be solved fairly simply simple data structure each function requires only a few lines of code two operations: and can be implemented

More information

CSCI3390-Second Test with Solutions

CSCI3390-Second Test with Solutions CSCI3390-Second Test with Solutions April 26, 2016 Each of the 15 parts of the problems below is worth 10 points, except for the more involved 4(d), which is worth 20. A perfect score is 100: if your score

More information

Bayesian networks in Mastermind

Bayesian networks in Mastermind Bayesian networks in Mastermind Jiří Vomlel http://www.utia.cas.cz/vomlel/ Laboratory for Intelligent Systems Inst. of Inf. Theory and Automation University of Economics Academy of Sciences Ekonomická

More information

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) The final exam will be on Thursday, May 12, from 8:00 10:00 am, at our regular class location (CSI 2117). It will be closed-book and closed-notes, except

More information

CSCI3390-Lecture 18: Why is the P =?NP Problem Such a Big Deal?

CSCI3390-Lecture 18: Why is the P =?NP Problem Such a Big Deal? CSCI3390-Lecture 18: Why is the P =?NP Problem Such a Big Deal? The conjecture that P is different from NP made its way on to several lists of the most important unsolved problems in Mathematics (never

More information

Lecture 11 October 11, Information Dissemination through Social Networks

Lecture 11 October 11, Information Dissemination through Social Networks CS 284r: Incentives and Information in Networks Fall 2013 Prof. Yaron Singer Lecture 11 October 11, 2013 Scribe: Michael Tingley, K. Nathaniel Tucker 1 Overview In today s lecture we will start the second

More information

CS 350 Algorithms and Complexity

CS 350 Algorithms and Complexity 1 CS 350 Algorithms and Complexity Fall 2015 Lecture 15: Limitations of Algorithmic Power Introduction to complexity theory Andrew P. Black Department of Computer Science Portland State University Lower

More information

Finite and Algorithmic Model Theory II: Automata-Based Methods

Finite and Algorithmic Model Theory II: Automata-Based Methods Finite and Algorithmic Model Theory II: Automata-Based Methods Anuj Dawar University of Cambridge Computer Laboratory Simons Institute, 30 August 2016 Review We aim to develop tools for studying the expressive

More information

Quantum walk algorithms

Quantum walk algorithms Quantum walk algorithms Andrew Childs Institute for Quantum Computing University of Waterloo 28 September 2011 Randomized algorithms Randomness is an important tool in computer science Black-box problems

More information

The P versus NP Problem. Ker-I Ko. Stony Brook, New York

The P versus NP Problem. Ker-I Ko. Stony Brook, New York The P versus NP Problem Ker-I Ko Stony Brook, New York ? P = NP One of the seven Millenium Problems The youngest one A folklore question? Has hundreds of equivalent forms Informal Definitions P : Computational

More information

Space and Nondeterminism

Space and Nondeterminism CS 221 Computational Complexity, Lecture 5 Feb 6, 2018 Space and Nondeterminism Instructor: Madhu Sudan 1 Scribe: Yong Wook Kwon Topic Overview Today we ll talk about space and non-determinism. For some

More information

Algorithms and Theory of Computation. Lecture 22: NP-Completeness (2)

Algorithms and Theory of Computation. Lecture 22: NP-Completeness (2) Algorithms and Theory of Computation Lecture 22: NP-Completeness (2) Xiaohui Bei MAS 714 November 8, 2018 Nanyang Technological University MAS 714 November 8, 2018 1 / 20 Set Cover Set Cover Input: a set

More information

More on NP and Reductions

More on NP and Reductions Indian Institute of Information Technology Design and Manufacturing, Kancheepuram Chennai 600 127, India An Autonomous Institute under MHRD, Govt of India http://www.iiitdm.ac.in COM 501 Advanced Data

More information

CS221 Practice Midterm

CS221 Practice Midterm CS221 Practice Midterm Autumn 2012 1 ther Midterms The following pages are excerpts from similar classes midterms. The content is similar to what we ve been covering this quarter, so that it should be

More information

CS/COE

CS/COE CS/COE 1501 www.cs.pitt.edu/~nlf4/cs1501/ P vs NP But first, something completely different... Some computational problems are unsolvable No algorithm can be written that will always produce the correct

More information

CSCI 239 Discrete Structures of Computer Science Lab 6 Vectors and Matrices

CSCI 239 Discrete Structures of Computer Science Lab 6 Vectors and Matrices CSCI 239 Discrete Structures of Computer Science Lab 6 Vectors and Matrices This lab consists of exercises on real-valued vectors and matrices. Most of the exercises will required pencil and paper. Put

More information

The Inductive Proof Template

The Inductive Proof Template CS103 Handout 24 Winter 2016 February 5, 2016 Guide to Inductive Proofs Induction gives a new way to prove results about natural numbers and discrete structures like games, puzzles, and graphs. All of

More information

Rooks and Pascal s Triangle. shading in the first k squares of the diagonal running downwards to the right. We

Rooks and Pascal s Triangle. shading in the first k squares of the diagonal running downwards to the right. We Roos and Pascal s Triangle An (n,) board consists of n 2 squares arranged in n rows and n columns with shading in the first squares of the diagonal running downwards to the right. We consider (n,) boards

More information

ECS 120 Lesson 24 The Class N P, N P-complete Problems

ECS 120 Lesson 24 The Class N P, N P-complete Problems ECS 120 Lesson 24 The Class N P, N P-complete Problems Oliver Kreylos Friday, May 25th, 2001 Last time, we defined the class P as the class of all problems that can be decided by deterministic Turing Machines

More information

Some Writing Examples

Some Writing Examples Some Writing Examples Assume that A : ( A = n = x, y A : f(x) = f(y)). Let B = n + 1, x, y B, x y, C := B \ {y}, D := B \ {x}. C = n, D = n, x C, y D. Let u B, u x, u y. u C, f(x) = f(u), u D, f(y) = f(u),

More information

BBM402-Lecture 11: The Class NP

BBM402-Lecture 11: The Class NP BBM402-Lecture 11: The Class NP Lecturer: Lale Özkahya Resources for the presentation: http://ocw.mit.edu/courses/electrical-engineering-andcomputer-science/6-045j-automata-computability-andcomplexity-spring-2011/syllabus/

More information

1. (a) Explain the asymptotic notations used in algorithm analysis. (b) Prove that f(n)=0(h(n)) where f(n)=0(g(n)) and g(n)=0(h(n)).

1. (a) Explain the asymptotic notations used in algorithm analysis. (b) Prove that f(n)=0(h(n)) where f(n)=0(g(n)) and g(n)=0(h(n)). Code No: R05220502 Set No. 1 1. (a) Explain the asymptotic notations used in algorithm analysis. (b) Prove that f(n)=0(h(n)) where f(n)=0(g(n)) and g(n)=0(h(n)). 2. (a) List some of the relative advantages

More information

CS 320, Fall Dr. Geri Georg, Instructor 320 NP 1

CS 320, Fall Dr. Geri Georg, Instructor 320 NP 1 NP CS 320, Fall 2017 Dr. Geri Georg, Instructor georg@colostate.edu 320 NP 1 NP Complete A class of problems where: No polynomial time algorithm has been discovered No proof that one doesn t exist 320

More information

Dominating Set. Chapter 7

Dominating Set. Chapter 7 Chapter 7 Dominating Set In this chapter we present another randomized algorithm that demonstrates the power of randomization to break symmetries. We study the problem of finding a small dominating set

More information

CS5371 Theory of Computation. Lecture 19: Complexity IV (More on NP, NP-Complete)

CS5371 Theory of Computation. Lecture 19: Complexity IV (More on NP, NP-Complete) CS5371 Theory of Computation Lecture 19: Complexity IV (More on NP, NP-Complete) Objectives More discussion on the class NP Cook-Levin Theorem The Class NP revisited Recall that NP is the class of language

More information

Computational Intractability 2010/4/15. Lecture 2

Computational Intractability 2010/4/15. Lecture 2 Computational Intractability 2010/4/15 Professor: David Avis Lecture 2 Scribe:Naoki Hatta 1 P and NP 1.1 Definition of P and NP Decision problem it requires yes/no answer. Example: X is a set of strings.

More information

Seven Is More Than Six. The Pigeon-Hole Principle

Seven Is More Than Six. The Pigeon-Hole Principle Chapter 1 Seven Is More Than Six. The Pigeon-Hole Principle 1.1 The Basic Pigeon-Hole Principle Seven is more than six. Four is more than three. Two is more than one. These statements do not seem to be

More information

CS 350 Algorithms and Complexity

CS 350 Algorithms and Complexity CS 350 Algorithms and Complexity Winter 2019 Lecture 15: Limitations of Algorithmic Power Introduction to complexity theory Andrew P. Black Department of Computer Science Portland State University Lower

More information

NATIONAL UNIVERSITY OF SINGAPORE CS3230 DESIGN AND ANALYSIS OF ALGORITHMS SEMESTER II: Time Allowed 2 Hours

NATIONAL UNIVERSITY OF SINGAPORE CS3230 DESIGN AND ANALYSIS OF ALGORITHMS SEMESTER II: Time Allowed 2 Hours NATIONAL UNIVERSITY OF SINGAPORE CS3230 DESIGN AND ANALYSIS OF ALGORITHMS SEMESTER II: 2017 2018 Time Allowed 2 Hours INSTRUCTIONS TO STUDENTS 1. This assessment consists of Eight (8) questions and comprises

More information

Complexity theory for fellow CS students

Complexity theory for fellow CS students This document contains some basics of the complexity theory. It is mostly based on the lecture course delivered at CS dept. by Meran G. Furugyan. Differences are subtle. Disclaimer of warranties apply:

More information

CS/ECE 374 Final Exam Study Problems Fall 2016

CS/ECE 374 Final Exam Study Problems Fall 2016 True or False? (from previous final exams) 1. For each of the following questions, indicate every correct answer by marking the box, and indicate every incorrect answer by marking the box. Assume P NP.

More information

Final Exam Version A December 16, 2014 Name: NetID: Section: # Total Score

Final Exam Version A December 16, 2014 Name: NetID: Section: # Total Score CS 374 : Algorithms and Models of Computation, Fall 2014 Final Exam Version A December 16, 2014 Name: NetID: Section: 1 2 3 # 1 2 3 4 5 6 Total Score Max 20 10 10 10 10 10 70 Grader Don t panic! Please

More information

8.3 Hamiltonian Paths and Circuits

8.3 Hamiltonian Paths and Circuits 8.3 Hamiltonian Paths and Circuits 8.3 Hamiltonian Paths and Circuits A Hamiltonian path is a path that contains each vertex exactly once A Hamiltonian circuit is a Hamiltonian path that is also a circuit

More information

Computer Science 385 Analysis of Algorithms Siena College Spring Topic Notes: Limitations of Algorithms

Computer Science 385 Analysis of Algorithms Siena College Spring Topic Notes: Limitations of Algorithms Computer Science 385 Analysis of Algorithms Siena College Spring 2011 Topic Notes: Limitations of Algorithms We conclude with a discussion of the limitations of the power of algorithms. That is, what kinds

More information

Spatial Autocorrelation

Spatial Autocorrelation Spatial Autocorrelation Luc Anselin http://spatial.uchicago.edu spatial randomness positive and negative spatial autocorrelation spatial autocorrelation statistics spatial weights Spatial Randomness The

More information

Formal Modeling with Propositional Logic

Formal Modeling with Propositional Logic Formal Modeling with Propositional Logic Assaf Kfoury February 6, 2017 (last modified: September 3, 2018) Contents 1 The Pigeon Hole Principle 2 2 Graph Problems 3 2.1 Paths in Directed Graphs..................................

More information

Definition A finite Markov chain is a memoryless homogeneous discrete stochastic process with a finite number of states.

Definition A finite Markov chain is a memoryless homogeneous discrete stochastic process with a finite number of states. Chapter 8 Finite Markov Chains A discrete system is characterized by a set V of states and transitions between the states. V is referred to as the state space. We think of the transitions as occurring

More information

Complexity Theory Part Two

Complexity Theory Part Two Complexity Theory Part Two Recap from Last Time The Complexity Class P The complexity class P (for polynomial time) contains all problems that can be solved in polynomial time. Formally: P = { L There

More information

POLYNOMIAL SPACE QSAT. Games. Polynomial space cont d

POLYNOMIAL SPACE QSAT. Games. Polynomial space cont d T-79.5103 / Autumn 2008 Polynomial Space 1 T-79.5103 / Autumn 2008 Polynomial Space 3 POLYNOMIAL SPACE Polynomial space cont d Polynomial space-bounded computation has a variety of alternative characterizations

More information

Heaps Induction. Heaps. Heaps. Tirgul 6

Heaps Induction. Heaps. Heaps. Tirgul 6 Tirgul 6 Induction A binary heap is a nearly complete binary tree stored in an array object In a max heap, the value of each node that of its children (In a min heap, the value of each node that of its

More information

CS325: Analysis of Algorithms, Fall Midterm

CS325: Analysis of Algorithms, Fall Midterm CS325: Analysis of Algorithms, Fall 2017 Midterm I don t know policy: you may write I don t know and nothing else to answer a question and receive 25 percent of the total points for that problem whereas

More information

First order logic on Galton-Watson trees

First order logic on Galton-Watson trees First order logic on Galton-Watson trees Moumanti Podder Georgia Institute of Technology Joint work with Joel Spencer January 9, 2018 Mathematics Seminar, Indian Institute of Science, Bangalore 1 / 20

More information

Lecture 27: Theory of Computation. Marvin Zhang 08/08/2016

Lecture 27: Theory of Computation. Marvin Zhang 08/08/2016 Lecture 27: Theory of Computation Marvin Zhang 08/08/2016 Announcements Roadmap Introduction Functions Data Mutability Objects This week (Applications), the goals are: To go beyond CS 61A and see examples

More information

8.5 Sequencing Problems

8.5 Sequencing Problems 8.5 Sequencing Problems Basic genres. Packing problems: SET-PACKING, INDEPENDENT SET. Covering problems: SET-COVER, VERTEX-COVER. Constraint satisfaction problems: SAT, 3-SAT. Sequencing problems: HAMILTONIAN-CYCLE,

More information

A lower bound for the Laplacian eigenvalues of a graph proof of a conjecture by Guo

A lower bound for the Laplacian eigenvalues of a graph proof of a conjecture by Guo A lower bound for the Laplacian eigenvalues of a graph proof of a conjecture by Guo A. E. Brouwer & W. H. Haemers 2008-02-28 Abstract We show that if µ j is the j-th largest Laplacian eigenvalue, and d

More information

CS 301: Complexity of Algorithms (Term I 2008) Alex Tiskin Harald Räcke. Hamiltonian Cycle. 8.5 Sequencing Problems. Directed Hamiltonian Cycle

CS 301: Complexity of Algorithms (Term I 2008) Alex Tiskin Harald Räcke. Hamiltonian Cycle. 8.5 Sequencing Problems. Directed Hamiltonian Cycle 8.5 Sequencing Problems Basic genres. Packing problems: SET-PACKING, INDEPENDENT SET. Covering problems: SET-COVER, VERTEX-COVER. Constraint satisfaction problems: SAT, 3-SAT. Sequencing problems: HAMILTONIAN-CYCLE,

More information

1.1 P, NP, and NP-complete

1.1 P, NP, and NP-complete CSC5160: Combinatorial Optimization and Approximation Algorithms Topic: Introduction to NP-complete Problems Date: 11/01/2008 Lecturer: Lap Chi Lau Scribe: Jerry Jilin Le This lecture gives a general introduction

More information

1 Adjacency matrix and eigenvalues

1 Adjacency matrix and eigenvalues CSC 5170: Theory of Computational Complexity Lecture 7 The Chinese University of Hong Kong 1 March 2010 Our objective of study today is the random walk algorithm for deciding if two vertices in an undirected

More information

Theory of Rule 6 and it s Application to Round Robin Tournament

Theory of Rule 6 and it s Application to Round Robin Tournament Theory of Rule 6 and it s Application to Round Robin Tournament Pabitra Pal Choudhury, Sk. Sarif Hassan Applied Statistics Unit, Indian Statistical Institute, Kolkata, 78, INDIA Email: pabitrapalchoudhury@gmail.com

More information

CSI Mathematical Induction. Many statements assert that a property of the form P(n) is true for all integers n.

CSI Mathematical Induction. Many statements assert that a property of the form P(n) is true for all integers n. CSI 2101- Mathematical Induction Many statements assert that a property of the form P(n) is true for all integers n. Examples: For every positive integer n: n! n n Every set with n elements, has 2 n Subsets.

More information

Friday Four Square! Today at 4:15PM, Outside Gates

Friday Four Square! Today at 4:15PM, Outside Gates P and NP Friday Four Square! Today at 4:15PM, Outside Gates Recap from Last Time Regular Languages DCFLs CFLs Efficiently Decidable Languages R Undecidable Languages Time Complexity A step of a Turing

More information

Constraint Satisfaction

Constraint Satisfaction Constraint Satisfaction CS 486/686 May 16, 2006 University of Waterloo 1 Outline What are CSPs? Standard search and CSPs Improvements Backtracking Backtracking + heuristics Forward checking 2 Introduction

More information

CS103 Handout 22 Fall 2012 November 30, 2012 Problem Set 9

CS103 Handout 22 Fall 2012 November 30, 2012 Problem Set 9 CS103 Handout 22 Fall 2012 November 30, 2012 Problem Set 9 In this final problem set of the quarter, you will explore the limits of what can be computed efficiently. What problems do we believe are computationally

More information

COMP Analysis of Algorithms & Data Structures

COMP Analysis of Algorithms & Data Structures COMP 3170 - Analysis of Algorithms & Data Structures Shahin Kamali Computational Complexity CLRS 34.1-34.4 University of Manitoba COMP 3170 - Analysis of Algorithms & Data Structures 1 / 50 Polynomial

More information

Database Theory VU , SS Ehrenfeucht-Fraïssé Games. Reinhard Pichler

Database Theory VU , SS Ehrenfeucht-Fraïssé Games. Reinhard Pichler Database Theory Database Theory VU 181.140, SS 2018 7. Ehrenfeucht-Fraïssé Games Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Pichler 15

More information

Outline What are CSPs? Standard search and CSPs Improvements. Constraint Satisfaction. Introduction. Introduction

Outline What are CSPs? Standard search and CSPs Improvements. Constraint Satisfaction. Introduction. Introduction Constraint Satisfaction CS 86/686 May 6, 006 University of Waterloo Outline What are CSPs? Standard search and CSPs Improvements acktracking acktracking + heuristics Forward checking Introduction In the

More information

Announcements. Problem Set 7 graded; will be returned at end of lecture. Unclaimed problem sets and midterms moved!

Announcements. Problem Set 7 graded; will be returned at end of lecture. Unclaimed problem sets and midterms moved! N P NP Announcements Problem Set 7 graded; will be returned at end of lecture. Unclaimed problem sets and midterms moved! Now in cabinets in the Gates open area near the drop-off box. The Complexity Class

More information

Data Mining Prof. Pabitra Mitra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur

Data Mining Prof. Pabitra Mitra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Data Mining Prof. Pabitra Mitra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 21 K - Nearest Neighbor V In this lecture we discuss; how do we evaluate the

More information

Prof. Dr. Lars Schmidt-Thieme, L. B. Marinho, K. Buza Information Systems and Machine Learning Lab (ISMLL), University of Hildesheim, Germany, Course

Prof. Dr. Lars Schmidt-Thieme, L. B. Marinho, K. Buza Information Systems and Machine Learning Lab (ISMLL), University of Hildesheim, Germany, Course Course on Bayesian Networks, winter term 2007 0/31 Bayesian Networks Bayesian Networks I. Bayesian Networks / 1. Probabilistic Independence and Separation in Graphs Prof. Dr. Lars Schmidt-Thieme, L. B.

More information

EE595A Submodular functions, their optimization and applications Spring 2011

EE595A Submodular functions, their optimization and applications Spring 2011 EE595A Submodular functions, their optimization and applications Spring 2011 Prof. Jeff Bilmes University of Washington, Seattle Department of Electrical Engineering Winter Quarter, 2011 http://ee.washington.edu/class/235/2011wtr/index.html

More information

Problem One: Order Relations i. What three properties does a binary relation have to have to be a partial order?

Problem One: Order Relations i. What three properties does a binary relation have to have to be a partial order? CS103 Handout 16 Fall 2011 November 4, 2011 Extra Practice Problems Many of you have expressed interest in additional practice problems to review the material from the first four weeks of CS103. This handout

More information

Propositional Logic: exercises

Propositional Logic: exercises Propositional Logic: exercises 1. Prove that p p is unsatisfiable 2. Prove that p p is a tautology 3. Write the truth table of the following two formula (p (q r)) and ( p (q r)). Say for each one if it

More information

Intelligent Systems:

Intelligent Systems: Intelligent Systems: Undirected Graphical models (Factor Graphs) (2 lectures) Carsten Rother 15/01/2015 Intelligent Systems: Probabilistic Inference in DGM and UGM Roadmap for next two lectures Definition

More information

Before we show how languages can be proven not regular, first, how would we show a language is regular?

Before we show how languages can be proven not regular, first, how would we show a language is regular? CS35 Proving Languages not to be Regular Before we show how languages can be proven not regular, first, how would we show a language is regular? Although regular languages and automata are quite powerful

More information

Midterm Examination CS540: Introduction to Artificial Intelligence

Midterm Examination CS540: Introduction to Artificial Intelligence Midterm Examination CS540: Introduction to Artificial Intelligence November 1, 2005 Instructor: Jerry Zhu CLOSED BOOK (One letter-size notes allowed. Turn it in with the exam) LAST (FAMILY) NAME: FIRST

More information

Lecture 4: Best, Worst, and Average Case Complexity. Wednesday, 30 Sept 2009

Lecture 4: Best, Worst, and Average Case Complexity. Wednesday, 30 Sept 2009 @? @? @? @? @? @? @? @? @? @ 8 7 8 7 8 7 8 7 8 7 8 7 8 7 8 7 8 7 8 7 0 0 0 0 0 0 0 0 0 0 ' ' ' ' ' ' ' ' ' ' Lecture 4: Best, Worst, and Average Case Complexity CS204/209 : Algorithms (and Scientific Computing)

More information

CATERPILLAR TOLERANCE REPRESENTATIONS OF CYCLES

CATERPILLAR TOLERANCE REPRESENTATIONS OF CYCLES CATERPILLAR TOLERANCE REPRESENTATIONS OF CYCLES NANCY EATON AND GLENN FAUBERT Abstract. A caterpillar, H, is a tree containing a path, P, such that every vertex of H is either in P or adjacent to P. Given

More information

SOLUTION: SOLUTION: SOLUTION:

SOLUTION: SOLUTION: SOLUTION: Convert R and S into nondeterministic finite automata N1 and N2. Given a string s, if we know the states N1 and N2 may reach when s[1...i] has been read, we are able to derive the states N1 and N2 may

More information

Graph Theory. Thomas Bloom. February 6, 2015

Graph Theory. Thomas Bloom. February 6, 2015 Graph Theory Thomas Bloom February 6, 2015 1 Lecture 1 Introduction A graph (for the purposes of these lectures) is a finite set of vertices, some of which are connected by a single edge. Most importantly,

More information

Physical Metaphors for Graphs

Physical Metaphors for Graphs Graphs and Networks Lecture 3 Physical Metaphors for Graphs Daniel A. Spielman October 9, 203 3. Overview We will examine physical metaphors for graphs. We begin with a spring model and then discuss resistor

More information

Surprising relationships connecting ploughing a field, mathematical trees, permutations, and trigonometry

Surprising relationships connecting ploughing a field, mathematical trees, permutations, and trigonometry Surprising relationships connecting ploughing a field, mathematical trees, permutations, and trigonometry Ross Street Macquarie University Talented Students Day, Macquarie University Ross Street (Macquarie

More information

Finding optimal configurations ( combinatorial optimization)

Finding optimal configurations ( combinatorial optimization) CS 1571 Introduction to AI Lecture 10 Finding optimal configurations ( combinatorial optimization) Milos Hauskrecht milos@cs.pitt.edu 539 Sennott Square Constraint satisfaction problem (CSP) Constraint

More information

GRAPH ALGORITHMS Week 3 (16-21 October 2017)

GRAPH ALGORITHMS Week 3 (16-21 October 2017) GRAPH ALGORITHMS Week 3 (16-21 October 2017) C. Croitoru croitoru@info.uaic.ro FII October 15, 2017 1 / 63 OUTLINE Graph Theory Vocabulary 1 Definition of a Graph 2 Variations in the Definition of a Graph

More information