Computer technologies and computing concepts have infused virtually every area of academic study. This interdisciplinary major is designed for students who wish to combine the study of computing and computers with another academic discipline. Students can combine the study of computing with traditional academic disciplines, such as physics, chemistry, sociology, or biology, and with emerging fields that involve a substantial computing component, such as bioinformatics, cognitive science, and digital arts.

LEARNING GOALS

The interdisciplinary computing learning goals can be found HERE.

REQUIREMENTS

Students who elect this major will design a course of study in consultation with two faculty advisers, one in computer science and one in the coordinate discipline. Together they must develop a coherent course of study consisting of an appropriate selection of courses in mathematics, computer science, and the coordinate discipline. The specific courses that make up the major will vary according to the particular focus of the major, but all approved majors will have the following general requirements.

General requirements

Computer science core: Three courses:

  • CPSC 115L. Introduction to Computer Science
  • CPSC 203. Mathematical Foundations of Computing
  • CPSC 215L. Data Structures and Algorithms

Computer science electives: Three courses appropriate to the coordinate discipline, to be chosen in consultation with the computer science adviser.

Mathematics: Students coordinating with a discipline in the natural or social sciences must take, at minimum, MATH 131 and one additional course from the following: any mathematics course numbered 107 or above, POLS 242, PSYC 221L and SOCL 201L (however, with economics, MATH 131 and either MATH 207 or ECON 218). Students coordinating with a discipline in the arts and humanities must take MATH 127 or be eligible to enroll in MATH 131. Additional mathematics courses are to be specified in a study plan.

Coordinate courses: Six to seven courses in the coordinate discipline to be chosen in consultation with the coordinate adviser.

Senior exercise: A yearlong senior exercise (CPSC 498-499) consisting of an approved capstone project, plus participation in the computer science senior seminar (CPSC 403-404). The senior project will involve substantial interdisciplinary research, study or development that brings coherence to the students overall course of study. It must be proposed, in consultation with two faculty advisers, one in computer science and one in the coordinate discipline, and approved by the computer science department at the end of the spring term of the junior year. Both CPSC 403 and CPSC 404 fulfill the Writing Intensive Part II requirement.

Admission to the major

To be admitted to the major, students must receive a grade of C- or better in CPSC 203 and CPSC 215L and must submit an approved plan of study in consultation with their advisers.

SAMPLE TRACKS

The interdisciplinary computing major provides a student with the flexibility to design a course of study that combines computing and any other discipline. The following tracks are provided as guiding examples. Unless specified otherwise, the courses listed here do not constitute formal requirements but rather illustrate some of the specific topics that may be included in a course of study.

Artificial intelligence and cognitive science

How can computers and robots be made to behave intelligently? Can the human brain and human intelligence be understood by means of computational models? What are some of the social and ethical implications posed by intelligent machines? Students interested in this area should combine psychology and philosophy courses with appropriate computer science and mathematics courses as follows:

Computer science electives: Appropriate courses may be chosen from: CPSC 219. Theory of Computation, CPSC 310. Software Design, CPSC 352. Artificial Intelligence, and CPSC 375. High-Performance Computing.

Mathematics: Beyond the required courses, students might take one additional course relevant to their interests.

Coordinate courses: Relevant courses in psychology and philosophy should include NESC 365. Cognitive and Social Neuroscience, PSYC 221L. Research Design and Analysis, PSYC 255L. Cognitive Psychology, PSYC 293L. Perception, PSYC 332L. Psychological Assessment, and PHIL 374. Minds and Brains. (See also the psychology department section of this bulletin on see p.~\pageref{PSYC:PSYC}.)

Arts and humanities

Study of computing can be combined with almost any of the traditional humanities and art disciplines. Students interested in history could focus on the history of computing. Philosophers could focus on a wealth of interesting philosophical questions. A student interested in art or art history could focus on the increasing use and importance of computers in the art world. Combining computing with an art or humanities discipline would require eight or nine courses in the coordinate discipline plus an appropriate selection of computing courses:

Computer science electives: Appropriate courses may include: CPSC 110. Computers, Information, and Society, CPSC 310. Software Design, CPSC 352. Artificial Intelligence, and CPSC 372. Database Fundamentals.

Coordinate courses: Eight or nine courses in the particular discipline (e.g., history, language and culture studies).

Bioinformatics

Modern molecular biology has come increasingly to rely on computers for genome sequencing, protein folding, the analysis of cell structures and processes, and for approaching many other biological problems. Students interested in this field of study should combine computer science, mathematics, and biology into a coherent plan of study that might consist of the following:

Computer science electives: Appropriate courses may be chosen from: CPSC 304. Computer Graphics, CPSC 310. Software Design, CPSC 320. Analysis of Algorithms, CPSC 352. Artificial Intelligence, CPSC 372. Database Fundamentals, and CPSC 375. High-Performance Computing.

Mathematics: In addition to MATH 131 and MATH 207, mathematically-oriented students might further take MATH 132 and one or two additional courses in mathematical modeling (MATH 252 or MATH 254).

Coordinate courses: Introductory courses in chemistry (CHEM 111L and CHEM 112L) and biology (BIOL 182L, BIOL 183L and BIOL 224L) plus two or more advanced biology courses such as BIOL 226L. Recombinant DNA Technology, BIOL 227L. Cell Biology, and BIOL 310L. Developmental Biology.

Digital media

Computing capabilities have expanded the expressive potential of humans by providing software-based mechanisms to create, manipulate, present, and catalogue images, sound, and video. Students can explore the inter-relationship between computing and the arts via a course of study combining computing with the study of studio arts, fine arts, or music. A suggested course of study may include:

Computer science electives: Appropriate courses may include: CPSC 110. Visual Computing, CPSC 225. Event Driven Programming, CPSC 310. Software Design, and CPSC 372. Database Fundamentals.

Coordinate courses: Eight or nine courses in studio arts, art history, or music.

Economics and computing

Computing technology and concepts have become increasingly important in all areas of economics and finance, from analysis to security to modeling and visualization. Study in this area might also focus on some of the economic impacts of computing in areas such as online media or intellectual property law. A course of study in this area would draw on:

Computer science electives: Appropriate courses may be chosen from: CPSC 310. Software Design, CPSC 320. Analysis of Algorithms, CPSC 333. Computer Networks, CPSC 340. Software Engineering, CPSC 372. Database Fundamentals, and CPSC 385. Computer Security.

Mathematics: In addition to MATH 131 and either MATH 207 or ECON 218, mathematically-oriented students might further take MATH 132 and one or two additional courses in mathematical modeling (MATH 252 or MATH 254).

Coordinate courses: The economics department requires ECON 101. Basic Economic Principles, ECON 301. Microeconomic Theory, ECON 302. Macroeconomic Theory, ECON 318. Econometrics, ECON 431. Senior Seminar, one additional 200-level economics course, and one additional 300-level economics course. (For more details, see economics on p.~\pageref{ECON:ECON})

Physical sciences and engineering

Study of computing can be combined with any of the traditional physical science and engineering disciplines (e.g., chemistry, physics). There are many exciting scientific applications of computing, including data mining and analysis, data visualization, computational modeling, and other areas. Computational chemists use computers to calculate the structures and properties of molecules. Computational physicists use numerical algorithms to build models and solve problems in quantum mechanics. Students interested in an interdisciplinary course of study in this area would take six or seven courses in the coordinate discipline plus an appropriate selection of courses in mathematics and computing:

Computer science electives: Appropriate courses may include: CPSC 304. Computer Graphics, CPSC 320. Analysis of Algorithms, CPSC 372. Database Fundamentals, and CPSC 375. High-Performance Computing.

Mathematics: In addition to MATH 131 and MATH 132, students might take MATH 207 and one or two additional courses in mathematical modeling (MATH 252 or MATH 254).

Coordinate courses: Six or seven courses in the particular physical science or engineering (e.g., chemistry, physics).

Social sciences

Study of computing can be combined with any of the traditional social science disciplines such as sociology and political science. Study in these areas might focus on some of the social and political implications of computing in modern society, the digital divide, the open source movement, social impacts of digital media. Students interested in an interdisciplinary course of study in a social science would take six or seven courses in the coordinate discipline plus an appropriate selection of courses in mathematics and computing.

Computer science electives: Appropriate courses may be chosen from: CPSC 110. Computers, Information, and Society, CPSC 310. Software Design, CPSC 320. Analysis of Algorithms, CPSC 372. Database Fundamentals, CPSC 375. High-Performance Computing, and CPSC 385. Computer Security.

Coordinate courses: Six or seven courses in the particular social science (e.g., anthropology, political science, sociology).

ADDITIONAL OPPORTUNITIES

AP/IB credit: Students who scored 4 or 5 on either the AP Computer Science Principles or Computer Science A examination will be awarded 1 course credit in place of CPSC 110. Students who scored 5 or higher on the IB Higher Level Computer Science examination will be awarded 1 course credit in place of CPSC 110. The credit may be counted towards the major upon submitting a written request to the department chair.

Study away: Students are strongly urged to consult with their advisers as early as possible in the process of preparing to study away. Students should have completed the core requirement (CPSC 115L, CPSC 203, and CPSC 215L) before studying away. Students must consult with their faculty advisers to identify classes that will be acceptable for transfer credits from their study-away institution. Students must fulfill the yearlong requirement of computer science seminar (CPSC 403-404) and the associated senior project (CPSC 498-499) during their senior year at Trinity.

Honors: Honors are awarded to qualified students by vote of the computer science faculty. Typically, to attain honors in the major, a student must have four grades of A- or better and no grade lower than B in the top eight courses counted toward the major, four of which come from computer science and mathematics courses numbered 200 or higher and four of which come from courses in the coordinate department, and complete the CPSC 403-404 and CPSC 498-499 sequences with a grade of A- or better.