This article contains constraints that deal with allowing or not allowing courses or sets of courses to count for requirements within your audit. The constraints are listed at the top and bottom of the article, with the bottom of the article containing more details about each constraint.

## Constraints at a Glance

**Constraints that define courses that do count for requirements**

- Fulfill any/all/if needed of the following sub-requirements
*[Primary Constraint]* - Fulfill any [x] of the following sub-requirements
*[Primary Constraint]* - At least [x] courses/units from a given course set
*[Primary Constraint]* - Take any [x] courses with codes between [xx-xxx] and [xx-xxx]
*[Primary Constraint]* - Any [x] course can satisfy this requirement unless restricted otherwise
*[Primary Constraint]*

**Constraints that define courses that do not count for requirements**

- Do not count courses from a given set
*[Secondary Constraint]* - Courses with codes between [xx-xxx] and [xx-xxx] do not count
*[Secondary Constraint]* - At least [x] course/units excluding the given course set
*[Primary Constraint]*

**Constraints that limit what courses can count for requirements**

- May only be satisfied by a course set manually defined by an institution
*[Primary Constraint]* - At most [x] courses/units from a given course set
*[Secondary Constraint]* - At most [x] courses/units excluding the given course set
*[Secondary Constraint]*

**Constraints that further define course-related sub-requirements**

- Take a minimum of [x] courses in total from the sub-requirements
*[Secondary Constraint]* - Take a minimum of [x[ courses from the same sub-requirement
*[Secondary Constraint]*

## Constraint Details

### Constraints that define courses that *do* count for requirements

**At least [x] courses/units from a given course set [Primary Constraint]**

- This constraint should be used when you have multiple buckets in which a student can choose a course from. This could be specific departments, a range of courses, or a specific list of courses.

- In the example above, we’ve created a constraint so you must a course in the 200 level in Math in order to fill the requirement.

- In addition, you can select “Allow Unlimited” in this constraint. This functionality will gather an unlimited number of courses under a requirement (instead of excess courses falling to unmatched).

**Fulfill any/all/if needed of the following sub-requirements [Primary Constraint]**

- Dictates how many of the underlying requirements need to be completed
- Use when all sub-requirements must be completed, for example: Freshman Math AND Pre-Calculus.

- In this example, 21-101 and 21-105 must both be taken to fill the Example requirement.

**Note: **"Fulfill if needed" should be used sparingly, and only if there is a constraint above it that specifies a credit total. Using the "if needed" constraint makes the requirement optional, and it will only select courses if there are additional credits needed to fulfill the program or requirement.

** **

**Fulfill any [x] of the following sub-requirements [Primary Constraint]**

- Dictates how many of the underlying requirements need to be completed
- Use when all sub-requirements must be completed, for example: Freshman Math AND Pre-Calculus.

- In this example, 21-101 and 21-105 must both be taken to fill the Example requirement.

** **

**Take any [x] courses with codes between [xx-xxx] and [xx-xxx] ***[Primary Constraint]*

- Allows courses within a set range to count for the requirement.
- "x" or "X" can be used as wildcards in the department prefix only - XX-3XX will not work, but XX-300 will.
- If you want any course to count, we recommend using the constraint below instead of using all wildcards.

** **

**Any [x] course can satisfy this requirement unless restricted otherwise [Primary Constraint]**

- Any course is permitted to count for this requirement with no additional specifications needed.

### Constraints that define courses that *do not* count for requirements

**Do not count courses from a given set ****[Secondary Constraint]**

- This constraint should be used if you don’t want to count a course or a specific list of courses from a requirement. This also utilizes the course set behavior, so you can also limit courses based on ranges, attributes, or patterns.

** **

**Courses with codes between [xx-xxx] and [xx-xxx] do not count ****[Secondary Constraint]**

- This constraint behaves similarly to the one above, but specifically restricts courses within a particular range. You can use "x" or "X" as the department prefix as a wildcard.

** **

**At least [x] course/units excluding the given course set ****[Primary Constraint]**

- This constraint allows any course to count except for the courses listed.

### Constraints that limit what courses can count for requirements

**May only be satisfied by a course set manually defined by an institution ****[Primary Constraint]**

- The course set is decided by the advisor and can be different per student. The user must edit the constraint to change the course set. There is the option to set a default course set if desired.

** **

**At most [x] courses/units from a given course set ****[Secondary Constraint]**

- This constraint limits the highest number of classes that can be taken from a course set.

** **

**At most [x] courses/units excluding the given course set ****[Secondary Constraint]**

- This constraint limits the highest number of classes that can be taken from courses that
**do not include**the courses specified

### Constraints that further define course-related sub-requirements

**Take a minimum of [x] courses in total from the sub-requirements ****[Secondary Constraint]**

- This constraint sets a total number of courses that must be taken from the sub-requirements underneath of it.
- Tip: This constraint differs from the ‘Fulfill any x of the following sub-requirements’ constraint even though they can be interchangeable at times.
- For simple cases where the requirement dictates that a number of courses or requirements need to be met, then use ‘fulfill any’. For more complicated cases where counting the number of courses to be taken matters rather than the number of direct sub-requirements then use this ‘x-courses’ constraint.

- As a rule of thumb, only use this constraint if you were not able to code the requirement using ‘fulfill any’.

**Take a minimum of [x[ courses from the same sub-requirement [Secondary Constraint]**

- This constraint requires the student to take courses from the
**same**sub-requirement. - In the example depicted below, students must take 3 courses in total from the sub-requirements, but two of the courses must be from the same sub-requirement (two courses from circuits, and one from signals and systems, for instance).