You're logged in as |

Mathematics-Computer Science

Students may opt to pursue an interdisciplinary Bachelor of Science degree in Math-Computer Science, a concentration administered cooperatively between the mathematics and computer science departments. Course requirements include math- and systems-oriented computer science courses, as well as computational courses in applied math. Students must identify a series of electives that cohere around a common theme. As with other concentrations offered by the Computer Science department, students have the option to pursue the professional track of the ScB program in Mathematics-Computer Science.

Requirements for the Standard Track of the Sc.B. degree.

Prerequisites
Three semesters of Calculus to the level of MATH 0180, MATH 0200, or MATH 03503
MATH 0520Linear Algebra1
or MATH 0540 Linear Algebra With Theory
or CSCI 0530 Coding the Matrix: An Introduction to Linear Algebra for Computer Science
Core Courses
MATH 1530Abstract Algebra1
Select one of the following series:2
Series A
Introduction to Object-Oriented Programming and Computer Science
and Program Design with Data Structures and Algorithms
Series B
Computer Science: An Integrated Introduction
and Program Design with Data Structures and Algorithms
Series C
Accelerated Introduction to Computer Science (and an additional CS course not otherwise used to satisfy a concentration requirement; a Foundations course, or a 1000-level CS course)
Series D 1
Computing Foundations: Data
and Computing Foundations: Program Organization
and Program Design with Data Structures and Algorithms
Foundations Courses: Two courses, touching two different Foundations areas:2
a. Algorithms/Theory Foundations
CSCI 0500
Data Structures, Algorithms, and Intractability: An Introduction
Theory of Computation
Probabilistic Methods in Computer Science
Design and Analysis of Algorithms
b. AI/Machine Learning/Data Science Foundations
Artificial Intelligence
Machine Learning
Computer Vision
Computational Linguistics
Deep Learning
Deep Learning in Genomics
Introduction to Robotics
c. Systems Foundations
Fundamentals of Computer Systems
Introduction to Software Engineering
Introduction to Computer Systems
Three 1000-level Mathematics courses3
Three advanced courses in Computer Science which cannot include arts/policy/humanities courses. One of these can be an addtional Foundations course. 2,33
Three additional courses different from any of the above chosen from Mathematics, Computer Science, Applied Mathematics, or related areas 43
A capstone course in Computer Science or Mathematics 51
Total Credits19
1

Students wishing to go directly from CSCI 0111 to CSCI 0200 (without CSCI 0112) will need to successfully complete additional exercises to receive an instructor override code for CSCI 0200. In 2020-21, these exercises will be offered within CSCI 0111. Students from prior CSCI 0111 offerings should contact the current CSCI 0111 instructor to arrange to do this work.

2

These must be CSCI courses at the 1000-level or higher.  Two of these courses and the intermediate courses must satisfy one of the CS pathways (https://cs.brown.edu/degrees/undergrad/concentrating-in-cs/concentration-requirements-2020/pathways-for-undergraduate-and-masters-students/. At most one arts, humanities, or social science CS course can be used for concentration credit (currently CSCI 1250, 1280, 1360, 1370, 1800, 1805, 1870, 1952B, 1952X, 2002, 2952S).

3

Note: CSCI 1010 may be used either as a math-oriented intermediate course or as an advanced course. CSCI 1010 was formerly known as CSCI 510: they are the same course and hence only one may be taken for credit. CSCI 1450 was formerly known as CSCI 450: they are the same course and hence only one may be taken for credit. Applied Math 1650 or 1655 may be used in place of CSCI 1450 in CS pathway requirements. However, concentration credit will be given for only one of Applied Math 1650, 1655, and CSCI 1450.

4

 These must be approved by a concentration advisor.

5

A one-semester course, taken in the student's last undergraduate year, in which the student (or group of students) use a significant portion of their undergraduate education, broadly interpreted, in studying some current topic in depth, to produce a culminating artifact such as a paper or software project.  The title and abstract of the artifact, along with the student's and faculty-sponsor's names, will be placed in the CS website. The inclusion of a relevant image or system diagram is strongly encouraged. The complete text of the best artifacts of each class will be featured on the CS website. A senior thesis, which involves two semesters of work, may count as a capstone 

Course-based capstones are currently only available through CS. Approved capstone courses and instructions may be found here: https://cs.brown.edu/degrees/undergrad/concentrating-in-cs/concentration-requirements-2020/capstone/


Requirements for the Professional Track of the Sc.B. degree.

The requirements for the professional track include all those of the standard track, as well as the following:

Students must complete full-time professional experiences doing work that is related to their concentration programs, totaling 2-6 months, whereby each internship must be at least one month in duration in cases where students choose to do more than one internship experience. Such work is normally done at a company, but may also be at a university under the supervision of a faculty member. Internships that take place between the end of the fall and the start of the spring semesters cannot be used to fulfill this requirement.

On completion of each professional experience, the student must write and upload to ASK a reflective essay about the experience addressing the following prompts, to be approved by the student's concentration advisor:

  • Which courses were put to use in your summer's work? Which topics, in particular, were important?
  • In retrospect, which courses should you have taken before embarking on your summer experience? What are the topics from these courses that would have helped you over the summer if you had been more familiar with them?
  • Are there topics you should have been familiar with in preparation for your summer experience, but are not taught at Brown? What are these topics?
  • What did you learn from the experience that probably could not have been picked up from course work?
  • Is the sort of work you did over the summer something you would like to continue doing once you graduate? Explain.
  • Would you recommend your summer experience to other Brown students? Explain.
  •