|
Courses in this section are grouped as follows: Mathematics, Computer Science, and Probability and Statistics.
Students enrolling in introductory mathematics courses should check the prerequisites to determine if a satisfactory score on the Mathematics Placement Test is necessary. The dates on which this test is administered are given in the Schedule of Courses.
A minimum grade of C- is required to meet the prerequisite requirement for any course except with permission of the department.
The following courses fulfill the Natural Sciences and Mathematics [SM] breadth of study requirements: MATHEMATICS: 20(1020), 30(1030), 35(1035), 50*(1150), 70(1070), 80(1080), 100(1100), 102(1102), 105(1105), 151*(2510), 152**(3520), 175(1900), 180(2000), 202(2020), 245(2450), 255(3000), 303(4030), 306(4060), 310(4100), 311(4110), 316(4160), 323(4230), 324(4240), 327(4270), 335(4350), 340(4400), 341(4410), 345(4450), 350(4500), 355(4550), 358(4580), 362(4620), 364(4640), 366(4660), 367(4670), 380(4800), 389(4890). COMPUTER SCIENCE: 101(1010), 122(1220), 125(1250), 170(1050), 201(2010), 225(2250), 240(2700), 241(2710), 255(3000), 273(2210), 274(2260), 275(2750), 278(3130), 301(4010), 302(4020), 304(4040), 305(4050), 314(4140), 325(4250), 328(4280), 330(4300), 341(4410), 344(4440), 350(4500), 352(4520), 354(4540), 356(4560), 361(4610), 362(4620), 373(4730), 374(4740), 376(4760), 377(4770), 378(4780), 388(4880), 389(4890). PROBABILITY AND STATISTICS: 31(1310), 132(1320), 232(2320), 320(4200), 321(4210), 326(4260), 330(4300), 331(4310), 332(4320), 333(4330), 339(4390).
*Mathematics 50(1150) and 151(2510) fulfill this requirement only for students seeking the B.S. in education degree in Early Childhood Education, Elementary Education, and Special Education
**Mathematics 152(3520) fulfills this requirement only for students seeking the B.S. in education degree in middle school mathematics.
Skip to Mathematics classes
100-level classes
200-level classes
300-level classes
400-level classes
Skip to Computer Science
100-level classes
200-level classes
300-level classes
400-level classes
Skip to Probability and Statistics
Mathematics 20(1020) Contemporary Mathematics (3) [MS] Prerequisites: A satisfactory ACT Math score or a satisfactory score on the university's mathematics placement examination. Presents methods of problem solving, centering on problems and questions which arise naturally in everyday life. May include aspects of algebra and geometry, the mathematics of finance, probability and statistics, exponential growth, and other topics chosen from traditional and contemporary mathematics which do not employ the calculus. May be taken to meet the mathematical proficiency requirement, but may not be used as a prerequisite for other mathematics courses. Designed for students who do not plan to take Calculus. Credit will not be granted for Math 20(1020) if credit has been granted for Stat 31(1310), Math 80(1800), 100(1100), 102(1102), or 105(1105). Concurrent enrollment in Math 20(1020) and any of these courses is not permitted.
30(1030) College Algebra (3) [MS] Prerequisites: A satisfactory ACT Math score or a satisfactory score on the university's mathematics placement examination. Topics in algebra and probability, polynomial functions, the binomial theorem, logarithms, exponentials, and solutions to systems of equations.
35(1035) Trigonometry (2) [MS] Prerequisite: Math 30(1030) or concurrent registration. A study of the trigonometric and inverse trigonometric functions with emphasis on trigonometric identities and equations.
50(1150) Structure of Mathematical Systems I (3) Prerequisites: 45 hours of college credit and one of the following: Math 30(1030), a satisfactory ACT Math score, or a satisfactory score on the university's mathematics proficiency examination. A study of sets, relations, functions, whole numbers, the integers and their properties, and the rational and real number systems. Credit will be granted only toward the B.S. in education degree in Early Childhood Education, Elementary Education, Middle School Education and Special Education.
70(1070) Applied Mathematics of Interest (2) Prerequisites: Math 30(1030). An introduction to the role of interest in applied mathematics. Topics include simple and compound interest, mathematics of annuities, amortization bonds, sinking funds, and mortgages.
80(1800) Analytic Geometry and Calculus I (5) [MS] Prerequisites: Math 30(1030) and 35(1035), or a satisfactory ACT Math score along with a satisfactory score on the university's trigonometry examination, or a satisfactory score on both the university's mathematics proficiency examination and the university's trigonometry examination. Introduction to analytic geometry, differential calculus, and integral calculus. Math 80(1800), 175(1900), and 180(2000) form the calculus sequence.
100(1100) Basic Calculus (3) [MS] Prerequisite: Math 30(1030), or a satisfactory ACT Math score, or a satisfactory score on the university's mathematics proficiency examination. Introduction to plane analytic geometry and basic differential and integral calculus with application to various areas. No credit for Mathematics majors. Credit not granted for both Math 80(1800) and 100(1100).
102 (1102)Finite Mathematics I (4) Prerequisite: Math 30(1030), or a satisfactory ACT Math score, or a satisfactory score on the university's proficiency examination. Introductory logic and set theory, partitions and counting problems, elementary probability theory, stochastic processes, Markov chains, vectors and matrices, linear programming, and game theory.
105(1105) Basic Probability and Statistics (3) [MS] Prerequisites: Math 30(1030), or a satisfactory ACT Math score, or a satisfactory score on the university's mathematics proficiency examination. An introduction to probability and statistics. Topics include the concept of probability and its properties, descriptive statistics, discrete and continuous random variables, expected value, distribution functions, the central limit theorem, random sampling and sampling distributions. Credit not granted for more than one of Stat 31(1310), Stat 132(1320) and Math 105(1105).
132(1320) Applied Statistics I Prerequisites: Math 80(1800) or 100(1100). See Statistics 132(1320) in Probability and Statistics section that follows.
151(2510) Structure of Mathematical Systems II (3) Prerequisite: Math 50(1150). An introduction to probability and statistics. An intuitive study of elementary geometry. Introduction to the deductive theory of geometry and to coordinate geometry. Credit will be granted only toward the B.S. in education degree in Early Childhood Education, Elementary Education, Middle School Education, and Special Education.
152(3520) Structure of Mathematical Systems III (3) Prerequisite: Math 151(2510). Together with Math 50(1150) and 151(2510), this course teaches mathematics necessary for middle school mathematics certification. Topics from Math 50(1150) and 151(2510) are continued. Other topics include geometric constructions, similarity, coordinate geometry, normal distribution, combinatorics, and trigonometry. Credit granted only toward B.S. in Education degree in Early Childhood Education, Elementary Education, Special Education, and Middle School Education.
175(1900) Analytic Geometry and Calculus II (5) Prerequisite: Math 80(1800). Selected topics from plane analytic geometry and calculus.
180(2000) Analytic Geometry and Calculus III (5) Prerequisite: Math 175(1900). Solid analytic geometry and selected topics in calculus.
202(2020) Introduction to Differential Equations (3) Prerequisite: Math 180(2000). Topics will be chosen from linear differential equations, equations with constant coefficients, Laplace transforms, power series solutions, systems of ordinary differential equations.
245(2450) Elementary Linear Algebra (3) Prerequisites: Math 100(1100) or 175(1900). An introduction to linear algebra. Topics will include complex numbers, geometric vectors in two and three dimensions and their linear transformations, the algebra of matrices, determinants, solutions of systems of equations, eigenvalues and eigenvectors.
255(3000) Discrete Structures (3) Prerequisite: Math 175(1900) or 100(1100), and CS 125(1250) or equivalent. (Same as CS 255(2250) Treats fundamental ideas in discrete structures and serves as a foundation for subsequent course in both Mathematics and Computer Science. Provides an introduction to techniques of mathematical reasoning with examples derived from computer science. Topics include logic, set algebra, equivalence relations and partitions, functions, mathematical induction, elementary number theory, cardinality, recurrence relations, basic combinatorial methods, trees and graphs. Credit not granted for more than one of CS 255(2250) and Math 255(3000).
303(4030) Applied Mathematics I (3) Prerequisites: Math 202(2020) and 245(2450). Topics chosen from Fourier series, special functions, partial differential equations, and boundary value problems.
306(4060) Applied Differential Equations (3) Prerequisite: Math 202(2020) and 245(2450). The study of ordinary differential equations and partial differential equations is continued with applications in such areas as physics engineering and biology.
310 (4100)Advanced Calculus I (3) Prerequisite: CS/Math 255(3000) and 180(2000). Limits, continuity, and differentiability of functions of one and several variables, sequences and series, and the Riemann Stieltjes integral.
311(4110) Advanced Calculus II (3) Prerequisite: Math 310(4100). Continuation of Math 310(4100).
316(4160) Functions of a Complex Variable (3) Prerequisite: Math 202(2020) or both CS/Math 255(3000) and Math 180(2000). Complex numbers and their geometrical representation, point sets, analytic functions of a complex variable, complex integration, Taylor and Laurent series, residue theorem, conformal mapping.
320(4200) Mathematical Statistics I (3) (Same as Statistics 320(420) See Statistics 320(4200) Probability and Statistics section that follows.
321(4210) Mathematical Statistics II (3) (Same as Statistics 321(4210) See Statistics 321(4210) in Probability and Statistics section that follows.
323 (4230) Numerical Analysis I (3) Prerequisites: Math 202(2020), 245(2450), and ability to program in an upper-level language. Solutions of equations, interpolation and approximation, numerical differentiation and integration, and numerical solution of initial value problems in ordinary differential equations. Selected algorithms will be programmed for solution on computers.
324 (4240) Numerical Analysis II (3) Prerequisite: Math 323(4230) or consent of instructor. Topics chosen from: the numerical solution of systems of linear equations; the eigenvalue/eigenvector problem; numerical solution of Partial Differential Equations (PDE); numerical solution of stiff Ordinary Differential Equations (ODE); boundary value problems; sparse matrix methods; approximation theory; optimization theory; digital filters; integral equations.
327(4270) The Calculus of Variations (3) Prerequisites: Math 202 ((2020)and 310(4100). Methods for optimizing functionals and their application. The Euler-Lagrange condition. Hamilton's principle, two dimensional variational problems, and isoperimetric problems. Approximate methods for the solution of variational problems.
335 (4350)Theory of Numbers (3) Prerequisite: CS/Math 255(3000) and Math 180(2000) or consent of instructor. Properties of integers, multiplicative functions, congruences, primitive roots, and quadratic residues.
340 (4400) Introduction to Abstract Algebra I (3) Prerequisite: CS/Math 255(3000) and Math 180(2000) or consent of the department. Introduction to groups, rings, and fields, with emphasis on groups and rings.
341 (4410) Introduction to Abstract Algebra II (3) Continuation of Math 340(4400) with emphasis on fields.
345 (4450)Linear Algebra (3) Prerequisites: CS/Math 255(3000), Math 180(2000) and Math 245(2450). Topics selected from vector spaces, bases, linear transformations, matrices, canonical forms, eigenvalues, hermitian and unitary matrices, inner product spaces, and quadratic forms.
350 (4500) Special Readings (1-10) Prerequisites: CS/Math 255(3000), Math 180(2000) and consent of instructor.
355 (4550) Combinatorics (3) Prerequisite: CS/Math 255(3000) and Math 180(2000). Advanced counting methods are introduced, including the use of generating functions for the solution of recurrences and difference equations. Additional topics may include: graphs and trees, combinatorial designs, combinatorial games, error-correcting codes, and finite-state machines.
358 (4580) Mathematical Logic (3) Prerequisite: CS/Math 255(3000) and Math 180(2000) or Philosophy 360(4460). A study of the logic of mathematics by the axiomatic method, with a development of the propositional calculus and restricted predicate calculus emphasizing its application to the foundations of mathematics.
362 (4620) Projective Geometry (3) Prerequisites: CS/Math 255(3000), Math 180(2000) and Math 245(2450). Analytic approach to the study of projective spaces. Theorems of Desargues, Pascal, and Brianchon. Projective properties of conics.
364 (4640) Introduction to Differential Geometry (3) Prerequisite: CS/Math 255(3000) and Math 180(2000). Geometry of curves and surfaces in Euclidean three-space. Calculus on a surface. Intrinsic geometry of surfaces.
366(4660) Foundations of Geometry (3) Prerequisite: CS/Math 255(3000) and Math 180(2000) or consent of department. A development of portions of Euclidean geometry from a selected set of axioms, including a discussion of consistency, independence, categoricity, and completeness of the axioms.
367 (4670) Introduction to Non-Euclidean Geometry (3) Prerequisite: CS/Math 255(3000) and Math 180(2000) or consent of the department. A summary of the history of the non-Euclidean geometries and a study of hyperbolic plane geometry.
380 (4800) Introduction to Topology (3) Prerequisite: CS/Math 255(3000) and Math 180(2000) or consent of the department. A study of topological spaces, including the concepts of limit, continuity, connectedness, compactness, etc. Special emphasis placed on, and examples taken from, the space of real numbers.
389 (4890)Topics in Mathematics (3) Prerequisite: Consent of instructor. A seminar on special topics in mathematics to be determined by the interests of the instructor. May be repeated for credit provided different topics are studied.
401 (5010) Theory of Ordinary Differential Equations (3) Prerequisite: Math 310(4100) . A theoretical treatment of ordinary differential equations including the existence and uniqueness of solutions of differential equations and systems of differential equations. The course treats such topics as systems of linear differential equations, eigenvalue problems, autonomous systems, and boundary value problems.
402 (5020) Classical Applied Mathematics (3) Prerequisites: Math 310(4100), 316(4160), and 345(4450) or consent of instructor. The course gives the deriviation of equations of mathematical physics such as Navier-Stokes' equations, Euler's equations, equations of elastic materials, and equations of electrodynamics, using scaling and conservation principles. The course also includes elements of the calculus of variations, the Euler-Lagrange equations and Hamiltonian theory.
403(5700) Topics in Applied Mathematics (3) Prerequisite: Consent of instructor. The course will cover various advanced topics in applied mathematics, and can be taken more than once for credit. Examples of such topics are: Fast transforms, digital filters, etc.
404 (5600) Topics in Computation (3) Prerequisite: Consent of instructor. The course will cover various advanced topics in computation and can be taken more than once for credit. Examples of such topics are: computer graphics, computer architecture, theories of language, analysis of operating systems, numerical geometry and computer aided design, etc.
405(5050) Computational Curves and Surfaces (3) Prerequisite: Math 310(4100), 323(4230) and 345(4450), or consent of instructor. Construction of curves and surfaces using subdivision algorithms. Iterative refinement of discrete data in an easily programmable manner. Discussion of issues of convergence, shape control, relation to spline functions with uniform knots, multi resolution analysis, and wavelets.
406 (5060) Computational Harmonic Analysis (3) Prerequisites: Math 303(4030), Math 310(4100), and Math 345(4450). The course covers the basic of Fourier analysis and wavelet analysis. Topics include Fourier transforms and series, discrete Fourier transform, discrete cosine transform ad their fast computational schemes, fast wavelet transform, and the lifting scheme. Additional topics include industrial standards for image compression and several aspects of signal processing.
407 (6070) Time-Frequency Analysis (3) Prerequisites: Math 406(5060). The course covers theoretical and practical aspects of several time-frequency methods. Included are linear transformations such as filtering, Zak, Gabor and wavelet transforms; bilinear transformations include the Winger-Ville distribution and other distributions of Cohen's class. Statistical methods of feature extraction and applications to signal compression are outlined as well.
408(6080) Advances in Wavelet Analysis (3) Prerequisite: Math 406(5060). The course describes recent developments in several research areas connected with wavelet analysis. Included are frames, wavelet vectors, wavelet packets, wavelets on compact intervals and manifolds, adaptive (nonlinear) methods, and methods of computational physics. Applications include the sparsification of matrices, denoising and compression of signals.
410(5100) Theory of Functions of a Real Variable (3) Prerequisites: Math 310(4100) and 380(4800). The real number system, properties of functions of one or more real variables, mapping theorems. Introduction to measure and integration theory.
411(5110) Differentiable Manifolds (3) Prerequisites: Math 310(4100), 345(4450), and 380(4800). An introduction to smooth manifolds and maps. Topics will include the Implicit Function Theorem, Sard's Theorem, transversality, intersection and degree theory, differential forms and integration on manifolds.
416 (5160) Functions of a Complex Variable (3) Prerequisites: Math 310(4100), 316(4160), and 380(4800). Complex numbers, topology of the complex plane, analytic functions, conformal mappings, Taylor series, Laurent series, complex integration, residues, analytic continuation, representation of analytic functions, elliptic functions, normal families, Riemann theorem, majorization.
418 (5710) Topics in Analysis (3) Prerequisite: Consent of instructor. Topics selected from the areas of Fourier analysis, harmonic analysis, Hilbert spaces, Banach algebras, special functions, generalized functions, partial differential equations. May be taken more than once for credit with consent of department.
420 (6200) Probability Theory (3) Prerequisite: Math 410(5100) (may be taken concurrently). Combinatorial analysis, random walks, stochastic independence, random variables, laws of large numbers, generating functions, and branching processes.
423 (5720) Topics in Numerical Analysis (3) Prerequisite: Consent of instructor. The course will cover various advanced topics in numerical analysis and can be taken more than once for credit. Examples of such topics are: A.D.I. Techniques for solving p.d.e., finite element techniques, the algebraic eigenvalue problem, the software, etc.
427 (5270) Numerical Linear Algebra (3) Prerequisite: Math 323(4330) and Math 345(4450) or consent of the instructor. The course includes solution of general and special linear systems. Techniques include methods (such as splitting or Krylov subspaces). Additional topics are the eigenvalue problem and the method of least squares.
428 (6600) Topics in Probability Theory (3) Prerequisite: Consent of instructor. The course will cover advanced topics in probability theory and may be taken more than once for credit with the consent of the department
430 (5300) Partial Differential Equations (3) Prerequisites: Math 310(4100), 316(4160), 345(4450), and 380(4800). Classification of partial differential equations; Cauchy, Dirichlet, and Neumann problems; the fundamental solution; existence theorems of potential theory; eigenvalue problems; and Tricomi's problem.
432(5320) Applied Statistics (3) Prerequisites: Statistics 321(4210) or consent of instructor. The course studies classical and recently developed statistical procedures selected from areas including analysis of variance, multivariate analysis, nonparametric or semiparametric methods and generalized linear models. Emphasis is on application of procedures, including the rationale underlying choice of procedures.
435 (5350) Operations Research-Deterministic Models (3) Prerequisites: Math 345(4450) or equivalent. (Same as MSIS 428(7350). A study of deterministic methods and models in operations research. This course provides an introduction to operations research and focuses on model building, solution and interpretation of results. Topics include formulation, solution, duality and sensitivity analysis in linear programming, integer programming, network flow models, nonlinear optimization, and dynamic programming.
436 (5360) Operations Research-Stochastic Models (3) Prerequisites: Stat 320(4200) or equivalent. (Same as MSIS 429(7352). A study of stochastic methods and models in operations research. Provides an introduction to probabilistic models for decision making under uncertainty. Topics include stochastic processes, queuing theory and models, probabilistic inventory theory and models, Markovian decision problems, simulation and reliability.
437 (5370) Quality Management (3) Prerequisite: MSIS 481(5300) or Stat 320(4200) or consent of instructor. (Same as MSIS 430(5326).) An applied course on total quality management. Quality improvement approaches are presented and the managerial implications and responsibilities in implementing these approaches are discussed. Topical coverage includes the construction and interpretation of control charts, graphical methods, quality function deployment, robust experiments for product design and improvement, mistake-proofing (poke-yoke), the Deming approach, Baldridge award criteria, quality cost audits, worker empowerment and reward systems. Cases involving both business processes and physical processes are used to illustrate successful quality improvement efforts.
439 (5810) Topics in Number Theory (3) Prerequisite: Consent of instructor. Topics selected from elementary, algebraic, analytic, and other branches of number theory. Examples of topics include the distribution of primes, the Riemann Zeta function, averages of arithmetic functions, the theory of partitions, ideal theory, and representations of integers by quadratic forms.
442 (5420) Algebra (3) Prerequisites: Math 340(4400) and 345(4450). Basic fundamentals of the theory of groups, rings and fields.
444 (6440) Lie Groups (3) Prerequisites: Math 340(4400) and 411(5110). The course provides an introduction to Lie Groups, Lie Algebras, and their representations.
448(5820) Topics in Algebra (3) Prerequisite: Consent of instructor. Topics selected from the theory of groups, rings, fields, algebras, and other algebraic systems. May be taken more than once for credit with consent of department.
450 (5500) Directed Readings (1-6) Prerequisite: Consent of instructor. Independent readings at an advanced level.
452 (5550) Topics in Advanced Mathematics for the Teacher (3) Prerequisite: Consent of instructor. This course will look at various topics in algebra, analysis, and geometry that will deepen a teacher's understanding of the mathematics of the precollegiate curriculum. It can be taken more than once for credit.
460 (5040) Calculus of Variations (3) Prerequisites: Math 202(2020), 310(4100) and 345(4450). Classical functionals, minimization of functionals, Euler-Lagrange equations, appropriate function spaces, weak solutions, existence of solutions, approximation theory, practical applications and finite element approach to solutions will be covered.
470 (6700) Functional Analysis (3) Prerequisites: Math 345(4450) and 410(5100). Algebraic and topological tools applied to problems in analysis. The topics chosen will usually include topological vector spaces, metric spaces, Banach spaces, Hilbert spaces, and Banach algebras.
488 (5800) Topics in Topology (3) Prerequisite: Consent of instructor. The course will cover topics selected from algebraic or differential topology and may be taken more than once for credit with the consent of the department.
490 (6900) Master's Thesis (1-6) Prerequisite: Consent of instructor. Thesis work under the supervision of a faculty member. The course is designed for those students intending to present a thesis as part of their M.A. program. Students who do not write a thesis cannot apply Math 490(6900) to a degree.
499 (7990) Ph.D. Dissertation Research (1-9) Prerequisites: Completion of comprehensive. May be taken for no more than nine hours.
Computer Science 101(1010) Introduction to Computers and the Internet (3) Prerequisites: Same as for Math 20(1020) and Math 30(1030). Covers basic concepts and components of a PC, including microprocessor, disk, display, multimedia, printers, scanners, backup; survey of popular applications including e-mail, personal information managers, word processors, spreadsheets; brief discussion of computer languages; networking, terminology, methods for accessing information on remote computers; dialup access to computers including use of modems; overview of the Internet, popular browsers, World Wide Web, search engines, FTP, utilities Hyper Text Markup Language, tools for Web page construction, security, privacy. Credit not granted for both CS 101(1010) and BA 103(1800).
122(1220) ( Computers and Programming (3) Prerequisite: Math 80(1800) or 100(1100), or a grade of at least B in Math 30(1030). An overview of a computer system is presented. Structured design techniques are considered and applied to the development of computer programs. Aspects of the FORTRAN language will be studied including basic data types, subroutines and functions, arrays, and files. Credit not granted for both BA 104(1804) and CS 122(1220).
125(1250) Introduction to Computing (3) Prerequisite: Math 80(1800) or 100(1100), or a grade of at least B in Math 30(1030). An overview of a computer system is presented. Structured design techniques are considered and applied to the development of computer programs. Aspects of a high level language such as Pascal or C will be studied, including elementary and advanced data types and subprograms. Various features of the UNIX operating system will also be discussed.
170(1050) User Interface Design and Event-Driven Programming with Visual Basic (3) Prerequisite: Computer Science 125(1250) or knowledge of some programming language and consent of the instructor. This course explores programming in Visual Basic for event-driven applications. Design and implementation of graphical user interfaces (GUI) are explored as primary examples. Additional topics may include DDE, OLE, and interactions with databases.
201(2010) An Introduction to Java and Internet Programming (3) Prerequisite: Math 30(1030). Introduces the Java programming language and its use in Internet programming. This course will involve programming assignments in Java and their interface with browsers using applets. Students will also be exposed to the Java's windows toolkit -- the AWT. A brief introduction to object-oriented programming concepts will be provided. Other topics will include threads, virtual machines, byte code, and the Java security model.
225(2250) Programming and Data Structures (3) Prerequisite: CS 125(1250). A continuation of CS 125(1250). Advanced programming techniques including recursion, divide-and-conquer, and backtracking will be considered. A discussion of dynamic data structures such as lists, binary trees, stacks, queues, and symbol tables will be presented. An introduction to modular programming, program specification and verification, and analysis of algorithms will be given.
240(2700) Computer Systems: Architecture and Organization (3) Prerequisite: CS 225(2250). Introduces details of computer systems from architectural and organizational points of view. Topics discussed may include data representation, digital logic and basic circuits such as ALU, multiplexers, decoders, flip-flops, registers, RAM and ROM memory, memory hierarchies, I/O devices, pipelining, parallel and RISC architectures, etc.
241(2710) Computer Systems: Programming (3) Prerequisite: CS 240(2700). Continues introduction of computer systems, with assembly programming and its application. Topics covered may include addressing modes, stack manipulations and applications for reentrant and recursive modules, memory interfacing, I/O device interfacing, and serial and parallel communication.
255(3000) Discrete Structures (3) Prerequisites: Math 175(1900) or 100(1100), and CS 125(1250) or equivalent. (Same as Math 255(3000). Treats fundamental ideas in discrete structures and serves as a foundation for subsequent course in both Mathematics and Computer Science. Provides an introduction to techniques of mathematical reasoning with examples derived from computer science. Topics include logic, set algebra, equivalence relations and partitions, functions, mathematical induction, elementary number theory, cardinality, recurrence relations, basic combinatorial methods, trees and graphs. Credit not granted for more than one of CS 255(3000), Math 250, and Math 255(3000).
273(2210) The C Programming Language (3) Prerequisite: CS 225(2250) or the equivalent. The C language is introduced together with the associated tools which make up the UNIX C programming environment. The course is project-oriented and a portion of the practical work will involve UNIX systems programming. This course is intended for students who have completed the equivalent of CS 125(1250) and CS 225(2250) but without the C language. It may not be taken for credit if the student has taken CS 225(2250) with C.
274(2260) Object Oriented Programming with C++ (3) Prerequisite: CS 225(2250). Introduces object-oriented concepts, terminology, and notation. The C++ language is explored, including topics such as dynamic memory, exception handling, function and class templates, operator overloading, inheritance, polymorphism, and generic programming with the standard template library. Additional topics may include GUI libraries.
275(2750) Advanced Programming with Unix (3) Prerequisite: CS 225(2250). Exploration of the Unix operating system, including its tools and utilities for program development, such as makefile, piping and redirection, shell scripts, regular expressions, and symbolic debuggers. In addition, this course explores advanced features of the C programming language, including various file processing, command-line and variable arguments, exception handling and generic interfacing.
278(3130) Design and Analysis of Algorithms (3) Prerequisites: CS 225(2250), CS/Math 255(3000), Math 245(2450) and Stat 132(1320). Addresses the design and mathematical analysis of fundamental algorithms in computer science. Algorithms studied may involve search, sorting, data compression, string manipulation, graph traversal and decomposition, and algebraic and numeric manipulation.
301(4010) Web Programming Techniques (3) Prerequisites: CS 275(2750). Provides an introduction to Web page development using current technologies such as HTML and XML. Programming in such languages as Perl, CGI scripting, Java script and Java. The current Web servers are compared for issues such as technology, capacity planning, and installation.
302(4020) Java and Internet Programming (3) Prerequisites: CS 301(3010). A projects-oriented course using the Java programming language for Internet programming. The course focuses on current technologies in Java such as GUI toolkits, threads, the Java security model, and JavaBeans. Other topics may include sockets, IO Streams, server-side Java, and remote method invocation.
304(4040) Electronic Commerce Protocols (3) Prerequisites: CS 275(2750) and Math 245(2450). Provides a technical introduction to electronic commerce over the Internet, examining topics such as electronic data interchange, digital currency, and electronic catalogs. The course discusses technical issues such as telecommunications infrastructure, data warehousing, software agents, and storage retrieval of multimedia information. Other topics may include cryptographic techniques as applicable to web-site development, management of data in a secure manner, authentication and confidentiality, different levels of security (transaction, network, and protocol), and digital signatures.
305(4050) User Interface Development (3) Prerequisites: CS 275(2750). Focuses on user interface design standards as a programming problem. It covers topics such as functional vs. aesthetic concerns, elegance and simplicity, interference between competing elements, visual variables, perceptual organization for visual structure, grid-based design of module and program, semiotics with images and representation.
314(4140) Theory of Computation (3) Prerequisites: CS 278(3130). Covers finite state machines and pushdown automata, and their relationship to regular and context-free languages. Also covers minimization of automata, Turing machines, and undecidability. Other topics may include Church's Thesis, uncomputability, computational complexity, propositional calculus and predicate calculus.
325(4250) Programming Languages (3) Prerequisites: CS 274(4740). A study of the principles of modern programming languages. The students perform a comparative study of syntax, semantics, and pragmatics of high-level programming languages. Also provides a discussion of list-processing, object-oriented, functional, procedural, or other programming paradigms.
328(4280) Program Translation Techniques (3) Prerequisites: CS 240(2700), CS 274(2260), CS/Math 255(3000), Math 245(2450). Looks at the theory of programming languages as well as the theory of program translation as a means for dealing with the conceptual gap introduced by the levels of abstraction. Program translation mechanisms are studied as a means to explore the tradeoff between language expressiveness, translation, and execution effectiveness. Particular attention is paid to compilers, with emphasis on constraints induced by syntax and semantics.
330(4300) Introduction to Artificial Intelligence (3) Prerequisites: CS 274(2260), CS 275(2750) and CS 278(3130). An overview of AI applications is presented. An AI programming language, such as Prolog or Lisp, is introduced. Fundamental AI problem solving techniques are applied to heuristic search and game playing. An introduction to knowledge representation and expert systems is given. Topics such as theorem proving, neural networks, and natural language processing may also be studied.
341(4410) Computer Graphics (3) Prerequisites: CS 274(2260), CS 275(2750) and CS 278(3130). The basic architecture of various types of graphics systems is presented. Also presents a detailed description of the basic algorithms for 2-dimensional and 3-dimensional graphics systems. Algorithms for shading, hidden line removal, and rendering in the 3-D systems will be examined. The course involves significant project work.
344(4440) Digital Image Processing (3) Prerequisites: CS 274(2260), CS 275(2750) and CS 278(3130). Focuses on low-level image processing data structures and algorithms for binary image processing, region and texture analysis, image filtering, edge detection, and contour following. Other topics include coding for storage, retrieval, transmission, and image restoration.
350 (4500) Software Engineering (3) Prerequisites: CS 274(2260) and CS 275(2750). Introduces software engineering as a discipline, discusses stages of software lifecycle, compares development models such as waterfall, prototyping and incremental/iterative, and compares structured and object-oriented methods. It also discusses software documentation, both internal and external verification/validation, quality assurance, testing methods, maintenance, project management and team structure, metrics, and available tools.
352 (4520) Object-Oriented Analysis and Design (3) Prerequisites: CS 350(4500). Concentrates on modeling using a visual language such as UML, in the context of a generic object-oriented development process. Discusses the object world, analysis/design goals as the driving development force, different system views, use cases, static and dynamic models, diagrams, modeling with patterns, and principles of responsibility assignments. The course may be supplemented with a CASE tool.
354(4540) Software System Architectures (3) Concerned with the design, modeling, and evaluation of complex software systems at the architectural level of abstraction. Covers basic principles of architectural system design, and may cover topics such as multi-tiered and packaged architectures, model-view and model-service separation, design supports for distributed and client-server applications, design patterns, package interfaces, notation, persistence, and GUI frameworks.
356 (4560) Software Development Processes (3) Prerequisites: CS 350(4500) or CS 352(4520). This course is an in-depth study of software development processes, in the context of an actual project. Discussion includes object-oriented processes such as Rational Unified Process, as well as process management issues such as scheduling, risk-assessment, various metrics, and the selection of appropriate development methodology and tools.
361(4610) Database Management Systems (3) Prerequisites: CS 275(2750) and CS 278(3130). Presents the foundations, concepts and principles of database design. Various models of data representation are considered, including the hierarchical and relational models. Also considers some of the implementation issues for database systems.
362(4620) Information Retrieval (3) Prerequisites: CS 275(2750) and CS 278(3130). Presents deterministic models of information retrieval systems, including conventional Boolean, fuzzy set theory, p-norm, and vector space models. Other topics include probabilistic models, text analysis and automatic indexing, automatic query formulation, system-user adaptation and learning mechanisms, evaluation of retrieval, review of new theories and future directions, and intelligent information retrieval.
373(4730) Computer Networks and Communications (3) Prerequisite: CS 275(2750) and Statistics 132(1320). Communication systems will be considered in the context of the ISO standard for systems interconnection. Various types of networks will be studied including wide area networks, local area networks, and fiber optic networks.
374(4740) Client-Server Architectures (3) Prerequisites: CS 275(2750) and Math 245(2450). Studies communications systems in the context of the ISO standard for systems interconnection. There is hands-on exposure to development of client-server applications.
376(4760) Operating Systems (3) Prerequisites: CS 275(2750), CS 240(2700), Statistics 132(1320) and Math 245(2450). Studies the structure of a generic operating system, considering in detail the algorithms for interprocess communication, process scheduling, resource management, memory management, file systems, and device management. Topics in security may also be examined. Examples from pertinent operating systems are presented throughout, and use of the algorithms in modern operating systems is examined. Substantial practical work, using the UNIX operating system is required.
377(4770) Operating Systems for Telecommunications (3) Prerequisites: CS 352(4520) or MS/IS 423(6806). The structure of a general operating system will be studied. The various components, including the interface with the underlying hardware, will be considered in detail. UNIX and Windows/NT will be considered as case studies throughout the course. The course will also emphasize hands on experience as a power user of at least one modern operating system.
378(4780) Systems Administration and Computer Security (3) Prerequisites: CS 275(2750). Identifies and studies major issues of relevance to systems and networks management. Covers a wide range of topics from a basic primer on networking topics from the systems perspective to advanced technical issues of user authentication, encryption, and mail privacy. Discusses the latest advances in network management tools and computer security protocols.
388(4880) Individual Studies (1-3) Prerequisites: CS 275(2750) and consent of instructor. Allows a student to pursue individual studies under the supervision of a faculty member. May include development of a software project. May be repeated for credit.
389(4890) Topics in Computer Science (3) Prerequisite: Consent of instructor. A seminar on special topics in computer science to be determined by recent developments in the field and the interests of the instructor. May be repeated for credit with departmental consent.
413(5130) Advanced Data Structures and Algorithms (3) Prerequisites: An elementary course in analysis of algorithms or consent of the instructor. This course covers analysis of time and space complexity of iterative and recursive algorithms along with performance bounds, design of data structures for efficient performance, sorting algorithms, probabilistic algorithms, divide and conquer strategies, various algorithms on graphs, and NP completeness.
427(5780) Systems Administration (3) Prerequisite: (CS 376(4760) or 377(4770) and MSIS 496(6836). The course will identify and study major issues of relevance to systems and networks management. It covers a wide range of topics from a basic primer on networking topics from the systems perspective to advanced technical issues of user authentication, encryption, and mail privacy. The course will discuss the latest advances in network management tools and computer security protocols.
432(5320) Introduction to Evolutionary Computation (3) Prerequisite: CS 330(4300), or consent of instructor. This course introduces the concepts of nature-inspired problem solving population dynamics, Darwinian selection, and inheritance. It discusses problems applicable to evolutionary algorithms, overviews the existing models and instances, and analyzes specific instances such as genetic algorithms and genetic programming.
434(5340) Introduction to Machine Learning (3) Prerequisite: CS 330(4300), or consent of instructor. This course introduces both symbolic and sub-symbolic approaches to machine intelligence. Specific topics covered may include data mining, supervised learning such as decision trees, and approximate methods such as fuzzy reasoning.
436(5360) Expert Systems (3) Prerequisites: CS 330(4300), or consent of instructor. This course concentrates on issues related to building expert systems mimicking human-level expertise, including knowledge engineering processes leading to the design, construction, and evaluation of systems, relevant languages, tools, and shells, as well as representation, quality, and inference methods.
438 (5380) Introduction to Neural Networks (3) Prerequisites: CS 330(4300) or consent of instructor. This course introduces the concepts of connectionism, along with algorithms for simulating neural networks, discussion of alternative networks architectures and training algorithms.
440(5400) Computer Vision (3) Prerequisites: Graduate standing and consent of instructor. This course introduces computational models of visual perception and their implementation on computer systems. Topics include early visual processing, edge detection, segmentation, intrinsic images, image modeling, representation of visual knowledge, and image understanding.
442(5420) Visual Data Processing (3) Prerequisites: Graduate standing and consent of instructor. This course introduces low-level concepts and techniques used in image processing, including methods for image capture, transformation, enhancement, restoration, and encoding.
444 (5440) Pattern Recognition (3) Prerequisites: Graduate standing and consent of instructor. This course provides an introduction to statistical decision theory, adaptive classifiers, and supervised and unsupervised learning. Different types of pattern recognition systems are introduced, including transducers, feature extractor, and decision units. Students are exposed to the application of the techniques to optical character recognition, speech processing, and remote sensing.
450(5500) Software Engineering (3) Prerequisites: Graduate standing and consent of the instructor. This course introduces software engineering as a discipline, discusses stages of the software lifecycle, compares development models such as waterfall, prototyping and incremental/iterative, and compares structured and object-oriented methods. It also discusses software documentation, both internal and external, verification/validation, quality assurance, testing methods, maintenance, project management and team structure, metrics, and available tools. Topics are the same as CS 350(4500) but material is covered at a greater depth and additional projects are required. Credit not granted for both CS 350(4500) and CS 450(5500).
452(5520) Object Oriented Analysis and Design (3) Prerequisites: CS 350(4500), CS 450(5500), or consent of the instructor. This course concentrates on modeling using a visual language such as UML, in the context of a generic object-oriented development process. It introduces the object world, analysis/design goals as the driving development force, different system views, use cases, static and dynamic models, diagrams, modeling and patterns, and principles of responsibility assignments. The course may be supplemented with a CASE tool. Topics are the same as CS 352(4520) but material is covered at a greater depth and additional projects are required. Credit not granted for both CA 352(4520) and CS 452(5520).
454(5540) Software Systems Architectures (3) Prerequisites: One of the following: CS 350(4500), CS 450(5500), CS 352(4520), CS 4525520), or consent of the instructor. This course is concerned with the design, modeling, and evaluation of complex software systems at the architectural level of abstraction. It covers basic principles of architectural system design, and may cover topics such as multi-tiered and packaged architectures, model-view and model-service separation, design support for distributed and client-server applications, design patterns, package interfaces, notation, persistence and GUI frameworks. Topics are the same as CS 354(4540) but material is covered at a greater depth and additional projects are required. Credit not granted for both CS 354(4540)and CS 454(5540).
456(5560) Software Development Processes (3) Prerequisites: One of the following: CS 350(4500), CS 450(5500), CS 352(4520), CS 452(5520), or consent of the instructor. This course is an in-depth study of software development processes, in the context of an actual project. Discussion will include object-oriented processes such as the Rational Unified Process, as well as process management issues such as scheduling, risk-assessment, various metrics, and the selection of appropriate development methodology and tools. Topics are the same as CS 356(4560) but material is covered at a greater depth and additional projects are required. Credit not granted for both CS 356 (4560) and CS 456(5560).
461(5610) Advanced Databases (3) Prerequisites: Graduate standing and consent of instructor. This course is an in-depth study of database techniques, including normalization theory, object-oriented databases, statistical databases, distributed databases, and failure recovery. The course will also involve substantial readings from the current literature.
462(5620) Intelligent Information Retrieval (3) Prerequisites: CS 330(4300) or consent of instructor. This course studies the use of AI techniques for the development of adaptive information retrieval systems. Techniques for analysis of information by statistical syntactical, and logical methods are also studied. Topics related to multimedia information are also discussed.
464(5640) Multimedia Information Systems (3) Prerequisites: CS 341(4300) or CS 440(5400). This course studies the technical and human issues related to the design, construction, and use of computer programs that combine text, audio, video, graphics, animation, and graphical user interfaces. It also surveys applications and tools.
470(5700) Computer Systems (3) Prerequisites: Background in computer organization or architecture or consent of instructor. This course focuses on parallel computing architectures, including RISC, pipelining, vector processing, SIMD, MIMD, and array processing. It introduces different memory and I/O subsystems, hardware description languages, and it demonstrates performance enhancement using different architectures studied.
473(5730) Client/Server Computing (3) Prerequisite: CS 377(4770) or MSIS 496(6836). The course will study communications systems in the context of ISO standards for systems interconnection. There will be hands on exposure to development of client-server applications.
474 (5740) Parallel and Distributed Computing (3) Prerequisites: Background in computer organization or architecture, or consent of instructor. This course introduces the fundamentals of parallel computation and algorithm design. It discusses general techniques for designing efficient parallel algorithms for fixed-connection parallel network architectures such as arrays, trees, and hypercubes.
476(5760) Advanced Operating Systems and Network Management (3) Prerequisites: CS 376(4760) or consent of instructor. This course provides a survey of contemporary operating systems principles, including overall design strategies for operating systems. The course also discusses communication and synchronization techniques for concurrent processes, and statistical analysis of job scheduling, process scheduling, I/O scheduling, and memory management.
487(5870) Computer Science Seminar (1-3) Prerequisites: Graduate standing and consent of instructor. This is a seminar on various topics. Substantial student reading and participation is expected. It may be taken more than once for credit with the consent of the department.
488(5880) Computer Science Independent Project (1-3) Prerequisites: Graduate standing and consent of instructor. This course offers the student an opportunity to work on an adviser-supervised project, individually or in a group. A student may repeat the course for up to 6 credit hours total, but at most 6 hours can be accumulated for CS 488(5880) and CS 490(6900).
489(5890) Topics in Computer Science (1-3) Prerequisites: Graduate standing and consent of instructor. This course offers various topics not offered on a regular basis. It may be taken more than once for credit with the consent of the department.
490(6900) Thesis (1-6) Prerequisites: Completion of at least 12 graduate credits and approval of research topic by thesis adviser. This course is designed for those students intending to present a thesis as part of their M.S. program. At most 6 hours can be accumulated for CS 488(5880) and CS 490(6900).
Probability and Statistics 31(1310) Elementary Statistical Methods (3) Prerequisite: Math 30(1030), or a satisfactory ACT Math score, or a satisfactory score on the university's mathematics proficiency exam. An introduction to the basic ideas and tools of statistics. Introductory data analysis, statistical modeling, probability and statistical inference. Includes topics in estimation, prediction, and hypothesis testing. A major focus of the course in the analysis of data using a computer software package such as SAS. A student may not receive credit for more than one of Statistics 31(1310), Statistics 132(1320), and Math 105(1105).
132(1320) Applied Statistics I (3) Prerequisite: Math 80(1800) or 100(1100). An introduction to the basic ideas and tools of statistics. Introductory data analysis, statistical modeling, probability and statistical inference. Includes topics in estimation, prediction, and hypothesis testing. A major focus of the course is the analysis of data using a computer software package such as SAS. A students may not receive credit for more than one of Statistics 31(1310), Statistics 132(1320), and Math 105(1105).
232(2320) Applied Statistics II (3) Prerequisite: Statistics 132(1320), or equivalent. Focuses on data analysis using a number of statistical tools. Topics will be chosen from regression, analysis of variance, contingency tables, and various non-parametric techniques. The emphasis is on practical applications. A computer software package such as SAS will be used for the analysis of data.
320(4200) Mathematical Statistics I (3) (Same as Math 320(4200).) Prerequisites: Statistics 132(1320) and Math 180(2000). Introduction to theory of probability and statistics using concepts and methods of calculus.
321(4210) Mathematical Statistics II (3) (Same as Math 321.) Prerequisite: Statistics 320(4200). Continuation of Statistics 320(4200). Sampling distributions, estimation theory, properties of estimators, hypothesis testing, Neyman-Pearson Theorem, likelihood ratio tests, introduction of analysis of variance and linear models. Basics of some nonparametric procedures.
326(4260) Introduction to Stochastic Processes (3) Prerequisite: Statistics 320(4200). Basic theory and applications of stochastic processes. Markov chains, martingales, recurrent and transient states, stationary distributions, ergodic theorem, renewal processes, discrete martingales and stationary processes.
330(4300) Multivariate Analysis (3) Prerequisites: Math 245(2450) and Statistics 320(4200), or consent of instructor. Multivariate normal distribution and related sampling distributions. Procedures of statistical inference for the multivariate normal distributions, such as hypothesis testing, parameter estimations, multivariate regression, classification and discriminant analysis and principal components analysis.
331(4310) Analysis of Variance and Design of Experiments (3) Prerequisites: Math 245(2450) and Statistics 320(4200) or consent of instructor. An introduction to the analysis of variance with applications in completely randomized designs, randomized block designs, factorial experiments and split-plot type designs
332(4320) Regression Models in Statistics (3) Prerequisites: Statistics 232(2320) or consent of instructor. A rigorous course focused on the applications of regression. The course is rigorous in that th basic regression models in one and several variables are carefully developed using matrix notation. Topics such as the extra sums of squares principle, the general linear hypothesis, and partial and sequential F-tests are carefully presented. The course will focus on using these tools to analyze many different data sets.
333(4330) Nonparametric Methods in Statistics (3) Prerequisite: Statistics 320(4200) or consent of instructor. An introduction to nonparametric statistical procedures. Order statistics, rank order statistics and scores, tests of goodness of fit, linear rank tests for the location and scale problems and applications.
339(4390) Topics in Probability and Statistics (3) Prerequisite: Consent of instructor. A seminar on special topics in probability and statistics to be determined by the interests of the instructor. May be determined by the interests of the instructor. May be repeated for credit provided different topics are studied.
|