Mathematics and Computer Science
Arkady Vaintrob and Christopher B. Wilson, Advisors
The undergraduate major in mathematics and computer science leads to a bachelor of arts or bachelor of science degree. The major combines elements of the mathematics and computer science curricula into a four-year program that offers an alternative to the undergraduate degree programs in either field. It serves students who want knowledge in both fields but are not ready to specialize in either. The courses selected for the program provide a solid foundation for professional work or for advanced study.
The program is designed to develop team players for information-based occupations. Its graduates have the tools to analyze complex problems and compute the answers to them. Consistent with its emphasis on teamwork and communication, the program requires college-level exposure to an additional scientific field and an upper-division writing course.
Students with strong mathematics backgrounds in high school are frequently advised to major in computer science at the university, often without a clear idea of what the field of study is actually like. The joint major program offers such students the chance to experiment with computer science while retaining the anchor to mathematics. It also allows students the possibility of changing easily to the single-major program in either mathematics or computer science with no loss of credit and, at least through the junior year, without jeopardizing degree completion in four years.
Careers
Graduates with this major can enter industrial positions that require computer science skills and mathematical problem-solving ability. They are particularly well suited for positions in the high-performance computing industry, developing the software tools for large-scale scientific computation. The combination of mathematics and computer science forms an excellent professional background for secondary-school mathematics teachers, and the major program also provides a solid foundation for actuarial, financial, and related professions. Graduates are also prepared to enter advanced programs of study in either mathematics or computer science, or in applied areas such as biological computational science.
Preparation
A high school student planning to major in mathematics and computer science should pursue a strong academic program with four years of mathematics. Courses in algebra, geometry, trigonometry, and more advanced topics should be included. Experience preparing substantial written reports is highly desirable.
Transfer Students
College transfer students who have completed a year of calculus should be able to fit the remaining mathematics courses for the degree into just two years, provided that they have already completed the bulk of their general-education requirements before they transfer.
Transfer students should call or write to the Department of Computer Science to determine whether computer courses they have taken can be counted toward the joint major requirements. Sequential subjects such as mathematics and computer science typically require several years to progress from introductory to senior-level courses. The joint program lets students move forward in both fields at once with limited prerequisites, making it relatively accessible to transfer students and to students who change from other major programs. Students who want to pursue the material in greater depth need to consider prerequisite paths carefully.
Students attending community college in Oregon are encouraged to obtain the Associate of Arts Oregon Transfer degree or the Associate of Science-Computer Science Transfer degree before entering the University of Oregon. While earning this degree, community college transfer students should take as much discrete mathematics, calculus, and computer science as possible, and also try to complete the science requirement for the major. The associate degree does not automatically satisfy the science requirement for this major.
Faculties and Facilities
The faculties and facilities in both the mathematics and the computer science departments are available to students in the combined major program. For detailed descriptions, see those sections of this catalog. Information is also available online.
Honors Program
Both of the cooperating departments offer departmental honors programs to their undergraduate majors. After obtaining advance approval from both of their advisors, students in the joint degree program are eligible to attain honors in mathematics and computer science by meeting the honors requirements of either department, including writing a thesis.
Preparation for Kindergarten through Secondary School Teaching Careers
The College of Education offers a fifth-year program for middle-secondary licensure in mathematics and for elementary teaching. More information is available from the mathematics department’s advisors; see also the College of Education section of this catalog.
Minor
Minors are offered by the Department of Mathematics and the Department of Computer Science. There is no joint minor in mathematics and computer science.
Undergraduate Studies
Bachelor of Arts Degree Requirements
To earn a bachelor of arts (BA) in mathematics and computer science (MACS), majors must complete the requirements for a bachelor of science (BS) and also demonstrate proficiency in a second language.
The requirements for the MACS major fall into four categories: mathematics, computer science, writing, and science, with 44 credits taken in mathematics, 40 credits in computer science, and 16 credits (science and writing) in other departments.
Computer Science I (CS 210), Computer Science II (CS 211), Computer Science III (CS 212), Elements of Discrete Mathematics I (MATH 231), and Elements of Discrete Mathematics II (MATH 232) must be passed with grades of B– or better before students can take the upper-division core courses. Courses required for the major must be taken for a letter grade. Upper-division courses must be passed with a grade of C– or better.
Code | Title | Credits |
---|---|---|
Core Courses | ||
CS 210–212 | Computer Science I-III | 12 |
MATH 231–232 | Elements of Discrete Mathematics I-II | 8 |
MATH 251–253 | Calculus I-III | 12 |
or MATH 261–263 | Calculus with Theory I-III | |
Mathematics Requirements | ||
Select one of the following: | ||
Fundamentals of Analysis I | ||
Fundamentals of Number Theory I | ||
Fundamentals of Abstract Algebra I | ||
MATH 341–342 | Elementary Linear Algebra | 8 |
MATH 351–352 | Elementary Numerical Analysis I-II | 8 |
or MATH 461–462 | Introduction to Mathematical Methods of Statistics I-II | |
Upper-level mathematics course 1 | 4 | |
Computer Science | ||
CS 313 | Intermediate Data Structures | 4 |
CS 314 | Computer Organization | 4 |
CS 315 | Intermediate Algorithms | 4 |
CS 425 | Principles of Programming Languages | 4 |
Select one of the following: | 4 | |
Introduction to Software Engineering | ||
C/C++ and Unix | ||
Automata Theory | ||
Software Methodology I | ||
Two other upper-division CS courses 2 | 8 | |
Writing Requirements | ||
WR 320 | Scientific and Technical Writing | 4 |
or WR 321 | Business Communications | |
Science Requirements | ||
Select 12 credits from the following: | 12 | |
Biology 3 | ||
General Biology I: Cells and General Biology III: Populations | ||
or BI 211–212 | General Biology I-II | |
Chemistry 3 | ||
Introduction to Chemical Principles | ||
or CH 113 | The Chemistry of Sustainability | |
or CH 221 | General Chemistry I | |
or CH 224H | Advanced General Chemistry I | |
General Chemistry | ||
or CH 224H–226H | Honors General Chemistry | |
Geography | ||
The Natural Environment | ||
Select two of the following: | ||
Climatology | ||
Geomorphology | ||
Biogeography | ||
Earth Sciences | ||
Dynamic Planet Earth | ||
Earth's Surface and Environment | ||
History of Life | ||
Physics 3 | ||
General Physics | ||
or PHYS 251–253 | Foundations of Physics I | |
Psychology | ||
Mind and Brain | ||
Select two of the following: | ||
Scientific Thinking in Psychology | ||
Cognition | ||
Biopsychology | ||
Music and the Brain | ||
Total Credits | 96 |
1 | Excludes Statistical Methods I-II (MATH 425–426) |
2 | Special Studies: [Topic] (CS 399) and Experimental Course: [Topic] (CS 410) courses used as electives must have a prerequisite of Intermediate Data Structures (CS 313) and have regular class meetings and homework assignments. At least one course must be numbered 410 or above. |
3 | Students are encouraged to complete the accompanying lab courses. |
Bachelor of Science Degree Requirements
The requirements for the mathematics and computer science (MACS) major fall into four categories: mathematics, computer science, writing, and science, with 44 credits taken in mathematics, 40 credits in computer science, and 16 credits (science and writing) in other departments.
Computer Science I (CS 210), Computer Science II (CS 211), Computer Science III (CS 212), Elements of Discrete Mathematics I (MATH 231), and Elements of Discrete Mathematics II (MATH 232) must be passed with grades of B– or better before students can take the upper-division core courses. Courses required for the major must be taken for a letter grade. Upper-division courses must be passed with a grade of C– or better.
Code | Title | Credits |
---|---|---|
Core Courses | ||
CS 210–212 | Computer Science I-III | 12 |
MATH 231–232 | Elements of Discrete Mathematics I-II | 8 |
MATH 251–253 | Calculus I-III | 12 |
or MATH 261–263 | Calculus with Theory I-III | |
Mathematics Requirements | ||
Select one of the following: | ||
Fundamentals of Analysis I | ||
Fundamentals of Number Theory I | ||
Fundamentals of Abstract Algebra I | ||
MATH 341–342 | Elementary Linear Algebra | 8 |
MATH 351–352 | Elementary Numerical Analysis I-II | 8 |
or MATH 461–462 | Introduction to Mathematical Methods of Statistics I-II | |
Upper-level mathematics course 1 | 4 | |
Computer Science | ||
CS 313 | Intermediate Data Structures | 4 |
CS 314 | Computer Organization | 4 |
CS 315 | Intermediate Algorithms | 4 |
CS 425 | Principles of Programming Languages | 4 |
Select one of the following: | 4 | |
Introduction to Software Engineering | ||
C/C++ and Unix | ||
Automata Theory | ||
Software Methodology I | ||
Two other upper-division CS courses 2 | 8 | |
Writing Requirements | ||
WR 320 | Scientific and Technical Writing | 4 |
or WR 321 | Business Communications | |
Science Requirements | ||
Select 12 credits from the following: | 12 | |
Biology 3 | ||
General Biology I: Cells and General Biology III: Populations | ||
or BI 211–212 | General Biology I-II | |
Chemistry 3 | ||
Introduction to Chemical Principles | ||
or CH 113 | The Chemistry of Sustainability | |
or CH 221 | General Chemistry I | |
or CH 224H | Advanced General Chemistry I | |
General Chemistry | ||
or CH 224H–226H | Honors General Chemistry | |
Geography | ||
The Natural Environment | ||
Select two of the following: | ||
Climatology | ||
Geomorphology | ||
Biogeography | ||
Earth Sciences | ||
Dynamic Planet Earth | ||
Earth's Surface and Environment | ||
History of Life | ||
Physics 3 | ||
General Physics | ||
or PHYS 251–253 | Foundations of Physics I | |
Psychology | ||
Mind and Brain | ||
Select two of the following: | ||
Scientific Thinking in Psychology | ||
Biopsychology | ||
Cognition | ||
Music and the Brain | ||
Total Credits | 96 |
1 | Excludes Statistical Methods I-II (MATH 425–426) |
2 | Special Studies: [Topic] (CS 399) and Experimental Course: [Topic] (CS 410) courses used as electives must have a prerequisite of Intermediate Data Structures (CS 313) and have regular class meetings and homework assignments. At least one course must be numbered 410 or above. |
3 | Students are encouraged to complete the accompanying lab courses. |
Additional Bachelor Requirements
Students must earn no grade below a B– in required lower-division mathematics and computer science courses—Computer Science I (CS 210), Computer Science II (CS 211), Computer Science III (CS 212), Elements of Discrete Mathematics I (MATH 231), Elements of Discrete Mathematics II (MATH 232)—for automatic advancement to upper-division computer science courses. At least 12 of the mathematics upper-division credits applied to the degree must be taken in residence at the university. The science courses may be taken pass/no pass (P/N) or for letter grades.
Advising and Program Planning
Since both mathematics and computer science are sequential subjects, it is especially important that a student planning for this combined major consult closely with an advisor to develop a degree plan.
Programming Experience
Students who take Computer Science I (CS 210) are expected to have completed Elementary Functions (MATH 112) or the equivalent. Students who do not have the required mathematical background are strongly encouraged to take one or more introduction to programming courses such as Introduction to Programming and Problem Solving (CS 122) along with their math preparation courses. Students who are unsure about their level of preparation for CS 210 should meet with an advisor.
Sequence of Courses
Elements of Discrete Mathematics I-II (MATH 231–232) and Computer Science I-III (CS 210–212) go well together, as do calculus and physics. Students with advanced placement credit in calculus may want to take Elements of Discrete Mathematics I-II (MATH 231–232) and Computer Science I-III (CS 210–212) in the freshman year. Students with no programming experience may prefer to take Introduction to Programming and Problem Solving (CS 122), Calculus I-III (MATH 251–253), and the major science requirement in the freshman year. In the sophomore year, students should take whichever of calculus or computer science was not taken freshman year, and continue into the 300 level of the branch that was taken.
Major Progress Review and Major in Good Standing
Each major must meet with a CS advisor to file a Major Progress Review form after completing 12 credits of the upper-division core, including at least one course from each department. Mathematics and computer science courses and at least 8 credits of upper-division CS courses used to satisfy upper-division major requirements must be taken for letter grades and passed with grades of C– or better. At least 12 of the upper-division mathematics credits and 12 of the upper-division computer science credits applied to the degree must be taken in residence at the university. A student who receives two grades below C– in the upper-division core or three grades below C– in any upper-division courses may be removed from the major.
Code | Title | Credits |
---|---|---|
MATH 316 | Fundamentals of Analysis I | 4 |
MATH 341–342 | Elementary Linear Algebra | 8 |
CS 313 | Intermediate Data Structures | 4 |
CS 314 | Computer Organization | 4 |
CS 315 | Intermediate Algorithms | 4 |
CS 425 | Principles of Programming Languages | 4 |
One of the following: | 4 | |
CS 330 | C/C++ and Unix | 4 |
CS 420 | Automata Theory | 4 |
CS 422 | Software Methodology I | 4 |
Four-Year Degree Plan
The degree plan shown is only a sample of how students may complete their degrees in four years. There are alternative ways. Students should consult their advisor to determine the best path for them.
Bachelor of Arts in Mathematics and Computer Science
First Year | |||
---|---|---|---|
Fall | Milestones | Credits | |
CS 122 | Introduction to Programming and Problem Solving | 4 | |
MATH 112 | Elementary Functions | 4 | |
WR 121 | College Composition I | 4 | |
First term of second-year second-language sequence | 4 | ||
Credits | 16 | ||
Winter | |||
CS 210 | Computer Science I | 4 | |
MATH 231 | Elements of Discrete Mathematics I | 4 | |
WR 122 or WR 123 |
College Composition II or College Composition III |
4 | |
Second term of second-year second-language sequence | 4 | ||
Credits | 16 | ||
Spring | |||
CS 211 | Computer Science II | 4 | |
MATH 232 | Elements of Discrete Mathematics II | 4 | |
Core-education course in arts and letters | 4 | ||
Third term of second-year second-language sequence | 4 | ||
Credits | 16 | ||
Total Credits | 48 |
Second Year | |||
---|---|---|---|
Fall | Milestones | Credits | |
CS 212 | Computer Science III | 4 | |
MATH 251 |
Calculus I or Calculus for the Biological Sciences I or Calculus with Theory I |
4 | |
First course of additional science sequence | 4 | ||
Core-education course in social science | 4 | ||
Credits | 16 | ||
Winter | |||
CS 313 | Intermediate Data Structures | 4 | |
MATH 252 |
Calculus II or Calculus for the Biological Sciences II or Calculus with Theory II |
4 | |
Second course of additional science sequence | 4 | ||
Core-education arts and letters | 4 | ||
Credits | 16 | ||
Spring | |||
CS 315 | Intermediate Algorithms | 4 | |
MATH 253 or MATH 263 |
Calculus III or Calculus with Theory III |
4 | |
Third course of additional science sequence | 4 | ||
Core-education social science | 4 | ||
Credits | 16 | ||
Total Credits | 48 |
Third Year | |||
---|---|---|---|
Fall | Milestones | Credits | |
CS 314 | Computer Organization | 4 | |
MATH 316 |
Fundamentals of Analysis I or Fundamentals of Number Theory I or Fundamentals of Abstract Algebra I |
4 | |
CS 322 | Introduction to Software Engineering | 4 | |
Core-education course in arts and letters | 4 | ||
Credits | 16 | ||
Winter | |||
CS 322 | Introduction to Software Engineering | 4 | |
MATH 341 | Elementary Linear Algebra | 4 | |
Core-education course in social science | 4 | ||
Core-education course in arts and letters that also satisfies cultural literacy requirement | 4 | ||
Credits | 16 | ||
Spring | |||
CS 425 | Principles of Programming Languages | 4 | |
MATH 342 | Elementary Linear Algebra | 4 | |
Core-education course in social science that also satisfies cultural literacy requirement | 4 | ||
Elective course | 4 | ||
Credits | 16 | ||
Total Credits | 48 |
Fourth Year | |||
---|---|---|---|
Fall | Milestones | Credits | |
MATH 351 or MATH 461 |
Elementary Numerical Analysis I or Introduction to Mathematical Methods of Statistics I |
4 | |
Upper-division elective course with CS subject code | 4 | ||
Elective course | 4 | ||
Credits | 12 | ||
Winter | |||
MATH 352 or MATH 462 |
Elementary Numerical Analysis II or Introduction to Mathematical Methods of Statistics II |
4 | |
Upper-division elective course with CS subject code | 4 | ||
Elective course | 4 | ||
Credits | 12 | ||
Spring | |||
WR 320 or WR 321 |
Scientific and Technical Writing or Business Communications |
4 | |
Upper-division elective course with MATH subject code | 4 | ||
Elective course | 4 | ||
Credits | 12 | ||
Total Credits | 36 |
Bachelor of Science in Mathematics and Computer Science
First Year | |||
---|---|---|---|
Fall | Milestones | Credits | |
MATH 112 | Elementary Functions | 4 | |
CS 122 | Introduction to Programming and Problem Solving | 4 | |
WR 121 | College Composition I | 4 | |
Core-education course in arts and letters | 4 | ||
Credits | 16 | ||
Winter | |||
MATH 231 | Elements of Discrete Mathematics I | 4 | |
CS 210 | Computer Science I | 4 | |
WR 122 | College Composition II | 4 | |
Core-education course in social science | 4 | ||
Credits | 16 | ||
Spring | |||
MATH 232 | Elements of Discrete Mathematics II | 4 | |
CS 211 | Computer Science II | 4 | |
Core-education course in arts and letters | 4 | ||
Core-education course in social science | 4 | ||
Credits | 16 | ||
Total Credits | 48 |
Second Year | |||
---|---|---|---|
Fall | Milestones | Credits | |
MATH 251 | Calculus I | 4 | |
CS 212 | Computer Science III | 4 | |
Core-education course in arts and letters also satisfies a cultural literacy requirement | 4 | ||
First course of additional science sequence | 4 | ||
Credits | 16 | ||
Winter | |||
CS 313 | Intermediate Data Structures | 4 | |
MATH 247 |
Calculus for the Biological Sciences II or Calculus II or Calculus with Theory II |
4 | |
Second course of additional science sequence | 4 | ||
Core-education course in social science also satisfies a cultural literacy requirement | 4 | ||
Credits | 16 | ||
Spring | |||
CS 315 | Intermediate Algorithms | 4 | |
MATH 253 or MATH 263 |
Calculus III or Calculus with Theory III |
4 | |
Third course of additional science sequence | 4 | ||
Core-education course in social science | 4 | ||
Credits | 16 | ||
Total Credits | 48 |
Third Year | |||
---|---|---|---|
Fall | Milestones | Credits | |
CS 314 | Computer Organization | 4 | |
MATH 316 |
Fundamentals of Analysis I or Fundamentals of Number Theory I or Fundamentals of Abstract Algebra I |
4 | |
CS 322 | Introduction to Software Engineering | 4 | |
Core-education course in arts and letters | 4 | ||
Credits | 16 | ||
Winter | |||
CS 322 | Introduction to Software Engineering | 4 | |
MATH 341 | Elementary Linear Algebra | 4 | |
Elective courses | 8 | ||
Credits | 16 | ||
Spring | |||
CS 425 | Principles of Programming Languages | 4 | |
MATH 342 | Elementary Linear Algebra | 4 | |
Elective courses | 8 | ||
Credits | 16 | ||
Total Credits | 48 |
Fourth Year | |||
---|---|---|---|
Fall | Milestones | Credits | |
Elective course with a CS subject code | 4 | ||
MATH 351 or MATH 461 |
Elementary Numerical Analysis I or Introduction to Mathematical Methods of Statistics I |
4 | |
Elective course | 4 | ||
Credits | 12 | ||
Winter | |||
Elective course with a CS subject code | 4 | ||
MATH 352 or MATH 462 |
Elementary Numerical Analysis II or Introduction to Mathematical Methods of Statistics II |
4 | |
Elective course | 4 | ||
Credits | 12 | ||
Spring | |||
Elective course with MATH subject code | 4 | ||
WR 320 or WR 321 |
Scientific and Technical Writing or Business Communications |
4 | |
Elective course | 4 | ||
Credits | 12 | ||
Total Credits | 36 |
Computer Science Courses

CS 102. Fundamentals of Computer and Information Security. 4 Credits.
This course introduces fundamental concepts, terminologies, principles, methods, and scenarios of computer and information security.

CS 110. Fluency with Information Technology. 4 Credits.
Introduction to information technology (IT), the study of computer-based information systems. Basics of the Internet and World Wide Web. Students create websites using XHTML and CSS.

CS 111. Introduction to Web Programming. 4 Credits.
Project-based approach to learning computer programming by building interactive web pages using JavaScript and XHTML. Programming concepts including structured and object-oriented program design. CS 110 recommended preparation.
Prereq: MATH 101 or equivalent.

CS 122. Introduction to Programming and Problem Solving. 4 Credits.
Computational problem solving, algorithm design, data structures, and programming using a multi-paradigm programming language. Introduces techniques for program design, testing, and debugging.
Prereq: MATH 101 or equivalent.

CS 196. Field Studies: [Topic]. 1-2 Credits.
Repeatable.

CS 198. Workshop: [Topic]. 1-2 Credits.
Repeatable.

CS 199. Special Studies in Computer Science: [Topic]. 1-5 Credits.
Repeatable.

CS 199L. Special Studies in Computer Science: [Topic]. 1-5 Credits.
Repeatable.

CS 210. Computer Science I. 4 Credits.
Basic concepts and practices of computer science. Topics include algorithmic problem solving, levels of abstraction, object-oriented design and programming, software organization, analysis of algorithm and data structures. Sequence with CS 211, CS 212.
Prereq: MATH 112. Prior programming experience strongly encouraged.

CS 211. Computer Science II. 4 Credits.
Basic concepts and practices of computer science. Topics include algorithmic problem solving, levels of abstraction, object-oriented design and programming, software organization, analysis of algorithm and data structures. Sequence with CS 210, CS 212.
Prereq: CS 210.

CS 212. Computer Science III. 4 Credits.
Basic concepts and practices of computer science. Topics include algorithmic problem solving, levels of abstraction, object-oriented design and programming, software organization, analysis of algorithm and data structures. Sequence with CS 210, CS 211.
Prereq: CS 211.

CS 313. Intermediate Data Structures. 4 Credits.
Design and analysis of data structures as means of engineering efficient software; attention to data abstraction and encapsulation. Lists, trees, heaps, stacks, queues, dictionaries, priority queues.
Prereq: CS 210, CS 211, CS 212, MATH 231, MATH 232 with grades of B- or better.

CS 314. Computer Organization. 4 Credits.
Introduction to computer organization and instruction-set architecture -- digital logic design, binary arithmetic, design of central processing unit and memory, machine-level programming.
Prereq: CS 210, CS 211, CS 212 with grades of B- or better.

CS 315. Intermediate Algorithms. 4 Credits.
Algorithm design, worst-case and average-behavior analysis, correctness, computational complexity.
Prereq: CS 313.

CS 322. Introduction to Software Engineering. 4 Credits.
A project-intensive introduction to software engineering intended to build skills, knowledge, and habits of mind that prepare students for 400-level computer science courses, internships, and other software.
Prereq: CS 210, CS 211, CS 212 with grades of B- or better.

CS 330. C/C++ and Unix. 4 Credits.
Practical software design and programming activities in a C/C++ and Unix environment, with emphasis on the details of C/C++ and good programming style and practices.
Prereq: CS 314.

CS 333. Applied Cryptography. 4 Credits.
This course provides a systematic study of cryptography and its application. It covers cryptographic algorithms, including symmetric-key cryptography, public-key cryptography, cryptanalysis, cryptographic hash functions, and their usage toward message authentication codes, digital signatures, key management and distribution, and user authentication protocols.
Prereq: CS 212.

CS 372M. Machine Learning for Data Science. 4 Credits.
Introduction to Machine Learning, with an emphasis on topics relevant for data science. Multilisted with DSCI 372M.
Prereq: CS 212, DSCI 345M, MATH 342.

CS 399. Special Studies: [Topic]. 1-5 Credits.
Repeatable when the topic changes.

CS 400M. Temporary Multilisted Course. 1-5 Credits.
Repeatable

CS 406. Practicum: [Topic]. 1-2 Credits.
Supervised consulting. Students provide learning assistance in computer science courses. Repeatable for a maximum of 4 credits.
Prereq: CS 313.

CS 407. Seminar: [Topic]. 1-5 Credits.
Repeatable when the topic changes. Opportunity to study in greater depth specific topics arising out of other courses.
Prereq: CS 313.

CS 410. Experimental Course: [Topic]. 1-5 Credits.
Repeatable when the topic changes.

CS 413. Advanced Data Structures. 4 Credits.
Complex structures, storage management, sorting and searching, hashing, storage of texts, and information compression.
Prereq: CS 315.

CS 415. Operating Systems. 4 Credits.
Principles of operating system design. Process and memory management, concurrency, scheduling, input-output and file systems, security.
Prereq: CS 330.

CS 420. Automata Theory. 4 Credits.
Provides a mathematical basis for computability and complexity. Models of computation, formal languages, Turing machines, solvability. Nondeterminism and complexity classes.
Prereq: CS 315.

CS 422. Software Methodology I. 4 Credits.
Technical and nontechnical aspects of software development, including specification, planning, design, development, management and maintenance of software projects. Student teams complete projects.
Prereq: CS 313.

CS 423. Software Methodology II. 4 Credits.
Application of concepts and methodologies covered in CS 422/CS 522. Student teams complete a large system design and programming project. Final system specification, test plan, user documentation, and system walk throughs.
Prereq: CS 422 with a grade of B- or better.

CS 425. Principles of Programming Languages. 4 Credits.
Syntax and semantics. Scope rules, environments, stores, denoted and expressed values, procedures, and parameters. Definitional interpreters. Types, overloading, parametric polymorphism, and inheritance. Varieties of abstraction.
Prereq: CS 315.

CS 429. Computer Architecture. 4 Credits.
RISC (reduced instruction-set computer) and CISC (complex instruction-set computer) design, storage hierarchies, high-performance processor design, pipelining, vector processing, networks, performance analysis.
Prereq: CS 313, CS 314, CS 330.

CS 431. Introduction to Parallel Computing. 4 Credits.
Parallel architecture, theory, algorithms, and programming with emphasis on parallel programming, focusing on models, languages, libraries, and runtime systems.
Prereq: CS 330.

CS 432. Introduction to Networks. 4 Credits.
Principles of computer network design. Link technologies, packet switching, routing, inter-networking, reliability. Internet protocols. Programming assignments focus on protocol design.
Prereq: CS 330. CS 415 recommended.

CS 433. Computer and Network Security. 4 Credits.
Security for various aspects of computers and networks. Elementary cryptography, program security, trusted operating systems, network security, privacy, and legal and ethical issues.
Prereq: CS 415.

CS 434. Computer and Network Security II. 4 Credits.
This course covers security threats and solutions for distributed systems and networks, particularly the Internet, the Internet of Things, and distributed systems based on them.
Prereq: CS 432, CS 433.

CS 436. Secure Software Development. 4 Credits.
This course establishes a foundation for applying security principles to the lifecycle of software development in order to minimize software vulnerabilities and counter cyber threats.
Prereq: CS 330.

CS 441. Introduction to Computer Graphics. 4 Credits.
Introduction to the hardware, geometrical transforms, interaction techniques, and shape representation schemes that are important in interactive computer graphics. Programming assignments using contemporary graphics hardware and software systems.
Prereq: CS 330.

CS 443. User Interfaces. 4 Credits.
Introduction to user interface software engineering. Emphasis on theory of interface design, understanding the behavior of the user, and implementing programs on advanced systems.
Prereq: CS 313.

CS 445. Modeling and Simulation. 4 Credits.
Theoretical foundations and practical problems for the modeling and computer simulation of discrete and continuous systems. Simulation languages, empirical validation, applications in computer science.
Prereq: CS 315, CS 330.

CS 451. Database Processing. 4 Credits.
Fundamental concepts of DBMS. Data modeling, relational models and normal forms. File organization and index structures. SQL, embedded SQL, and concurrency control.
Prereq: CS 313, CS 314.

CS 453. Data Mining. 4 Credits.
Databases, machine learning, artificial intelligence, statistics, and data visualization. Examines data warehouses, data preprocessing, association and classification rule mining, and cluster analysis.
Prereq: CS 451/CS 551.

CS 461. Introduction to Compilers. 4 Credits.
Lexical analysis, parsing, attribution, code generation.
Prereq: CS 314, CS 425. CS 420 strongly recommended.

CS 471. Introduction to Artificial Intelligence. 4 Credits.
Basic themes, issues, and techniques of artificial intelligence, including agent architecture, knowledge representation and reasoning, problem solving and planning, game playing, and learning.
Prereq: CS 315.

CS 472. Machine Learning. 4 Credits.
A broad introduction to machine learning and its established algorithms. Topics include concept learning, decision trees, neural network.
Prereq: CS 315.

CS 473. Probabilistic Methods for Artificial Intelligence. 4 Credits.
Fundamental techniques for representing problems as probability distributions, performing inference, and learning from data. Topics include Bayesian and Markov networks, variable elimination, loopy belief propagation, and parameter.
Prereq: CS 315.

CS 500M. Temporary Multilisted Course. 1-5 Credits.
Repeatable.

CS 503. Thesis. 1-16 Credits.
Repeatable.

CS 507. Seminar: [Topic]. 1-5 Credits.
Repeatable. Opportunity to study in greater depth specific topics arising out of other courses.

CS 508. Workshop: [Topic]. 1-21 Credits.
Repeatable.

CS 510. Experimental Course: [Topic]. 1-5 Credits.
Repeatable.

CS 513. Advanced Data Structures. 4 Credits.
Complex structures, storage management, sorting and searching, hashing, storage of texts, and information compression.

CS 520. Automata Theory. 4 Credits.
Provides a mathematical basis for computability and complexity. Models of computation, formal languages, Turing machines, solvability. Nondeterminism and complexity classes.

CS 522. Software Methodology I. 4 Credits.
Technical and nontechnical aspects of software development, including specification, planning, design, development, management and maintenance of software projects. Student teams complete projects.

CS 523. Software Methodology II. 4 Credits.
Student teams complete a large system design and programming project. Final system specifications, test plan, user documentation, and system walk-through.
Prereq: CS 522.

CS 529. Computer Architecture. 4 Credits.
RISC (reduced instruction-set computer) and CISC (complex instruction-set computer) design, storage hierarchies, high-performance processor design, pipelining, vector processing, networks, performance analysis.

CS 531. Introduction to Parallel Computing. 4 Credits.
Parallel architecture, theory, algorithms, and programming with emphasis on parallel programming, focusing on models, languages, libraries, and runtime systems.

CS 532. Introduction to Networks. 4 Credits.
Principles of computer network design. Link technologies, packet switching, routing, inter-networking, reliability. Internet protocols. Programming assignments focus on protocol design.

CS 533. Computer and Network Security. 4 Credits.
Security for various aspects of computers and networks. Elementary cryptography,program security, trusted operating systems, network security, privacy, and legal and ethical issues.

CS 534. Computer and Network Security II. 1-4 Credits.
This course covers security threats and solutions for distributed systems and networks, particularly the Internet, the Internet of Things, and distributed systems based on them.
Prereq: CS 532, CS 533.

CS 536. Secure Software Development. 4 Credits.
This course establishes a foundation for applying security principles to the lifecycle of software development in order to minimize software vulnerabilities and counter cyber threats.

CS 541. Introduction to Computer Graphics. 4 Credits.
Introduction to the hardware, geometrical transforms, interaction techniques, and shape representation schemes that are important in interactive computer graphics. Programming assignments using contemporary graphics hardware and software systems.

CS 543. User Interfaces. 4 Credits.
Introduction to user interface software engineering. Emphasis on theory of interface design, understanding the behavior of the user, and implementing programs on advanced systems.

CS 545. Modeling and Simulation. 4 Credits.
Theoretical foundations and practical problems for the modeling and computer simulation of discrete and continuous systems. Simulation languages, empirical validation, applications in computer science.

CS 551. Database Processing. 4 Credits.
Fundamental concepts of DBMS. Data modeling, relational models and normal forms. File organization and index structures. SQL, embedded SQL, and concurrency control.

CS 553. Data Mining. 4 Credits.
Databases, machine learning, artificial intelligence, statistics, and data visualization. Examines data warehouses, data preprocessing, association and classification rule mining, and cluster analysis.
Prereq: CS 551.

CS 561. Introduction to Compilers. 4 Credits.
Lexical analysis, parsing, attribution, code generation.
Prereq: CS 314 or equivalent. CS 520 strongly recommended.

CS 571. Introduction to Artificial Intelligence. 4 Credits.
Basic themes, issues, and techniques of artificial intelligence, including agent architecture, knowledge representation and reasoning, problem solving and planning, game playing, and learning.

CS 572. Machine Learning. 4 Credits.
A broad introduction to machine learning and its established algorithms. Topics include concept learning, decision trees, neural network.

CS 573. Probabilistic Methods for Artificial Intelligence. 4 Credits.
Fundamental techniques for representing problems as probability distributions, performing inference, and learning from data. Topics include Bayesian and Markov networks, variable elimination, loopy belief propagation, and parameter.

CS 601. Research: [Topic]. 1-16 Credits.
Repeatable.

CS 602. Supervised College Teaching. 1-5 Credits.
Repeatable.

CS 603. Dissertation. 1-16 Credits.
Repeatable.

CS 604. Internship: [Topic]. 1-4 Credits.
Repeatable.

CS 605. Reading and Conference: [Topic]. 1-16 Credits.
Repeatable.

CS 606. Field Studies: [Topic]. 1-16 Credits.
Repeatable.

CS 607. Seminar: [Topic]. 1-5 Credits.
Repeatable. Research topics are presented.

CS 608. Workshop: [Topic]. 1-16 Credits.
Repeatable.

CS 609. Terminal Project. 1-16 Credits.
Repeatable. Final project for master's degree without thesis.

CS 610. Experimental Course: [Topic]. 1-5 Credits.
Repeatable.

CS 621. Algorithms and Complexity. 4 Credits.
Design and analysis of algorithms, strategies for efficient algorithms, introduction to complexity theory including NP-completeness.
Prereq: CS 520 recommended.

CS 624. Structure of Programming Languages. 4 Credits.
Introduction to axiomatic, operational, and denotational semantics. Environments, stores, and continuations. Type theory, subtypes, polymorphism, and inheritance. Functional and logic programming.

CS 630. Distributed Systems. 4 Credits.
Principles of distributed computer systems: interprocess communication, distributed file systems, distributed timing and synchronization, distributed programming, transactions, process scheduling, distributed shared memory.
Prereq: CS 529.

CS 631. Parallel Processing. 4 Credits.
Advanced topics in parallel processing including massively parallel computer architecture, supercomputers, parallelizing compiler technology, performance evaluation, parallel programming languages, parallel applications.
Prereq: CS 529.

CS 632. Computer Networks. 4 Credits.
Advanced issues in computer networks, focusing on research to extend the services offered by the Internet.
Prereq: CS 532.

CS 633. Advanced Network Security. 4 Credits.
Classic and state-of-the-art research topics in network security; threats and attacks, defense algorithms and mechanisms, measurement and evaluation of both security problems and solutions. Offered alternate years.
Prereq: CS 533.

CS 640. Writing in Computer Research. 2 Credits.
Students learn to provide and accept constructive criticism of writing samples in a workshop format.

CS 670. Data Science. 4 Credits.
Data science is the development of methods to study large and complex data sets. Methods that scale to very large data sets are of particular interest. This course introduces state-of-art data science methods focused on processing very large data sets of real-world data.
Prereq: CS 551.
Mathematics Courses

MATH 099. Special Studies: [Topic]. 1-2 Credits.
Credit for enrollment (eligibility) but not for graduation; satisfies no university or college requirement. Repeatable.

MATH 101. Foundations of Algebra and Mathematical Modeling. 4 Credits.
Critical elements of pre-college algebra, topics including equation solving; rational, radical, and polynomial expression evaluation and simplification; lines, linear equations, and quadratic equations. Focus on mathematical modeling and preparation for additional college level mathematics.
Prereq: UO Math Placement Exam with a score of 35-48.

MATH 105. University Mathematics I. 4 Credits.
Topics include logic, sets and counting, probability, and statistics. Instructors may include historical context of selected topics and applications to finance and biology.
Prereq: MATH 101 or satisfactory placement test score.

MATH 106. University Mathematics II. 4 Credits.
Topics include mathematics of finance, applied geometry, exponential growth and decay, and a nontechnical introduction to the concepts of calculus.
Prereq: MATH 101 or satisfactory placement test score.

MATH 107. University Mathematics III. 4 Credits.
Topics chosen from modular arithmetic and coding, tilings and symmetry, voting methods, apportionment, fair division, introductory graph theory, or scheduling.
Prereq: MATH 101 or satisfactory placement test score.

MATH 111. College Algebra. 4 Credits.
Algebra needed for calculus including graph sketching, algebra of functions, polynomial functions, rational functions, exponential and logarithmic functions, linear and nonlinear functions.
Prereq: MATH 101 or satisfactory placement test score.

MATH 112. Elementary Functions. 4 Credits.
Exponential, logarithmic, and trigonometric functions. Intended as preparation for MATH 251.
Prereq: MATH 111 or satisfactory placement test score.

MATH 199. Special Studies: [Topic]. 1-5 Credits.
Repeatable.

MATH 201. Algebra Math Lab. 2 Credits.
Exploratory course in mathematics. Course focuses on techniques of mathematical exploration and discovery, the language of mathematics, and foundational issues. Topics from algebra.

MATH 202. Geometry Math Lab. 2 Credits.
Exploratory course in mathematics. Course focuses on techniques of mathematical exploration and discovery, the language of mathematics, and foundational issues. Topics from geometry.

MATH 203. Analysis and Number Theory Math Lab. 2 Credits.
Exploratory course in mathematics. Course focuses on techniques of mathematical exploration and discovery, the language of mathematics, and foundational issues. Topics from analysis and the theory of numbers.

MATH 204. Probability and Statistics Math Lab. 2 Credits.
Exploratory course in mathematics. Course focuses on techniques of mathematical exploration and discovery, the language of mathematics, and foundational issues. Topics from probability and statistics.

MATH 205. Foundations Math Lab. 2 Credits.
Exploratory course in mathematics. Course focuses on techniques of mathematical exploration and discovery, the language of mathematics, and foundational issues. Topics from the foundations of mathematics.

MATH 206. Combinatorics Math Lab. 2 Credits.
Exploratory course in mathematics. Course focuses on techniques of mathematical exploration and discovery, the language of mathematics, and foundational issues. Topics from combinatorics.

MATH 211. Fundamentals of Elementary Mathematics I. 4 Credits.
Structure of the number system, logical thinking, topics in geometry, simple functions, and basic statistics and probability. Calculators, concrete materials, and problem solving are used when appropriate. Covers the mathematics needed to teach grades K–8. Sequence.
Prereq: MATH 101, MATH 111, or satisfactory placement score.

MATH 212. Fundamentals of Elementary Mathematics II. 4 Credits.
Structure of the number system, logical thinking, topics in geometry, simple functions, and basic statistics and probability. Calculators, concrete materials, and problem solving are used when appropriate. Covers the mathematics needed to teach grades K–8. Sequence.
Prereq: MATH 211, C- or better.

MATH 213. Fundamentals of Elementary Mathematics III. 4 Credits.
Structure of the number system, logical thinking, topics in geometry, simple functions, and basic statistics and probability. Calculators, concrete materials, and problem solving are used when appropriate. Covers the mathematics needed to teach grades K–8. Sequence.
Prereq: MATH 212, C- or better.

MATH 231. Elements of Discrete Mathematics I. 4 Credits.
Sets, mathematical logic, induction, sequences, and functions. Sequence.
Prereq: MATH 112 or satisfactory placement test score.

MATH 232. Elements of Discrete Mathematics II. 4 Credits.
Relations, theory of graphs and trees with applications, permutations and combinations.
Prereq: MATH 231.

MATH 241. Calculus for Business and Social Science I. 4 Credits.
Introduction to topics in differential and integral calculus including some aspects of the calculus of several variables. Sequence. Students cannot receive credit for more than one of MATH 241, MATH 246, MATH 251.
Prereq: MATH 111 or satisfactory placement test score; a programmable calculator capable of displaying function graphs.

MATH 242. Calculus for Business and Social Science II. 4 Credits.
Introduction to topics in differential and integral calculus including some aspects of the calculus of several variables. Students cannot receive credit for more than one of MATH 242, MATH 247, MATH 252.
Prereq: MATH 241.

MATH 243. Introduction to Methods of Probability and Statistics. 4 Credits.
Discrete and continuous probability, data description and analysis, sampling distributions, emphasizes confidence intervals and hypothesis testing. Students cannot receive credit for both MATH 243 and MATH 425.
Prereq: MATH 101 or satisfactory placement test score; MATH 111 recommended; a programmable calculator capable of displaying function graphs.

MATH 246. Calculus for the Biological Sciences I. 4 Credits.
For students in biological science and related fields. Emphasizes modeling and applications to biology. Differential calculus and applications. Sequence. Students cannot receive credit for more than one of MATH 241, MATH 246, MATH 251.
Prereq: MATH 112 or satisfactory placement test score.

MATH 247. Calculus for the Biological Sciences II. 4 Credits.
For students in biological science and related fields. Emphasizes modeling and applications to biology. Integral calculus and applications. Students cannot receive credit for more than one of MATH 242, MATH 247, MATH 252.
Prereq: MATH 246.

MATH 251. Calculus I. 4 Credits.
Standard sequence for students of physical and social sciences and of mathematics. Differential calculus and applications. Sequence. Students cannot receive credit for more than one of MATH 241, MATH 246, MATH 251.
Prereq: MATH 112 or satisfactory placement test score.

MATH 252. Calculus II. 4 Credits.
Standard sequence for students of physical and social sciences and of mathematics. Integral calculus. Sequence. Students cannot receive credit for more than one of MATH 242, MATH 247, MATH 252.
Prereq: MATH 251.

MATH 253. Calculus III. 4 Credits.
Standard sequence for students of physical and social sciences and of mathematics. Introduction to improper integrals, infinite sequences and series, Taylor series, and differential equations. Sequence.
Prereq: MATH 252.

MATH 256. Introduction to Differential Equations. 4 Credits.
Introduction to differential equations and applications. Linear algebra is introduced as needed.
Prereq: MATH 253.

MATH 261. Calculus with Theory I. 4 Credits.
Covers both applications of calculus and its theoretical background. Axiomatic treatment of the real numbers, limits, and the least upper bound property.

MATH 262. Calculus with Theory II. 4 Credits.
Covers both applications of calculus and its theoretical background. Differential and integral calculus.
Prereq: MATH 261.

MATH 263. Calculus with Theory III. 4 Credits.
Covers both applications of calculus and its theoretical background. Sequences and series, Taylor's theorem.
Prereq: MATH 262.

MATH 281. Several-Variable Calculus I. 4 Credits.
Introduction to calculus of functions of several variables including partial differentiation; gradient, divergence, and curl; line and surface integrals; Green's and Stokes's theorems. Linear algebra introduced as needed. Sequence.
Prereq: MATH 253.

MATH 282. Several-Variable Calculus II. 4 Credits.
Introduction to calculus of functions of several variables including partial differentiation; gradient, divergence, and curl; line and surface integrals; Green's and Stokes's theorems. Linear algebra introduced as needed.
Prereq: MATH 281.

MATH 307. Introduction to Proof. 4 Credits.
Proof is how mathematics establishes truth and communicates ideas. Introduces students to proof in the context of interesting mathematical problems. Students cannot receive credit for both PHIL 225 and MATH 307.
Prereq: MATH 247 or MATH 252 or MATH 262.

MATH 316. Fundamentals of Analysis I. 4 Credits.
Rigorous treatment of topics introduced in calculus such as limits, sequences, series, the Cauchy condition, and continuity. Development of mathematical proof in these contexts. Sequence with MATH 317.
Prereq: MATH 253 or equivalent; one from MATH 232, MATH 262, MATH 307.

MATH 317. Fundamentals of Analysis II. 4 Credits.
Rigorous treatment of topics introduced in calculus such as continuity, uniform convergence, power series, differentiation, and integration. Development of mathematical proof in these contexts. Sequence with MATH 316.
Prereq: MATH 316.

MATH 320. Theory of Differential Equations. 4 Credits.
An introduction to differential equations for students with background in linear algebra, with a mixture of applications and theory. Topics include linear and nonlinear equations, systems of equations, and questions of existence and uniqueness.
Prereq: MATH 281, MATH 342; one from MATH 232, MATH 262, MATH 307.

MATH 341. Elementary Linear Algebra. 4 Credits.
Vector and matrix algebra; n-dimensional vector spaces; systems of linear equations; linear independence and dimension; linear transformations; rank and nullity; determinants; eigenvalues; inner product spaces; theory of a single linear transformation. Sequence.
Prereq: MATH 252. MATH 253 is recommended.

MATH 342. Elementary Linear Algebra. 4 Credits.
Vector and matrix algebra; n-dimensional vector spaces; systems of linear equations; linear independence and dimension; linear transformations; rank and nullity; determinants; eigenvalues; inner product spaces; theory of a single linear transformation.
Prereq: MATH 341.

MATH 343. Statistical Models and Methods. 4 Credits.
Review of theory and applications of mathematical statistics including estimation and hypothesis testing. Students cannot get credit for both MATH 343 and DSCI 345M/MATH 345M.
Prereq: MATH 252.

MATH 345M. Probability and Statistics for Data Science. 4 Credits.
Introduction to probability and statistics, with an emphasis upon topics relevant for data science. Multilisted with DSCI 345M. Students cannot get credit for both MATH 343 and DSCI 345M/MATH 345M.
Prereq: MATH 342, CS 211.

MATH 347. Fundamentals of Number Theory I. 4 Credits.
A study of congruences, the Chinese remainder theorem, the theory of prime numbers and divisors, Diophantine equations, and quadratic reciprocity. Development of mathematical proof in these contexts. Sequence with MATH 348.
Prereq: MATH 253 or equivalent; one from MATH 232, MATH 262, MATH 307.

MATH 348. Fundamentals of Number Theory II. 4 Credits.
Study of nonlinear Diophantine equations, sums of squares, the theory of partitions, geometric number theory, and the distribution of prime numbers. Development of mathematical proof in these contexts. Sequence with MATH 347.
Prereq: MATH 347.

MATH 351. Elementary Numerical Analysis I. 4 Credits.
Basic techniques of numerical analysis and their use on computers. Topics include root approximation, linear systems, interpolation, integration, and differential equations. Sequence.
Prereq: MATH 253 or equivalent; one from MATH 232, MATH 262, MATH 307.

MATH 352. Elementary Numerical Analysis II. 4 Credits.
Basic techniques of numerical analysis and their use on computers. Topics include root approximation, linear systems, interpolation, integration, and differential equations.
Prereq: MATH 351.

MATH 391. Fundamentals of Abstract Algebra I. 4 Credits.
Introduction to algebraic structures including groups, rings, fields, and polynomial rings. Sequence.
Prereq: MATH 341; one from MATH 232, MATH 262, MATH 307.

MATH 392. Fundamentals of Abstract Algebra II. 4 Credits.
Introduction to algebraic structures including groups, rings, fields, and polynomial rings.
Prereq: MATH 391.

MATH 394. Geometries from an Advanced Viewpoint I. 4 Credits.
Topics in Euclidean geometry in two and three dimensions including constructions. Emphasizes investigations, proofs, and challenging problems. For prospective secondary and middle school teachers.
Prereq: MATH 253 or equivalent; one from MATH 232, MATH 262, MATH 307.

MATH 395. Geometries from an Advanced Viewpoint II. 4 Credits.
Analysis of problems in Euclidean geometry using coordinates, vectors, and the synthetic approach. Transformations in the plane and space and their groups. Introduction to non-Euclidean geometries. For prospective secondary teachers.
Prereq: grade of C- or better in MATH 394.

MATH 397. History and Applications of Calculus. 4 Credits.
Historical applications of calculus. Topics may include volumes by the method of exhaustion, Archimedean spiral, Kepler problem, calculus of variations, brachistochrone problem, spread of infectious disease, analysis of savings.
Prereq: MATH 253; one from MATH 232, MATH 262, MATH 307.

MATH 399. Special Studies: [Topic]. 1-5 Credits.
Repeatable.

MATH 401. Research: [Topic]. 1-21 Credits.
Repeatable.

MATH 403. Thesis. 1-4 Credits.
Repeatable.

MATH 405. Reading and Conference: [Topic]. 1-4 Credits.
Repeatable.

MATH 407. Seminar: [Topic]. 1-4 Credits.
Repeatable.

MATH 410. Experimental Course: [Topic]. 1-5 Credits.
Repeatable.

MATH 411. Functions of a Complex Variable I. 4 Credits.
Complex numbers, linear fractional transformations, Cauchy-Riemann equations, Cauchy's theorem and applications, power series, residue theorem, harmonic functions, contour integration, conformal mapping, infinite products. Sequence.
Prereq: MATH 281; one from MATH 232, MATH 262, MATH 307.

MATH 412. Functions of a Complex Variable II. 4 Credits.
Complex numbers, linear fractional transformations, Cauchy-Riemann equations, Cauchy's theorem and applications, power series, residue theorem, harmonic functions, contour integration, conformal mapping, infinite products.
Prereq: MATH 411.

MATH 413. Introduction to Analysis I. 4 Credits.
Differentiation and integration on the real line and in a dimensional Euclidean space; normed linear spaces and metric spaces; vector field theory and differential forms. Sequence.
Prereq: MATH 282, MATH 317.

MATH 414. Introduction to Analysis II. 4 Credits.
Differentiation and integration on the real line and in a dimensional Euclidean space; normed linear spaces and metric spaces; vector field theory and differential forms.
Prereq: MATH 413.

MATH 415. Introduction to Analysis III. 4 Credits.
Differentiation and integration on the real line and in a dimensional Euclidean space; normed linear spaces and metric spaces; vector field theory and differential forms. Sequence.
Prereq: MATH 414.

MATH 421M. Partial Differential Equations: Fourier Analysis I. 4 Credits.
Introduction to PDEs with a view towards applications in physics. Wave and heat equations, classical Fourier series on the circle, Bessel and Legendre series. Multilisted with PHYS 421M.
Prereq: MATH 253; one from MATH 256, MATH 281.

MATH 422. Partial Differential Equations: Fourier Analysis II. 4 Credits.
General theory of PDEs; the Fourier transform. Laplace and Poisson equations; Green's functions and application. Mean value theorem and max-min principle.
Prereq: MATH 421M or PHYS 421M.

MATH 425. Statistical Methods I. 4 Credits.
Statistical methods for upper-division and graduate students anticipating research in nonmathematical disciplines. Presentation of data, sampling distributions, tests of significance, confidence intervals, linear regression, analysis of variance, correlation, statistical software. Sequence. Only nonmajors may receive upper-division credit. Students cannot receive credit for both MATH 243 and MATH 425.
Prereq: MATH 111 or satisfactory placement test score.

MATH 431. Introduction to Topology. 4 Credits.
Elementary point-set topology with an introduction to combinatorial topology and homotopy. Sequence.
Prereq: MATH 317.

MATH 432. Introduction to Topology. 4 Credits.
Introduction to smooth manifolds and differential topology. Sequence.
Prereq: MATH 281, MATH 341, MATH 431.

MATH 433. Introduction to Differential Geometry. 4 Credits.
Plane and space curves, Frenet-Serret formula surfaces. Local differential geometry, Gauss-Bonnet formula, introduction to manifolds.
Prereq: MATH 282, 342; one from MATH 232, MATH 262, MATH 307.

MATH 434. Introduction to Topology III. 4 Credits.
Introduction to differential topology and de Rham cohomology. Sequence.
Prereq: MATH 432.

MATH 441. Linear Algebra. 4 Credits.
Theory of vector spaces over arbitrary fields, theory of a single linear transformation, minimal polynomials, Jordan and rational canonical forms, quadratic forms, quotient spaces.
Prereq: MATH 342; one from MATH 232, MATH 262, MATH 307.

MATH 444. Introduction to Abstract Algebra I. 4 Credits.
Theory of groups, rings, and fields. Polynomial rings, unique factorization, and Galois theory. Sequence.
Prereq: MATH 342; one from MATH 232, MATH 262, MATH 307.

MATH 445. Introduction to Abstract Algebra II. 4 Credits.
Theory of groups, rings, and fields. Polynomial rings, unique factorization, and Galois theory.
Prereq: MATH 444.

MATH 446. Introduction to Abstract Algebra III. 4 Credits.
Theory of groups, rings, and fields. Polynomial rings, unique factorization, and Galois theory.
Prereq: MATH 445.

MATH 456. Networks and Combinatorics. 4 Credits.
Fundamentals of modern combinatorics; graph theory; networks; trees; enumeration, generating functions, recursion, inclusion and exclusion; ordered sets, lattices, Boolean algebras.
Prereq: one from MATH 232, MATH 262, MATH 307.

MATH 458. Introduction to Mathematical Cryptography. 4 Credits.
Mathematical theory of public key cryptography. Finite field arithmetic, RSA and Diffie-Hellman algorithms, elliptic curves, generation of primes, factorization techniques. Offered alternate years.
Prereq: MATH 341.

MATH 461. Introduction to Mathematical Methods of Statistics I. 4 Credits.
Discrete and continuous probability models; useful distributions; applications of moment-generating functions; sample theory with applications to tests of hypotheses, point and confidence interval estimates. Sequence.
Prereq: MATH 253 or MATH 263; one from MATH 232, MATH 262, MATH 307.

MATH 462. Introduction to Mathematical Methods of Statistics II. 4 Credits.
Discrete and continuous probability models; useful distributions; applications of moment-generating functions; sample theory with applications to tests of hypotheses, point and confidence interval estimates.
Prereq: MATH 461.

MATH 463. Mathematical Methods of Regression Analysis and Analysis of Variance. 4 Credits.
Multinomial distribution and chi-square tests of fit, simple and multiple linear regression, analysis of variance and covariance, methods of model selection and evaluation, use of statistical software.
Prereq: MATH 342, MATH 462.

MATH 467. Stochastic Processes. 4 Credits.
Basics of stochastic processes including Markov chains, martingales, Poisson processes, Brownian motion and their applications.
Prereq: MATH 341, MATH 461.

MATH 503. Thesis. 1-12 Credits.
Repeatable.

MATH 507. Seminar: [Topic]. 1-4 Credits.
Repeatable.

MATH 510. Experimental Course: [Topic]. 1-5 Credits.
Repeatable.

MATH 511. Functions of a Complex Variable I. 4 Credits.
Complex numbers, linear fractional transformations, Cauchy-Riemann equations, Cauchy's theorem and applications, power series, residue theorem, harmonic functions, contour integration, conformal mapping, infinite products. Sequence.

MATH 512. Functions of a Complex Variable II. 4 Credits.
Complex numbers, linear fractional transformations, Cauchy-Riemann equations, Cauchy's theorem and applications, power series, residue theorem, harmonic functions, contour integration, conformal mapping, infinite products.
Prereq: MATH 511.

MATH 513. Introduction to Analysis I. 4 Credits.
Differentiation and integration on the real line and in a dimensional Euclidean space; normed linear spaces and metric spaces; vector field theory and differential forms. Sequence.

MATH 514. Introduction to Analysis II. 4 Credits.
Differentiation and integration on the real line and in a dimensional Euclidean space; normed linear spaces and metric spaces; vector field theory and differential forms. Sequence.
Prereq: MATH 513.

MATH 515. Introduction to Analysis III. 4 Credits.
Differentiation and integration on the real line and in a dimensional Euclidean space; normed linear spaces and metric spaces; vector field theory and differential forms. Sequence.
Prereq: MATH 514.

MATH 521M. Partial Differential Equations: Fourier Analysis I. 4 Credits.
Introduction to PDEs with a view towards applications in physics. Wave and heat equations, classical Fourier series on the circle, Bessel and Legendre series. Multilisted with PHYS 521M.

MATH 522. Partial Differential Equations: Fourier Analysis II. 4 Credits.
General theory of PDEs; the Fourier transform. Laplace and Poisson equations; Green's functions and application. Mean value theorem and max-min principle.
Prereq: MATH 421/521.

MATH 525. Statistical Methods I. 4 Credits.
Statistical methods for upper-division and graduate students anticipating research in nonmathematical disciplines. Presentation of data, sampling distributions, tests of significance, confidence intervals, linear regression, analysis of variance, correlation, statistical software. Sequence. Only nonmajors may receive graduate credit.

MATH 531. Introduction to Topology. 4 Credits.
Elementary point-set topology with an introduction to combinatorial topology and homotopy. Sequence.

MATH 532. Introduction to Topology. 4 Credits.
Elementary point-set topology with an introduction to combinatorial topology and homotopy. Sequence.
Prereq: MATH 531.

MATH 533. Introduction to Differential Geometry. 4 Credits.
Plane and space curves, Frenet-Serret formula surfaces. Local differential geometry, Gauss-Bonnet formula, introduction to manifolds.

MATH 534. Introduction to Topology III. 4 Credits.
Introduction to differential topology and de Rham cohomology. Sequence.
Prereq: MATH 352.

MATH 541. Linear Algebra. 4 Credits.
Theory of vector spaces over arbitrary fields, theory of a single linear transformation, minimal polynomials, Jordan and rational canonical forms, quadratic forms, quotient spaces.

MATH 544. Introduction to Abstract Algebra I. 4 Credits.
Theory of groups, rings, and fields. Polynomial rings, unique factorization, and Galois theory. Sequence.

MATH 545. Introduction to Abstract Algebra II. 4 Credits.
Theory of groups, rings, and fields. Polynomial rings, unique factorization, and Galois theory.
Prereq: MATH 544.

MATH 546. Introduction to Abstract Algebra III. 4 Credits.
Theory of groups, rings, and fields. Polynomial rings, unique factorization, and Galois theory.
Prereq: MATH 545.

MATH 556. Networks and Combinatorics. 4 Credits.
Fundamentals of modern combinatorics; graph theory; networks; trees; enumeration, generating functions, recursion, inclusion and exclusion; ordered sets, lattices, Boolean algebras.

MATH 561. Introduction to Mathematical Methods of Statistics I. 4 Credits.
Discrete and continuous probability models; useful distributions; applications of moment-generating functions; sample theory with applications to tests of hypotheses, point and confidence interval estimates. Sequence.

MATH 562. Introduction to Mathematical Methods of Statistics II. 4 Credits.
Discrete and continuous probability models; useful distributions; applications of moment-generating functions; sample theory with applications to tests of hypotheses, point and confidence interval estimates.
Prereq: MATH 561.

MATH 563. Mathematical Methods of Regression Analysis and Analysis of Variance. 4 Credits.
Multinomial distribution and chi-square tests of fit, simple and multiple linear regression, analysis of variance and covariance, methods of model selection and evaluation, use of statistical software.
Prereq: MATH 562.

MATH 567. Stochastic Processes. 4 Credits.
Basics of stochastic processes including Markov chains, martingales, Poisson processes, Brownian motion and their applications.
Prereq: MATH 561.

MATH 600M. Temporary Mulitlisted Course. 1-5 Credits.
Repeatable.

MATH 601. Research: [Topic]. 1-9 Credits.
Repeatable.

MATH 602. Supervised College Teaching. 1-16 Credits.
Repeatable.

MATH 603. Dissertation. 1-16 Credits.
Repeatable.

MATH 605. Reading and Conference: [Topic]. 1-16 Credits.
Repeatable.

MATH 607. Seminar: [Topic]. 1-5 Credits.
Repeatable. Topics include Advanced Topics in Geometry, Ring Theory, Teaching Mathematics.

MATH 610. Experimental Course: [Topic]. 1-5 Credits.
Repeatable.

MATH 616. Real Analysis. 4-5 Credits.
Measure and integration theory, differentiation, and functional analysis with point-set topology as needed. Sequence.

MATH 617. Real Analysis. 4-5 Credits.
Measure and integration theory, differentiation, and functional analysis with point-set topology as needed. Sequence.
Prereq: MATH 616.

MATH 618. Real Analysis. 4-5 Credits.
Measure and integration theory, differentiation, and functional analysis with point-set topology as needed. Sequence.
Prereq: MATH 617.

MATH 619. Complex Analysis. 4-5 Credits.
The theory of Cauchy, power series, contour integration, entire functions, and related topics.

MATH 634. Algebraic Topology. 4-5 Credits.
Development of homotopy, homology, and cohomology with point-set topology as needed. Sequence.

MATH 635. Algebraic Topology. 4-5 Credits.
Development of homotopy, homology, and cohomology with point-set topology as needed. Sequence.
Prereq: MATH 634.

MATH 636. Algebraic Topology. 4-5 Credits.
Development of homotopy, homology, and cohomology with point-set topology as needed. Sequence.
Prereq: MATH 635.

MATH 637. Differential Geometry. 4-5 Credits.
Topics include curvature and torsion, Serret-Frenet formulas, theory of surfaces, differentiable manifolds, tensors, forms and integration. Sequence.

MATH 638. Differential Geometry. 4-5 Credits.
Topics include curvature and torsion, Serret-Frenet formulas, theory of surfaces, differentiable manifolds, tensors, forms and integration. Sequence.
Prereq: MATH 637.

MATH 639. Differential Geometry. 4-5 Credits.
Topics include curvature and torsion, Serret-Frenet formulas, theory of surfaces, differentiable manifolds, tensors, forms and integration. Sequence.

MATH 647. Abstract Algebra. 4-5 Credits.
Group theory, fields, Galois theory, algebraic numbers, matrices, rings, algebras. Sequence.

MATH 648. Abstract Algebra. 4-5 Credits.
Group theory, fields, Galois theory, algebraic numbers, matrices, rings, algebras. Sequence.
Prereq: MATH 647.

MATH 649. Abstract Algebra. 4-5 Credits.
Group theory, fields, Galois theory, algebraic numbers, matrices, rings, algebras. Sequence.
Prereq: MATH 648.

MATH 672. Theory of Probability. 4-5 Credits.
Measure and integration, probability spaces, laws of large numbers, central-limit theory, conditioning, martingales, random walks.
Prereq: MATH 671.

MATH 673. Theory of Probability. 4-5 Credits.
Measure and integration, probability spaces, laws of large numbers, central-limit theory, conditioning, martingales, random walks.
Prereq: MATH 672.

MATH 681. Advanced Algebra: [Topic]. 4-5 Credits.
Repeatable. Topics selected from theory of finite groups, representations of finite groups, Lie groups, Lie algebras, algebraic groups, ring theory, algebraic number theory.

MATH 682. Advanced Algebra: [Topic]. 4-5 Credits.
Repeatable. Topics selected from theory of finite groups, representations of finite groups, Lie groups, Lie algebras, algebraic groups, ring theory, algebraic number theory.

MATH 683. Advanced Algebra: [Topic]. 4-5 Credits.
Repeatable. Topics selected from theory of finite groups, representations of finite groups, Lie groups, Lie algebras, algebraic groups, ring theory, algebraic number theory.

MATH 684. Advanced Analysis: [Topic]. 4-5 Credits.
Repeatable. Topics selected from Banach algebras, operator theory, functional analysis, harmonic analysis on topological groups, theory of distributions.

MATH 685. Advanced Analysis: [Topic]. 4-5 Credits.
Repeatable. Topics selected from Banach algebras, operator theory, functional analysis, harmonic analysis on topological groups, theory of distributions.

MATH 686. Advanced Analysis: [Topic]. 4-5 Credits.
Repeatable. Topics selected from Banach algebras, operator theory, functional analysis, harmonic analysis on topological groups, theory of distributions.

MATH 690. Advanced Geometry and Topology: [Topic]. 4-5 Credits.
Repeatable. Topics selected from classical and local differential geometry; symmetric spaces; low-dimensional topology; differential topology; global analysis; homology, cohomology, and homotopy; differential analysis and singularity theory; knot theory.

MATH 691. Advanced Geometry and Topology: [Topic]. 4-5 Credits.
Repeatable. Topics selected from classical and local differential geometry; symmetric spaces; low-dimensional topology; differential topology; global analysis; homology, cohomology, and homotopy; differential analysis and singularity theory; knot theory.

MATH 692. Advanced Geometry and Topology: [Topic]. 4-5 Credits.
Repeatable. Topics selected from classical and local differential geometry; symmetric spaces; low-dimensional topology; differential topology; global analysis; homology, cohomology, and homotopy; differential analysis and singularity theory; knot theory.