Exceptional students with an interest in the highly theoretical nexus of math and computer science will find challenging opportunities from the BS in Math and Computer Science degree.
Mathematics is a key element to the theory and practice of computer science and technology:
- Number theory forms the basis for encryption algorithms for messages sent over the Internet.
- Facts from projective geometry and multivariable calculus underlie the computer algorithms that control computer animation.
- Properties of abstract groups are instrumental in correcting transmission errors that occur when information is sent from one computer to another.
- Graph theory and combinatorics are used to create algorithms for Internet search engines and analyze Internet routing protocols.
This joint major program is intended to appeal to academically talented students. It is designed to prepare them for graduate study in various areas of computer science such as theoretical computer science, graphics, data analysis, artificial intelligence, and computational methods and in areas in applied mathematics such as numerical analysis or discrete mathematics.
The program is also designed to prepare students to compete for the more theoretical complex jobs found in computer software development.
What students learn from the program:
- theory of computation
- computational mathematics
- artificial intelligence
- data analysis
- graphics
- computer vision
It is highly recommended that students concentrate on one or two areas for their advanced classes to achieve depth, but they are not required to do so. Faculty advisors are available to assist students in their selection.
The BS in Math and Computer Science consists of five parts:
- The DePaul Liberal Studies program (19 courses, not including the capstone course).
Click here to view the CDM courses that qualify for liberal studies credit.
The courses in the Core build the necessary foundation in discrete and continuous mathematics, problem solving, algorithmic thinking and programming. The Advanced Classes allow the student to explore the differenct areas of mathematics and computer science in more depth.
CORE CLASSES
(14 courses)
Mathematical Foundations
MAT 140 Discrete Mathematics I
MAT 141 Discrete Mathematics II
MAT 260 Multivariable Calculus I
MAT 262 Linear Algebra
In addition, students must complete one of the following three-course sequences:
MAT 150 Calculus I
AND MAT 151 Calculus II
AND MAT 152 Calculus III
or
MAT 160 Calculus for Mathematics and Science Majors I
AND MAT 161 Calculus for Mathematics and Science Majors II
AND MAT 162 Calculus for Mathematics and Science Majors III
or
MAT 170 Calculus I with Scientific Applications
AND MAT 171 Calculus II with Scientific Applications
AND MAT 172 Calculus III with Differential Equations
(MAT 147, MAT 148 and MAT 149 may also be used to satisfy this requirement)
Problem Solving, algorithms, and structured programming
CSC 241 Introduction to Computer Science I
CSC 242 Introduction to Computer Science II
CSC 321 Design and Analysis of Algorithms
CSC 383 Data Structures and Algorithms in Java
or CSC 393 Data Structures in C++
Object-Oriented ProgrammingCSC 224 Java for Programmers Self Placement Test Available
or CSC 309 Object-Oriented Programming in C++
Computer Systems
CSC 373 Computer Systems I
CSC 374 Computer Systems II
ADVANCED CLASSES (7 Courses)
Students can choose advanced computer science and mathematics classes from different areas including theory of computation, computational mathematics, artificial intelligence, data analysis, graphics, and computer vision. It is recommended that students concentrate on one or two areas for their advanced classes to achieve depth, but they are not required to do so. Students are strongly encouraged to discuss course selection with an advisor.
Students choose seven courses from the following area lists. At least three of the courses have to be in computer science (or graphics) and at least three in mathematics. Courses not on this list need to be approved by an advisor. In particular, students may wish to arrange with a professor to take an independent study or a research experience (MAT 399 or CSC 399 or IT 300) in order to explore a subject more deeply than is possible in a scheduled course.
Theory of Computation Area
The courses in the theory area explore the mathematical and logical foundations of computer science.
MAT 302 Combinatorics
MAT 303 Theory of Numbers
MAT 351 Probability and Statistics I
MAT 310 Abstract Algebra I
MAT 311 Abstract Algebra II
MAT 312 Abstract Algebra III
MAT 335 Real Analysis I
MAT 372 Logic and Set Theory
CSC 235 Problem Solving
CSC 327 Problem Solving for Contests
CSC 333 Cryptology
CSC 344 Automata Theory and Formal Grammars
CSC 347 Concepts of Programming Languages
CSC 348 Introduction to Compiler Design
CSC 387 Operations Research I: Linear Programming
or MAT 387 Operations Research I:linear Programming
CSC 389 Theory of Computation
CSC 358 Symbolic Programming
Computational Methods Area
The computational methods area investigates quantitative and computational methods in computer science.
CSC 331 Scientific Computing
CSC 385 Numerical Analysis
or MAT 385 Numerical Analysis I
CSC 386 Advanced Numerical Analysis
or MAT 386 Numerical Analysis II
MAT 330 Methods of Computation and Theoretical Physics I
MAT 331 Methods of Computation and Theoretical Physics II
MAT 384 Mathematical Modeling
Artificial Intelligence Area
For students with an interest in the computational relations between syntax and semantics.
CSC 380 Foundations of Artificial Intelligence
CSC 357 Expert Systems
CSC 358 Symbolic Programming
Data Analysis Area
For students who are interested in statistical and computational Analysis of data. Many of the courses in this area require the student to take MAT 351-353.
CSC 328 Data Analysis for Experimenters
CSC 334 Advanced Data Analysis
or MAT 354 Multivariate Statistics
CSC 332 Simulation and Modeling
or MAT 359 Simulation Models and the Monte Carlo Method
CSC 367 Introduction to Data Mining
MAT 261 Multivariable Calculus II
MAT 351 Probability and Statistics I
MAT 352 Probability and Statistics II
MAT 353 Probability and Statistics III
MAT 355 Stochastic Processes
MAT 357 Nonparametric Statistics
MAT 370 Advanced Linear Algebra
MAT 356 Applied Regression Analysis
MAT 358 Applied Time Series and Forecasting
Graphics Area
The graphics courses are intended for students who want to study the technical and mathematical foundations of computer graphics and animation.
MAT 337 Complex Analysis
MAT 261 Multivariable Calculus II
MAT 370 Advanced Linear Algebra
CSC 385 Numerical Analysis
or MAT 385 Numerical Analysis I
GPH 211 Perceptual Principles for Digital Environments I
GPH 212 Perceptual Principles for Digital Environments II
GPH 325 Survey of Computer Graphics
GPH 329 Computer Graphics Development II
GPH 336 Smooth Surface Modeling for Graphics and Animation
GPH 372 Principles of Computer Animation
Computer Vision Area
Computer vision studies the mathematical and algorithmic underpinnings of image analysis and image processing.
MAT 261 Multivariable Calculus II
MAT 335 Real Analysis I
MAT 381 Fourier Analysis and Special Functions
MAT 370 Advanced Linear Algebra
MAT 384 Mathematical Modeling
CSC 381 Introduction to Digital Image Processing
CSC 382 Applied Image Analysis
CSC 384 Introduction to Computer Vision
CAPSTONE COURSES (1 course)
Students can choose from several capstone courses, depending on their interest and coursework:
CSC 378 Software Projects for Community Clients
CSC 394 Software Projects
GPH 395 Computer Graphics Senior Project
MAT 398 Senior Capstone Seminar
Students need to make sure that they cover all prerequisites of their respective capstone (possibly using open electives).
OPEN ELECTIVES (7 courses)
Students choose seven (7) open electives. Open Electives may be taken from any department or program. These are the only courses that may be taken under the pass/fail option (see the undergraduate Bulletin for details). If you wish to pursue a minor, most minor field courses will be credited as open electives.
Note: Grades for all courses in the students major (i.e. non-Liberal Studies and non-Open Elective) must be 'C' or better. Grades of 'C-' may be accepted provided the overall grade point average in the major is 2.0 or better.