Question: Extra credit ) Recall the course scheduling problem: Given h time slots and a set of courses, each has a list of students. Determine if
Extra credit Recall the course scheduling problem: Given h time slots and a set of
courses, each has a list of students. Determine if you can schedule the given courses into h
slots so that there is no conflict, ie no slot has two courses with a same student.
We have formulated this problem as a language named Schedule and proved that Schedule
is in NP Now you will show that it is NPcomplete by proving that Sat P Schedule.
To prove this, let be a cnfformula with n Boolean variables x xn and k clauses
c ck we construct an instance of Schedule as follows:
Let the pool of all students be s s sn
For each variable xi where i n introduce three courses namely Xi Xi and Yi
Course Xi contains only one student si Course Xi also contains only one student si
Course Yi contains all but student si
For each clause cj where j k introduce a new course named Cj that contains
all students except for students si such that literals xi or xi appear in clause cj
Let the number of time slots be n
In order to show that this is a polynomial time reduction from Sat to Schedule, you need
to
apts Prove that if is satisfiable then there is a conflictfree schedule for the courses
introduced above into n slots. Hint: Note that all courses Yis contain student
sn
bpts Prove that if there is a conflictfree schedule for the courses introduced above into
n slots then is satisfiable.
cpts Prove that the construction of courses above can be computed in polynomial time
in n and kHint: Give an upper bound estimation of the running time taken by a
multitape deterministic Turing machine to list all courses above and their students.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
