Major:
To earn a major in Computer Sciences, a student must complete a total of 68 credits, out of which:
- 44 credits coming from the required courses (ten 4 credit courses, one 2 credit course, two 1 credit courses)
- 16 credits from elective courses.
- 8 credits from capstone thesis.
Minor:
A minor in computer science can be obtained in Theory, Systems or Machine Learning. To qualify for a minor in Computer Sciences, a student must earn a total of 28 credits, out of which:
- Six required courses. (24 credits)
- Four additional credits worth of courses from the following course baskets:
- A required computer science course which is not one of the six courses above.
- A course from the list of computer science electives.
- These credits cannot come from any of the three affiliated Computer Science courses (writing, history, ethics).
Concentration:
To earn a concentration in Computer Science, a student must complete four courses, earning a total of 16 credits, out of which:
- Three are required courses. –Principles of Programming 1, Mathematical Foundations of Computer Science 1, and Design of Analysis and Algorithms.
- One elective, based on your choice of concentration track.
Below are the two concentration tracks offered and the recommended elective courses-
- Concentration 1-
Chose one of the following electives:
Principle Of Programming 2: Functional Programming or, Introduction to Systems or Models of Computation
- Concentration 2 – Machine Learning
Choose the following elective course-
Principle of Machine Learning*.
* This needs an additional prerequisite, either in form of Mathematical Foundations of Computer Science 2 or equivalent listed courses in the mathematics major.
The courses shown currently on the webpage correspond to a major in Computer Science.
Required Courses | Sample Electives |
- Principles of Programming I:
Imperative Computation - Mathematical Foundations of
Computer Science I - Design and Analysis of Algorithms
- Introduction to Computer Systems
- Principles of Programming II:
Functional Programming - Mathematical Foundations of
Computer Science II - Models of Computation
- Algorithms of the Internet
- Principles of Programming
Languages - Security: Privacy, Technology and
Ethics
Required affiliated courses - Toolkit for computer science
(2 credits) - Ethics in Computer Science (1 credit)
- Group Design Practical (1 credit)
| - Principles of Machine Learning I
- Principles of Machine Learning II
- Computational Complexity
- Algorithms
- Logic
- Types, Programs and Proofs
|