Go to bottom of document
Go to: Program Requirements
This new computer science concentration program is intended to prepare students
for either graduate work or employment in computer science by offering both the
degree of Bachelor of Arts and the degree of Bachelor of Science. Students
receiving the B.A. will have sufficient breadth and depth for either graduate
study or immediate employment in computer science. Recipients of the B.S. will,
in addition, have acquired substantial depth and breadth in a field outside of
computer science through the completion of an approved minor program.
A concentration in mathematics with a specialization in computer science
continues to meet the needs of mathematics majors who also have a strong
interest in computing. The description of that program may be found in the
Mathematics section of this catalog.
The requirements for a degree in computer science express the educational
intent of the Department of Computer Science; they are designed around the
concept of the cumulative character of an education based on computer science,
mathematics, and the other sciences, as well as the interdisciplinary nature of
a liberal arts education.
Requirements for the bachelor's degree look to the advancement of students'
general education in computer science and their knowledge of its relation to
the other sciences (Bachelor of Science) or to the other arts (Bachelor of
Arts). Descriptions of the detailed requirements that give meaning to these
educational intentions follow. Students should understand that any particular
degree requirement can be modified if persuasive reasons are presented to the
departmental counselor.
Placement. The Department of Computer Science does not offer credit or
placement for Advanced Placement tests in computer science.
Both computer science baccalaureate degree programs require fulfillment of the
College's general education requirements. Of these, the Common Core
mathematical sciences requirement must be satisfied by completing an approved
two-quarter calculus sequence. The Common Core physical sciences requirement
must be satisfied by completing an approved one-year sequence in either
chemistry or physics.
NOTE: It is the policy of the Division of Physical Sciences that students
concentrating in computer science may not use physical sciences placement
credit to fulfill the general education requirement.
Students taking a bachelor's degree in computer science should note that by
judicious employment of courses from another field for extradepartmental
requirements or for electives, a minor field can be developed which is often in
itself a solid basis for graduate or professional work in that field. Some
possible disciplines where this collateral minor benefit applies include
biology, biophysics, chemistry, education, geophysical sciences, history,
linguistics, mathematics, philosophy, political science, psychology, physics,
sociology, statistics, and theoretical economics.
Degree Programs in Computer Science. Candidates for the B.A. and B.S. in
computer science take a third quarter of calculus, as well as nine courses in
computer science taken from an approved program. B.A. students also take three
courses outside computer science, at least two of which must form an approved
sequence. B.S. students add a course in linear algebra to the nine computer
science courses required of B.A. concentrators. B.S. students take two
additional courses outside of computer science that form an approved sequence,
as well as a three-course minor in a related field outside of computer
science.
Approved Programs. The notion of "approval" in the concentration program
requirements allows timely response to change in the course offerings of the
various departments. The computer science faculty is responsible for approval
of specific courses and sequences. An initial list of approved course sequences
follows.
Approved Mathematical Sciences Courses. The following sequences are
approved for the mathematical sciences component of the Common Core, as well as
the third quarter of calculus required for the concentration program:
Math 131-132-133
Go to top of document
Approved Physical Sciences Courses
Chem 111-112-113
Approved Linear Algebra Courses
Math 250
Approved Course Sequences from Outside Computer Science
Astron 213-214
Approved Computer Science Concentration Program
At present, there is a single approved program. This is a general program in
computer science and is used for either the B.A. or the B.S. degree.
Introductory Programming(2 Courses Required)
ComSci 105 and 116
Advanced Programming (1 Course Required)
ComSci 117
Programming Languages and Systems (2 Courses Required)
ComSci 221-222
Algorithms and Theory (2 Courses Required)
ComSci 270 and ComSci 280
Artificial Intelligence (2 Courses Required)
ComSci 250-251
Go to top of document Approved Minor Programs
Minor programs for the B.S. degree must be approved by the departmental
counselor.
Summary of Requirements:
Concentration 1 third quarter of a calculus sequence
B.A. B.S. Grading. Subject to College and divisional regulations and with the consent
of the instructor, all students, except concentrators in computer science,
may register for regular letter grades, P/N grades, or P/F
grades in any course in computer science. A Pass grade is given
only for work of C- quality or higher.
Concentrators in computer science may take any 200-level computer science
course elected beyond concentration requirements for a grade of P. A
grade of C- or better must be earned in each course used to fulfill
concentration program requirements. Courses taken to fulfill concentration
requirements in computer science must be taken for a quality grade.
Incompletes are typically given in the Department of Computer Science only to
those students who have done at least 60 percent of the course's work at
passing quality and who are unable to complete all course work by the end of
the quarter. Other restrictions on Incompletes are the province of individual
instructors, many of whom do not permit Incompletes. Students must make
arrangements in advance with instructors and obtain their written consent to
receive Incompletes.
Honors. Students may earn a B.A. or B.S. degree with honors by attaining a
grade of B or better in all courses in the concentration and by
attaining a grade of B or better in a three-course sequence (taken as a
minor or as electives) consisting of graduate computer science courses
(300-level and above).
Students may also earn a B.A. or B.S. degree with honors by attaining the same
minimum B grade in all courses in the concentration and by writing a
successful bachelor's thesis under the auspices of Computer Science 298.
This thesis must be based on an approved research project that is directed by a
faculty member and approved by the departmental counselor.
Go to top of document
Courses in Specific Areas of Computer Science. Students interested in
artificial intelligence (AI) should take Computer Science 250 and 251 in
addition to 115-116-117. Graduate-level AI courses will also be offered during
1995-96, and are open to College students. These courses are numbered Computer
Science 350-359. Consult the course listings for details. Students interested
in advanced programming, that is, systems, should take Computer Science
115-116-117 and Computer Science 221-222. Time permitting, they should also
take Computer Science 230 and 270 and such courses in advanced programming
topics that may be offered. Students interested in theoretical computer
science, that is, the mathematics of computation, should complete basic courses
in mathematics and then take Computer Science 270 as well as 280 and 281.
(Computer Science 115-116-117 is also recommended.) Once students have
completed Computer Science 270 and 281, they will be qualified for most of the
advanced topics courses offered at the 300-level and above.
The department also offers a number of special-interest courses that are
detailed in the course descriptions. Other new courses are being added to the
schedule on a regular basis, and students should contact the departmental
counselor for more information.
Preparation for Graduate Study in Computer Science. Students interested in
continuing their studies beyond the undergraduate level should take as many
computer science courses as possible as well as concentrating in computer
science. The most important ones are Computer Science 115-116-117, 222, 230,
270, and 281. Also important are Computer Science 221 and 280. Donald Crabb,
the departmental counselor, and Lance Fortnow, chairman of the graduate
committee, are available to discuss options for graduate study with students.
Faculty
DONALD E. CRABB, Lecturer, Department of Computer Science and the College;
Associate Director, Undergraduate Studies
TODD DUPONT, Professor, Departments of Computer Science and Mathematics and the
College; Chairman, Department of Computer Science
R. JAMES FIRBY, Assistant Professor, Department of Computer Science and the
College
LANCE FORTNOW, Assistant Professor, Department of Computer Science and the
College
TERRY GAASTERLAND, Assistant Professor, Department of Computer Science
KRISTIAN J. HAMMOND, Associate Professor, Department of Computer Science and
the College
STUART A. KURTZ, Associate Professor, Department of Computer Science and the
College
CHARLES MARTIN, Assistant Professor, Department of Computer Science
KETAN MULMULEY, Associate Professor, Department of Computer Science and the
College
MICHAEL J. O'DONNELL, Professor, Department of Computer Science and the
College
JANOS SIMON, Professor, Department of Computer Science
ROBERT I. SOARE, Professor, Departments of Computer Science and Mathematics and
the College
MICHAEL SWAIN, Assistant Professor, Department of Computer Science and the
College
Go to middle of document
Go to: Recommended Sequences in Computer Science
Go to: Faculty
Computer Science
Departmental Counselor: Donald E. Crabb, Ry 161B, 702-7173
Director of Undergraduate Studies: Stuart A. Kurtz, Ry 162B, 702-3493
Associate Director of Undergraduate Studies: Donald E. Crabb, Ry 161B, 702-7173
Departmental and Concentration Secretary: Ry 152, 702-6614
Program of Study
The Department of Computer Science was founded in 1983 and began offering
advanced degrees (M.S. and Ph.D.) soon after its inception. On February 21,
1995, the department began to offer a concentration program in computer science
to undergraduates.
Program Requirements
Undergraduate Programs. Two bachelor's degrees are available in the Department
of Computer Science: the B.A. in computer science and the B.S. in computer
science. Additionally, the Department of Mathematics administers a B.S. in
mathematics with specialization in computer science. More information on this
degree program can be found in the listings for the Department of Mathematics
elsewhere in this catalog.
Math 151-152-153
Math 161-162-163
Go to bottom of document
Chem 121-122-123
Phys 121-122-123
Phys 131-132-133
Phys 141-142-143
Math 255
Math 258
BioSci 196-197
Chem 111-112, or 121-122, if chemistry is not used to satisfy the physical
sciences requirement.
Chem 201-202, 217-218, or 220-221
Econ 200-203, 210-211
GeoSci 231-232
Math 203-205, 207-209, 254-256, or 257-259
Philos 235-285
Phys 121-122, 131-132, or 141-142, if physics is not used to satisfy the
physical sciences requirement.
Phys 225-227, or 234-235
Stat 220-222, 220-224, or 244-245
ComSci 115-116 (strongly recommended)
ComSci 217
ComSci 220
ComSci 221 and 230
ComSci 222 and ComSci 230
ComSci 270 and ComSci 281
Go to bottom of documentGeneral Chem 111-112-113 or 121-122-123 or
Education Phys 121-122-123 or higher
Math 131-132, 151-152, or 161-162
9 courses in computer science, drawn from the approved program
plus the following requirements:
3 courses from outside 1 course in linear algebra computer science, at least two of which form an approved sequenc
2 courses from outside
computer science forming
an approved sequence
3 courses in an approved
minor program in a related field
outside computer science
_____ _____
13 (total) 16 (total)
Go to bottom of document
Recommended Sequences in Computer Science
Introductory Sequences. The kinds of computer science courses
appropriate for undergraduates will vary according to each student's interests.
Students interested in a general programming background are encouraged to take
Computer Science 105 and 116. Students in the humanities (or others with a
humanistic background) and social sciences should take Computer Science 110,
then Computer Science 111. The following courses provide a two-quarter
introduction to computer science, stressing its connections to other liberal
arts: Computer Science 110-111: Computer Programming as a Liberal Art I and II.
Students with a strong mathematics background should consider Computer Science
115-116-117, an introduction to computer science using the Scheme and C++
languages.
LASZLO BABAI, Professor, Departments of Computer Science and Mathematics