Courses
Computer Science Courses |
Mathematics Courses |
Mathematical Economics CoursesComputer Science Courses
In addition to the listing of courses below, a two-year rotation of computer science courses is available.
If you wish to transfer credits from a computer science course taken at another college or university, consult the transfer approval guidelines.
First-year students are encouraged to investigate the University's new integrated quantitative (IQ) science course, a year-long class team taught by 10 professors that combines material from the introductory courses in biology, chemistry, physics, mathematics and computer science.
CMSC
101 Minds and Machines
Formal deduction in propositional logic. The fundamentals of computer architecture. An elementary exploration of the extent to which symbolic reasoning can be automated, including a consideration of related results in fields such as neuroscience and artificial intelligence. Three hours lecture and one hour lab per week.
General Education Requirement: (FSSR)
Unit(s): 1
CMSC
105 Elementary Programming with Lab
Solving problems by writing computer programs. Introduction to computer architecture. Emphasis on symbolic reasoning using examples from a particular computing context. For non-majors. Not open to students who have completed any computer science course that fulfills major requirements. Three lecture and one laboratory hour per week.
General Education Requirement: (FSSR)
Unit(s): 1
CMSC
150 Introduction to Computing
Techniques for writing computer programs to solve problems. Topics include elementary computer organization, object-oriented programming, control structures, arrays, methods and parameter passing, recursion, searching, sorting, and file I/O. Three lecture and two laboratory hours per week. A student may not receive credit for both Computer Science 150 and 155. Students who have received credit for courses numbered 221 or higher may not take 150 for credit.
Prerequisite(s): None; however, strong mathematics aptitude usually predicts success in computer science.
General Education Requirement: (FSSR)
Unit(s): 1
CMSC
155 Introduction to Scientific Computing
Same course as Computer Science 150 but with greater emphasis on programming applications in the sciences. A student may not receive credit for both Computer Science 150 and 155. Students who have received credit for courses numbered 221 or higher may not take 155 for credit.
Prerequisite(s): Math 211 or 231.
General Education Requirement: (FSSR)
Unit(s): 1
Note: Knowledge of the topics of Computer Science 150 or 155 is prerequisite to all higher numbered Computer Science courses. Students who have obtained this knowledge through a high school or some other course are permitted to begin with Computer Science 221 with departmental approval.
CMSC
195 Special Topics
Special topics satisfying neither major nor minor requirements.
Unit(s): .25-1
CMSC
221 Data Structures with Lab
Introduction to data structures, including stacks, queues, linked lists, and binary trees. Topics include abstraction, object-oriented programming, recursion, and computational complexity. Three lecture and two laboratory hours per week.
Prerequisite(s): Computer Science 150 or 155.
General Education Requirement: (FSSR)
Unit(s): 1
CMSC
222 Discrete Structures for Computing with Lab
Sets, functions, elementary propositional and predicate logic, elementary graph theory, recurrence relations, proof techniques (including mathematical induction and proof by contradiction), combinatorics, probability, and random numbers, with applications to computing. Three hours lecture and one hour lab per week.
Prerequisite(s): Computer Science 221 (corequisite).
Unit(s): 1
CMSC
288 Computer Science Apprenticeship
Participation in development of software, with supervision of computer science faculty. Does not count for computer science major or minor. No more than a total of 1.5 units of Computer Science 288 may count toward the total number of units required for a degree.
Unit(s): .25-.5
Note: Most 300-level courses in computer science include a one hour per week laboratory component. This is an instructor-designed, organized and supervised component of the course that may occur as a fourth hour of lecture or as an extra course component scheduled outside of the lecture period. Scheduling and format may be discussed at the first class session. The format may vary by instructor and course. Students are urged to contact the instructor prior to registration if they have questions about the laboratory.
CMSC
301 Computer Organization
Fundamentals of computer organization with focus on machine and assembly language levels. Topics include Boolean algebra, digital logic, data representations, study of a modern processor's architecture and assembly language, and creation of simulators and assemblers. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 221.
Unit(s): 1
CMSC
315 Algorithms
Design, analysis, and implementation of advanced computer algorithms. Emphasis is given to problem-solving techniques, including the greedy method, divide-and-conquer, and dynamic programming. Specific problem domains vary. Topics may include sorting, graphs, networks, computational geometry, NP-completeness, approximation algorithms, text processing, distributed systems, and numerical algorithms. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 222.
Unit(s): 1
CMSC
321 Operating Systems
Structure of operating systems, process management, memory management, file systems, and case studies. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 222 and 301.
Unit(s): 1
CMSC
322 Software Engineering Practicum
Project-oriented course. Principles of software engineering will be emphasized throughout. Three lecture and one laboratory hour per week.
Prerequisite(s): Senior standing or two courses at the 300 level that have Computer Science 301 or 315 as a prerequisite.
Unit(s): 1
CMSC
323 Design and Implementation of Programming Languages
Concepts in design and implementation of programming languages, including compile-time and run-time issues. Support for block-structured procedural languages, object-oriented languages, and functional languages. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 301 and 315.
Unit(s): 1
CMSC
325 Database Systems
Introduction to systematic management of data: design and implementation of relational databases, data modeling, normalization, indexing, relational algebra, query processing, and transaction management. Programming projects include substantial use of SQL and its extensions. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 221 and 222.
Unit(s): 1
CMSC
326 Simulation
Introduction to simulation. Discrete-event simulation, Monte Carlo simulation, simulation of queuing and inventory systems, random number generation, discrete and continuous stochastic models, elementary statistics, point and interval parameter estimation, and input modeling techniques. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 222 and 301.
Unit(s): 1
CMSC
328 Numerical Analysis
(See Mathematics 328.)
Unit(s): 1
CMSC
330 Theory of Computation
Finite state machines, regular languages, push-down automata, and context-free languages. Turing machines, recursive functions, and related topics. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 315.
Unit(s): 1
CMSC
331 Introduction to Compiler Construction
Regular languages, context-free languages, finite automata, push-down automata, lexical analysis, parsing, intermediate representation, and code generation. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 222 and 301.
Unit(s): 1
CMSC
332 Computer Networks
Principles and techniques for data communication between computers. Topics include design and analysis of communication protocols, routing, congestion control, network-centric applications, and recent advances. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 301.
Unit(s): 1
CMSC
333 Parallel Programming
Principles and techniques for programming computers that have multiple processors. Writing programs for parallel computers that enhance run-time efficiency, portability, correctness, and software modifiability. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 222 and 301.
Unit(s): 1
CMSC
334 Computer Security
Theory, mechanisms, and implementation of computer security and data protection. Topics include encryption and authentication, program and language security, operating system security, and network security. Three lecture and one laboratory hour per week.
Prerequisite(s): Computer Science 301 (corequisite).
Unit(s): 1
CMSC
335 Computer Graphics
Device independent two- and three-dimensional computer graphics, interactive graphics, user interfaces, and human factors. Consideration of advanced modeling and rendering. Three lecture and one laboratory hour per week.
Prerequisite(s): Mathematics 245 and Computer Science 222 and 301.
Unit(s): 1
CMSC
340 Directed Independent Study
To enable well-qualified students who have completed basic requirements for major to work independently in areas not included in curriculum.
Prerequisite(s): Permission of departmental chair and instructor.
Unit(s): .25-1
CMSC
395 Special Topics
Selected topics in computer science.
Prerequisite(s): Permission of instructor.
Unit(s): .5-1
CMSC
388 Individual Internship
No more than 1.5 units of internship in any one department and 3.5 units of internship overall may be counted toward required degree units.
Prerequisite(s): Permission of department.
Unit(s): .25-1
Mathematics Courses
In addition to the listing of courses below, a two-year rotation of mathematics courses is available.
If you wish to transfer credits from a mathematics course taken at another college or university, consult the transfer approval guidelines.
First-year students are encouraged to investigate the University's new integrated quantitative (IQ) science course, a year-long class team taught by 10 professors that combines material from the introductory courses in biology, chemistry, physics, mathematics and computer science.
MATH
102 Problem Solving Using Finite Mathematics
Topics to demonstrate power of mathematical reasoning. Course has two components: (1) introduction to sets and symbolic logic (the fundamentals of proving results) and (2) the application of these fundamentals to at least one particular area of mathematics. The area is dependent on the instructor.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
103 An Introduction to Simulation (The Mathematics of Waiting in Line)
Introduction to fundamentals of abstracting practical situations involving waiting lines (e.g., supermarket lines, assembly lines, emergency rooms, computer networks) into mathematical models. Abstracted models will be simulated using computer software to obtain approximate solutions. Introduction to statistical analysis of data is also included.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
104 Symmetry in Tilings and Patterns
Introduction to symmetry and its use in the generation and classification of geometric patterns.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
119 Statistics for Social and Life Sciences
Introduction to statistical methods with some applications in the social and life sciences. Topics include descriptive statistics, graphical methods, estimation, hypothesis testing, regression, correlation, and the analysis of categorical data. The proper use of statistical computing software like SPSS will be emphasized. NOTE: Credit cannot be received for both Mathematics 119 and either Psychology 200 or Business Administration 301.
Unit(s): 1
MATH
190 Integrated Science/Math/Computer Science 2 with Laboratory
One of two courses taught fall semester as part of Integrated Quantitative Science program. Each semester of the course will be organized around a guiding principle that integrates several concepts. Along with co-requisite, will include ten hours for lecture and lab combination.
Prerequisite(s): High school calculus. Co-requisite: Biology 190.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
195 Special Topics
Special topics satisfying neither major nor minor requirements.
Unit(s): .25-1
MATH
211 Calculus I
Limits, continuity, derivatives, and integrals. Derivatives of trigonometric, exponential, logarithmic, and inverse trigonometric functions; applications to curve sketching; applications to the physical, life, and social sciences; Mean Value Theorem and its applications; Fundamental Theorem of Calculus.
Prerequisite(s): High school precalculus.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
212 Calculus II
Techniques of integration; applications of integration; improper integrals; Taylor's Theorem and applications; infinite series; differential equations. Credit will not be given for both Mathematics 212 and 231.
Prerequisite(s): Mathematics 211 or one year of high school AP calculus.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
219 Introduction to the Design of Experiments
The basic theory and principles related to the design of modern scientific experiments. Topics include: analysis of variance (ANOVA) for experiments with a single factor, multiple comparisons of treatment means, factorial experiments, blocking, randomized block designs, Latin square designs, random effects models, analysis of covariance, nested models, and other topics.
Prerequisite(s): Either Mathematics 119, Psychology 200, Chemistry 300, Business Administration 301, or Mathematics 330.
Unit(s): 1
MATH
231 Scientific Calculus I
Topics of calculus--limits, derivatives, integration--from the perspective of mathematical modeling in the natural sciences. Includes trigonometric, exponential, and logarithmic functions; techniques of integration; error analysis; differentiation of functions of two or more variables. Credit will not be given for both Mathematics 212 and 231.
Prerequisite(s): One year of high school calculus or equivalent.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
232 Scientific Calculus II
Continuation of Mathematics 231. Taylor polynomial approximations; discrete and continuous probability; models of dynamical systems via difference equations, differential equations, and systems of linear difference equations, including relevant topics from linear algebra.
Prerequisite(s): Mathematics 231.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
235 Multivariate Calculus
N-dimensional Euclidean space, functions of several variables, partial derivatives, multiple integrals, line and surface integrals, classical integral theorems, applications.
Prerequisite(s): Mathematics 212 or 232.
General Education Requirement: (FSSR)
Unit(s): 1
MATH
245 Linear Algebra
Vector spaces, matrices, systems of linear equations, linear transformations, applications.
Prerequisite(s): Mathematics 212 or 232 or Computer Science 222.
Unit(s): 1
MATH
250 Fundamentals of Abstract Mathematics
Logic, quantifiers, negations of statements with quantifiers, set theory, induction, counting principles, relations and functions, cardinality. Emphasis on methods of proof and proper mathematical expression.
Prerequisite(s): Mathematics 212 or 232.
Unit(s): 1
MATH
306-307 Abstract Algebra I and II
Systematic study of the theory of groups, rings and fields.
Prerequisite(s): Mathematics 245 and 250. Mathematics 306 is prerequisite to 307.
Unit(s): 1-1
MATH
310 Advanced Multivariable Calculus
Differentiation of vector-valued functions, Jacobians, integration theorems in several variables. Fourier series, partial differential equations.
Prerequisite(s): Mathematics 235.
Unit(s): 1
MATH
312 Differential Equations
Introduction to ordinary differential equations and their use as models of physical systems. Linear and nonlinear equations and systems of equations, including existence and uniqueness theorems, analytical solution techniques, numerical methods, and qualitative analysis. Includes studies of global behavior and local stability analysis of solutions of nonlinear autonomous systems; bifurcation analysis; Laplace transforms. Application and modeling of real phenomena included throughout.
Prerequisite(s): Mathematics 212 or 232. Corequisite: Mathematics 245.
Unit(s): 1
MATH
315 Modern Geometry
Geometry of surfaces in 3-dimensional space, including lengths, areas, angles, curvature, and topology. Classification of Euclidean isometries. Classification of compact surfaces having constant Gaussian curvature.
Prerequisite(s): Mathematics 235 and 245.
Unit(s): 1
MATH
320-321 Real Analysis I and II
Topological properties of the real line and Euclidean space. Convergence, continuity, differentiation, integration properties of real-valued functions of real variables.
Prerequisite(s): Mathematics 235 and 250. Mathematics 320 is prerequisite to 321.
Unit(s): 1-1
MATH
323 Discrete Mathematical Models
Applications of discrete mathematics from two viewpoints: how mathematical models are used to solve problems from other fields and how problems from other fields stimulate the development of new mathematics. Probabilistic models are emphasized. Examples of problems include analysis of board games, elections, and DNA.
Prerequisite(s): Mathematics 245.
Unit(s): 1
MATH
324 Continuous Mathematical Models
Continuous models in modern applications. Primary focus on practical understanding of the modeling process, with goals of developing individual modeling skills and ability to critically read modeling reports in scholarly journals. Mathematical topics include ordinary differential and partial differential equations.
Prerequisite(s): Mathematics 312.
Unit(s): 1
MATH
328 Numerical Analysis
Analysis and implementation of algorithms used in applied mathematics, including root finding, interpolation, approximation of functions, integration, solutions to systems of linear equations. (Same as Computer Science 328.)
Prerequisite(s): Mathematics 212 or 232, Mathematics 245, and Computer Science 150 or 155.
Unit(s): 1
MATH
329 Probability
Introduction to the theory, methods, and applications of randomness and random processes. Probability concepts, independence, random variables, expectation, discrete and continuous probability distributions, moment-generating functions, simulation, joint and conditional probability distributions, sampling theory, laws of large numbers, limit theorems.
Prerequisite(s): Mathematics 235. Corequisite: Mathematics 245.
Unit(s): 1
MATH
330 Mathematical Statistics
Introduction to basic principles and procedures for statistical estimation and model fitting. Parameter estimation, likelihood methods, unbiasedness, sufficiency, confidence regions, Bayesian inference, significance testing, likelihood ratio tests, linear models, methods for categorical data, resampling methods.
Prerequisite(s): Mathematics 329.
Unit(s): 1
MATH
331 Complex Analysis
Introduction to the calculus of functions of a single complex variable, including series, calculus of residues, and conformal mapping.
Prerequisite(s): Mathematics 310 or Physics 301.
Unit(s): 1
MATH
336 Operations Research
Linear and Integer Programming: algorithms, complexity, sensitivity, and duality. Applications such as assignments, networks, scheduling.
Prerequisite(s): Mathematics 323.
Unit(s): 1
MATH
340 Directed Independent Study
For well-qualified students who wish to work independently in areas not included in curriculum. Proposal must be approved by departmental committee.
Prerequisite(s): Permission of department chair and instructor.
Unit(s): .25-1
MATH
350 Coding Theory
Error-correcting codes are used to ensure reliable electronic communication in everything from compact disc players to deep-space transmission. Topics include linear codes, design theory, cyclic codes, counting arguments for nonexistence, decoding algorithms.
Prerequisite(s): Mathematics 245 or permission of instructor.
Unit(s): 1
MATH
355 Cryptography
History and development of “secret codes” with applications to electronic commerce, diplomatic and military communication and computer security. Emphasis on mathematical structures underlying classical, arithmetic, algebraic, mechanical, electronic, and public-key cryptosystems.
Prerequisite(s): Mathematics 245 and either Mathematics 250 or Computer Science 222 or permission of instructor.
Unit(s): 1
MATH
395 Special Topics
Selected topics in mathematics.
Prerequisite(s): Varies with topic.
Unit(s): .5-1
Mathematical Economics Courses
MTEC
400 Capstone in Mathematical Economics
Seminar that focuses on an area of advanced mathematics with broad economic applications. Students will independently explore the area through readings from both the mathematical and economic literatures.
Prerequisite(s): Economics 271, Mathematics 330 and senior standing.
Unit(s): 1