lComputer Science and Engineering _CSE_

Document Sample
lComputer Science and Engineering _CSE_ Powered By Docstoc
					                                      Yannis Papakonstantinou, Ph.D.                   Computer Engineering, and the B.S. degree in
   Computer Science

                                      Dean M. Tullsen, Ph.D.                           Computer Science with a Specialization in
   and Engineering                    M. Amin Vahdat, Ph.D.
                                      Geoffrey Voelker, Ph.D.
                                                                                       Bioinformatics. The B.A. degree in Computer
                                                                                       Science is a flexible program that allows com-
   (CSE)                              Assistant Professors                             prehensive studies beyond Computer Science
                                                                                       and Engineering.
                                      Vineet Bafna, Ph.D.
                                                                                          All CSE programs of study provide a broad
OFFICES:                              Serge J. Belongie, Ph.D.
                                                                                       and rigorous curriculum and are designed to
Undergraduate Affairs Room 1200D      Sanjoy Dasgupta, Ph.D.
                                                                                       provide students with the strong technical
Graduate Affairs Room 1200D           Alin Deutsch, Ph.D.
                                                                                       education necessary for placement in the com-
Engineering Building Unit 3B          Eleazar Eskin, Ph.D. (In-Residence)
                                                                                       petitive high-tech job market as well as for
Warren College                        Ranjit Jhala, Ph.D.
                                                                                       advanced studies in graduate school.               Ingolf Krueger, Ph.D. (In-Residence)
                                      Sorin Lerner, Ph.D.                              CSE offers courses in the following areas:
Professors                            Tajana S. Rosing, Ph.D.                          • Theory
Donald W. Anderson, Ph.D., Emeritus   Stefan Savage, Ph.D.                             • Artificial intelligence
Scott B. Baden, Ph.D.                 Alex M. Snoeren, Ph.D.
                                                                                       • Software
Mihir Bellare, Ph.D.                  Michael Taylor, Ph.D.
Francine D. Berman, Ph.D.             Matthias Zwicker, Ph.D.                          • Hardware
Walter A. Burkhard, Ph.D.             Adjunct Faculty                                  • Computer security and cryptography
Bradley G. Calder, Ph.D.                                                               • Computer vision and graphics
                                      Samuel R. Buss, Ph.D.
J. Lawrence Carter, Ph.D., Emeritus
                                      Walter H. Ku, Ph.D.                              • Databases and XML
Chung-Kuan Cheng, Ph.D.
                                      Alon Orlitsky, Ph.D.                             • Systems and networking
Andrew Chien, Ph.D.
                                      George Polyzos, Ph.D.
Garrison W. Cottrell, Ph.D.                                                            • Bioinformatics
                                      Jeffrey B. Remmel, Ph.D.
Charles P. Elkan, Ph.D.                                                                • Software engineering
                                      J. Benjamin Rosen, Ph.D.
Jeanne Ferrante, Ph.D.
                                      Terrence J. Sejnowski, Ph.D.                        In addition, CSE seniors can participate in
Yoav Freund, Ph.D.
                                      Allan Snavely, Ph.D.                             challenging project-courses in: software sys-
Joseph A. Goguen, Ph.D.
                                      Research Faculty                                 tems, where teams create multiplayer games;
Fan Chung Graham, Ph.D.
                                      Philip Papadopoulos, Ph.D., Associate Research   Internet systems, where students create sophis-
Ronald L. Graham, Ph.D.
                                        Professor                                      ticated Web transaction systems; and mobile
William G. Griswold, Ph.D.
                                                                                       wireless computing, where teams create appli-
Rajesh Gupta, Ph.D.
                                      Leturers with Security of Employment             cations for handheld devices.
William E. Howden, Ph.D.
                                      Paul Kube, Ph.D.                                    The CSE department supports and encour-
T. C. Hu, Ph.D.
                                      Elizabeth Simon, Ph.D.                           ages students to explore opportunities outside
Russell Impagliazzo, Ph.D.
                                                                                       the classroom. Students assist in many CSE
Ramesh Jain, Ph.D., Emeritus
                                      Continuing Lecturers                             courses as paid lab tutors and readers, getting
Andrew B. Kahng, Ph.D.
                                      Gary Gillespie, Ph.D.                            an excellent opportunity to interact more
Sidney Karin, Ph.D. (In-Residence)
                                      Susan Marx, Ph.D.                                closely with faculty and other students. In
David Kriegman, Ph.D.
                                      Richard Ord, M.S.                                addition, CSE students participate in research
Keith Marzullo, Ph.D., Chair
                                                                                       projects with graduate students and faculty in
Alex Orailoglu, Ph.D.                 Academic Coordinator                             CSE, the San Diego Supercomputer Center, and
Joseph Pasquale, Ph.D.
                                      Paul Kube, Ph.D., Lecturer with Security         the California Institute for Telecommunications
Ramamohan Paturi, Ph.D.
                                        of Employment                                  and Information Technology (Calit2). Under the
Pavel Pevzner, Ph.D.
                                                                                       direction of our faculty, CSE students may also
Walter J. Savitch, Ph.D., Emeritus
                                                                                       earn credit by participating in independent
Larry L. Smarr, Ph.D.                 The Undergraduate Program                        research projects. The CSE department has
George Varghese, Ph.D.
                                                                                       strong ties with local and national high-tech
Victor D. Vianu, Ph.D.
                                      DEGREE AND PROGRAM OPTIONS                       industry, where students can earn course credit
S. Gill Williamson, Ph.D., Emeritus
                                         The Department of Computer Science and        while applying their academic knowledge
Associate Professors                                                                   toward exciting commercial technologies in
                                      Engineering (CSE) offers four degree programs:
Henrik Wann Jensen, Ph.D.                                                              paid internships.
                                      the B.S. degree in Computer Science, the B.A.
Daniele Micciancio, Ph.D.
                                      degree in Computer Science, the B.S. degree in
B.S. Computer Science Program                        Introduction to Electrical Engineering: ECE                     SENIOR YEAR
                                                     53A-B; eight units. ECE 53A-B are courses that                  CSE 131A           CSE 131B          CSE Tech. Elec.
   The lower-division B.S. computer science pro-                                                                     CSE Tech. Elec.    Tech. Elec.       Tech. Elec.
                                                     give a comprehensive introduction to electrical
gram is designed to provide a strong foundation                                                                      GE                 GE                GE
in mathematics, physics, electrical engineering,
programming methodology and skills, and com-         Probability and Statistics: Math.183; four units.               B.S. Computer
puter organization. Upper-division core courses      Science/Mathematics Elective: Students are                      Engineering Program
deal with the theory and design of algorithms,       required to take one of the following four-unit
hardware, and software. Students can gain addi-                                                                         (Curriculum is the same in both the CSE and
                                                     science/mathematics courses: Phys. 2D, Math.
tional breadth and/or depth in computer science                                                                      ECE departments.)
                                                     20E, Chem. 6A, BILD 1, 10, 12, 14, 30.
and engineering by an appropriate selection of                                                                          The B.S. computer engineering program is
technical electives.                                 2. UPPER-DIVISION REQUIREMENTS                                  jointly administered by the Departments of
   Students should have sufficient background            All B.S. computer science students are                      Computer Science and Engineering and Electrical
in high school mathematics so that they can take     required to take CSE 100 or Math. 176, CSE 101                  and Computer Engineering. Students wishing to
freshman calculus in their first quarter. Courses    or Math. 188, CSE 105 or Math. 166, CSE 120, 130,               take the computer engineering program must be
in high school physics and computer program-         131A-B, 140, 140L, 141 and 141L; forty units.                   admitted to one of the departments.
ming, although helpful, are not required for             Students are expected to complete almost                       The lower-division computer engineering pro-
admission to the program.                            all of these courses by the end of their junior                 gram is designed to provide a strong foundation
   The department requires a total of 135 units      year. If students want to accelerate their pro-                 in mathematics, physics, electrical engineering,
for the B.S. computer science program (not           gram, they should consider taking CSE 100 or                    programming methodology and skills, and com-
including the general-education requirements).       Math. 176, CSE 105, and/or CSE 140 and 140L                     puter organization. Upper-division core courses
There are three varieties of requirements: lower-    in the sophomore year.                                          deal with the theory and design of algorithms,
division, upper-division, and technical electives.                                                                   hardware and software, as well as electronic sys-
                                                     3. TECHNICAL ELECTIVES                                          tems. Students can gain additional breadth and/
1. LOWER-DIVISION REQUIREMENTS                                                                                       or depth in computer science and engineering
                                                        B.S. computer science students are required
Students are expected to complete the following      to take six technical electives for a total of                  by an appropriate selection of technical electives.
seventy units by the end of their sophomore year.    twenty-four units. Four electives must be com-                     Students should have sufficient background
                                                     puter science and engineering upper-division                    in high school mathematics so that they can take
Computer Science and Engineering: CSE 8B
                                                     or graduate courses.                                            freshman calculus in their first quarter. Courses
or 11, 12, 20 or Math. 15A, CSE 21 or Math. 15B,
                                                        The remaining two technical electives can                    in high school physics and computer program-
CSE 30, and CSE 91; twenty-one units.
                                                     be chosen from the wider set of courses that                    ming, although helpful, are not required for
   Note: Students without any programming                                                                            admission to the program.
                                                     includes computer science and engineering upper-
experience are advised to take CSE 8A, CSE 8AL,                                                                         B.S. computer engineering program requires
                                                     division courses, graduate courses, and other elec-
and then CSE 8B, instead of CSE 11. CSE 11 is a                                                                      a total of 147 units (not including the general-
                                                     tives as listed under the section titled Electives.
faster paced version of CSE 8A, CSE 8AL, and CSE                                                                     education requirements).There are three varieties
                                                     Other restrictions in the selection of technical elec-
8B, and requires experience in programming with                                                                      of requirements: lower-division, upper-division,
                                                     tives are also given in the section Electives.
a compiled language.                                                                                                 and technical electives.
                                                     4. B.S. COMPUTER SCIENCE, SAMPLE
Mathematics: Math. 20A-B-C-D and 20F;
                                                     PROGRAM                                                         1. LOWER-DIVISION REQUIREMENTS
twenty units.
                                                     FALL                   WINTER                 SPRING               Students are expected to complete the fol-
Physics: Phys. 2A-B-C; 12 units. Math. 20A is a
                                                     FRESHMAN YEAR                                                   lowing seventy units by the end of their sopho-
prerequisite for Phys. 2A. Students whose per-
                                                     CSE 8A, CSE 8AL,       CSE 12                 CSE 20 or         more year.
formance on the Department of Mathematics
                                                      or CSE 11             Math. 20B               Math. 15A
placement test permits them to start with Math.      Math. 20A              Phys. 2A               Math. 20C
                                                                                                                     Computer Science and Engineering: CSE 8B or
20B or a higher course may take Phys. 2A in the      GE                     GE                     Phys. 2B          11, 12, 20 or Math. 15A, CSE 21 or Math. 15B, CSE
fall quarter of the freshman year; all others will   CSE 91                                        GE                30, and CSE 91; twenty-one units.
take Phys. 2A in the winter quarter of the fresh-    SOPHOMORE YEAR                                                     Note: Students without any programming
man year. Students who received high grades          CSE 21 or Math. 15B    Sci/Math. Elec.        CSE 30
                                                     Math. 20D              Math. 20F              Math. 183
                                                                                                                     experience are advised to take CSE 8A, CSE 8AL,
in both calculus and Physics in high school may      GE                     ECE 53A                Phys. 2BL or      and then CSE 8B, instead of CSE 11. CSE 11 is a
substitute the major’s sequence, Phys. 4A-B-C        GE                     Phys. 2C                2CL or 2DL       faster paced version of CSE 8A, CSE 8AL, and CSE
for Phys. 2A-B-C.                                                                                  ECE 53B           8B, and requires experience in programming with
Physics Lab: Phys. 2BL or 2CL or 2DL; two units.     JUNIOR YEAR                                                     a compiled language.
                                                     CSE 100 or Math. 176   CSE 101 or Math. 188   CSE 120
The lab course should be taken concurrently          CSE 140                CSE 141                CSE 130           Mathematics: Math. 20A-B-C-D and 20F;
with the Phys. 2 or Phys. 4 sequence.                CSE 140L               CSE 141L               CSE Tech. Elec.   twenty units.
                                                     CSE 105 or Math. 166   CSE Tech. Elec.        GE
                                                     GE                     GE
Physics: Phys. 2A-B-C-D; sixteen units. Math. 20A      puter engineering upper-division or graduate                    engineering requirements comprise of 152 units
is a prerequisite for Phys. 2A. Students whose         course, or any other course listed under the sec-               to be taken from the divisions of physical sci-
performance on the Department of Mathematics           tion titled Electives. Other restrictions in the                ences, biology, and engineering.
placement test permits them to start with Math.        selection of technical electives are also given
                                                                                                                       1. LOWER-DIVISION REQUIREMENTS
20B or a higher course may take Phys. 2A in the        in the section Electives.
fall quarter of the freshman year; all others will                                                                     Lower-division requirements, 64 units: Students
                                                       4. B.S. COMPUTER ENGINEERING,                                   are expected to complete all lower-division
take Phys. 2A in the winter quarter of the fresh-
                                                       SAMPLE PROGRAM                                                  requirements by the end of their sophomore
man year. Students who received high grades in
both calculus and physics in high school may           FALL                  WINTER                SPRING              year.
substitute the major’s sequence, Phys. 4A-B-C-D        FRESHMAN YEAR                                                    1. Math. 20A, 20B, 20C, 20F, (16 units)
for Phys. 2A-B-C-D.                                    CSE 8A, CSE 8AL,       CSE 12                CSE 20
                                                        or CSE 11             Math. 20B              or Math. 15A
                                                                                                                        2. Chemistry 6A, 6B, 6C, and one lab (15 units)
Physics Lab: Phys. 2BL or 2CL or 2DL; two units.       Math. 20A              Phys. 2A              Math. 20C           3. BILD 1, BILD 2, and BILD 94 (9 units)
The lab courses should be taken concurrently           GE                     GE                    Phys. 2B
with the Phys. 2 or Phys. 4 sequence.                  CSE 91                                       GE                  4. CSE 11, CSE 12, and CSE 21 or Math. 15B
                                                       SOPHOMORE YEAR                                                      (12 units)
Introduction to Electrical Engineering: ECE
                                                       CSE 21 or Math. 15B    Math. 20F             CSE 30              5. Physics 2A, 2B, 2C (12 units)
53A-B; eight units. ECE 53A-B are courses that
                                                       Math. 20D              ECE 53A               ECE 53B
give a comprehensive introduction to electrical        Phys. 2C               ECE 109               GE                 2. UPPER-DIVISION REQUIREMENTS
engineering.                                           GE                     Phys. 2D              Phys. 2BL or
                                                                                                     2CL or 2DL        Upper-division requirements, 88 units (includes
Probability and Statistics: ECE 109; four units.
                                                       JUNIOR YEAR                                                     five CSE technical electives)
This course can be taken in the sophomore year.
                                                       CSE 100 or Math. 176   CSE 101 or Math. 188 CSE 105 or           1. CSE 100 or Math. 176 (Data Structures),
2. UPPER-DIVISION REQUIREMENTS                         CSE 140                CSE 141                Math. 166
                                                       CSE 140L               CSE 141L             CSE 120                 (4 units)
   All B.S. computer engineering students are          ECE 102                ECE 108              (Req.Tech. Elec.-    2. CSE 101 or Math. 188 (Algorithms), (4 units)
                                                       GE                     GE                     ECE 111 or
required to take CSE 100 or Math. 176, CSE 101                                                                          3. Chemistry 140A–140B (Organic Chemistry),
                                                                                                     ECE 118)
or Math. 188, CSE 105 or Math. 166, CSE 120,                                                       GE                      (8 units)
131A-B, 140, 140L, 141, and 141L; thirty-six units.    SENIOR YEAR
   In addition, all B.S. computer engineering stu-     CSE 131A               CSE 131B            ECE 171A or
                                                                                                                        4. Chemistry 114B (Biochemical Energetics
dents have to fulfill the following upper-division     ECE 101                CSE/ECE Tech. Elec.   161A                   and Metabolism) or BIBC 102 (Structural
ECE requirements.                                      CSE/ECE Tech. Elec.    CSE/ECE Tech. Elec CSE/ECE Tech.             and Metabolic Biochemistry) (4 units)
                                                       GE.                    GE                    Elec.
Linear Systems: ECE 101, ECE 171A or 161A;                                                        Tech. Elec.
                                                                                                                        5. BIBC 103 (Biochemical Techniques), (4
eight units. The department recommends                                                            GE                      units)
that these courses be taken in the junior year.                                                                         6. BICD 100 (Genetics), (4 units)
Electronic Circuits and Systems: ECE 102,              B.S. Computer Science with a                                     7. BIMM 100 (Molecular Biology) or Chemistry
ECE 108; eight units.The department recommends         Specialization in Bioinformatics                                           114D (Molecular and Cellular
that these courses be taken in the junior year.            The explosion in biological knowledge                          Biochemistry),
   If students want to accelerate their program,       spawned by the various genome projects has                          (4 units)
they should consider taking CSE 100 or Math.           created entirely new fields and industries, and                  8. BIMM 101 (Recombinant DNA Lab), (4
176, CSE 105 or Math. 166, and/or CSE 140 and          a need for trained computational biologists                        units)
140L in the sophomore year.                            who are familiar with biology, mathematics, and                  9. BICD 110 (Cell Biology), (4 units)
                                                       computer sciences. The Computer Science and
3. TECHNICAL ELECTIVES                                 Engineering Department offers rigorous, interdis-               10. BIBC 110 (Physical Biochemistry) or
                                                       ciplinary training in the new and rapidly evolving                  Chemistry 127 (Physical Chemistry), (4
   All B.S. computer engineering students are
                                                       field of bioinformatics. Bioinformatics refers                     units)
required to take six technical electives for a total
of twenty-four units. One of these courses must        to advanced computational and experimental                      11. Five additional CSE upper-division electives
be either ECE 111 or ECE 118. Of the remaining         methods that model the flow of information                          (electives 1, 2, 3, 4, and 5).
five courses, four must be computer science and        (genetic, metabolic, and regulatory) in living                       At least one course from each of the three
engineering or electrical and computer engi-           systems to provide an integrated understanding                       groups for a total of five electives:
neering upper-division or graduate courses.            of the system properties of organisms. This inter-
                                                                                                                               Group I: CSE 30, 111, 131A, 131B, 134A
   The remaining course can be any computer            disciplinary major will be offered by three other
science and engineering or electrical and com-         programs (Division of Biology, Department of                            Group II: CSE 105, 150, 151, Math. 184A
                                                       Chemistry and Biochemistry, and Department                              Group III: CSE 132A, 132B, 133
                                                       of Bioengineering). The computer science and                    The bioinformatics series comprised of the
                                                                                                                       following six courses, 24 units:
12. CSE 181 or BIMM 181 or BENG 181                             B.A. Computer Science Program                           CSE 105 or Math. 166, CSE 120, 131A, 131B, 140,
    (Molecular Sequence Analysis), (4 units)                                                                            140L, 141, and 141L; thirty-six units.
                                                                    The B.A. computer science program gives stu-
13. CSE 182 or BIMM 182 or BENG 182 or                          dents more latitude in designing their course of           Students are expected to complete almost all
    Chem. 182 (Biological Databases), (4 units)                 study.The lower-division program is designed to         of these courses by the end of their junior year. If
14. BENG 183 (Applied Genomic Technologies),                    provide a strong foundation in mathematics,             students want to accelerate their program, they
    (4 units)                                                   physics, programming methodology and skills,            should consider taking CSE 100 or Math. 176, CSE
                                                                and computer organization. Upper-division core          105 or Math. 166, and/or CSE 140 and 140L in the
15. CSE 184 or BIMM 184 or BENG 184
                                                                courses deal with the theory and design of algo-        sophomore year.
    (Computational Molecular Biology), (4 units)
                                                                rithms, hardware, and software. Students can gain
16. BIMM 185 (Bioinformatics lab), (4 units)                                                                            3. TECHNICAL ELECTIVES
                                                                additional breadth and/or depth in computer
17. Math. 186 (Probability and Statistics),                     science and engineering by an appropriate selec-           B.A. computer science students are required
    (4 units)                                                   tion of technical electives. By requiring fewer tech-   to take four technical electives for a total of six-
                                                                nical electives, the B.A. computer science program      teen units. Of these four electives, at least two
3. B.S. COMPUTER SCIENCE WITH A                                                                                         must be computer science and engineering
                                                                serves those students desiring more time for
   SPECIALIZATION IN BIOINFORMATICS,                                                                                    upper-division or graduate courses.
                                                                undergraduate studies outside their major subject.
   SAMPLE PROGRAM                                                                                                          The remaining two technical electives can
                                                                    The department requires a total of 105 units
FALL                    WINTER                  SPRING          for the B.A. computer science program (not              be chosen from a wider set of courses that
FRESHMAN YEAR                                                   including the general-education requirements).          includes computer science and engineering
CSE 8A/8AL+8B            CSE 12                  BILD 942       There are three varieties of requirements: lower-       upper-division courses, graduate courses, and
  or 111                 Math. 20B               Math. 20C      division, upper-division, and technical electives.      other electives as listed under the section titled
Math. 20A                Chem. 6B                Chem. 6C                                                               Electives. Other restrictions in the selection of
Chem. 6A                 BILD 1                  Chem. 6BL      1. LOWER-DIVISION REQUIREMENTS                          technical electives are also given in the section
GE 1                     GE 2                    GE 3
                                                                Students are expected to complete the follow-           Electives.
CSE 21 or                Math. 20F               Chem. 140B     ing fifty-two units by the end of their sopho-
                                                                                                                        4. B.A. COMPUTER SCIENCE, SAMPLE
  Math. 15B              Phys. 2B                BIBC 103       more year.
BILD 2                   Chem. 140A              Phys. 2C
Phys. 2A                 GE 5                    GE 6
                                                                Computer Science and Engineering: CSE 8B or
                                                                11, 12, 20 or Math. 15A, CSE 21 or Math. 15B, CSE       FALL                   WINTER                 SPRING
GE 4
                                                                30, and CSE 91; twenty-one units.                       FRESHMAN YEAR
                                                                                                                        CSE 8A, CSE 8AL,       CSE 12                 CSE 20
CSE 100 or               CSE 101 or              CSE 1814          Note: Students without any programming
  Math. 1763               Math. 188             BIMM 101                                                                or CSE 11             Math. 20B               or Math. 15A
BICD 100                 Math. 186               BICD 110       experience are advised to take CSE 8A, CSE 8AL,         Math. 20               Phys. 2A               Math. 20C
GE 7                     BIBC 102 or             BICD 110 or    and then CSE 8B, instead of CSE 11. CSE 11 is a         GE                     GE                     Phys. 2B
GE 8                       Chem. 114B              Chem. 127                                                            CS 91                                         GE
                                                                faster paced version of CSE 8A, CSE 8AL, and
                         BIMM 100 or                                                                                    SOPHOMORE YEAR
                           Chem. 114D
                                                                CSE 8B, and requires experience in programming
                                                                                                                        CSE 21 or Math. 15B Math. 20F                 CSE 30
                                                                with a compiled language.                               Math. 20D           GE                        GE
CSE 182                  CSE 184                 BIMM 185       Mathematics: Math. 20A-B-C-D and 20F; twenty            Phys. 2C            GE                        GE
BENG 183                 Elec. 2                 Elec. 4        units.                                                  JUNIOR YEAR
Elec. 15                 Elec. 3                 Elec. 5                                                                CSE 100 or Math. 176   CSE 101 or Math. 188   CSE 120
GE 9                     GE 10                   GE 11          Physics: Phys. 2A-B-C; twelve units. Math. 20A is       CSE 140                CSE 141                CSE Tech. Elec.
                                                                a prerequisite for Phys. 2A. Students whose per-        CSE 140L               CSE 141L               GE
    Students may take the slower paced version, CSE 8A +        formance on the Department of Mathematics               CSE 105 or Math. 166   GE.                    GE
    CSE 8AL + CSE 8B, instead of CSE 11.                        placement test permits them to start with Math.         SENIOR YEAR
    BILD 94 (1 unit seminar) is recommended in students first                                                           CSE 131A               CSE 131B               Tech. Elec.
                                                                20B or a higher course may take Phys. 2A in the
    spring quarter of study at UCSD. This course gives an                                                               CSE Tech. Elec.        Tech. Elec.
    overview of issues and topics in bioinformatics.
                                                                fall quarter of the freshman year; all others will      GE
    CSE 30 prerequisite will be waived.
                                                                take Phys. 2A in the winter quarter of the fresh-
    New courses for the bioinformatics program: CSE 181
                                                                man year. Students who received high grades             Electives
    is cross-listed with BIMM 181 and BENG 181; CSE 182         in both calculus and physics in high school may
                                                                                                                            The discipline of computer science and engi-
    is cross-listed with BIMM 182, Chem 182, and BENG 182;      substitute the major’s sequence, Phys. 4A-B-C
    CSE 184 is cross-listed with BIMM 184 and BENG 184; and                                                             neering interacts with a number of other disci-
                                                                for Phys. 2A-B-C.
    (BENG 183, BIMM 185, and Math. 186 are not cross-listed                                                             plines in a mutually beneficial way. These
    with any other courses).                                    2. UPPER-DIVISION REQUIREMENTS                          disciplines include mathematics, electrical engi-
    Students must complete five CSE technical electives from                                                            neering, and cognitive science. The following is
    the approved list.
                                                                   All B.A. computer science students are required
                                                                to take CSE 100 or Math. 176, CSE 101 or Math. 188,     a list of upper-division courses from these and
other disciplines that can be counted as techni-       Mechanical and Aerospace Engineering:                   Minor and Program
cal electives.                                         All upper-division MAE courses except MAE 140           of Concentration
   At most four units of CSE 197, 198, or 199 may      (ONLY Computer Science majors may take MAE
                                                       140) and 195-199.                                          The CSE minor requires successful comple-
be used towards technical elective requirements.
                                                          Students may receive elective credit for only        tion of a total of nine CSE courses. To be admit-
CSE 195 cannot be used towards course require-
                                                       one of the following courses: CSE 164A, Math.           ted into the minor, students must have a 2.5 GPA
ments. Undergraduate students must get
                                                       174, Math. 173, Phys. 105A-B, CENG 100, MAE 107.        and a C– or better in CSE 8B or 11, 12, 20, 21, 30.
instructor’s permission and departmental stamp
                                                       Students may only get credit for one of the two         The remaining four CSE courses are CSE 100, CSE
to enroll in a graduate course.
                                                       courses, CSE 167 or MAE 152.                            101, and two additional CSE upper-division
   Students may not get duplicate credit for
                                                                                                               courses subject to enforcement of prerequisites.
equivalent courses. The UCSD General Catalog           Economics: Microeconomics 100A-B, Game
                                                                                                               In order for the minor to be awarded students
should be consulted for equivalency information        Theory 109, Macroeconomics 110A-B, Mathe-
                                                                                                               must receive an average 2.0 GPA in the upper-divi-
and any restrictions placed on the courses. Addi-      matical Economics 113, Econometrics 120A-B-C,
                                                       Applied Econometrics 121, Management Science            sion courses.
tional restrictions are noted below. Any deviation
from this list must be petitioned.                     Microeconomics 170A-B, Decisions Under Uncer-              Note: Students without any programming
                                                       tainty 171, Introduction to Operations Research         experience are advised to take CSE 8A, CSE 8AL,
Mathematics: All upper-division courses except
                                                       172A-B-C, Economic and Business Forecasting 178.        and then CSE 8B, instead of CSE 11. CSE 11 is a
Math. 168A (Math. 183—Computer Engineering
majors only), 184A, and 195–199.                          Credit will be given for only one of the follow-     faster paced version of CSE 8A, CSE 8AL, and CSE
    If a student has completed CSE 167, then he        ing: ECE 109 or Math. 183 or Econ. 120A.                8B, and requires experience in programming with
or she cannot get elective credit for Math. 155A.      Linguistics: Phonetics 110, Phonology I 111,            a compiled language.
Students may receive elective credit for only one      Phonology II 115, Morphology 120, Syntax I 121,            Students should consult their college provost’s
of the following courses: CSE 164A, Math. 174,         Syntax II 125, Semantics 130, Mathematical Ana-         office concerning the rules for the minor or pro-
Math. 173, Phys. 105A-B, CENG 100, MAE 107.            lysis of Language 160, Computers and Language           gram of concentration. Because our undergradu-
No credit for any of these courses will be given       163, Computational Linguistics 165, Principles of       ate program is highly impacted, winter or spring
if Math. 170A-B-C is taken. Students may receive       Discourse and Dialog 169, Psycholinguistics 170,        enrollment is recommended for CSE 8A or CSE
credit for either one of the following: Math. 166 or   Language and the Brain 172, and Sociolinguis-           8B or CSE 11.
CSE 105 (but not both), Math. 188 or CSE 101 (but      tics 175.                                                  Effective Fall 2000, Mathematics/Computer
not both), Math. 176 or CSE 100 (but not both).        Engineering: Principles of Team Engineering             Science Majors will not be allowed the Minor
    Credit will be given for only one of the follow-
                                                       100, Team Engineering Laboratory 100L, Team             in Computer Science.
ing: ECE 109 or Math. 183 or Econ. 120A.
                                                       Engineering 101.
Electrical and Computer Engineering: All ECE
                                                       Computer Science and Computer                           Computing Courses for Non-Majors
upper-division courses except 195-199.
   Students may not get credit for both CSE            Engineering: Students are eligible to receive six          The department offers a slow-pace course
123A and ECE 158A or CSE 143 and ECE 165.              units of technical elective credit for completing a     providing a practical introduction to computers,
Credit will be given for only one of the following:    combination of ENG 100 (two units) and ENG              computation, and programming: CSE 5A—an
ECE 109 or Math. 183 or Econ. 120A.                    100L (two units). Students must complete one            introduction to structured programming using
                                                       quarter of ENG 100 for two units, and two quar-         the C/Java programming language.We also offer
Cognitive Science: Sensation and Perception
101A; Learning, Memory, and Attention 101B,            ters of ENG 100L for a total of four units. With this   an introduction in “fluency in information tech-
Language 101C, Distributed Cognition 102A,             combination, students will get credit for one           nology”: CSE 3—an introduction to basic informa-
Cognitive Ethnography 102B, Cognitive Engineer-        technical elective. To receive credit for two tech-     tion students need to deal with information
ing 102C, Neuroanatomy and Physiology 107A,            nical electives, students must complete one             technology. It is more of a concepts course than a
Systems Neuroscience 107B, Cognitive Neuro-            more quarter of ENG 100L. This credit can be            programming course, but some simple program-
science 107C, Programming Methods for                  applied to fulfill the technical elective require-      ming will be done as part of the teaching of con-
Cognitive Science 108D, Neural Network Models          ments.                                                  cepts.
of Cognitive I 108E, Advanced Programming              Computer Science with a Specialization in
Methods for Cognitive Science 108F, Human              Bioinformatics: Students must petition depart-          Admission to Major
Computer Interaction 120, Human Computer               ment for technical elective credit.
Interaction Programming 121, Natural and                                                                       FRESHMEN STUDENTS
                                                       Music: Computer Music II 172, Audio Production:
Artificial Symbolic Representational Systems 170,                                                                 Freshman students who have excelled in high
                                                       Mixing and Editing 173.
Neural Network Models of Cognition II 181,
                                                       Psychology: Introduction to Engineering                 school and have declared CSE on their applica-
Representation, Search, and the Web 188.
                                                       Psychology 161                                          tion will be directly admitted by the dean of the
   Students may not get credit for both CSE 150
                                                                                                               School of Engineering into their major. The only
and Advanced Programming Methods for Cogni-
                                                                                                               way to become a computer science (CS) or com-
tive Science 108F.
                                                                                                               puter engineering (CE) major is to be directly
                                                                                                               admitted as an entering freshman (transfer
students see TRANSFER STUDENTS section                • Differential Equations (Math. 20D)                  is not guaranteed and will be based on academic
below) These students will be notified directly       • Linear Algebra (Math. 20F)                          excellence, as described below. Since bioinfor-
of their status.                                                                                            matics is an interdisciplinary major, a steering
                                                      • Complete calculus-based physics series with
   Because of heavy student interest in depart-                                                             committee involving faculty from the participat-
                                                        lab experience (Physics 2A-B-C)
mental programs, and the limited resources avail-                                                           ing departments will select among the best can-
able to accommodate this demand, maintenance          • Chemistry 6A (except Computer Science and           didates applying and recommended through
of a high quality program makes it necessary to         Computer Engineering majors)                        each department, while insuring active participa-
limit enrollments to the most qualified students.     • Highest level of introductory computer pro-         tion of the departments and divisions offering
   Admission to the department as a major,              gramming language course offerings at the           the major. The final decision on admission to
transfer, or minor is in accordance with the            community college**                                 the pre-major and major will be made by the
general requirements established by the               *Effective fall 2006, these courses will be           Bioinformatics Steering Committee, in consulta-
Jacobs School of Engineering.                         required preparation for all engineering transfer     tion with the departments. The application is
                                                      students.                                             found at
                                                                                                            admissions/admissionshome.html, or see the CSE
    The B.S. or B.A. in Computer Science and the      **Refer to the UCSD General Catalog to select         department at EBU 3B, Room 1200D.
B.S. in Computer Engineering are heavily impacted     major prerequisite requirement for computer
majors and admission is limited to applicants who     language courses.                                     FRESHMEN AND CONTINUING STUDENTS
have demonstrated a high level of achievement         CONTINUING UCSD STUDENTS                                 Students (freshmen or continuing UCSD stu-
commensurate with the prospect of success in          Exceptional Admission Program                         dents) will be admitted into one of our existing
these majors. Successful applicants must have                                                               undergraduate majors (B.A. Computer Science,
completed substantial training at the community           The computer science and engineering de-          B.S. Computer Science, and B.S. Computer Engi-
college and must have achieved a high level of        partment may periodically grant admission to          neering) through the direct admission process
academic performance there. For example, the          the Computer Science (CS) or Computer Engine-         or through the exceptional admission program.
required minimum of 90 quarter transfer units         ering (CE) majors to a small number of academi-       Students will then have the option of trying to
must include 18 quarter units of calculus, 12 quar-   cally exceptional UCSD undergraduate students         enter the bioinformatics program by applying
ter units of calculus-based physics, and the high-    who were not admitted to these majors as enter-       for the bioinformatics pre-major (while still
est level computer science course offered at their    ing students. Exceptional admission will be con-      retaining their current major status) once they
community college.                                    sidered for students having an overall UCSD GPA       complete the first four screening courses (Math
    Effective fall 2001 applicants seeking admis-     of 3.5 or better who have taken at least two CSE,     20B, Math 21C, BILD 1, Chem 6A). Students will
sion as transfer students will be considered for      math, or science courses demonstrating special        then formally apply to the bioinformatics major
direct admission into the Computer Science (CS)       aptitude for the CS or CE curriculum. Applica-        upon completion of the remaining screening
or Computer Engineering (CE) majors in the            tions for exceptional admission must include          courses CSE 11 and CSE 12. If admitted, students
Department of Computer Science & Engineering          submission of a course plan demonstrating abil-       will become bioinformatics majors in CSE. If not,
(CSE).The only way to become a computer sci-          ity to satisfy graduation requirements and a per-     they can continue in their current CSE major.
ence (CS) or computer engineering (CE) major          sonal statement addressing the applicant’s
                                                      motivation to join the CS or CE major, in addition    TRANSFER STUDENTS
is to be directly admitted as an entering transfer
student. Although the actual required GPA cutoff      to other criteria established by the department.         Transfer students will be admitted into one
depends on the number of openings, at least a         (For admission into the B.S. in Computer Science      of our existing undergraduate majors (B.A.
3.2 GPA in the community college transfer courses,    with a Specialization in Bioinformatics, please see   Computer Science, B.S. Computer Science, and
and a 3.4 GPA in math, physics and computer sci-      the following section: Admission into B.S. in         B.S. Computer Engineering) through the direct
ence courses, are likely to be needed to gain         Computer Science with a Specialization in             admission process or through the exceptional
admission.Transfer students who have declared         Bioinformatics). See Web site for complete infor-     admission program. Effective fall 2003, CSE
pre-CSE will be considered for direct admission       mation and application (      transfer students can directly apply to the bioin-
to the major.                                         undergrad/admissions/exceptionaladmissions/           formatics major if they completed the following
    Effective fall 2004, it is strongly recom-        exceptionaladmissionsprogramshome.html)               courses prior to transferring to UCSD.
mended that transfer students complete the                                                                  • A year of calculus (equivalent to Math 20A-B-C
following preparation for engineering majors*:        Admission into B.S. in Computer                         at UCSD)
• Calculus I—for Science and Engineering              Science with a Specialization
                                                                                                            • A year of general chemistry, with lab (equivalent
  (Math. 20A)                                         in Bioinformatics                                       to Chem 6A, 6B/6BL and Chem 6C at UCSD)
• Calculus II—for Science and Engineering                Since the number of pre-majors and majors          • The highest level programming course
  (Math. 20B)                                         will be limited as described in the section on          offered at the community college (equivalent
                                                      bioinformatics, student demand may exceed               to CSE 11 and CSE 12 at UCSD)
• Calculus and Analytic Geometry (Math. 20C)
                                                      capacity.Therefore, admission to the specialization
• One semester of cell biology (equivalent to          Where these restrictions apply, the registrar will      Information on EAP/OAP is given in the
  BILD 1 and BILD 2 at UCSD)                         not enroll low-priority students in the course.        “Education Abroad Program” section of the UCSD
   Those who have not completed the above                                                                   General Catalog. Interested students should con-
                                                     ENROLLING IN UPPER-DIVISION COURSES
courses may be admitted as bioinformatics pre-                                                              tact the Programs Abroad Office in the
majors and will be allowed a maximum of three            The Department of Computer Science and             International Center and visit its Web site at
quarters to complete pre-major requirements.         Engineering will attempt to provide sufficient Financial aid
Students will then formally apply to the bioinfor-   sections of all lower-division courses. Students       can be used for EAP/OAP study, and special
matics major upon completion of the remaining        will, however, be screened to ensure that they         study-abroad scholarships are also available.
screening courses CSE 11 and CSE 12. If admit-       meet all course enrollment restrictions.
ted, students will become bioinformatics                 Admission to upper-division courses will be        Graduation Requirements
majors in CSE. If not, they can continue in their    restricted to students having completed all pre-
                                                                                                               All major requirements and technical elec-
current CSE major. Transfer students are             requisites with a C- or better (or consent of the
                                                                                                            tives except CSE 197, 198, or 199 must be taken
encouraged to complete these requirements            instructor.) Courses have enrollment restrictions
                                                                                                            for a letter grade. To graduate, a grade-point
at the community college.                            which give priority in the following order: stu-
                                                                                                            average of 2.0 will be required in upper-division
                                                     dents admitted by the department to a major
                                                                                                            courses in the major, including technical elec-
ADVANCED PLACEMENT CREDIT:                           or minor curriculum; students fulfilling a require-
                                                                                                            tives. In addition, each student must satisfy gen-
APPLICATION TO MAJOR REQUIREMENTS                    ment for another major; all others. Within these
                                                                                                            eral-education course requirements determined
  Effective January 14, 2005, the following CSE      categories, priority is determined on the basis
                                                                                                            by the student’s college, as well as major
advanced placement equivalencies have been           of graduation date and/or credits completed.
                                                                                                            requirements determined by the department.
approved (a four-unit maximum for both tests).       Where these restrictions apply, the registrar will
                                                                                                            The five colleges at UCSD require widely differ-
                                                     not enroll nonmajors except by department
•   Computer Science A Exam (Java                                                                           ent numbers of general-education courses. Each
                                                     approval. Students who are undeclared will not
    Programming), 2 units:                                                                                  student should choose his or her college care-
                                                     be admitted to upper-division computer science
       Score of 4 = exempt CSE 8A and 8AL;                                                                  fully, considering the special nature of the col-
                                                     and engineering courses.
       student should take CSE 11                                                                           lege and breadth of education, realizing that
                                                         Those students not in compliance with the
       Score of 5 = exempt CSE 11                                                                           some colleges require considerably more
                                                     above restrictions should be forewarned that
•   Computer Science AB Exam (Java                                                                          courses than others.
                                                     they will automatically be dropped from course
    Programming, and Data Structures &               rosters (at any time during the quarter) when
    Object-Oriented Programming), 4 units:           it comes to the attention of the department that       Five-year Bachelor’s—
       Score of 4 or 5 = exempt CSE 11               a student is enrolled in a course without being        Master’s Program
       Score of 5 = exempt CSE 12 with               eligible because of restrictions and/or the
       department approval                           performance standards have not been met.                   Undergraduate students in the Department
                                                     Admission to all computer science and engineer-        of Computer Science and Engineering who are
Enrollment in CSE courses                            ing courses will require obtaining approval by the     enrolled in the B.S. or B.A. computer science or
   Student demands exceed capacity in many           student affairs personnel.You may also contact         B.S. computer engineering degree programs,
CSE courses. Accordingly, many CSE courses may for more information.            and who have a cumulative GPA of a 3.4 and
have enrollment restrictions which give priority                                                            also a GPA of 3.4 in at least seven core courses,
                                                     UC EDUCATION ABROAD PROGRAM (EAP)                      are
to students in the following order:                  AND UCSD’S OPPORTUNITIES ABROAD                        eligible to apply for the Five Year Bachelor’s-
1. CSE majors, CSE M.S., and CSE Ph.D. students.     PROGRAM (OAP)                                          Master’s Degree Program. Students must apply
2. CSE pre-majors, and ECE CE majors and pre-           CSE majors are encouraged to participate in         one year before graduation. Acceptance into this
   majors, and Math-CS majors. CSE pre-major         the UC Education Abroad Program (EAP) or               program is an honor which carries with it practi-
   status is conferred to transfer students and      UCSD's Opportunities Abroad Program (OAP).             cal benefits—the graduate application process
   to those students admitted prior to fall 1998.    Subject to approval by the faculty director of the     is simplified (no GREs required), and students
3. Students fulfilling a non-elective requirement    major, courses taken through EAP/OAP will be           accepted into this program can be admitted fall,
   in another program.                               accepted for credit toward the major. Students         winter, and spring quarter, based upon availabil-
                                                     interested in studying abroad should see a CSE         ity of openings in the program. Advanced stu-
4. CSE minors.
                                                     undergraduate program adviser to discuss               dents are given access to graduate level courses
5. All other majors or pre-majors in other SOE       appropriate courses and programs for their             and have the opportunity to do graduate level
   departments.                                      plan of study.The advising office is located in        research earlier under the direct supervision of
6. All others, with permission of the department     Engineering Building Unit #3 (EBU 3B), Room            UCSD’s faculty, and students are able to com-
   of Computer Science and Engineering.              1200D.                                                 plete the B.A., B.S., and M.S. degree within a five-
                                                                                                            year time period. Courses taken can be used
toward either the B.A., B.S., or M.S. degree, but   must submit a petition, including a new state-          ing the comprehensive examination can be
not counted toward both degrees. Additional         ment of purpose and three new letters of recom-         found in a separate document provided by the
information and applications can be obtained by     mendation, to the CSE Admissions Committee.             CSE graduate office.
contacting the CSE Student Affairs Office, EBU                                                                 In particular, the written examination is struc-
3B, Room 1238. For an application, visit http://                                                            tured around the three CSE core areas: algorithms
                                                    Computer Science Program                                                                    and data structures; operating systems; and com-
bachelormasterscombined.html.                                                                               puter architecture and digital logic design.
                                                    Master of Science Program
                                                                                                            Required Courses
The Graduate Program                                   The department offers the master of science
                                                    degree in computer science. The degree can be               Students entering the M.S. Program in Compu-
                                                    pursued under either the Thesis Plan I or the           ter Science will choose an area of concentration
   The graduate program offers master of sci-
                                                    Comprehensive Examination Plan II. Each plan            from among fourteen areas. Each concentration
ence and doctor of philosophy degrees in com-
                                                    requires forty-nine units of work. For full-time        is an area in which the faculty has significant
puter science and computer engineering. To be
                                                    students, all the requirements can be completed         research expertise.
accepted into either course of study, a student
                                                    within two years. Students with an adequate                 The typical concentration is a collection of
should have a B.A./B.S. degree in computer sci-
                                                    background in computer science can complete             three courses which are designed to give the
ence, computer engineering, or a related area, or
                                                    the M.S. program within four to five quarters of        student in-depth training in the chosen field.
be able to demonstrate an equivalent compe-
                                                    full-time study.                                        Additionally, to ensure breadth, all students are
                                                                                                            required to take four core courses.
   The graduate program is concerned with fun-      THESIS OR COMPREHENSIVE EXAM                                Core courses must be completed with an
damental aspects of computation. The computer
                                                       There are two plans of study for the master’s        average grade of B and no grade below B–. The
science specialization is divided among the fol-
                                                    degree: Plan I, in which the student writes a           four core courses required of all students are
lowing areas:
                                                    thesis, and Plan II, in which the student takes         as follows:
• Algorithms and complexity                         a set of comprehensive exams.                             CSE 202. Algorithms Design and Analysis
• Artificial intelligence                                                                                     CSE 221. Operating Systems
                                                    Plan I: Thesis Option,
• Bioinformatics                                    No Comprehensive Exam                                     CSE 240A. Principles of Computer
• Computer architecture and compilers                                                                                   Architecture
                                                        This plan involves both course work and               CSE 292. Faculty Research Seminar
• Computer graphics and computer vision             research, culminating in the preparation of a
                                                                                                               The department expects to offer concentra-
• Databases and information management              thesis.The student must take twelve units of CSE
                                                                                                            tions in the following areas:
• Embedded systems and software                     298 (Independent Study) to fulfill the research
                                                    requirement, and a thesis based on research must          Artificial Intelligence
• High-performance computing                        be written and subsequently reviewed by the the-          Bioinformatics
• Meaning and computation                           sis committee.This committee, which is appointed          Communication Networks
• Security and cryptography                         by the dean of Graduate Studies and Research,             Computer Architecture and Compilers
                                                    consists of three faculty members, with at least          Computer Graphics and Vision
• Software engineering                                                                                        Cryptography and Security
                                                    two members from within the CSE department.
• Systems and networking                                                                                      Databases
                                                    Plan II: Comprehensive Examination,                       Design Automation for Microelectronic
• VLSI/CAD (computer-aided design)
                                                    No Thesis                                                     Designs
   The computer engineering specialization
                                                       Under this plan, the student must pass a               Distributed and Fault-Tolerant Computing
places a greater emphasis on hardware and the
                                                    written comprehensive examination designed                Embedded Systems and Software
design of computer systems.
                                                    to test the student’s knowledge in basic com-             Multimedia Systems
   Admission to the graduate program is done
                                                    puter science material.The examination can nor-           Parallel and Scientific Computing
through the Office of Graduate Admissions,
                                                    mally be passed with a thorough knowledge of              Software Engineering
Department of CSE. Deadline for application is in
                                                    topics covered in the undergraduate and first-            Storage Systems
December. Admissions are always effective the
                                                    year graduate computer science programs. It is            Ph.D. Preparation
following fall quarter. For admission deadline
and requirements, please refer to the depart-       offered every year in the first few weeks of the fall      The specific courses involved in each of the
mental Web page:           quarter and in the first few weeks of the spring        concentrations are detailed in a separate bulletin
gradedu/admissions/graduateadmissions.html.         quarter. Each student is allowed three attempts to      which is available in the Graduate Student Affairs
   Admission decisions for the M.S. and Ph.D.       pass the examination.The student must secure at         Office, EBU 3B 1234 or on the Web at http://
programs are made separately. A current M.S.        least a master’s-level pass in the written compre-
student who wishes to enter the Ph.D. program       hensive examination. More information regard-           newstudentinfo/mastersconcentration.html.
Project                                                Core Courses                                         Three Hardware Courses:
   Students electing Plan II are required to execute      The following core courses must be com-              CSE 240A
a project with an adviser while enrolled in four       pleted with an average grade of B and no grade          ECE 260A
units of CSE 293.                                      below B–:                                               CSE 243A or CSE 244A or CSE 244B or
                                                                                                                 ECE 251A
                                                       Three Software Courses:
Electives                                                                                                   Two Analysis Courses:
                                                          CSE 202
   In addition to completing the required core            CSE 221                                             CSE 200 or CSE 201A
courses and fulfilling either the thesis or compre-       CSE 231                                             CSE 222A or CSE 257A
hensive examination requirements described                                                                  and
                                                       Three Hardware Courses:
above, the student must also complete additional                                                              CSE 292
                                                          CSE 240A
approved courses to bring the total number of
                                                          ECE 260A                                          Electives
units to forty-nine.The number of units of electives
                                                          CSE 243A or CSE 244A or CSE 244B or
depends upon whether the student chooses Plan I                                                               Students must elect at least twelve technical
                                                            ECE 251A
or Plan II.The electives consist of other CSE gradu-                                                        units among graduate courses within the
ate courses or courses from a list of approved elec-   Two Analysis Courses:                                Departments of MAE, CSE, ECE, Mathematics,
tives. Units obtained in the courses CSE 293, 298,       CSE 200 or CSE 201A                                and Physics.
299, 500, 501, 599, and any of the seminar courses       CSE 222A or ECE 257A
                                                       and:                                                 Project
CSE 209, 229, 259, 269, 290, and 294 do not count
toward the elective requirement.                         CSE 292                                              Four units of CSE 293.
                                                       Electives                                            Comprehensive Examination
Computer                                                 Students must elect at least four technical
                                                                                                                The comprehensive examination is designed
                                                       units among graduate courses within the
Engineering Program                                                                                         to test the student’s knowledge in basic com-
                                                       Departments of AMES, CSE, ECE, Mathematics,
                                                                                                            puter science and engineering material. The
   Computer engineering, jointly administered          and Physics.
                                                                                                            examination can normally be passed with a
between the CSE and ECE departments, offers            Thesis                                               thorough knowledge of topics covered in the
the master of science and doctoral degrees with                                                             undergraduate and the first-year graduate com-
                                                          Twelve units of CSE 298 must be taken with a
the degree title computer science and engineer-                                                             puter science or computer engineering pro-
                                                       faculty member in CSE or ECE who agrees to act
ing (computer engineering). Computer engineer-                                                              grams.
                                                       as adviser for the thesis to fulfill the research
ing explores the engineering analysis and design                                                                It is offered every year in the first few weeks
aspects of algorithms and technology. Specific                                                              of the fall quarter and in the first few weeks of
                                                          A thesis based on research must be written
research areas include computer systems, signal                                                             the spring quarter. If fewer than seven people
                                                       and subsequently reviewed by a committee,
processing systems, architecture, networks, com-                                                            sign up, then the department may cancel the
                                                       consisting of three faculty members, with at least
puter-aided design, fault tolerance, and data                                                               examination in the spring quarter. Each student
                                                       two members from within the CSE department.
storage systems.                                                                                            is allowed three attempts to pass the examina-
                                                       The committee is appointed by the dean of
                                                                                                            tion. The student must secure at least a master’s-
                                                       Graduate Studies.
Master of Science Program                                                                                   level pass in the written comprehensive
   The degree can be pursued under either the          PLAN II: COMPREHENSIVE EXAMINATION,                  examination.
Thesis Plan I or the Comprehensive Examination         NO THESIS                                                This examination is the same for both the
Plan II. Each plan requires forty-nine units of           In order to receive the M.S. degree in computer   computer science and the computer engineering
work. For full-time students, all the requirements     engineering under this plan, a student must com-     graduate programs. More information about the
must be completed within two years. Students           plete the course requirements listed below and       comprehensive examination can be obtained in a
with an adequate background in computer engi-          pass a written comprehensive examination.            separate document from the CSE graduate office.
neering can complete the M.S. program within              The written examination is structured around
four to five quarters of full-time study.              the following three CSE core areas: algorithms       Doctoral Programs
                                                       and data structures; operating systems; and
                                                       computer architecture and digital logic design.      Ph.D. Degree Programs in Computer
   This plan of study involves both course work        Core Courses                                         Science and Computer Engineering
and research, culminating in the preparation of        Three Software Courses:                                 CSE offers doctor of philosophy degrees in
a thesis. A total of forty-nine units of credit is        CSE 202                                           computer science and in computer engineering,
required, as follows:                                     CSE 221                                           providing a research-oriented education in
                                                          CSE 231                                           preparation for a research, industrial, or entre-
preneurial career. These programs explore both        (Topics in CSE), CSE 292 (Faculty Research               Computer Systems
the fundamental aspects and application of            Seminar), CSE 299 (Research), and CSE 500 or CSE         Database Systems
computation, spanning theory, software, hard-         501 (Teaching Assistantship) for which only S/U
                                                                                                               Computer Engineering
ware, and applications. Our particular areas of       grades are allowed.
research expertise include:                              Units obtained from a single course cannot            Artificial Intelligence
•   algorithms                                        count more than once towards satisfying the              Graphics and Vision
•   artificial intelligence                           requirement in each of the core, depth, breadth,         Bioinformatics
•   bioinformatics                                    and elective areas. Ph.D. students who have
•   complexity theory                                 taken similar courses elsewhere may petition          Breadth Requirements
•   computer architecture/compilers                   for a waiver of the required courses or for substi-       Research in computer science and engineering
•   VLSI/CAD and embedded systems                     tution by alternative courses.                        is increasingly interdisciplinary, and acquiring a
•   databases and information management              Core Requirements                                     broader view of the field in general is important.
•   distributed systems and networking                                                                      Each Ph.D. student must take three courses (12
•   graphics and vision                                   The core requirements ensure that the Ph.D.       units) from at least two other areas different from
•   high performance computing                        students share knowledge of fundamental con-          the major area. Any course that is listed in a stu-
•   mobile computing                                  cepts and tools. Each Ph.D. student must take         dent's depth area cannot be used to fulfill the
•   security and cryptography                         these courses for letter grade and maintain an        breadth requirement, even if it is cross-listed in
•   software engineering                              overall core course GPA of 3.4 with no grade          another area. Courses must be taken for letter
                                                      lower than a B- (except for CSE 292, for which a      grade and students must maintain an overall
COMPETENCY REQUIREMENT                                letter grade is not assigned). A student will typi-   breadth course GPA of 3.0 with no grade lower
   We consider command of the materials cov-          cally complete all the core courses within the        than B- in these courses. Units obtained in CSE
ered in the following courses to be an adequate       first year of graduate study, and must complete       209 series, 229 series, 239 series, 249 series, 259
background for the Ph.D. program. The compe-          all core courses within two years of entry.           series, 269 series, 279 series, 289 series, 290, 292,
tency requirement is intended to ensure that             CSE 202 (Algorithms)                               293, 294, 298, 291, 299, 500, 501, and 599 do not
Ph.D. students already have or acquire this              CSE 221 (Operating Systems)                        count toward the breadth requirement.
undergraduate background. Students, who do
                                                         CSE 240A (Architecture)                            Electives
not have this background at the time of entry,
may be asked to either enroll in the following           CSE 200 (Complexity) for Computer Science             In addition to the above required course
undergraduate class or to study it independently         or CSE 241A (Introduction to Computing             work, each student is expected to take two addi-
and demonstrate their knowledge by obtaining             Circuitry) for Computer Engineering                tional courses (8 units). Students must obtain
a B+ or better in the class or in the final exam.        CSE 292 (Faculty Research Seminar)                 no grade lower than C- in these courses. Under-
    CSE 101 (Algorithms)                                                                                    graduate upper-division courses, CSE 291, and
                                                      Depth Requirements                                    CSE 299 may fulfill this requirement. Units
    CSE 105 (Theory of Computation)
                                                                                                            obtained in CSE 209 series, 229 series, 239 series,
    CSE 120 (Principles of Computer Operating            The depth requirement ensures that a Ph.D.
                                                                                                            249 series, 259 series, 269 series, 279 series, 289
    Systems)                                          student has, early on in his or her career,
                                                                                                            series, 290, 292, 293, 294, 298, 500, 501, and 599
    Two of the following three courses:               acquired some depth of knowledge in a general
                                                                                                            do not count toward the elective requirement.
                                                      research area. Each Ph.D. student must select
    CSE 130, 131A-B (Programming
                                                      one of the following areas as his or her major        RESEARCH EXAM REQUIREMENT
                                                      area. The student must take three courses (12             The research exam is intended to verify three
    CSE 141 (Introduction to Computer                 units) from this major area. The student must         components of the student’s preparation for
    Architecture)                                     take these courses for letter grade and maintain      Ph.D. research: (1) breadth of comprehension
COURSE REQUIREMENTS                                   an overall depth course GPA of 3.4 with no            sufficient to enable computer science research
                                                      grade lower than B- in these courses. One of          in areas beyond the topic(s) of the research
   The course requirement is intended to ensure       these three courses can be Topics in CSE (CSE
that students are exposed to fundamental con-                                                               exam and thesis; (2) ability to perform critical
                                                      291) or Independent Study (CSE 299), which are        study, analysis, and writing in a focused area;
cepts and tools (core requirement), a deep up-        not taken for a letter grade. The department will
to-date view of their research area (depth require-                                                         and (3) research experience.
                                                      maintain a list of appropriate courses for each           The research exam has both an oral part and
ment), and advanced, up-to-date view of the some      major area.
topics outside their area (breadth requirement).                                                            a written part. The oral part of the research exam
                                                         The major areas are:                               is distinct from, and cannot be combined with
Ph.D. students are expected to complete the core,
                                                         Theoretical Computer Science                       the University Qualifying Exam. Grading criteria
depth, and breadth requirements in the first two
years of the program. All required coursework            Programming Languages, Compilers, and              for each part, and standards for passing, are avail-
must be taken for a letter grade except for CSE 291      Software Engineering                               able from the CSE department graduate office.
   The research exam is conducted by a commit-         DISSERTATION                                            each spring for the following academic year. The
tee of three faculty members approved by the              The dissertation defense is the final Ph.D. exami-   tentative schedule for 2006–07 is also found at
Graduate Committee and the chair of the                nation. A candidate for the Ph.D. is expected to
department. At least two committee members             write a dissertation and defend it in an oral exami-    ugradnextyearcourses.html.
must be CSE senate faculty, and the student’s          nation conducted by the doctoral committee.                               LOWER-DIVISION
adviser must be a member of the committee.
The normative time for passing the research            DEPARTMENTAL PH.D. TIME LIMIT POLICIES                  CSE 3. Fluency in Information Technology (4)
exam is by the end of the second year of study;           Students must be advanced to candidacy by            Introduces the concepts and skills necessary to effec-
                                                                                                               tively use information technology. Includes basic con-
the exam must be passed by the end of the third        the end of four years. Total university support         cepts and some practical skills with computer and
year if the student is to continue in the Ph.D. pro-   cannot exceed seven years. Total registered time        networks. Prerequisite: none.
gram. Passing the research exam enables a Ph.D.        at UCSD cannot exceed eight years.                      CSE 5A. Introduction to Programming I (4)
student to receive the M.S. degree. Ph.D. students                                                             (Formerly CSE 62A) Introduction to algorithms and
who do not pass the exam after two attempts            FINANCIAL AID                                           top-down problem solving. Introduction to the C lan-
                                                                                                               guage including functions, arrays, and standard
will be given the opportunity to write a thesis in        Financial support is available to qualified          libraries. Basic skills for using a PC graphical user inter-
order to receive a terminal M.S. degree. The M.S.      graduate students in the form of fellowships,           face operating system environment. File maintenance
degree is only granted to those students who do                                                                utilities are covered. (A student may not receive credit
                                                       loans, and assistantships. Anticipated stipends for     for CSE 5A after receiving credit for CSE 10 or CSE 11
not already hold an M.S. degree prior to entering      half-time research assistantships are $1,963 per        or CSE 8B or CSE 9B or CSE 62B or CSE 65.) Prerequisite:
the CSE department at UCSD.                            month, with the possibility of full-time employ-        A familiarity with high-school level algebra is expected,
                                                                                                               but this course assumes no prior programming knowl-
TEACHING ASSISTANT REQUIREMENT                         ment during the summer months. For a half-time          edge.
                                                       teaching assistantship, the anticipated stipend
   All students enrolled in the Ph.D. program          will be $1,675 per month. Requests for applica-         CSE 8A. Introduction to Computer Science: JAVA (3)
                                                                                                               Basic Unix. Basics of Java language. Classes, methods,
must have one quarter of training as a teaching        tion forms for admission and financial support          and parameters. Modularity and abstraction.
assistant. This is a formal degree requirement         should be directed to the Department of                 Documentation techniques. Testing and verification
and must be completed before the student is                                                                    techniques. Basic inheritance. Event-driven program-
                                                       Computer Science and Engineering.                       ming. Programming with AWT library or other similar
permitted to graduate. The requirement is met                                                                  library. CSE 8A, CSE 8B, and CSE 8AL is a slower paced
by serving as a 50 percent teaching assistant                                                                  version of CSE 11 with more programming practice.
                                                                                                               Concurrent enrollment with CSE 8AL is required.
and taking either CSE 500 or CSE 501(Teaching                          COURSES                                 Students who have taken CSE 8B or CSE 11 may not
Assistantship).                                                                                                take CSE 8A. Majors only. Prerequisites: high school
                                                       For course descriptions not found in the                algebra. Specified majors only.
QUALIFYING EXAMINATION AND                             2006–2007 General Catalog, please contact
ADVANCEMENT TO CANDIDACY                                                                                       CSE 8AL. Introduction to Computer Science:
                                                       the department for more information.                    JAVA Lab (1)
    The qualifying examination is a requirement                                                                Exercises in the theory and practice of computer sci-
                                                          Student demand exceeds capacity in many CSE          ence under the supervision of an instructor. Hands-on
for advancement to candidacy. Prior to taking          courses. Accordingly, many CSE undergraduate            experience with designing, editing, compiling, and
the qualifying examination a student must have         courses may have enrollment restrictions which          executing programming constructs and applications.
satisfied the departmental competency, course,                                                                 Must be taken concurrently with CSE 8A. CSE 8A, CSE
                                                       give priority to students in the following order:       8B, and CSE 8AL is a slower paced version of CSE 11
and research exam requirements and must have                                                                   with more programming practice. Students who have
                                                       • CSE majors, CSE M.S., and CSE Ph.D. students
been accepted by a CSE faculty member as a                                                                     taken CSE 8B or CSE 11 may not take CSE 8AL. Majors
                                                       • CSE pre-majors, ECE CE majors and                     only. Prerequisites: high school algebra. Specified
Ph.D. thesis candidate. All doctoral students are                                                              majors only.
expected to advance to candidacy by the end of           pre-majors, and Math-CS majors
their third year, and advancement is mandatory                                                                 CSE 8B. Introduction to Computer Science: Java (4)
                                                       • students fulfilling a non-elective requirement
                                                                                                               Continuation of the Java language. Continuation of
by the end of the fourth year. The examination is        in another program                                    programming techniques. More on Inheritance.
administered by a doctoral committee appointed         • CSE minors
                                                                                                               Exception handling. CSE 8A-B is a slower paced ver-
                                                                                                               sion of CSE 11 with more programming practice.
by the dean of Graduate Studies and Research                                                                   (Students who have taken CSE 9A or CSE 9B or CSE 10
and consists of faculty from CSE and other             • all other majors or pre-majors in other SOE
                                                                                                               or CSE 11 may not take CSE 8B.) Prerequisite: high
departments. More information on the composi-            departments                                           school algebra. Majors only.
tion of the committee can be obtained from the         • all others, with permission of the Department         CSE 11. Introduction to Computer Science and
CSE graduate office. The examination is taken            of Computer Science and Engineering                   Object-Oriented Programming: Java (4)
after the student and his or her adviser have                                                                  Introduction to computer science and programming
                                                          Where these restrictions apply, the registrar will   using the Java language. Basic UNIX. Modularity and
identified a topic for the dissertation and an ini-    not enroll low-priority students in the course.         abstraction. Documentation, testing and verification
tial demonstration of feasible progress has been          A tentative schedule of course offerings is avail-   techniques. Basic object-oriented programming
made. The candidate is expected to describe                                                                    including inheritance and dynamic bind. Exception
                                                       able from the department, EBU 3B, Room 1200D,           handling. Event-driven programming. Experience
his or her accomplishments to date as well as                                                                  with AWT library or other similar library. Prerequisites:
future work.                                                                                                   high-school algebra and a course in programming in a
                                                                                                               compiled language. Majors only.
CSE 12. Basic Data Structures and Object-Oriented           CSE 91. Perspectives in Computer Science and                 generators, design and analysis of protocols, zero-
Design (4)                                                  Engineering (1)                                              knowledge proofs, and advanced protocols. Empha-
Basic data structures including stacks, queues, lists,      For new CSE majors. A seminar format discussion led          sizes rigorous mathematical approach including
binary trees, hash tables. Basic object-oriented design     by CSE faculty on topics in computer science, concen-        formal definitions of security goals and proofs of pro-
including encapsulation, polymorphism, classes as the       trating on the relation among them, recent develop-          tocol security. Prerequisites: CSE 21 or Math. 15B, CSE 101
implementation of abstract data types. Memory man-          ments, and future directions. Prerequisites: majors only.    or Math. 188, CSE 105 or Math. 166. Majors only.
agement, pointers, recursion, and big-o notation. Uses
the C/C++ and Java programming language. Prere-             CSE 92. Reading and Writing in Computer Science (2)          CSE 111. Object Oriented Software Design (4)
quisite: CSE 8B or CSE 11.                                  This course helps students to read and write technical       Introduction to object-oriented analysis and design.
                                                            English better, and to read and write software better.       Object-oriented modeling methods for analysis and
CSE 20. Introduction to Discrete Mathematics (4)            They write short papers responding to a CSE-related          design, object-oriented general design paradigms,
Basic discrete mathematical structure: sets, relations,     book, learn the basics of functional programming, and        object-oriented design techniques. Cyclic develop-
functions, sequences, equivalence relations, partial        do a project using a functional language. Prerequisites:     ment of object-oriented systems. Prerequisites: CSE 8B
orders, and number systems. Methods of reasoning            CSE 12. Majors only.                                         or CSE 9B or CSE 10 or CSE 11, CSE 12, and CSE 100 or
and proofs: propositional logic, predicate logic, induc-                                                                 Math. 176. Majors only.
tion, recursion, and pigeonhole principle. Infinite sets    CSE 99. Independent Study in Computer Science and
and diagonalization. Basic counting techniques; per-        Engineering (4)                                              CSE 112. Software Engineering (4)
mutation and combinations. Applications will be given       Independent reading or research by special arrange-          (Formerly CSE 110.) This course will cover software
to digital logic design, elementary number theory,          ment with a faculty member. Prerequisites: lower-            engineering topics associated with large systems
design of programs, and proofs of program correct-          division standing. Completion of 30 units at UCSD with a     development such as requirements and specifications,
ness. Credit not offered for both Math. 15A and CSE 20.     UCSD GPA of 3.0. Special Studies form required.              testing and maintenance, and design. Prerequisites:
Equivalent to Math 15A. Prerequisites: CSE 8A or CSE 8B     Department stamp required. Consent of instructor and         CSE 111. Majors only.
or CSE 11. CSE 8B or CSE 11 may be taken concurrently       approval of the department. Majors only.
with CSE 20/ Math. 15A.                                                                                                  CSE 118. Ubiquitous Computing (4)
                                                                                                                         Explores emerging opportunities enabled by cheap
                                                                              UPPER-DIVISION                             sensors and networked computing devices, and is
CSE 21. Mathematics for Algorithms and Systems (4)
This course will provide an introduction to the discrete                                                                 organized as a preparatory course for graduate school.
mathematical tools needed to analyze algorithms and         CSE 100. Advanced Data Structures (4)                        Students read, present, and discuss research papers.
systems. Enumerative combinatorics: basic counting          Descriptive and analytical presentation of data struc-       Small research projects will be conducted in teams,
principles, inclusion-exclusion, and generating func-       tures and algorithms. Lists, tables, priority queues, dis-   culminating in project presentations at the end of the
tions. Matrix notation. Applied discrete probability.       joint subsets, and dictionaries data types. Data             term.The weekly discussion section will cover material
Finite automata. Credit not offered for both Math.15B       structuring techniques include linked lists, arrays,         relevant to the project on research methods, software
and CSE 21. Equivalent to Math 15B. Prerequisites: CSE      hashing, and trees. Performance evaluation involving         engineering, teamwork, and project management.
20 or Math. 15A.                                            worst case, average and expected case, and amortized         Prerequisites: successful completion of a major project
                                                            analysis. Credit not offered for both Math. 176 and CSE      course, including: CSE 131B, CSE 132B, Cog Sci 102C, Cog
CSE 30. Computer Organization and Systems                   100. Equivalent to Math. 176. Prerequisites: CSE 12, CSE     Sci 121, Cog Sci 184, ECE 111, ECE 118, ECE 191, ECE 192,
Programming (4)                                             21 or Math. 15B, and CSE 30, or consent of the instructor.   COMT 111B, COMT 115, or ICAM 160B. Other project
(Formerly CSE 70.) Introduction to organization of          Majors only.                                                 courses, experience, or accomplishments may be peti-
modern digital computers—understanding the vari-                                                                         tioned. Majors only.
ous components of a computer and their interrela-           CSE 101. Design and Analysis of Algorithms (4)
tionships. Study of a specific architecture/machine         Design and analysis of efficient algorithms with             CSE 120. Principles of Computer Operating Systems (4)
with emphasis on systems programming in C and               emphasis of non-numerical algorithms such as sort-           (Formerly CSE 171A.) This course introduces the basic
Assembly languages in a UNIX environment. Prere-            ing, searching, pattern matching, and graph and net-         concepts used to structure computer operating sys-
quisites: CSE 12 and CSE 20 or Math. 15A; or consent of     work algorithms. Measuring complexity of algorithms,         tems. Examples of notions introduced and discussed
the instructor.                                             time and storage. NP-complete problems. Credit not           are batch processing, multiprogramming, input/
                                                            offered for both Math. 188 and CSE 101. Equivalent to        output, pooling, interrupt handling, processes, descrip-
CSE 80. UNIX Lab (2)                                        Math 188. Prerequisites: CSE 12, CSE 21 or Math. 15B or      tors, process synchronization, interprocess communi-
The objective of the course is to help the program-         Math. 100A or Math. 103A and CSE 100 or Math. 176.           cation, memory management, virtual memory,
mers create a productive UNIX environment. Topics           Majors only.                                                 caching, buffers, naming, files, interactive command
include customizing the shell, file system, shell pro-                                                                   interpre-ters, and processor scheduling. Prerequisites:
                                                            CSE 102. Storage System Architectures (4)                    CSE 100 or Math. 176, CSE 101 or Math. 188, and CSE 141.
gramming, process management, and UNIX tools.
                                                            Descriptive and analytic introduction to storage sys-        Majors only.
(P/NP grades only.) Prerequisite: CSE 8B or CSE 9B or CSE
                                                            tem architectures. Disk drive storage media organiza-
10 or CSE 11.
                                                            tion and run-time performance; external indexing             CSE 121. Operating Systems: Architecture and
CSE 86. C++ for Java Programmers (2)                        data structures B+trees and linear hashing algo-             Implementation (4)
The objective of the course is to help the Java pro-        rithms. Disk arrays, RAID data organization, reliability,    (Formerly CSE 171B.) Case study of architecture and
grammer to be productive in the C++ programming             sparing, data declustering, and video servers.               implementation of a selected modern operating system.
environment. Topics include the similarities and differ-    Prerequisites: CSE 100 or Math 176, CSE 120, CSE 123A,       In-depth analysis through a detailed study of source
ences between Java and C++ with special attention to        or consent of the instructor. Majors only.                   code.Topics include process creation, context-switching,
pointers, operator overloading, templates, the STL, the                                                                  memory allocation, synchronization mechanisms, inter-
                                                            CSE 105. Theory of Computability (4)                         process communication, I/O buffering, device drivers,
preprocessor, and the C++ Runtime Environment.
                                                            An introduction to the mathematical theory of com-           and file systems. Prerequisite: CSE 120.
Prerequisites: CSE 30 or consent of the instructors.
                                                            putability. Formal languages. Finite automata and reg-
CSE 87. Freshman Seminar (1)                                ular expression. Push-down automata and context-             CSE 123A. Computer Networks (4)
The Freshman Seminar Program is designed to pro-            free languages. Computable or recursive functions:           Introduction to concepts, principles, and practice of
vide new students with the opportunity to explore an        Turing machines, the halting problem. Undecidability.        computer communication networks with examples
intellectual topic with a faculty member in a small         Credit not offered for both Math. 166 and CSE 105.           from existing architectures, protocols, and standards
seminar setting. Freshman seminars are offered in all       Equivalent to Math 166. Prerequisites: CSE 12, CSE 21 or     with special emphasis on the Internet protocols.
campus departments and undergraduate colleges,              Math. 15B or Math. 100A or Math. 103A. Majors only.          Layering and the OSI model; physical and data link
and topics vary from quarter to quarter. Enrollment is                                                                   layers; local and wide area networks; datagrams and
                                                            CSE 107. Introduction to Modern Cryptography (4)             virtual circuits; routing and congestion control;
limited to 15 to 20 students, with preference given to
                                                            Topics include private and public-key cryptography,          internetworking. Transport protocols. Prerequisite:
entering freshmen. Prerequisite: none.
                                                            block ciphers, data encryption, authentication, key dis-     CSE 141. Majors only.
                                                            tribution and certification, pseudorandom number
CSE 123B. Communications Software (4)                        CSE 100 or Math. 176, CSE 105 or Math. 166, and CSE            systems. Prerequisites: CSE 140, CSE 140L, or consent of
Protocol software structuring, The Internet protocol         131A. Majors only.                                             the instructor. CSE 141L should be taken concurrently.
suite, Inter-process communication, Protocols for                                                                           Majors only.
real-time and multimedia (digital audio and video)           CSE 132A. Database System Principles (4)
communication, multicast, bridging, and group com-           Basic concepts of databases, including data modeling,          CSE 141L. Project in Computer Architecture (2)
munication protocols, protocols for mobile and per-          relational databases, query languages, optimization,           Hands-on computer architecture project aiming to
sonal communication networks, application-level              dependencies, schema design, and concurrency con-              familiarize students with instruction set architecture,
protocols, secure communication. Prerequisite: CSE 120       trol. Exposure to one or several commercial database           and design of process. Control and memory systems.
or consent of the instructor. CSE 123A is strongly recom-    systems. Advanced topics such as deductive and                 Prerequisites: CSE 140, CSE 140L, or consent of the
mended. Majors only.                                         object-oriented databases, time allowing. Prerequisite:        instructor. CSE 141 should be taken concurrently. Majors
                                                             CSE 100 or Math. 176. Majors only.                             only.
CSE 125. Software System Design
and Implementation (4)                                       CSE 132B. Database Systems Applications (4)                    CSE 142. Advanced Digital Logic Design (4)
Design and implementation of large, complex soft-            Design of databases, transactions, use of trigger facili-      (Formerly CSE 170C) Digital logic optimization; func-
ware systems involving multiple aspects of CSE cur-          ties and datablades. Performance measuring, organi-            tional decomposition and symmetric functions; reli-
riculum. Emphasis is on software system design               zation of index structures. Prerequisite: CSE 132 or CSE       able design and fault diagnosis; structure of
applied to a single, large group project with close          132A or equivalent.                                            sequential machines; asynchronous circuit design.
interaction with instructor. Prerequisites: senior stand-                                                                   Assignments using logic synthesis tools. Prerequisites:
ing with substantial programming experience, and con-        CSE 133. Information Retrieval (4)                             CSE                                               140,
sent of instructor. Department stamp required. Majors        (Formerly CSE 181.) How to find “relevant” documents           CSE 140L.
only.                                                        (e.g., an electronic mail message or a book) from very
                                                             large corpora (e.g., all the world’s electronic mail or the    CSE 143. Microelectronic System Design (4)
CSE 126. Multimedia Systems (4)                              library.) Students will construct and experimentally           VSLI process technologies; circuit characterization;
Multimedia technologies; multimedia storage models           evaluate a complete IR system for a modest textual             logic design styles; clocking strategies; computer-
and structures; data models and interfaces; multime-         corpus. Prerequisite: CSE 100 or Math. 176. Majors only.       aided design tools; subsystem design; design case
dia information systems; video/audio networking;                                                                            studies. System design project from hardware
media synchronization; image computing and infor-            CSE 134A. Web Server Languages (4)                             description, logic synthesis, physical layout to design
mation assimilation; conferencing paradigms and              Design and implementation of interactive World Wide            verification. Students may not receive credit for both
structured interaction support. Prerequisite: CSE 120 or     Web documentation using server-side programs.                  CSE 143 and ECE 161B. Prerequisites: CSE 140 and CSE
consent of the instructor.                                   Languages covered include HTML, Perl, and JavaScript.          141. Majors only.
                                                             Other languages as time allows. Prerequisite: CSE 100 or
CSE 127. Introduction to Computer Security (4)               Math. 176. Majors only.                                        CSE 144. Computer-Aided Design of VLSI Circuits (4)
Topics include basic cryptography, security/threat                                                                          (Formerly CSE 172B) Introduction to Computer-Aided
analysis, access control, auditing, security models, dis-    CSE 134B. Web Client Languages (4)                             Design.Placement,assignment and floor planning tech-
tributed systems security, and theory behind common          Design and implementation of interactive World Wide            niques. Routing. Symbolic layout and compaction.
attack and defense techniques. The class will go over        Web clients using helper applications and plug-ins.            Module generation and silicon compilation. Prere-
formal models as well as the bits and bytes of security      The main language covered will be Java. Prerequisite:          quisites: CSE 140 and CSE 140L,or consent of the instructor.
exploits. Prerequisite: CSE 21 or Math. 15B, and CSE 120.    CSE 100 or Math. 176. Majors only.
                                                                                                                            CSE 146. Introduction to Reliable Hardware (4)
Majors only.
                                                             CSE 135. Server-side Web Applications (4)                      Fault models and tests, combinational circuit test gen-
CSE 128. Concurrency (4)                                     Design and implementation of dynamic web-based                 eration, fault collapsing, fault simulation, synchronous
Specification of concurrent programs safety, liveness,       applications. Multi-tier architecture, scripting lan-          sequential circuit testing, functional testing, memory
and fairness: producer-consumer; mutual exclusion;           guages, SQL, XML, session handling, non-browser                testing. Prerequisites: CSE 140 and CSE 140L, or consent
atomic read/writes; semaphores; monitors; distributed        clients, Web services, and scalability, security, and          of instructor. Majors only.
algorithms and memory coherency; programming                 usability in the Web context. Prerequisites: CSE 100 or
                                                             Math. 176. Majors only.                                        CSE 150. Programming Languages for Artificial
with threads; concurrency in popular programming
                                                                                                                            Intelligence (4)
languages and operating systems. Prerequisite: CSE
                                                             CSE 136. Enterprise-class Web Applications (4)                 Note: CSE 150 is pending CEP approval. (Formerly CSE
120. Majors only.
                                                             Design and implementation of large scale web-based             162) Experience using two very different approaches
CSE 130. Programming Languages: Principles and               applications. Modeling organizational needs, design            to artificial intelligence programming. Symbolic
Paradigms (4)                                                and revision management, J2EE or similar software              manipulation using LISP, with examples drawn from
(Formerly CSE 173.) Introduction to programming lan-         platforms, Web and application server functionality,           heuristic search, inference, and/or resolution theorem
guages and paradigms, the components that comprise           reuse of object-oriented components, model-view-               proving. Pattern recognition and transformation
them,and the principles of language design,all through       controller and other design patterns, clustering, load-        using neural networks with perception and back
the analysis and comparison of a variety of languages        balancing, fault-tolerance, authentication, usage              propagation learning algorithms, applied to problems
(e.g., Pascal, Ada, C++, PROLOG, ML.) Will involve pro-      accounting. Prerequisite: CSE 135. Majors only.                such as face recognition, English past tense formation,
gramming in most languages studied. Prerequisites: CSE                                                                      etc. Prerequisites: CSE 8B or CSE 9B or CSE 10 or CSE 11,
12 and CSE 100 or Math. 176. Majors only.                    CSE 140. Components and Design Techniques for                  CSE 12, and CSE 100 or Math. 176. Majors only.
                                                             Digital Systems (4)
CSE 131A. Compiler Construction I (4)                        (Formerly CSE 170A) Design of Boolean logic and finite         CSE 151. Introduction to Artificial Intelligence (4)
(Formerly CSE 163A.) Introduction to the compilation         state machines; two-level, multi-level combinational           An introduction to theoretical issues and computa-
of programming languages, principles and practice            logic design, combinational modules and modular                tional techniques arising from a comparison of
of lexical and syntactic analysis, error analysis, syntax-   networks, Mealy and Moore machines, analysis and               human and machine intelligences. Knowledge rep-
directed translation, and type checking. Prerequisites:      synthesis of canonical forms, sequential modules.              resentation languages; problem-solving heuristics;
CSE 30, CSE 100 or Math. 176, and CSE 105 or Math. 166.      Prerequisites: CSE 20 or Math. 15A, CSE 30. CSE 140L must      machine learning and application areas including
Majors only.                                                 be taken concurrently. Majors only.                            vision, robotics, and natural language understand-
                                                                                                                            ing will be reviewed. Prerequisite: CSE 150 or consent
CSE 131B. Compiler Construction II (4)                       CSE 140L. Digital Systems Laboratory (2)                       of the instructor. Majors only.
(Formerly CSE 163B.) Principles and practice for the         (Formerly CSE 175B) Implementation with computer-
design and implementation for the back-end of trans-         aided design tools for combinational logic minimization        CSE 152. Introduction to Computer Vision (4)
lators for programming languages, symbol tables,             and state machine synthesis.Hardware construction of a         The goal of computer vision is to compute scene and
syntax-directed translation, code generation, opti-          small digital system. Prerequisites: CSE 20, CSE 30. CSE 140   object properties from images and video. This intro-
mization, and compiler structure. Prerequisites: CSE 30,     must be taken concurrently.                                    ductory course includes feature detection, image seg-
                                                                                                                            mentation, motion estimation, object recognition,
                                                             CSE 141. Introduction to Computer Architecture (4)
                                                             Introduction to computer architecture. Computer sys-
                                                             tem design. Processor design. Control design. Memory
and 3-D shape reconstruction through stereo, photo-          network theory, and some neo-classical economics.           group of students under the supervision of a faculty
metric stereo, and structure from motion. Prerequisites:     Prerequisites: CSE 100 or Math. 176. Majors only.           member. (P/NP grades only.) Prerequisite: consent of the
Math. 20F, CSE 100 or Math. 176, CSE 101 or Math. 188.                                                                   instructor. Department stamp required.
Knowledge of C, C++ or Matlab programming. Majors            CSE 181. Molecular Sequence Analysis (4)
only.                                                        This course covers the analysis of nucleic acid and pro-    CSE 199. Independent Study for Undergraduates
                                                             tein sequences, with an emphasis on the application of      (2 or 4)
CSE 160. Introduction to Parallel Computing (4)              algorithms to biological problems. Topics include           Independent reading or research by special arrange-
Introduction to HPPC: parallel architecture, algorithms,     sequence alignments, database searching, comparative        ment with a faculty member. (P/NP grades only.)
software and problem-solving techniques. Areas               genomics, and phylogenetic and clustering analyses.         Prerequisite: consent of the instructor. Department
covered: Flynn’s taxonomy, processor-memory organi-          Pairwise alignment, multiple alignment, DNS sequenc-        stamp required.
zations, shared and non-shared memory models; mes-           ing, scoring functions, fast database search, compara-
sage passing and multithreading, data parallelism;           tive genomics, clustering, phylogenetic trees, gene
speedup, efficiency, and Amdahl’s law, communication         finding/DNA statistics. Prerequisites: CSE 100 or Math.                           GRADUATE
and synchronization, isoefficiency, and scalability.         176, CSE 101 or Math. 188, BIMM 100 or Chem. 114D.
Topics: run time software techniques, compilers, and         Bioinformatics majors only. CSE 181 is crosslisted with     CSE 200. Computability and Complexity (4)
grid computing. Assignments given to provide practi-         BIMM 181 and BENG 181.                                      Computability review, including halting problem,
cal experience. Prerequisite: CSE 100 or Math. 176.                                                                      decidable sets, r.e. sets, many-one reductions;TIME(t(n)),
Majors only.                                                 CSE 182. Biological Databases (4)                           SPACE(s(n)) and general relations between these
                                                             This course provides an introduction to the features of     classes; L, P, PSPACE, NP; NP—completeness; hierarchy
CSE 166. Image Processing (4)                                biological data, how that data are organized efficiently    theorems; RP, BPP. Prerequisite: CSE 105 or equivalent.
Principles of image formation, analysis, and represen-       in databases, and how existing data resources can be
tation. Image enhancement, restoration, and segmen-          utilized to solve a variety of biological problems.         CSE 201A. Advanced Complexity (4)
tation; stochastic image models. Filter design,              Relational databases,object oriented databases,ontolo-      Polynomial-time hierarchy (PH); BPP in second level of
sampling, Fourier and wavelet transforms. Selected           gies, data modeling and description, survey of current      PH; Savitch’s theorem; NL=coNL; non-uniform and cir-
applications in computer graphics and machine                biological database with respect to above, implementa-      cuit complexity; some circuit lower bounds; IP=PSPACE;
vision. Prerequisites: Math. 20F, CSE 100 or Math. 176.      tion of a database focused on a biological topic.           probabilistic proof checking (PCP); Application of PCP
Majors only.                                                 Prerequisites: CSE 100 or Math.176.Bioinformatics majors    to approximation hardness; Complexity of proof sys-
                                                             only. CSE 182 is crosslisted with BIMM 182, Chem 182,       tems; Parallel complexity classes NC and AC; P-com-
CSE 167. Computer Graphics (4)                               and BENG 182.                                               pleteness. Prerequisite: CSE 200.
(Formerly CSE 177) Representation and manipulation
of pictorial data. Two-dimensional and three-dimen-          CSE 184. Computational Molecular Biology (4)                CSE 202. Algorithm Design and Analysis (4)
sional transformations, curves, surfaces. Projection,        This advanced course covers the application of              The basic techniques for the design and analysis of
illumination, and shading models. Raster and vector          machine learning and modeling techniques to biolog-         algorithms. Divide-and-conquer, dynamic program-
graphic I/O devices; retained-mode and immediate-            ical systems.Topics include gene structure, recognition     ming, data structures, graph search, algebraic problems,
mode graphics software systems and applications.             of DNA and protein sequence patterns, classification,       randomized algorithms, lower bounds, probabilistic
Prerequisites: Math. 2EA/20F and CSE 100 or Math. 176.       and protein structure prediction. Pattern discovery,        analysis, parallel algorithms. Prerequisite: CSE 101 or
Majors only.                                                 Hidden Markov models/support victor machines/               equivalent.
                                                             neural network/profiles. Protein structure prediction,
CSE 168. Computer Graphics II: Rendering (4)                 functional characterization or proteins, functional         CSE 203A. Advanced Algorithms (4)
Weekly programming assignments that will cover               genomics/proteomics, metabolic pathways/gene net-           Modern advances in design and analysis of algo-
graphics rendering algorithms. During the course the         works. Prerequisites: BIMM 181 or BENG 181 or CSE 181,      rithms. Exact syllabus varies. Topics include approxi-
students will learn about ray tracing, geometry, tessel-     BIMM 182 or CSE 182 or CHEM 182. Bioinformatics             mation, randomized algorithms, probabilistic analysis,
lation, acceleration structures, sampling, filtering,        majors only. CSE 184 is crosslisted with BIMM 184, BENG     heuristics, online algorithms, competitive analysis,
shading models, and advanced topics such as global           184, and Chem 184.                                          models of memory hierarchy, parallel algorithms, num-
illumination and programmable graphics hardware.                                                                         ber-theoretic algorithms, cryptanalysis, computational
Prerequisites: CSE 167 or concurrent enrollment. Majors      CSE 190. Topics in Computer Science and                     geometry, computational biology, network algo-
only.                                                        Engineering (4)                                             rithms, VLSI CAD algorithms. Prerequisite: CSE 202.
                                                             Topics of special interest in computer science and
CSE 169. Computer Animation (4)                              engineering. Topics may vary from quarter to quarter.       CSE 204A. Combinatorial Optimization (4)
Advanced graphics focusing on the programming                May be repeated for credit with the consent of instruc-     Linear programming, simplex method, duality, and col-
techniques involved in computer animation. Algo-             tor. Prerequisites: consent of the instructor and depart-   umn generating technique. Integer programming
rithms and approaches for both character animation           ment stamp required. Majors only.                           introduced via the Knapsack problem. The periodic
and physically based animation. Particular subjects                                                                      nature of all integer programs. Why the round-off
may include skeletons, skinning, key framing, facial         CSE 191. Seminar in CSE (1–4)                               technique cannot work in general. The solution of the
animation, inverse kinematics, locomotion, motion            A seminar course on topics of current interest.             Knapsack problem in polonominal time since nonba-
capture, video game animation, particle systems, rigid       Students, as well as, the instructor will be actively       sic columns form a group. Prerequisites: CSE 202 or
                                                             involved in running the course/class. This course           Linear Algebra or consent of instructor.
bodies, clothing, and hair. Prerequisites: a good under-
                                                             cannot be counted toward a technical elective. Prere-
standing of linear algebra. CSE 167 or consent of instruc-
                                                             quisites: consent of instructor. Department stamp           CSE 205A. Logic in Computer Science (4)
tor. Majors only.
                                                             required. Majors only.                                      (Formerly CSE 208D) Mathematical logic as a tool in
CSE 171. User Interface Design (4)                                                                                       computer science. Propositional logic, resolution, first-
                                                             CSE 195. Teaching (4)                                       order logic, completeness and incompleteness theo-
Explores usability, representation and coordination
                                                             Teaching and tutorial assistance in a CSE course under      rems with computational viewpoint, finite model
issues in user interface design with some focus on dis-
                                                             the supervision of the instructor. (P/NP grades only.)      theory,descriptive complexity,logic programming,non-
tributed cooperative work, semiotics, and the interplay
                                                             Prerequisite: consent of the department chair. Depart-      monotonic reasoning, temporal logic. Applications to
between socio-cognitive and technical issues. Most
                                                             ment stamp required.                                        databases, automatic theorem proving, program verifi-
examples and homework involve the Web. Prerequisites:
CSE 8B or 11, CSE 20 or Math. 15A, and CSE 100 or Math.                                                                  cation, and distributed systems. Prerequisite: CSE 200 or
                                                             CSE 197. Field Study in Computer Science and                consent of instructor.
176. Majors only.                                            Engineering (4, 8, 12, or 16)
                                                             Directed study and research at laboratories away from       CSE 206A. Lattice Algorithms and Applications (4)
CSE 175. Social and Ethical Issues in Information
                                                             the campus. (P/NP grades only.) Prerequisite: consent of    (Formerly CSE 207C) Introduction to the algorithmic
Technology (4)
                                                             the instructor and approval of the department. Depar-       theory of point lattices (A.K.A. algorithmic geometry of
Social aspects of information technology, with an
                                                             tment stamp required.                                       numbers), and some of its most important applica-
emphasis on ethical issues. Topics include ethical theo-
ries, privacy and security, spam, e-commerce, the digital                                                                tions in cryptography and cryptanalysis.Topics usually
                                                             CSE 198. Directed Group Study (2 or 4)
divide,open source software,medical informatics,actor-       Computer science and engineering topics whose
                                                             study involves reading and discussion by a small
include: LLL basis reduction algorithm, cryptanalysis of    CSE 218. Advanced Topics in Software Engineering (4)          pensive disks, striping, log and maximum distance
broadcast RSA, hardness of approximating lattice            This course will cover a current topic in software engi-      separable data organizations, sparing. Prerequisite: CSE
problems. Prerequisites: CSE 202, CSE 200, or concurrent.   neering in depth.Topics in the past have included soft-       221 or consent of instructor.
                                                            ware tools, impacts of programming language design,
CSE 206B. Algorithms in Computational Biology (4)           and software system structure. (S/U grades permitted.)        CSE 227. Computer Security (4)
(Formerly CSE 257B) The course focuses on algorith-         Prerequisite: none.                                           Security and threat models, risk analysis, authentica-
mic aspects of modern bioinformatics and covers the                                                                       tion and authorization, auditing, operating systems
following topics: computational gene hunting,               CSE 221. Operating Systems (4)                                security, access control mechanisms, protection
sequencing, DNA arrays, sequence comparison, pattern        Operating system structures, concurrent computation           mechanisms, distributed systems/network security,
discovery in DNA, genome rearrangements, molecular          models, scheduling, synchronization mechanisms,               security architecture, electronic commerce security
evolution, computational proteomics, and others.            address spaces, memory management protection and              mechanisms, security evaluation. Prerequisite: CSE 221
Prerequisite: CSE 202 or consent of instructor.             security, buffering, streams, data-copying reduction          or consent of instructor.
                                                            techniques, file systems, naming, caching, disk organi-
CSE 207. Modern Cryptography (4)                            zation, mapped files, remote file systems, case studies       CSE 228. Multimedia Systems (4)
Private and public key cryptography, introduction to        of major operating systems. Prerequisites: CSE 120 and        (Formerly 228F) Emerging multimedia technologies;
reduction based proofs of security, concrete security,      121, or consent of instructor.                                multimedia storage models and structures; video/
block ciphers, pseudorandom functions and genera-                                                                         audio networking; intra-media continuity; inter-media
tors, symmetric encryption, asymmetric encryption,          CSE 222. Communication Networks (4)                           synchronization; admission control and support for
computational number theory, RSA and discrete log           Renumbered to CSE 222A (see below).                           real time; distributed multimedia systems; structured
systems, message authentication, digital signatures,                                                                      interaction support (collaboration and teamwork);
key distribution and key management. Prerequisites:         CSE 222A. Computer Communication Networks (4)                 multimedia encoding. Prerequisite: consent of instruc-
CSE 202 or consent of instgructor.                          (Formerly CSE 222.) Computer communication net-               tor.
                                                            work concepts, protocols, and architectures, with an
CSE 207C. Lattices and Cryptology (4)                       emphasis on an analysis of algorithms, protocols, and         CSE 228B. Storage Systems (4)
Renumbered to CSE 206A (see above).                         design methodologies. Topics will include layering,           Renumbered to CSE 226 (see above).
                                                            error control, flow control, congestion control, switch-
CSE 208. Advanced Cryptography (4)                          ing and routing, quality of service management,               CSE 228F. Multimedia Systems (4)
Zero-knowledge, secure computation, session-key             mobility, naming, security, and selected contemporary         Renumbered to CSE 228 (see above).
distribution, protocols, electronic payment, one-way        topics. Prerequisite: CSE 123A or consent of instructor.
functions, trapdoor permutations, pseudorandom                                                                            CSE 228H. Internet Algorithmics (4)
bit generators, hardcore bits. Prerequisites: CSE 202,      CSE 222B. Internet Algorithmics (4)                           Renumbered to CSE 222B (see above).
CSE 200, and CSE 207 or consent of instructor.              (Formerly CSE 228H.) Techniques for speeding up
                                                            Internet implementations including system restructur-         CSE 229A. Topics/Seminar in Computer Systems (1-4)
CSE 208D. Logic in Computer Science (4)                     ing, new algorithms, and hardware innovations. Topics         Discussion on problems of current research interest in
Renumbered to CSE 205A (see above).                         include: models for protocols, systems and hardware;          computer systems. Possible areas of focus include: dis-
                                                            efficiency principles; applying these principles to deriv-    tributed computing, computational grid, operating
CSE 209A. Topics/Seminar in Algorithms, Complexity,         ing techniques for efficient implementation of common         systems, fault-tolerant computing, storage systems,
and Logic (1-4)                                             endnode and router functions. Prerequisites: CSE 123A or      system services for the World Wide Web. Topics to be
Topics of special interest in algorithms, complexity,       CSE 222A or consent of instructor.                            presented by faculty and students under faculty
and logic to be presented by faculty and students                                                                         direction. Topics vary from quarter to quarter. May be
under faculty direction. Topics vary from quarter to        CSE 223. Distributed Systems (4)                              repeated for credit. Prerequisite: consent of instructor.
quarter. May be repeated for credit. Prerequisites: con-    Renumbered to CSE 223A (see below).
sent of instructor.                                                                                                       CSE 229B. Topics/Seminar in Networks
                                                            CSE 223A. Principles of Distributed Computing (4)             and Communication (1-4)
CSE 209B. Topics/Seminar in Cryptography (1-4)              (Formerly CSE 223) Logical and physical time, snap-           Discussion on problems of current research interest in
Topics of special interest in cryptography to be pre-       shot protocols, failure models, replication strategies,       computer networks and communication. Possible
sented by faculty and students under faculty direc-         consensus and reliable broadcast, self-stabilization,         areas of focus include: wide-area networking, wireless
tion. Topics vary from quarter to quarter. May be           atomic commit. Prerequisites: CSE 221 or consent of           networks, the Internet, computational grid, operating
repeated for credit. Prerequisite: consent of instructor.   instructor.                                                   systems, fault-tolerant computing, storage systems.
                                                                                                                          Topics to be presented by faculty and students under
CSE 210. Principles of Software Engineering (4)             CSE 223B. Distributed Computing and Systems (4)               faculty direction. Topics vary from quarter to quarter.
(Formerly CSE 264A.) General principles in modern           Efficient primitives for distributed operating systems        May be repeated for credit. Prerequisite: consent of
software engineering. Both theoretical and practical        and high-performance network servers, including con-          instructor.
topics are covered.Theoretical topics include proofs of     current and event-driven server architectures, remote
correctness, programming language semantics, and            procedure calls, and load shedding. Distri-buted nam-         CSE 229C. Topics/Seminar in Computer Security (1-4)
theory of testing. Practical topics include structured      ing, directory, and storage services, replication for fault   Discussion on problems of current research interest in
programming, modularization techniques, design of           tolerance, and security in distributed systems.               computer security. Topics to be presented by faculty
languages for reliable programming, and software            Prerequisites: CSE 221, CSE 222A, or consent of instructor.   and students under faculty direction.Topics vary from
tools. Prerequisites: CSE 100, 131A, 120, or consent of                                                                   quarter to quarter. May be repeated for credit. Prere-
instructor.                                                 CSE 225. High Performance Distributed Computing               quisite: consent of instructor.
                                                            (and Computational Grids) (4)
CSE 211. Software Testing and Analysis (4)                  Architecture of high performance distributed systems          CSE 230. Principles of Programming Languages (4)
Survey of testing and analysis methods. Introduction        (e.g., frameworks and middleware). High performance           (Formerly CSE 273.) Functional versus imperative pro-
to advanced topics in area as well as traditional pro-      distributed objects (DCOM, Corba, Java Beans) and             gramming. Type systems and polymorphism; the ML
duction methods. Topics include inspections and             networking with crosscut issues for performance,              language. Higher order functions, lazy evaluation.
reviews, formal analysis, verification and validation       availability, and performance predictability. Scalable        Abstract versus concrete syntax, structural and well-
standards, non-statistical testing, statistical-testing     servers, metacomputing, and scientific computing.             founded induction. The lambda calculus, reduction
and reliability models, coverage methods, testing and       Prerequisites: CSE 121 and CSE 123A or consent of             strategies, combinators. Denotational semantics, ele-
analysis tools, and organization management and             instructor.                                                   mentary domain theory. Prerequisite: CSE 130 or equiv-
planning. Methods special to special development                                                                          alent, or consent of instructor.
approaches such as object-oriented testing will also        CSE 226. Storage Systems (4)
be described. Prerequisite: undergraduate major in com-     (Formerly CSE 228B.) Secondary and tertiary storage           CSE 231. Advanced Compiler Design (4)
puter science or extensive industrial experience.           systems, optical and magnetic media, performance              (Formerly CSE 264C.) Advanced material in program-
                                                            analysis, modeling, reliability, redundant arrays of inex-    ming languages and translator systems. Topics
include compilers, code optimization, and debugging           CSE 239A. Topics/Seminar in Databases (1-4)                 CSE 244B. Testable and Fault Tolerant Hardware
interpreters. Prerequisites: CSE 100, 131A-B, or consent of   Discussion on problems of current research interest in      Design (4)
instructor.                                                   databases. Possible areas of focus include: core data-      Scan path design, BIST architectures, test point inser-
                                                              base issues, data management on the web, data inte-         tion, self-checking circuits, test and fault tolerance in
CSE 232. Principles of Database Systems (4)                   gration, new database models and applications, formal       architectural synthesis, reconfigurable fault tolerant
(Formerly CSE 264D.) Database models including rela-          methods in databases. Topics to be presented by fac-        hardware, and SOC test design. Prerequisite: CSE 244A
tional, hierarchic, and network approaches. Implemen-         ulty and students under faculty direction. Topics vary      or consent of instructor.
tation of databases including query languages and             from quarter to quarter. May be repeated for credit.
system architectures. Prerequisite: CSE 100 or consent of     Prerequisite: consent of instructor.                        CSE 245. Computer Aided Circuit Simulation and
instructor.                                                                                                               Verification (4)
                                                              CSE 240. Principles in Computer Architecture I (4)          This course is about the computer algorithms, tech-
CSE 232B. Database System Implementation (4)                  Renumbered to CSE 240A (see below).                         niques, and theory used in the simulation and verifica-
A hands-on approach to the principles of databases                                                                        tion of electrical circuits. Prerequisite: CSE 241A or
implementation. Algebraic rewriters/optimizers, query         CSE 240A. Principles of Computer Architecture (4)           consent of instructor.
processors, triggers. Beyond centralized relational           (Formerly CSE 240.) This course will cover fundamental
databases. Prerequisites: CSE 232.                            concepts in computer architecture. Topics include           CSE 246. Computer Arithmetic Algorithms and
                                                              instruction set architecture, pipelining, pipeline haz-     Hardware Design (4)
CSE 233. Database Theory (4)                                  ards, bypassing, dynamic scheduling, branch predic-         Number representation, fixed point adders, sub-
Theory of databases. Theory of query languages,               tion, superscalar issue, memory-hierarchy design,           tracters, and multipliers; modified booth’s recoding,
dependency theory, deductive databases, incomplete            advanced cache architectures, and multiprocessor            high-radix multiplication, (non)restoring dividers, SRT
information, complex objects, object-oriented data-           architecture issues. Prerequisite: CSE 141 or consent of    division, high-radix dividers, division by convergence,
bases, and more. Connections to logic and complexity          instructor.                                                 square-rooting, floating point arithmetic, rounding
theory including finite model theory and descriptive                                                                      schemes, errors and error control, and floating point
complexity. Prerequisite: CSE 200.                            CSE 241. Advanced Computer Architecture (4)                 adders, subtracters, multipliers, dividers. Prerequisite:
                                                              Renumbered to CSE 240B (see below).                         CSE 241A or consent of instructor.
CSE 237A. Introduction to Embedded Computing (4)
Embedded system technologies including processors,            CSE 240B. Advanced Computer Architecture (4)                CSE 247. Application Specific and Reconfigurable
DSP, memory, and software. System interfacing basics,         (Formerly CSE 241.) This course covers advanced top-        Computer Architecture (4)
communication strategies, sensors, and actuators.             ics in computer architecture, including multiprocessor      This course covers architecture concepts used to tailor
Mobile and wireless technology in embedded sys-               architecture, interconnection networks, cache coher-        processors to a specific application or sets of applica-
tems. Using pre-designed hardware and software                ence, cache consistency. It incorporates the latest         tions. It covers Field-Programmable Gate Arrays
components. Design case studies in wireless, multime-         research and development on topics such as branch           (FPGAs), various forms of Application Specific
dia, and/or networking domains. Prerequisites: basic          prediction, instruction-level parallelism, multithread-     Integrated Circuit (ASIC) designs, Application Specific
courses in digital hardware, algorithms and data struc-       ing, and cache hierarchy design. Prerequisite: CSE 240A     Integrated Processors (ASIP), and augmenting cus-
tures, elementary calculus, and probability; or consent of    or consent of instructor.                                   tomizable VHDL cores. Prerequisite: CSE 241A or consent
instructor.                                                                                                               of instructor.
                                                              CSE 241A/ECE 260B. VLSI Integration of Computing
CSE 237B. Software for Embedded Systems (4)                   Circuitry (4)                                               CSE 248. Algorithmic and Optimization Foundations for
Embedded computing elements, device interfaces,               VLSI integrated-circuit building blocks of computing        VLSI CAD (4)
time-critical IO handling. Embedded software design           systems, and their implementation. Computer-aided           Algorithmic techniques and optimization frameworks
under size, performance, and reliability constraints.         design and performance simulations, design exercises        for large-scale, difficult optimizations. Primal-dual mul-
Software timing and functional validation. Program-           and projects. Devices, standard cells and intercon-         ticommodity flow approximations, approximations for
ming methods and compilation for embeddable soft-             nects, clocking, power/ground distribution, arithmetic      geometric and graph Steiner formulations, continuous
ware. Embedded runtime systems. Case studies of               modules, memories. Methodologies and tradeoffs in           placement optimization, heuristics for Boolean satisfi-
real-time software systems. Prerequisites: CSE 237A; or       system implementation. Prerequisites: layout (CSE 165       ability, multilevel methods, semidefinite program-
basic courses in programming, algorithms and data             or ECE 260A) and logic design (CSE 140 or ECE 111), or      ming, and application to other formulations (e.g.,
structures, elementary calculus, discrete math, computer      consent of instructor.                                      scheduling). Prerequisites: CSE 241A or CSE 242A or con-
architecture; or consent of instructor.                                                                                   sent of instructor.
                                                              CSE 242A. Integrated Circuit Layout Automation (4)
CSE 237C. Validation and Testing of Embedded                  Couplings among timing, circuits and spatial embed-         CSE 249A. Topics/Seminar in Computer
Systems (4)                                                   ding in nanometer-scale CMOS design.The role,and key        Architecture (1-4)
Embedded system building blocks including IP cores.           problems, of physical layout in IC implementation.          Topics of special interest in computer architecture to
Co-simulation. Formal verification using mdel check-          Example topics: RTL-to-GDSII methodologies, analyses        be presented by faculty and students under faculty
ing. Verification environments. Test challenges in core       and estimations, partitioning, floor planning, place-       direction. Topics vary from quarter to quarter. May be
integration: compliance, feature, random, and collision       ment, routing, special net routing, cell generation, com-   repeated for credit. Prerequisite: consent of instructor.
testing. Core access and test integration. Interface-         paction. Prerequisite: CSE 241A or consent of instructor.
based verification and standards. Prerequisites: CSE                                                                      CSE 249B. Topics/Seminar in VLSI (1-4)
237A; or basic courses in algorithms and data structures,     CSE 243A. Introduction to Synthesis Methodologies           Topics of special interest in VLSI to be presented by
elementary calculus, discrete math, symbolic logic, com-      in VLSI CAD (4)                                             faculty and students under faculty direction. Topics
puter architecture; or consent of instructor.                 Hardware software co-design, architectural level syn-       vary from quarter to quarter. May be repeated for
                                                              thesis, control synthesis and optimization, scheduling,     credit. Prerequisite: consent of instructor.
CSE 237D. Design Automation and Prototyping for               binding, register and bus sharing, interconnect design,
Embedded Systems (4)                                          module selection, combinational logic optimization,         CSE 249C. Topics/Seminar in CAD (1-4)
System representation and modeling. Abstract and              state minimization, state encoding, and retiming.           Topics of special interest in CAD to be presented by
language models. Simulation as a modeling activity.           Prerequisite: CSE 241A or consent of instructor.            faculty and students under faculty direction. Topics
Computational and hw/sw system prototypes. System                                                                         vary from quarter to quarter. May be repeated for
analysis using models. Constraint and interface model-        CSE 244A. VLSI Test (4)                                     credit. Prerequisite: consent of instructor.
ing. Behavioral compilation and synthesis. Prerequi-          Design for test, testing economics, defects, failures and
sites: CSE 237A; or basic courses in digital logic design,    faults, fault models, fault simulation, automatic test      CSE 250A. Artificial Intelligence I (4)
algorithms and data structures, elementary calculus, dis-     pattern generation, functional testing, memory, PLA,        (Formerly CSE 278A.) Issues in knowledge representa-
crete math, symbolic logic, computer architecture; or         FPGA, microprocessor test, and fault diagnosis.             tion (using logic, semantic networks, production sys-
consent of instructor.                                        Prerequisite: CSE 241A or consent of instructor.            tems, and connectionist representations) will be the
                                                                                                                          focus of this course. A discussion of logic program-
                                                                                                                          ming languages (like PROLOG) and automatic theo-
rem proving will then lead to a discussion of heuristic     ical knowledge base design. Prerequisite: Pharm. 201 or      structure analysis. Prerequisite: Pharm. 201 or consent
search. Prerequisite: CSE 151 or equivalent.                consent of instructor.                                       of instructor.

CSE 250B. Artificial Intelligence II (4)                    CSE 257B. Algorithms in Computational Biology (4)            CSE 283/BENG 203. Bioinformatics III: Functional
(Formerly CSE 278B.) This course will discuss knowl-        Renumbered to CSE 206B (see above).                          Genomics (4)
edge representations used to search for solutions,                                                                       Annotating genomes, characterizing functional
make deductions, plan, and problem solve. The appli-        CSE 258A. Connectionists Natural Language                    genes,      profiling,   reconstructing      pathways.
cation of these techniques to expert systems will be        Processing (4)                                               Prerequisites: Pharm. 201, BENG 202/CSE 282 or consent
mentioned. Machine learning will also be a major topic      (Formerly CSE 281P.) This course will explore connec-        of instructor.
of this course. Prerequisite: CSE 250A.                     tionist (or parallel distributed processing) models and
                                                            their relation to cognitive processes. The course will       CSE 290. Seminar in Computer Science and
CSE 252A. Computer Vision I (4)                             cover various learning algorithms and the application of     Engineering (1-4)
Comprehensive introduction to computer vision pro-          the paradigm to models of language processing, mem-          (Formerly CSE 280A.) A seminar course in which top-
viding broad coverage including low-level vision            ory, sequential processes, and vision. (S/U grades permit-   ics of special interest in computer science and engi-
(image formation, photometry, color, image feature          ted.) Prerequisite: CSE 250B or equivalent experience.       neering will be presented by staff members and
detection), inferring 3-D properties from images                                                                         graduate students under faculty direction.Topics vary
(shape-from shading, stereo vision, motion interpreta-      CSE 259. Seminar in Artificial Intelligence (1)              from quarter to quarter. May be repeated for credit.
tion) and object recognition. Companion to CSE 252B         A weekly meeting featuring local (and occasional             (S/U grades only.) Prerequisite: consent of instructor.
covering complementary topics. Prerequisites: Math.         external) speakers discussing their current research in      (Offered as faculty resources permit.)
10D and Math. 20A-F or equivalent.                          Artificial Intelligence Neural Networks, and Genetic
                                                            Algorithms. (S/U grades only.) Prerequisite: none.           CSE 291. Topics in Computer Science and
CSE 252B. Computer Vision II (4)                                                                                         Engineering (1-8)
Comprehensive introduction to computer vision pro-          CSE 260. Parallel Computation (4)                            (Formerly CSE 281A). Topics of interest in computer
viding focused coverage of multiview geometry, struc-       (Formerly CSE 274A.) This course provides an overview        science and engineering. Topics may vary from quar-
ture from motion, image segmentation, motion                of parallel hardware, algorithms, models, and software.      ter to quarter. May be repeated for credit with the
segmentation, texture analysis and recognition, object      Topics include Flynn’s taxonomy, interconnection net-        consent of instructor. (S/U grades permitted.)
detection, and image-based rendering. Companion to          works, memory organization, a survey of commercially         Prerequisite: consent of instructor. (Offered as faculty
CSE 252A covering complementary topics. Prerequi-           available multiprocessors, parallel algorithm para-          resources permit.)
sites: Math. 10D and Math. 20A-F or equivalent.             digms and complexity criteria, parallel programming
                                                            environments and tools for parallel debugging, lan-          CSE 292. Faculty Research Seminar (1)
CSE 252C. Selected Topics in Vision and Learning (4)        guage specification, mapping, performance, etc.              (Formerly CSE 282.) Computer science and engineer-
Selected topics in computer vision and statistical          Prerequisite: graduate standing or consent of instructor.    ing faculty will present one hour seminars of the
pattern recognition, with an emphasis on recent                                                                          current research work in their areas of interest.
developments. Possible topics include: grouping and         CSE 262. System Support for Applications of Parallel         Prerequisite: CSE graduate status.
segmentation, object recognition and tracking, multi-       Computation (4)
ple view geometry, kernel-based methods, dimension-         This course will explore design of software support for      CSE 293. Special Project in Computer Science and
ality reduction, and mixture models. Prerequisite:          applications of parallel computation. Topics include:        Engineering (1-8)
CSE 252 or equivalent and CSE 250B or equivalent.           programming languages, run time support, portabil-           (Formerly CSE 269.) The student will conceive, design,
                                                            ity, and load balancing. The course will terminate in a      and execute a project in computer science under the
CSE 253. Neural Networks (4)                                project. Prerequisite: consent of instructor.                direction of a faculty member. The project will typi-
This course covers Hopfield networks, application to                                                                     cally include a large programming or hardware
optimization problems, layered perceptrons, recurrent       CSE 271. User Interface Design: Social and Technical         design task, but other types of projects are possible.
networks, and unsupervised learning. Programming            Issues (4)                                                   One-six units may be repeated to a total of nine units.
exercises explore model behavior, with a final project      Web technologies (HTML, Java, JavaScript, etc.) can          Prerequisite: CSE graduate student status. (S/U grades
on a cognitive science, artificial intelligence, or opti-   quickly build superb new systems, as well as phenom-         only.)
mization problem of the student’s choice. Prerequisites:    enally ugly systems that still fully meet their perform-
knowledge of C and consent of instructor. (S/U grades       ance and functional requirements. This course                CSE 294. Research Meeting in CSE (2)
permitted.)                                                 explores interface usability and representation issues,      Advanced study and analysis of active research in
                                                            with some focus on hypermedia and cooperative                computer science and computer engineering.
CSE 254. Machine Learning (4)                               work. Prerequisites: CSE 20, CSE 100, or equivalent.         Discussion of current research and literature in the
(Formerly CSE 281T.) This course will discuss a wide                                                                     research specialty of the staff member teaching the
range of techniques used to allow computers to learn        CSE 272. Advanced Appearance Modeling (4)                    course. Prerequisite: consent of instructor.
directly from experience with their environment             Computer graphics algorithms for creating a given
rather than requiring programming by humans. The            appearance. The course will cover algorithms and             CSE 298. Independent Study (1-16)
survey will span both high- and low-level learning          physics necessary to simulate light transport, light         Open to properly qualified graduate students who
techniques as well as theoretical models that allow         scattering, reflection models, subsurface scattering,        wish to pursue a problem through advanced study
these various techniques to be compared. (S/U grades        participating media, and procedural modeling and             under the direction of a member of the staff. (S/U
permitted.) Prerequisite: 250B.                             texturing. Prerequisites: CSE 168 or equivalent, or con-     grades only.) Prerequisite: consent of instructor.
                                                            sent of instructor.
CSE 256. Statistical Natural Language Processing (4)                                                                     CSE 299. Research (1-16)
An introduction to modern statistical approaches to         CSE 275. Social Aspects of Technology and Science (4)        Research. Prerequisite: consent of faculty.
natural language processing: part of speech tagging,        Note: CSE 275 is pending CEP approval. Explores
work sense disambiguation and parsing, using Markov         approaches to the sociology of technology and                CSE 500. Teaching Assistantship (2-4)
models, hidden Markov models and probabilistic con-         science, especially information technology. Topics           A course in which teaching assistants are aided in
text free grammars. Prerequisite: CSE 250B or equivalent    include requirements engineering, actor-network the-         learning proper teaching methods by means of
experience.                                                 ory, post-modernism, the Web, user interface design,         supervision of their work by the faculty: handling of
                                                            and public policy. Prerequisites: CSE 8B or CSE 11, and      discussions, preparation and grading of examinations
CSE 257. Computational Biology (4)                          background in the humanities.                                and other written exercises, and student relations.
Computational methods are indispensable to an                                                                            May be used to meet teaching experience require-
understanding of the vast datasets emerging from            CSE 282/BENG 202. Bioinformatics II: Sequence and            ment for candidates for the Ph.D. degree. Number of
human and other organisms’ genomes. This course             Structure Analysis—Methods and Applications (4)              units for credit depends on number of hours devoted
surveys algorithms underlying genome analysis,              (Formerly CSE 257A/BENG 202.) Introduction to meth-          to class or section assistance. Prerequisites: graduate
sequence alignment, phylogenetic trees, protein fold-       ods for sequence analysis. Applications to genome            standing and consent of instructor.
ing, gene expression, metabolic pathways, and biolog-       and proteome sequences. Protein structure, sequence-
CSE 501. Teaching Assistantship (2-4)
Renumbered to CSE 500 (see above).

CSE 599. Teaching Methods in Computer Science (2)
Training in teaching methods in the field of computer
science.This course examines theoretical and practical
communication and teaching techniques particularly
appropriate to computer science. Prerequisite: consent
of faculty.

Shared By: