I have been trying to figure this out, without much luck. Hope somebody can help me out

Its a simple course catalog / registration application where a course can have zero-to-many prerequisite courses.

Working with examples: Course - A, B, C, D, E, F, G

Scenario 1 - Course B "AND" C are prerequisites for course A:
This is simple. We can have an aggregate table with a row each for the prerequesites. tblCoursePrerequsite(courseID, prerequisiteCourseID)

Scenario 2 - Course B "OR" C is a prerequisite for course A:

Scenario 3 - One has to complete two from course (B,C,D) and one from courses (E,F,G) inorder to be eigible to take course A:

Scenarios 2 & 3 are where I am lost. Has anybody worked with such issues. Any help in this regard is much appreciated.