Computational Mathematics and Statistics Courses

CPMA 511 Logic and Proof 
1.5 cr.

Mathematical truth, axioms and theorems, propositional truth tables, quantifiers, predicate calculus, decision procedures, and mathematical induction. Offered fall only. Example syllabus. 
CPMA 512 Linear Algebra 
1.5 cr.

Matrices, vector spaces, linear transformations, determinants, eigenvalues and eigenvectors, and orthogonality. Prerequisite: grade of "C" or better in CPMA 511. Offered fall only. Example syllabus. 
CPMA 515 Advanced Discrete Math 
1.5 cr.

Introduction to number theory, recursively defined functions, analyzing algorithm performance, recurrence relations, generating functions, permutations and combinations, Inclusion/Exclusion, introduction to Graph Theory, and Boolean algebra. Prerequisites: grade of "C" or better in CPMA 511 and CPMA 530. Example syllabus. 
CPMA 518 Vector Calculus 
1.5 cr.

Three dimensional geometry, directional derivatives, gradient, divergence, curl, maximumminimum problems, multiple integrals, parametric surfaces and curves, and line integrals. Prerequisite:grade of "C" or better in CPMA 512. 
CPMA 521 Probability and Markov Chains 
1.5 cr.

Review of random variables, discrete and continuous distributions, expectation, conditional probability, and limit theorems. Introduction to Markov chains, finite absorbing and nonabsorbing chains, limiting distributions, and infinite chains. 
CPMA 522 Statistical Inference 
1.5 cr.

Review of statistical estimation and hypothesis testing. Introduction to nonparametric methods, analysis of variance, statistical modeling and Bayesian inference. Prerequisite: grade of "C" or better in CPMA 521. 
CPMA 525 Linear Models 
1.5 cr.

Review of simple linear regression and multiple linear regression. Topics further covered include Type I and Type III SSQ, various residual diagnostics measures, effects of outliers and influential measures, estimation distinctions when dependent and independent variables are either nominal or continuous, introduction to fixed/random effects and components of variance, 1way ANOVA with multiple comparisons techniques, and ANACOVA models for the common slope and separate slope form. All models are demonstrated using JMP and SAS. Prerequisites: grade of "D" or better in CPMA 521 and CPMA 522. 
CPMA 526 Experimental Design 
1.5 cr.

Continuation of CPMA 525. Begins with the concepts about the principles of experimental design, randomization and blocking. Topics covered are 2way and multiway ANOVA models, orthogonal contrasts, factorial designs, balanced and unbalanced designs, repeated measures, nesting effect within models, mixed models analyses, and estimation comparing the EMS and REML approaches. Prerequisite: grade of "C" or better in CPMA 525. 
CPMA 530 Programming Language: Python 
1.5 cr.

Variables, expressions, builtin data types, sequences, control structures, classes, objects, instances, methods, inheritance, polymorphism, files, searching, sorting, IDEs. 
CPMA 531 Programming Language: Java 
1.5 cr.

Classes, objects, instances, messages, methods, inheritance, interfaces, polymorphism, software life cycle, variables, expressions, data objects, control structures, strings, arrays, files, searching, sorting, applets, toolkits, threads, and graphical user interfaces. Note: This course is no longer being offered. Example syllabus. 
CPMA 532 Data Structures 
1.5 cr.

Abstract data types, stacks, queues, databases, priority queues, trees, linked lists, hashing, balanced trees, selforganizing data structures, and advanced sorting. Prerequisite: grade of "C" or better in CPMA 530. Example syllabus. 
CPMA 535 Introduction to Computer Systems 
1.5 cr.

Computer representation and hardware, system programming, prototyping and development, memory and data organization, communications and networking, human/computer interactions, and performance analysis and improvement. Prerequisite: grade of "C" or better in CPMA 532. Example syllabus. 
CPMA 536 Software Engineering 
1.5 cr.

Software development processes and the software life cycle, software architecture and design, emphasizing objectoriented design, user interface design, validation and verification, testing methods, systems analysis and requirements definition, software management and personnel issues. Prerequisite: grade of "C" or better in CPMA 532.Example syllabus. 
CPMA 550 Computer Networks 
3 cr.

Network technologies, protocols, and management. Programming networked applications. The effects of the Internet and World Wide Web on computing and society. Prerequisites: grade of "D" or better in CPMA 522 and CPMA 532. This course carries a mutual exclusion with COSC 450. 
CPMA 551 Digital Image Processing 
3 cr.

Introduction to the mathematics of images and image processing, as well as computational methods for real data manipulation. Topics include image acquisition, image enhancement and restoration in both the spatial and frequency domains, the Fourier transform, wavelets, image compression, image segmentation, and morphological processing algorithms. Prerequisites: MATH 215 or CPMA 518, MATH 310 or CPMA 512, or permission of the instructor.. 
CPMA 555 Webbased Systems

3 cr.

Technologies underlying the Web, including TCP/IP, HTTP, HTML, CSS, JavaScript, the DOM, XML, serverside development, clientserver communication, and web services.Prerequisites: CPMA 531 and CPMA 532, or permission of the instructor. 
CPMA 560 Algorithms/Graph Theory 
3 cr.

Graph theory, graph algorithms, coloring, network flows, computational geometry, compression, randomized algorithms, parallel algorithms, and NPcompleteness. Prerequisite: grade of "D" or better in CPMA 532. 
CPMA 563 Numerical Differential Equations 
3 cr.

Finite difference methods, stability, boundary value problems, ordinary differential equations, integral equations, and partial differential equations. Prerequisites: grade of "C" or better in CPMA 511 and CPMA 512. 
CPMA 565 Numerical Methods 
3 cr.

Linear systems, interpolation, functional approximation, numeric differentiation and integration, and solutions to nonlinear equations. Prerequisite: grade of "D" or better in CPMA 530 or CPMA 531. 
CPMA 566 Operations Research 
3 cr.

An introduction to the background of operations including example problems and a brief history. An extensive discussion of the theory and applications of linear programming will follow. Other topics will include integer programming, transportation and network flow models, and dynamic programming. Prerequisite: grade of "C" or better in CPMA 512. This course carries a mutual exclusion with MATH 366. 
CPMA 571 Optimization 
3 cr.

Linear programming, transportation problem, network flow, nonlinear convex programming, dynamic programming, geometric programming, game theory, and gradient methods. Prerequisites: grade of "C" or better in CPMA 518, MATH 215 or equivalent and CPMA 512, MATH 310 or equivalent. 
CPMA 573 Statistical Computing 
3 cr.

Generating pseudorandom numbers, Monte Carlo integration, simulation, Bayesian inference, Gibbs sampling, Metropolis sampling, MetropolisHastings sampling, the EM algorithm, multivariate NewtonRaphson maximization. Prerequisites: grade of "D" or better in CPMA 512, CPMA 522 and CPMA 530 or CPMA 531. 
CPMA 574 Prediction and Classification Modeling 
3 cr.

This course covers the basic topics for supervised vs. unsupervised learning and low dimensional vs. high dimensional datasets. Topics include a short review of statistics inference, beginning steps in looking at data, identifying missing values, patterns of missing data, outlier detection and data visualization methods with multivariate data. Modeling methods include linear and multiple regression methods, logistic regression, regression and classification decision tree analyses, and crossvalidation techniques. Prerequisites: grade of "D" or better in CPMA 521 and CPMA 522. 
CPMA 575 Data Mining and Data Science Analytics 
3 cr.

Complements 574, adding beginning concepts in data mining and introductory concepts about developing decisionmaking models using practical data science tools. Special topics covered are: issues in data exploration; steps in data, use of transformations and methods of imputation for missing data; training vs. testing sets; determining model accuracy (ROC curves, lift and cumulative lift charts), training vs. testing data samples, bootstrapping estimations; partitioning and classification tree analyses, linear and logistic regression techniques and bagging/random forests to explore variation. Prerequisites: grade of "D" or better in CPMA 525 and CPMA 526. 
CPMA 577W Applied Statistics with Regression 
3 cr.

This course begins with a review of inferential statistics. Emphasis on data collection methods, stating hypotheses, confidence intervals and bootstrapping methods for estimating parameters are introduced. Both traditional and resampling methods are demonstrated for testing hypotheses. Additional topics covered are graphical methods for exploring distributions and determining outliers, 1way and 2way analysis of variance models using a linear models approach, and linear and multiple regression methods. JMP software is used for demonstrating methods. Prerequisite: CPMA 521 or taken as a corequisite. 
CPMA 580 Artificial Intelligence/Cognitive Science 
3 cr.

Computational and statistical modeling of human cognitive processes and their implementation: modularity of mind, rulebased vs. distributed vs. prototype models, search techniques, story understanding, and statistical models of language. Prerequisites: grade of "D" or better in CPMA 511, CPMA 512, CPMA 522, CPMA 532 and CPMA 535. 
CPMA 582 Machine Learning 
3 cr.

Foundational theory, models, and methods of supervised machine learning, including VC dimension, validation, linear models, artificial neural networks, and support vector machines. Various learning algorithms will be implemented and tested, such as perceptron learning, linear regression, and gradient descent. Prerequisites: grade of "C" or better in CPMA 521 and in CPMA 530 or CPMA 531. 
CPMA 583 Principles of Programming Language 
3 cr.

BNF representation, variables, scope, binding, data types and type checking, abstract data types, control, control flow abstractions, procedural abstractions, calling mechanisms, semantic models, category theory, functional programming, lambda calculus, logic programming, functors, adjoint functors, 2catagories and little categories. Prerequisite: grade of "D" or better in COSC 215. 
CPMA 584 Formal Languages and Automata 
3 cr.

Formal languages and their relation to automata. Regular expressions and languages, context free languages, recognition of languages by automata, Turing machines, decidability, and computability. Prerequisites: grade of "D" or better in CPMA 511 and CPMA 512. This course carries a mutual exclusion with COSC 418. 
CPMA 585 Computer Security 
3 cr.

Network, database, and Web security, threat models, elementary and advanced cryptology, protocol analysis, covert channels, access control and trust issues, legal and ethical issues in security. Prerequisite: CPMA 535. 
CPMA 595 Independent Study 
13 cr.

Directed study on a topic related to computational mathematics and statistics as determined by the Program Director and dependent on the approval of the department. May be repeated once for credit. 
CPMA 599 Internship 
03 cr.

Internship suitably related to the program as determined by the Program Director and dependent on the approval of the department. May be repeated for a total of up to six credits. 
CPMA 700 Thesis 
16 cr.

Prerequisite: Permission of the Graduate Director. 
