170 likes | 181 Views
Learn the basics of counting, permutations, combinations, and more in combinatorics with examples and applications.
E N D
King Fahd University of Petroleum & Minerals Information & Computer Science Department ICS 253: Discrete Structures I Counting and Applications
Reading Assignment • K. H. Rosen, Discrete Mathematics and Its Applications, 6th Ed., McGraw-Hill, 2006. • Chapter 5 (Except Section 5.6)
Introduction • Combinatorial questions arose in the study of gambling games. • Enumeration, the counting of objects with certain properties, is an important part of combinatorics. • Counting is used to determine the complexity of algorithms. • Counting is also required to determine whether there are enough telephone numbers or Internet protocol addresses to meet demand. • Counting techniques are used extensively when probabilities of events are computed. • Fermat’s Last Theorem was proved employing certain counting techniques.
Outline of the Chapter • Section 5.1: Basics of Counting • Section 5.2: The Pigeonhole principle • Section 5.3: Permutations and Combinations • Section 5.4: Binomial Coefficients • Section 5.5: Generalized Permutations and Combinations
Section 5.1: The Basics of Counting • The Product Rule • Suppose that a procedure can be broken down into a sequence of two tasks. If there are n1 ways to do the first task and for each of these ways of doing the first task, there are n2 ways to do the second task, then there are n1n2 ways to do the procedure.
Examples • There are 32 microcomputers in a computer center. Each microcomputer has 24 ports. How many different ports to a microcomputer in the center are there? • How many different bit strings of length seven are there? • How many functions are there from a set with m elements to a set with n elements? • How many one-to-one functions are there from a set with m elements to one with n elements?
Examples • Telephone Numbering Plans • Reading assignment from page 337 of the textbook. • What is the value of k after the following code has been executed? k:= 0 for i1 := 1 to n1 for i2 := 1 to n2 . . . for im := 1 to nm k := k + 1
Examples • Use the product rule to show that the number of different subsets of a finite set S is 2|S|.
The Sum Rule • If a task can be done either in one of n1 ways or in one of n2 ways, where none of the set of n1 ways is the same as any of the set of n2 ways, then there are n1 + n2 ways to do the task. • The sum rule can be extended to more than two tasks. Suppose that a task can be done in one of nl ways, in one of n2 ways, ... , or in one of nm ways, where none of the set of nj ways of doing the task is the same as any of the set of nj ways, for all pairs i and j with 1<i< j<m. Then the number of ways to do the task is n1 + n2 + . . . + nm.
Examples • Suppose that either a member of the mathematics faculty or a student who is a mathematics major is chosen as a representative to a university committee. How many different choices are there for this representative if there are 37 members of the mathematics faculty and 83 mathematics majors and no one is both a faculty member and a student?
Examples • A student can choose a computer project from one of three lists. The three lists contain 23, 15, and 19 possible projects, respectively. No project is on more than one list. How many possible projects are there to choose from?
Examples • What is the value of k after the following piece of code gets executed?
More Complex Counting Problems • In some cases, it is not enough to use only the sum rule or the product rule. • Example: In a version of the computer language BASIC, the name of a variable is a string of one or two alphanumeric characters, where uppercase and lowercase letters are not distinguished. Moreover, a variable name must begin with a letter and must be different from the five strings of two characters that are reserved for programming use. How many different variable names are there in this version of BASIC?
Examples • Example: Each user on a computer system has a password, which is six to eight characters long, where each character is an uppercase letter or a digit. Each password must contain at least one digit. How many possible passwords are there? • Example on IPv4 addressing: Reading Assignment.
The Inclusion-Exclusion Principle • Adding the number of ways to do tasks in two ways, where some tasks in the first way are also included in the second way, leads to an overcount. • To correctly count the number of ways to do the two tasks, we add the number of ways to do it in one way and the number of ways to do it in the other way, and then subtract the number of ways to do the task in a way that belongs to both ways.
Examples • How many bit strings of length eight either start with a 1 bit or end with the two bits 00? • A computer company receives 350 applications from computer graduates for a job planning a line of new Web servers. Suppose that 220 of these people majored in computer science, 147 majored in business, and 51 majored both in computer science and in business. How many of these applicants majored neither in computer science nor in business?
Tree Diagrams • A branch in a rooted tree will correspond to a choice emanating from that root. • Example: How many bit strings of length four do not have two consecutive 1s? • A playoff between two teams consists of at most five games. The first team that wins three games wins the playoff. In how many different ways can the playoff occur?