# Course Descriptions

## Mathematics

This course is an introduction to the rapidly developing science of complexity. It is a discussion of the tools—fractals, chaos, and self-organization—being refined for the purpose of understanding such things as the fractured and irregular structures of Nature, surprise and unpredictability, and the emergence of lifelike properties from inanimate matter. The theme of the course is that complexity can arise from simple origins, such as the repeated application of elementary processing rules. The course emphasizes the use of the computer for visualization. Practical application of these ideas in medicine and engineering will be discussed, as will examples of the connections between complexity in the sciences and that in the humanities and the arts.

Linear programming, matrices, sets and counting, Markov process, difference equations, and graphs. The course will emphasize developing, analyzing, and interpreting mathematical models.

This course is designed for students in the Elementary Education Certification Program and for students planning to complete the Secondary Education Certification Program in an area other than mathematics. The framework of the course consists of four themes: Number Systems and their Operations, Algebra and Functions, Geometry and Measurement, Data Analysis, Statistics, and Probability. Emphasis throughout is on reasoning and problem-solving using concepts and procedures from all four areas. Substantial amounts of both reading and writing will be required and students will be expected to demonstrate both orally and in writing a thorough understanding of the concepts and the ability to communicate this understanding to others.

Analytic geometry, the derivative and differential, elementary functions, limits, continuity, and applications. This course is part 1 (of 2) of a yearlong sequence in differential calculus. At the end of this two-course sequence, students will tackle all the topics above included in differential calculus. Completion of this year- long sequence is equivalent to completion of MAT 111: Differential Calculus. Please note, Pre-Calculus placement score must be less than 50 to take this course. Also note, MAT 106 and MAT 107 can be counted as a two-course quantitative sequence for distribution, but MAT 106 and 107 do not count as a quantitative course otherwise.

This course is the second semester of a year-long sequence in Differential Calculus. Topics in this course include trigonometry, derivatives of trigonometric functions, conic sections, implicit differentiation, and limits at infinity. The semester will conclude with the Fundamental Theorem of Calculus. Throughout the semester, students will work on a project involving Calculus, culminating in a final paper and a presentation. Completion of this year-long sequence is equivalent to completion of MAT 111: Differential Calculus. Also note, MAT 106 and MAT 107 can be counted as a two-course quantitative sequence for distribution, but MAT 106/107 does not count as a quantitative course otherwise.

Introduction to the appropriate methods for analyzing data and designing experiments.
After a study of various measures of central tendency and dispersion, the course develops the basic
principles of testing hypotheses, estimating parameters, and reaching decisions. C*redit for MAT** **109 will not be given if taken before or** **subsequently** **to** **BUS 109, PSY 209, or** **ECN** **215.*

Analytic geometry, the derivative and differential, elementary functions, limits, continuity, and applications. Prerequisite: It is strongly recommended that a student should have strong algebra and trigonometric skills before taking this course.

The indefinite integral, the definite integral, the fundamental theorem of the integral
calculus, sequences, series, and applications. *Prerequisite:** **MAT** **111** **or** **MAT** **106-107** **or** **permission** **of** **the** **instructor.*

Vectors, partial derivatives, and multiple integrals for functions of several variables.
Line and surface integrals. *Prerequisite: MAT** **112** **or** **permission of** **the** **instructor.*

A critical study of the basic concepts of geometry. This course begins with an axiomatic
approach to Euclidean geometry which includes careful proofs of its principal theorems. The course
will continue with an examination of various types of non-Euclidean geometries which may include spherical
geometry, projective geometry, and/or hyperbolic geometry. *Prerequisite:** **MAT** **112** **or** **permission** **of** **the** **instructor.*

An introduction to logic, reasoning, and the discrete mathematical structures that are important in computer science. Topics include proposition logic, types of proof, induction and recursion, sets, combinatorics, functions, relations, and graphs.

This course serves as a focused introduction to programming for scientists and engineers. Topics include algorithm development, statistical tests, the fast Fourier transform (FFT), simulating the dynamics of systems represented by coupled ordinary differential equations (e.g. planetary motion via Runge-Kutta methods), numerical integration, root finding, fitting functions to experimental data, and the creation of publication-quality graphics. Students choose and complete an independent research project on a topic related to their major. This course enables students to integrate computation into advanced courses in theoretical and/or experimental science. Programming language: Python. *Co-requisite:** **PHY** **112.*

An introduction to linear algebra balancing computation and the reading, understanding,
and writing of mathematical proofs. A selection of topics from systems of linear equations, matrices,
vector spaces, bases, dimension, linear transformations, determinants, eigenvalues, change of basis, matrix
representations of linear transformations, matrix decompositions, and applications of linear algebra. It is recommended that students take MAT 240 before this course. *Prerequisite:** **MAT** **112** **or** **permission** **of** **the** **instructor.*

Elementary methods for the solution of ordinary differential equations, including
the expansion of the solution in an infinite series. *Prerequisite:** **MAT** **210** **or** **permission** **of the** **instructor.*

Events and their probabilities, dependence, and independence. Bayes Theorem. Variates
and expected values. Theorems of Bernoulli and De Moivre. Special distributions. Central limit
theorem and applications. *Prerequisite:** **Mathematics** **112 or** **permission** **of the** **instructor.*

Theory of functions of a complex variable, including applications to problems in the
theory of functions of a real variable. Cauchy’s Integral Formula and its application to the calculus of
residues. *Prerequisite:** **Mathematics** **210 or** **permission of the** **instructor.*

Solution of equations and systems of equations by iteration and elimination, numerical
differentiation and integration, assessment of accuracy, methods of interpolation and extrapolation. *Prerequisite: Mathematics 210** **or** **permission of the** **instructor.*

Factorization of integers. Congruences and residue classes. Theorems of Euler, Fermat,
Wilson, and Gauss. Primitive roots. Quadratic residues and the reciprocity theorem. *Prerequisite: MAT** **240.*

Introduction to groups, rings and fields. Other topics may include integral domains,
polynomial rings, and fields. *Prerequisite:** *MAT 280 *and** **mathematical** **maturity** **as** **demonstrated** **by** **the** **completion** **of** *MAT 240 *or** **permission** **of** **the** **instructor.*

A rigorous treatment of single-variable calculus. A selection of topics from the properties
and the topology of the real numbers, sequences, series, continuity, differentiation, and Riemann integration.
*Prerequisite: *MAT 210 *and mathematical maturity as demonstrated by completion of one of *MAT 240, *or *MAT 280, or *permission of the** **instructor.*

A continuation of Real Analysis II. Topics selected according to student and instructor
interest. Topics could include analysis in metric spaces, analysis in n-dimensional space, Fourier
analysis, functional analysis, measure theory, and Lebesgue integration. Suitable for engineers, chemists, physicists,
economists, and mathematicians. *Prerequisite: *MAT 470

Open to mathematics majors only. Weekly meetings of the majors and faculty in the
department are scheduled to provide information about careers, graduate school, thesis topics, and
research areas, as well as to prepare each major to make presentations of problem solutions and to make the required
presentation on the thesis. All junior mathematics majors are enrolled in the seminar and will receive
a pass/fail grade at the end of the semester. *Junior** **standing, and permission** **of the Department.*

Open to mathematics majors only. Senior students will make a presentation of a preliminary
outline of their capstone project in the fall semester and will present a report on the completed capstone
project in the spring. All senior mathematics majors are enrolled in the seminar and will receive
a pass/fail grade at the end of the semester. *Prerequisite*: *Senior** **Standing,** *MAT 391/392 *and** **permission of** **the** **Department.*

** **Study of an area of mathematics not covered in other courses. Students are urged to suggest possible topics
to the department as their interests and needs develop. *Prerequisite:** **Permission of** **the** **instructor.*

## Computer Science

This course introduces computer programming in a modern, high-level programming language. Objectives include proficiency in the language (including variables, functions, types, flow control, and basic data structures) as well as familiarity with common computer science problem solving strategies. Students will also gain experience in team programming and in program design for practical problem solving. This course counts for distribution but does not count towards the major in computer science.

The objectives of this course are threefold: (a) to introduce problem-solving methods and algorithmic development; (b) to teach an object-oriented programming language; and c) to teach how to design, code, debug, and document programs in an object-oriented environment using techniques of good programming style.

The objectives of this course are twofold: (a) to study data structures, such as stacks,
queues, trees, dictionaries, tables, and graphs, their efficiency, and their use in solving computational
problems; and (b) to gain proficiency in an object-oriented programming language. Exercises in that language
will provide an opportunity to design and implement the data structures. *Prerequisite: Computer Science 201 or permission of the** **instructor.*

This course gives a deep understanding of object-oriented programming, and the design
and coding of applications programs using Java. The use of Java for graphics and graphical user
interfaces, multithreading, connectivity with databases and across networks will be covered. Students will be required to design and write a large application for a final course project that incorporates GUIs and a
selection of the principles taught. *Prerequisite: Computer** **Science** **202. Corequisite: MAT** **240*

An introduction to logic, reasoning, and the discrete mathematical structures that are important in computer science. Topics include proposition logic, types of proof, induction and recursion, sets, combinatorics, functions, relations, and graphs.

Principles of computer organization and architecture are introduced, including interfacing
and communication, register and memory organization, digital logic, representation of data, and introduction to assembly language. *Prerequisite: Computer** **Science** **202*

Solution of equations and systems of equations by iteration and elimination, numerical
differentiation and integration, assessment of accuracy, methods of interpolation and extrapolation. *Prerequisite: Mathematics 210** **or** **permission of the** **instructor.*

Formal models of computation such as finite state automata, pushdown automata, and Turing machines will be studied along with corresponding formal languages, e.g., regular languages and context-free languages.

Uncomputability, including the halting problem, and computational complexity including
the classes P and NP and NP-completeness will be studied. *Prerequisite:** **Computer** **Science** **202** **and** **Computer** **Science** **240.*

An introduction to the design and use of databases together with insights into the
key issues related to the use of database systems. The course covers the entity-relationship model; the hierarchical,
network, and relational data models, and their languages; functional dependencies and normal forms;
the use of SQL language, and the design and implementation of relational databases using MS ACCESS
and MySQL. *Prerequisite:** **Computer** **Science** **202** **and** **Computer** **Science** **240,** **or** **permission** **of the** **instructor.*

The topic of this course is the design of computer algorithms and techniques for analyzing their efficiency and complexity. Types of algorithms include greedy algorithms, divide and conquer
algorithms, dynamic programming, searching and sorting. *Prerequisite:** **Computer** **Science** **202,** **Computer** **Science** **240.*

Introduction to operating systems including tasking, memory management, process scheduling,
file systems, protection, and distributed systems. *Prerequisite: Computer** **Science** **250.*

Explores the principles and techniques involved in programming computers to do tasks
that usually are thought of as requiring intelligence when done by people. State-space and heuristic
search techniques, logic and other knowledge representations, and statistical and neural network approaches are applied to problems such as game playing, planning, the understanding of natural language, and computer
vision. *Prerequisite:** **Computer** **Science** **202.*

This course covers the principles, structure, and operation of computer networks.
Emphasis will be placed on understanding the protocols and mechanisms used in the Internet, and in local and
wide-area networks. The student will write application-level programs running on the LINUX or Windows
operating systems. *Prerequisite:** **Computer** **Science** **240,** **Computer** **Science** **250,** **and** **a** **strong** **background in** **C++** **and** **Java.*

The topic of this course is the systematic process for creating software products
as opposed to simply coding programs. The course covers project and product management, software architecture
and design patterns, working in teams and communicating effectively. The course provides individualized
and collaborative experience and a broad understanding of the practical skills necessary
to be an effective software engineer in a professional environment. *Prerequisite: Computer Science 203 (or Computer Science 202 with** **permission** **of the** **instructor).*

Study of an area of computer science not covered in other courses. Students are urged
to suggest possible topics to the department as their interests and needs develop. *Prerequisite:** **Permission** **of** **the** **instructor.*