The Mathematics/Computer Science Program: Courses

Math Fluency Prerequisites: Please note that math fluency is a prerequisite in some mathematics/computer science courses. In such cases, all students must satisfy this requirement before enrolling in the course.

Communicating Quantitative Information
MAT 1020
/ 4 credits / Every semester
Students learn basic concepts in quantitative reasoning (numbers, probabilities, basic statistics) and the creation, use, and evaluation of quantitative information (databases, searches, spreadsheets, interactive graphics). This course prepares students for civic engagement by using current events (past and current news stories) as the focal point of study. Students are required to post to online discussion forums, complete short writing assignments, and make presentations on topics involving quantitative reasoning.

Mathematics for Contemporary Life
MAT 1060
/ 4 credits / Every semester
Students learn basic concepts in quantitative reasoning (number systems, data manipulation, basic statistics), with emphasis on problem solving using computational methods. This course uses a textbook and focuses on applications related to consumer issues to develop computational and problem-solving skills. Students learn to transform data into information and apply quantitative methods to evaluate information and solve real-world problems.

MAT 1150
/ 4 credits / Every semester
Prepares students with limited backgrounds in high school mathematics for calculus. Topics include absolute values and inequalities, the properties of functions, graphs, logarithms, fractional exponents, and trigonometry.

Programming Games
MAT 1420
/ 4 credits / Every semester
An introduction to traditional and modern concepts in programming. Traditional concepts covered include variables, expressions, data representation, logic, arrays, functions, and pseudo-random numbers. The modern concepts include graphical constructs and event-driven programming. This course uses familiar games as projects, because implementing games requires an understanding of important programming concepts and attention to the human-computer interface. Also offered as NME 1420.

Calculus I
MAT 1500
/ 4 credits / Every semester
The basic concepts of the differential and integral calculus. Focus is on the applicability of these topics to an array of problems. The first course in a three-semester series.
Prerequisite: MAT 1150 or equivalent

Calculus II
MAT 1510
/ 4 credits / Spring
A continuation of MAT 1500. Topics include differentiation and integration of logarithmic, exponential, and inverse trigonometric functions; techniques of integration; arc length; infinite series; and improper integrals. Applications include work, growth, and decay problems and volumes of solids of revolution.
Prerequisite: MAT 1500

Computer Science I
MAT 1520
/ 4 credits / Every semester
An introduction to problem solving, using computers. Emphasis is on programming, including the study of syntax, semantics, logical structures, graphics, and object-oriented programming. General topics of algorithm development, formulating problems, finding methods for computer solutions, differences among computer languages, and trends in the industry are also discussed. Experience is acquired through hands-on labs and several programming assignments. Also offered as NME 1520.

Computer Science II
MAT 1540
/ 4 credits / Spring
A continuation of MAT 1520. While programming is the main focus, other concepts central to the field are introduced, including data representation, algorithms, recursion, Boolean logic, and some data structures. Some of the social, legal, and ethical issues related to computers are also investigated. Students have hands-on experience with multiple programming languages, including Processing, Python, and Java.
Prerequisite: MAT 1520 or equivalent

Introductory Statistics
MAT 1600
/ 4 credits / Every semester
Statistics are used everywhere in the modern world. This course covers descriptive statistics, entailing measures of central tendency and dispersion, linear regression, and Pearson correlation; and inferential statistics, including normal distributions and hypothesis testing. Currently taught primarily online, with weekly exchanges of work between student and teacher using email and Moodle, with approximately three classroom sessions. Includes team projects; students must meet with their teams, and the classroom sessions are used for team presentations.
Prerequisite: High school algebra skills

Computer Architecture
MAT 2700
/ 4 credits / Special topic (offered irregularly)
An introduction to basic concepts in computer hardware, with a focus on personal computers. Topics include historical trends, Boolean logic and computer arithmetic, organization (CPU, cache, memory, bus, peripherals), instruction set design, interrupts and exceptions, and performance metrics. Students become familiar with the critical components of all computers, including embedded devices, and build a computer from standard parts.
Prerequisite: MAT 1520 or equivalent

Creating Web Documents
MAT 2730
/ 4 credits / Every semester
Interactive online media like the World Wide Web have revolutionized the way people communicate. Students who are familiar with computers and the Internet are introduced to tools and techniques for creating interactive documents. Topics include HTML authoring, Cascading Style Sheets, scripting languages, interaction techniques, data retrieval, and incorporating sound, video, and images in documents. Also offered as NME 2730.

Geometry and Art
MAT 2800
/ 4 credits / Special topic (offered irregularly)
The role of geometry in drawing, sculpture, and architecture is extensive. Topics include Euclidean plane and solid geometry, symmetry, tilings of the plane, projective geometry, and the golden ratio. The geometric basis of perspective is pursued in a historical setting.

Discrete Mathematics
MAT 3120
/ 4 credits / Alternate years
This course in combinatories includes elementary probability, linear programming, difference equations, graph theory, and enumeration techniques.
Prerequisite: MAT 1150

Calculus III
MAT 3150
/ 4 credits / Fall
A continuation of MAT 1500 and 1510. Topics include polar coordinates, vectors in two and three dimensions, parametric equations, quadric surfaces, partial derivatives, multiple integrals, directional derivatives, gradients and their applications, and line integrals.
Prerequisite: MAT 1510

Differential Equations
MAT 3160
/ 4 credits / Alternate years
Many phenomena in scientific situations are characterized by differential equations. Topics include the mathematical formulation of problems and solution techniques, linear equations and systems, series methods, and nonlinear first- and second-order equations.
Prerequisite: MAT 3150

Linear Algebra
MAT 3170
/ 4 credits / Alternate years
Topics include linear equations, row reduction, matrix algebra, determinants, vectors in three dimensions, abstract vector spaces, dimension, linear transformations, eigenvalues, diagonalization, and applications to other sciences.
Prerequisite: MAT 1510

Advanced Calculus
MAT 3210
/ 4 credits / Special topic (offered irregularly)
Topics include transformations and mappings; Jacobians; curves and surfaces; vectors and vector fields; gradient, divergence, curl, line, and surface integrals; Green’s theorem; divergence theorem; Stoke’s theorem; Lagrange multipliers; uniform convergence of series; and point-set topology.
Prerequisite: MAT 3150

Probability and Statistics
MAT 3410
/ 4 credits / Special topic (offered irregularly)
Probability in discrete and continuous sample spaces, combinatorics, distributions, random variables, Poisson processes, and Markov chains, with applications to the natural and social sciences. Also includes mathematical bases of common statistical tests with applications, sampling, hypothesis testing, and distributions used in statistics.
Prerequisite: MAT 3150

Creating User Interfaces
MAT 3440
/ 4 credits / Special topic (offered irregularly)
Introduces concepts and skills used in analyzing and designing interfaces for computer applications. As students study techniques and “rules of thumb,” they discover that the design and implementation of each interface is a unique challenge, which requires creativity and consideration of technical, aesthetic, and psychological factors. Includes the use of XML, XSL, XHTML-MP, VoiceXML, and usability studies. Also offered as NME 3440.
Prerequisite: MAT/NME 2730 and MAT/NME 3525, or permission of instructor

Introduction to Unix and Modern Operating Systems
MAT 3450
/ 4 credits / Special topic (offered irregularly)
Unix and Windows 2000 represent a more sophisticated environment than the first generation of graphics-based operating systems. This introduction includes material from the perspective of the user, programmer, and designer. Emphasis is on the tools used for management and administration and the tradeoffs that affect operating system performance. Some coursework in the computer lab provides hands-on experience.
Recommended: A previous programming course (MAT 1520) or equivalent

Creating Databases for Web Applications
MAT 3530
/ 4 credits / Every year
Introduces concepts and tools used to build and operate applications that involve information stored in databases. Students analyze and plan databases using entity-relationship modeling and build database applications using both commercial and open-source tools. Includes discussion of database reliability, integrity, and robustness, and the evolving interplay of proprietary vs. open-source software. Also offered as NME 3530.
Prerequisite: MAT/NME 2730 and a programming course, or permission of instructor

Social Software
MAT 3540
/ 4 credits / Alternate years
Social software is explored both from technical and critical perspectives. Hands-on work in conceptualizing, designing, and developing social software projects is informed by examining the evolution of social software and its impact on society. Projects may range in complexity from simple Web sites to data-driven Web applications to real-time applications. Also offered as NME 3540.
Prerequisite: MAT/NME 2730 or permission of instructor

Numerical Analysis
MAT 3550
/ 4 credits / Special topic (offered irregularly)
The theory and implementation of numerical algorithms. Topics include interpolation, approximation, numerical solution of nonlinear equations, numerical integration, numerical linear algebra, and error analysis.
Prerequisite: MAT 3150 and programming experience, or permission of instructor

Introduction to Physical Computing: Getting Outside the Box
MAT 3560
Refer to NME 3560 in New Media Courses (School of Film and Media Studies) for description.

History of Mathematics Seminar
MAT 3610
/ 4 credits / Special topic (offered irregularly)
Students study topics in classical mathematics, beginning with the development of arithmetic, algebra, and geometry in Egypt, Babylon, and Greece from approximately 2000 B.C. to 300 A.D. The course continues with a brief look at Islamic mathematics, emphasizing the value of Hindu-Arabic numerals and efficient algorithms for basic arithmetical operations. The subsequent explosion of European mathematics, culminating with the calculus and its effects on technology, is also covered. The goal is to understand the mathematics as well as the social and historical impact of these developments. Limited to mathematics/computer science majors.
Prerequisite: MAT 1500 and 1510, and permission of instructor

Networking and Security
MAT 3650
/ 4 credits / Special topic (offered irregularly)
Covers the key conceptual and practical aspects of networking and security, which are increasingly important in the era of the Internet, Windows, and Unix. TCP/IP communications protocols are explored at multiple levels of the protocol stack. Performance and reliability issues are also studied, using campus Intranet and Internet connections as well as protocol analyzer and network management tools. Security topics include encryption, authentication, and the likely change from clear-text to Kereberos-type tools. Also offered as NME 3650.
Prerequisite: MAT/NME 1520 or equivalent

Advanced Security
MAT 3660
/ 4 credits / Special topic (offered irregularly)
Builds on the concepts of MAT 3650. Building and maintaining networks, servers, and individual workstations to prevent malicious interference are growing concerns. Topics include viruses, worms, spam, spyware, denial-of-service attacks, open-source vs. proprietary systems, and legal and international efforts.
Prerequisite: MAT 3650 or equivalent

MAT 3670
/ 4 credits / Alternate years
An introduction to concepts and technologies for applications in the physical world in which (a) motors, actuators, and sensors are critical devices and (b) real-world variability has significance not present in the virtual world of data manipulation. Topics include industrial robotics, spying, and ethical issues. During and outside of class, students build autonomous vehicles in teams. Robot sumo or interactive art installation are possibilities. Also offered as NME 3670.
Prerequisite: MAT/NME 1420 or 1520, or equivalent

Informatics in Biology and Medicine
MAT 3680
/ 4 credits / Alternate years (Spring)
An overview of the field of biomedical informatics, combining perspectives from biology, medicine, and computer science. Topics include principles of acquisition and storage of biomedical data, principles of database management, the role of the Web in the medical and biological sciences, bioinformatics resources on the Web, elements of statistics and data mining issues, decision making and decision trees, and legal and ethical issues.
Prerequisite: An approved course that satisfies the core curriculum requirement in mathematics, or permission of instructor

Data Structures
MAT 3710
/ 4 credits / Special topic (offered irregularly)
Basic data structures, including stacks, queues, lists, and trees, are examined, and common operations on them are presented in the form of algorithms. Lectures and assignments are done in Java. Submissions in C++ are acceptable.
Prerequisite: MAT 1520 and 1540 or equivalent

Building XML Applications with Java
MAT 3745
/ 4 credits / Special topic (offered irregularly)
XML is revolutionizing the way that data are shared and applications are deployed over the Web. This course introduces students who have experience with object-oriented programming in Java to tools and techniques used to create and manage XML documents and to the theory and practice of analyzing, designing, developing, testing, and deploying XML-based applications, using Java technologies.
Prerequisite: MAT 1540 or permission of instructor

Mobile Media
MAT 3765
Refer to NME 3765 in New Media Courses (School of Film and Media Studies) for description.

Games for Change
MAT 3780
Refer to NME 3780 in New Media Courses (School of Film and Media Studies) for description.

Independent Study and Tutorial
MAT 3900
and MAT 4900 / 1–3 credits / Every semester
Students with special interests may study independently under the sponsorship of a qualified faculty member. Independent studies in general subjects are permitted if the board of study offers no formal course covering the material. Independent study may not be substituted for any course specifically required, except with permission of the board of study.

Abstract Algebra
MAT 4180
/ 4 credits / Alternate years
Groups, subgroups, cyclic groups, permutation groups, isomorphisms, external and internal direct products, fundamental theorem of finite abelian groups, cosets and Lagrange’s theorem, normal subgroups, factor groups, group homorphisms, rings, integral domains, ideals, unique factorization domains, and fields.
Prerequisite: MAT 3170 or permission of instructor

Topics in Advanced Mathematics
MAT 4225
/ 4 credits / Alternate years
Topics are selected from (a) group theory: groups, subgroups, symmetric group, dihedral group, cyclic groups, Zn, cosets, homomorphism and isomorphism, and applications; (b) point-set topology: open and closed sets, limit points, Cauchy sequences, and Bolzano-Weierstrass theorem; and (c) analysis: axiom of continuity, least upper bounds, nested intervals, uniform continuity, Heine-Borel theorem, theory of integration, series, and uniform convergence.
Prerequisite: MAT 3150

Topics in Advanced Computing
MAT 4230
/ 4 credits / Alternate years
Topics are selected from computability, complexity, artificial intelligence, machine learning, programming languages, data mining, informatics in biology and medicine, cryptography, and other application areas. This course does include topics in theoretical computer science, which has a strong mathematical component, as well as attention to current practical problems. Includes oral presentations by students on approved topics of their choosing.
Prerequisite: MAT 1540 or permission of instructor

Graph Theory with Applications
MAT 4410
/ 4 credits / Alternate years
Topics include graphs, subgraphs, cographs, paths, cycles, connectivity, eulerian and hamiltonian graphs, adjacency matrices, trees, planarity, chromatic numbers, eccentricities, extremal graph theory, product graphs, and digraphs. Includes applications and a research project.
Prerequisite: Permission of instructor

MAT 4520
/ 4 credits / Special topic (offered irregularly)
An introduction to concepts and methods of theoretical computer science: what it means for something to be computable (finite state automata, formal languages, Turing machines) and how to measure resources used to solve problems (Big Oh notation, P, NP). This course brings together the two parts of the major in mathematics/computer science and provides historical background as well as insight into current issues.
Prerequisite: MAT 1540

Mathematics Senior Seminar I
MAT 4880
/ 1 credit / Fall
Explores advanced topics in selected areas of mathematics. Includes required oral presentation by students. Required for seniors majoring in mathematics/computer science.

Mathematics Senior Seminar II
MAT 4890
/ 1 credit / Spring
Explores advanced topics in selected areas of mathematics. Oral presentation by students required. Required for seniors majoring in mathematics/computer science.

Independent Study and Tutorial
MAT 4900
Refer to MAT 3900 for description.

Senior Project
MAT 4990
/ 4 credits (per semester) / Every semester
Two-semester independent study (8 credits total) leading to a baccalaureate thesis. The project and thesis may take one of several forms. Research may be carried out in a faculty member’s area of interest and expertise. Library work may be done on a topic in mathematics or computer science, or on the history or philosophy of mathematics. A computer project may be written. Internships at companies that use a student’s mathematical abilities or computer knowledge are also possible.

For updates during 2013–2015, please visit

Arrow up icon | << School of Natural & Social Sciences home