This text is replaced by the Flash movie.
Meet some students

Course Catalog - Mathematics and Computer Science

Mathematics Courses

Mathematics 110 - Topics in Mathematics
Fall, spring
Consideration of diverse subjects in mathematics. Content varies from semester to semester with specific subject matter for each course announced just prior to enrollment. Designed for non-majors who wish to study mathematics other than calculus. One unit.

Mathematics 125, 126 - Calculus for the Social Sciences 1, 2
Annually
A two-semester introduction to the calculus of one variable primarily intended for students majoring in economics. Topics discussed include differentiation and integration of real valued functions of one real variable, techniques of integration and differentiation, max-min problems and improper integrals, series, and differential equations. Applications to economics and the social sciences are emphasized. This is a terminal sequence; students planning to take more than two semesters of mathematics should enroll in Mathematics 131, 132. One unit each semester.

Mathematics 131, 132 - Calculus for the Physical and Life Sciences 1, 2
Annually
Considers the calculus of real valued functions of one variable for students who are planning further coursework in mathematics or a major in the sciences. Emphasis is placed on a conceptual understanding of the calculus, presenting material from symbolic, numerical, and graphical points of view. The course makes regular use of calculators or computers and considers a variety of applications to the sciences and social sciences. In the first semester, the concepts of limit, continuity, derivative and integral are developed and applied to algebraic, logarithmic, exponential and trigonometric functions. The second term focuses on the theory and applications of integration, Taylor polynomials and Taylor series, and ordinary differential equations. This course is the prerequisite for Mathematics 241, 242. This course meets four hours per week. One and onequarter units each semester.

Mathematics 133, 134 - Intensive Calculus for the Physical and Life Sciences 1, 2
Annually
This sequence is an intensive version of Mathematics 131, 132 that is designed for students with an interest in pursuing a major in mathematics or the sciences, or the premedical program, who require more class time to make the transition to college-level mathematics. See the description of Mathematics 131, 132 for the course content. This course meets five hours per week. One and one-quarter units each semester.

Mathematics 136 - Advanced Placement Calculus
Fall
This course is a one-semester version of Mathematics 131, 132 for those students who have either received one unit of advanced placement credit in calculus or who have taken a year of calculus in high school. See the description of Mathematics 131, 132 for the course content. This course meets four hours per week. One and one-quarter units.

Mathematics 241 - Multivariable Calculus
Fall, spring
A study of the calculus of functions of several variables. Concerns the theory and applications of differentiation and integration of functions of several variables, vector fields, line integrals, Green’s theorem. Prerequisite: Mathematics 132, 134, 136 or the equivalent. This course meets four hours per week. One and one-quarter units.

Mathematics 242 - Principles of Analysis
Fall, spring
An in-depth study of the theory of the calculus of functions of one variable. Topics include sequences, series, continuity, differentiability, the extreme value theorem, the mean value theorem, Riemann integration, and the fundamental theorem of calculus. Prerequisite: Mathematics 241. One unit.

Mathematics 243 - Algebraic Structures
Fall
An introduction to the primary structures in abstract algebra-groups, rings and fields- and the corresponding concept of homomorphism for each of these structures. Emphasis placed on using the language of sets, relations, equivalence relations and functions, and developing techniques of proof, including elementary logic and mathematical induction. Prerequisite: Mathematics 132, 134, 136 or equivalent. One unit.

Mathematics 244 - Linear Algebra
Spring
Designed to acquaint students with the basic techniques of linear algebra. Topics include matrices, vector spaces, subspaces, linear transformations, bilinear forms, determinants, eigenvalue theory, and the finite dimensional spectral theorem. Applications and additional topics are included as time permits. Prerequisite: Mathematics 243. One unit.

Mathematics 301 - Topics in Geometry
Alternate years
Centers on some area of geometry other than differential geometry. Possible topics include Euclidean and non-Euclidean geometry, projective geometry, the geometry of transformation groups, and the elementary geometry of algebraic curves. Prerequisite: Mathematics 241 and 244. Breadth area: Geometry and Topology. One unit.

Mathematics 302 - Differential Geometry
Alternate years
A first course in the differential geometry of curves and surfaces for students who have completed Mathematics 241 and a semester course in linear algebra. Topics include the Frenet-Serret formulas, smooth surfaces in 3-space, fundamental forms, differentiable manifolds, vector fields, connections and a brief introduction to Riemannian geometry. Prerequisite: Mathematics 241 and 244. Breadth area: Geometry and Topology. One unit.

Mathematics 303 - Mathematical Models
Alternate years
Introduction to the role of mathematics as a modeling tool, including the construction, interpretation and application of mathematical models. Applications chosen to illustrate various modeling paradigms such as deterministic, probabilistic, discrete and continuous modeling and may include population dynamics, biomedical applications, stock market analysis, and network and traffic flows. Prerequisite: Mathematics 242 and 244. Breadth area: Applied Mathematics. One unit.

Mathematics 304 - Ordinary Differential Equations
Alternate years, fall
Linear differential equations are studied; basic existence theorems are proved; equations with constant coefficients and series methods are treated in detail. Topics in non-linear systems are discussed, including existence and uniqueness theorems and series methods. Prerequisite: Mathematics 242 and 244. Mathematics 304 – 373 is a full-year linked sequence. Breadth area: Applied Mathematics. One unit.

Mathematics 305 - Complex Analysis
Alternate years
The fundamentals of complex analysis. Topics include the complex number system, analytic functions, the Cauchy-Riemann equations, Cauchy’s integral theorem, Cauchy’s integral formula, Taylor series, Laurent series, the calculus of residues and conformal mapping. Prerequisite: Mathematics 242. Breadth area: Analysis. One unit.

Mathematics 351, 352 - Abstract Algebra
Alternate years
An in-depth study of the structure of groups, rings and fields. Depending on the instructor, applications to Galois theory, number theory, geometry, topology, physics, etc., are presented. Prerequisite: Mathematics 244. Mathematics 351 – 352 is a full-year linked sequence. Breadth area: Algebra. One unit each semester.

Mathematics 353 - Number Theory
Alternate years
Elementary number theory is concerned with properties of numbers (integers, primes, etc.) as well as patterns and relationships among certain sets of numbers. Topics will include divisibility, congruences, special types of primes, the distribution of primes throughout the integers, number-theoretic functions, quadratic residues, and continued fractions. Further study may include the RSA code, a superior encryption algorithm based on elementary number theory, and a discussion of one of the most famous problems in mathematics - Fermat’s Last Theorem - conjectured in 1630 yet unsolved until the 1990’s. Prerequisites: Mathematics 242 and 244. Breadth area: Algebra. One unit.

Mathematics 357 - Combinatorics
Alternate years
A breadth-first introduction to the subject that discusses a representative sampling of combinatorial problems and general techniques for solving them, including a selection of counting techniques, techniques for existence questions, and a variety of examples. Examples may include partitions, graphs and trees, graph traversals, tournaments, graph coloring and chromatic polynomials, magic squares, Latin rectangles and squares, and combinatorial block designs. Prerequisite: Mathematics 244. Breadth area: Algebra. One unit.

Mathematics 361, 362 - Real and Abstract Analysis
Alternate years
Topological ideas are introduced through a treatment of metric space topology. After the study of open, closed, compact and connected spaces with emphasis on their behavior under continuous mappings, selected topics from functional analysis are considered. These include lim sup and lim inf, relation of uniform convergence to differentiation and integration, and the Stone Weierstrass approximation theorem. The second semester topics include an introduction to Lebesgue-Stieltjes integration, Hilbert space and other material from linear space theory. Prerequisite: Mathematics 242 and 244. Mathematics 361 – 362 is a full-year linked sequence. Breadth area: Analysis. One unit each semester.

Mathematics 363 - Topics in Topology
Alternate years
Considers various aspects of topology of surfaces and solids, including orientability, the Euler number, and the fundamental group. One of the goals of the course is the topological classification of surfaces. Prerequisite: Mathematics 242 and 244. Breadth area: Geometry and Topology. One unit.

Mathematics 371 - Methods of Numerical Analysis
Alternate years
The numerical solution of problems using computers. Considerable time is devoted to selecting the appropriate algorithm for a given problem and analyzing the resulting numerical errors. Includes such topics as error analysis of computer arithmetic, approximation of functions, solution of equations, numerical integration, numerical solution of ordinary differential equations. Prerequisite: Mathematics 242 and 244. Breadth area: Analysis. One unit.

Mathematics 372 - Numerical Linear Algebra
Alternate years
The numerical solution of problems from linear algebra using computers. Gaussian elimination in floating point arithmetic, iterative techniques for solving systems of linear equations, numerical eigenvalue and diagonalization methods. Applications. Prerequisite: Mathematics 242 and 244. Breadth area: Applied Mathematics. One unit.

Mathematics 373 - Principles and Techniques of Applied Mathematics
Alternate years in spring
Provides an understanding of a wide spectrum of phenomena through the use of mathematical ideas, abstractions, and techniques. Topics included are partial differential equations, including the heat and wave equations, Fourier analysis, eigenvalue problems, Green’s functions. This course is now offered in a full-year linked sequence beginning with Mathematics 304 (Ordinary Differential Equations). Prerequisite: Mathematics 304. Breadth area: Applied Mathematics. One unit.

Mathematics 374 - Dynamical Systems
Alternate years
An introduction to the theory of discrete dynamical systems. Topics include iteration of functions, graphical analysis, periodic points, stable sets, chaos, symbolic dynamics, the dynamics of functions of a complex variable and the Mandelbrot set. The major theorems will be studied along with their proofs and the computer will be used as a research tool to do experiments which motivate and illustrate the theory. Prerequisite: Mathematics 242 and Mathematics 244. Breadth Area: Applied Mathematics. One unit.

Mathematics 375, 376 - Probability and Statistics
Alternate years
Provides an introduction to the theory and applications of probability and statistics. Topics in probability theory include both continuous and discrete distributions, conditional probability, random variables, expectation, and the Central Limit Theorem. Topics in statistics include maximum likelihood estimation, the sampling distributions of estimators, hypothesis testing, regression analysis, and an introduction to the analysis of variance. Prerequisite: Mathematics 242 and Mathematics 244. Mathematics 375 – 376 is a full-year linked sequence. Breadth area: Applied Mathematics. One unit each semester.

Mathematics 392 - Seminar
Annually
Provides an opportunity for individual and group investigation of topics not covered in ordinary course work. Active participation on the part of the students is normally required. Subject matter varies to suit individual students and is often related to the research activity of the professor. Examples of areas of study: Lie groups, functional analysis, complex analysis, probability theory, commutative algebra, applied mathematics, the classical groups, mathematical logic, automata and formal languages, topics in discrete modeling, and qualitative theory of differential equations. A breadth area designation will be made individually for each seminar course by the department chair, in consultation with the faculty member teaching the seminar. Breadth area depends on the subject matter. One unit each semester.

Mathematics 400 - Directed Reading
Fall, spring
An independent reading project for upper division students. Normally this is on a topic that is not covered by the regular course offerings. Permission of the instructor and the department chair is required for this course. One unit.

Mathematics 495, 496 - Mathematics Honors Thesis
Annually
A large project extending over the course of the fourth year. It can consist of original research or be of an expository nature and is written under the guidance of one or more members of the department. Normally, a student will earn one unit in the spring semester of the fourth year for successful completion of an honors thesis, unless the thesis work is done as part of the student’s participation in a departmental seminar. In that case, no extra credit is given above the credit for the seminar itself. For a particularly extensive project, and with the permission of the department chair, a student may earn one unit in each semester of the fourth year for completion of the thesis.

Computer Science Courses

Computer Science 110 - Survey of Computer Science
Fall, spring
A survey of the science and art of computing intended for students not majoring in mathematics or science. Half of the course is an introduction to computer programming. Emphasis is placed upon language- independent topics such as structured programming, good programming style, the use of subprograms, and algorithm construction in general. The other half of the course explores how computers are built, how they operate, and what their fundamental limitations are. A portion of the course will be devoted to technical and ethical risks, problems, and disasters. One unit.

Computer Science 131 - Techniques of Programming
Fall
An intensive introduction to object-oriented programming in a high-level language for students considering further course work in computing or students majoring in mathematics, the sciences, economics or any other field in which computing plays a role. It is expected that most of the class will continue with Computer Science 132, Data Structures. There is a required weekly lab meeting of this course. One and one-quarter units.

Computer Science 132 - Data Structures
Spring
Standard data structures such as stacks, lists, trees, and graphs are introduced. Algorithms and techniques for sorting, searching, graph traversal, hashing, and recursion are discussed. Analysis of algorithms and special topics are covered as time allows. There is a required weekly lab meeting of this course. Prerequisite: Computer Science 131, or equivalent. One and one quarter units.

Computer Science 135 - Discrete Structures
Alternate years in spring
An introduction to the discrete mathematical structures that form the basis of computer science. Topics include proof techniques, relations and functions, set theory, Boolean algebra and propositional logic, predicate calculus, graphs, trees, induction and recursion, counting techniques and discrete probability. It is recommended this class be taken concurrently with Computer Science 132. One unit.

Computer Science 226 - Computer Systems and Organization
Fall
Covers fundamental topics related to the design and operation of a modern computing system. Relationships are drawn between circuits and system software. Topics include hardware and software organization, virtual machines, physical fundamentals of transistors, digital logic design, memory system organization, architecture and management, CPU design, multiprocessors, data representation, machine language, microprogramming, assembly language, assemblers and linkers, CISC versus RISC, interrupts and asynchronous event handling, networking, and the past and present of computer system design, architecture, and organization. Prerequisite: Computer Science 132. One unit.

Computer Science 235 - Analysis of Algorithms
Alternate years in fall
Provides an introduction to the design and analysis of fundamental algorithms and their complexity. Presents several algorithm design strategies that build on the data structures and programming techniques introduced in Computer Science 132. The general techniques covered include: Divide-and-conquer algorithms, dynamic programming, greediness and probabilistic algorithms. Topics include: sorting, searching, graph algorithms, O-notation, and introduction to the classes P and NP, and NP-completeness. Prerequisite: Computer Science 132 and Calculus or permission of instructor. One unit.

Computer Science 324 - Programming Languages Design and Implementation
Spring
Principles for designing and implementing programming languages are presented as well as styles and features that encourage and discourage the writing of good software. Topics include language syntax and semantics, comparison of language features and their implementation, methods of processing a program, establishing the run-time environment of the program and the major programming language paradigms (the imperative/procedural, functional/applicative, declarative/logic and object-oriented paradigms). Prerequisite: Computer Science 226. One unit.

Computer Science 328 - Ethical Issues in Computer Science
Alternate years in fall
Examines the ethical issues that arise as a result of increasing use of computers, and the responsibilities of those who work with computers, either as computer science professionals or end users. The course stresses the ways in which computers challenge traditional ethical and philosophical concepts, and raise old issues in a new way. Students will be expected to read and understand the ideas in the readings, explain the ideas, analyze issues and see them from diverse perspectives, and formulate and critique arguments. Readings include technical issues in computer science and may focus on a particular area such as software design as well as more traditional topics such as philosophical theories (e.g. ethical relativism, utilitarianism, deontological theories, rights and virtue ethics), privacy, intellectual property rights and proprietary software, security, accountability, liability, the digital divide, hacking, and viruses. There are several course goals: (1) to give a fuller, richer, deeper understanding of the social impact of computers and the ethical issues in human activities affected by computers, (2) to prepare the student for living in a computerized world and perhaps working as a professional in the computing field, and (3) to improve presentation, debating and writing skills. Prerequisite: Computer Science 132. One unit.

Computer Science 343 - Computer Graphics
Alternate years
A survey of topics in computer graphics with an emphasis on fundamental techniques and the theory underlying those techniques. Topics include the fundamentals of two and three dimensional graphics such as clipping, windowing, and coordinate transformations (e.g., positioning of objects and camera), raster graphics techniques such as line drawing and filling algorithms, hidden surface removal, shading, color, curves and surfaces and animation. Students learn how to program graphics displays using a state-of-the-art computer graphics package. Prerequisite: Computer Science 132 and Calculus or permission of instructor. One unit.

Computer Science 345 - Theory of Computation
Alternate years
Basic aspects of regular, context-free, context sensitive and unrestricted grammars, propositional and predicate calculus, recursive functions, automata theory and computational complexity. Prerequisite: Computer Science 132. One unit.

Computer Science 346 - Operating Systems
Alternate years
Provides an introduction to the general model of operating systems principles and current implementation techniques. The principles and mechanisms that underlie operating systems services will be covered. Students will learn techniques for managing hardware resources and sharing them among many competing processes and threads. They will study the internal structures needed for process and thread management, synchronization, inter-process communication, memory management (including shared memory), file system management, distributed systems principles, device control, and security. Prerequisite: Computer Science 226. One unit.

Computer Science 363 - Computational Vision
Alternate years
An introduction to the algorithms underlying machine and biological visual systems. Examines the processes involved in converting a 2-dimensional image to a 3-D representation of the physical world. Computational models of visual processing will be compared to physiological and psychophysical results from human and other biological visual systems. Topics covered include: edge detection, stereopsis, motion computation, shape from shading, color and object recognition. Prerequisite: Computer Science 132 and Calculus, or permission of the instructor. One unit.

Computer Science 364 - Compiler Construction
Alternate years
The theories, tools and techniques for translator creation are the focus of this course. Topics include: regular expressions, grammars, finite state machines, lexical analysis, parsing, linguistic approaches to problem solving, intermediate code trees, register allocation, code generation, a variety of optimization schemes and techniques as well as Linux-style support for translation such as lex and yacc. An essential and distinguishing feature of the course is the project requirement. Students are required to build a working compiler that is a large software engineering project of significant complexity. This course carries the project course designation. Prerequisite: Computer Science 324 or permission of the instructor. One unit.

Computer Science 399 - Topics in Computer Science
Alternate years
This course gives the student a chance to see the principles introduced in earlier courses applied in specific areas and gives faculty an opportunity to teach material of special interest to them. The most likely topics are artificial intelligence, database systems, advanced theory of computation, and robotics. Prerequisite: varies by topic. One unit.

Computer Science 400 - Directed Reading
Fall, spring
An independent reading project for upper division students. Normally this will be on a topic that is not covered by the regular course offerings. Permission of the instructor and the Department Chair is required for this course. One unit.

Computer Science 495, 496 - Computer Science Honors Thesis
Annually
This is a large project extending over the course of the fourth year. It can consist of original research or be of an expository nature and is written under the guidance of one or more members of the department. A student will earn at least one unit of credit in the spring semester of the fourth year for successful completion of an honors thesis, unless the thesis work is done as part of the student’s participation in a department seminar. In that case, no extra credit is given above the credit for the seminar itself. For a particularly extensive project, and with the permission of the department chair, a student may earn one unit in each semester of the fourth year for the completion of the thesis. One unit.

* The courses and descriptions listed above are taken directly from the official College Catalog.