Mathematics and Computer Science

Undergraduate Studies

General Education Requirements

All department majors must satisfy the university and appropriate school or college general education requirements. All mathematics courses may be used to meet the university’s general education breadth of study requirement in natural sciences and mathematics.

Satisfactory/Unsatisfactory Restrictions

All department majors may not take mathematical sciences or related area courses on a satisfactory/unsatisfactory basis. Students considering graduate study should consult with their advisers about taking work on a satisfactory/unsatisfactory basis.

Degree Requirements

All courses of the department presented to meet the degree requirements must be completed with a grade of C- or better. At least four courses numbered 3000 or above must be taken in residence. Students must have a 2.0 grade point average in the mathematical sciences courses completed.

Students enrolling in introductory mathematics courses should check the prerequisites to determine if a satisfactory score on the Mathematics Placement Test is necessary. Placement into introductory courses assumes a mastery of two years of high school algebra.

A minimum grade of C- is required to meet the prerequisite requirement for any course except with permission of the department.

Note: Courses that are prerequisites for higher-level courses may not be taken for credit or quality points if the higher-level course has been satisfactorily completed.

Many students are qualified, as a result of having studied calculus in high school, to begin their major with MATH 1900, Analytic Geometry and Calculus II, or MATH 2000, Analytic Geometry and Calculus III. These students are urged to consult with the department before planning their programs. Credit for MATH 1800, Analytic Geometry and Calculus I, will be granted to those students who complete MATH 1900 with a grade of C- or better.

Similarly, students who are ready to begin their computer science studies with CMP SCI 2250, Programming and Data Structures, will be granted credit for CMP SCI 1250, Introduction to Computing, once they complete CMP SCI 2250 with a grade of C- or better.

Declaring the Mathematics Major

Students seeking to major in mathematics are first designated as “pre-mathematics majors” until they have completed both MATH 1900 and MATH 2000 or equivalent courses. Upon successful completion of these two courses with grades of C or better, students will be allowed to declare mathematics as their major. Each of these courses must be completed successfully within two attempts.

Degree Requirements in Mathematics

All mathematics majors in all undergraduate programs must complete the mathematics core requirements.

Core Requirements

  1. The following courses are required:
    CMP SCI 1250Introduction to Computing3
    MATH 1320Introduction to Probability and Statistics3
    MATH 1800Analytic Geometry And Calculus I5
    MATH 1900Analytic Geometry And Calculus II5
    MATH 2000Analytic Geometry And Calculus III5
    MATH 2020Introduction to Differential Equations3
    MATH 2450Elementary Linear Algebra3
    MATH 3250Foundations of Mathematics3
    or CMP SCI 3130 Design and Analysis of Algorithms
    MATH 4100Real Analysis I3
    Total Hours33
  2. The related area requirements as described below must be satisfied. Students seeking a double degree, either within this department or with another department, do not have to fulfill the related area requirements.

Bachelor of Arts in Mathematics

In addition to the core requirements and the College of Arts and Sciences' foreign language requirement, three mathematics courses at the 4000 level or higher must be completed. Of these, one must be MATH 4400, Introduction to Abstract Algebra

Bachelor of Science in Mathematics

In addition to the core requirements, the B.S. in Mathematics degree requires:

  1. Completing all of the following:
    MATH 4160Complex Analysis I3
    MATH 4400Introduction To Abstract Algebra I3
    MATH 4450Linear Algebra3
    Total Hours9
  2. Completing an additional three courses numbered above 4000 in mathematics, statistics or computer science, at least one of which must be in mathematics/statistics.

Bachelor of Science in Mathematics with an Emphasis in Fiscal Mathematics

Core Requirements
CMP SCI 1250Introduction to Computing3
MATH 1320Introduction to Probability and Statistics3
MATH 1800Analytic Geometry And Calculus I5
MATH 1900Analytic Geometry And Calculus II5
MATH 2000Analytic Geometry And Calculus III5
MATH 2020Introduction to Differential Equations3
MATH 2450Elementary Linear Algebra3
MATH 3250Foundations of Mathematics3
MATH 4200Mathematical Statistics I3
MATH 4210Mathematical Statistics II3
Specialized Requirements
MATH 3010Financial Mathematics I3
MATH 3020Financial Mathematics II3
FINANCE 3500Financial Management3
MATH 4005Exploratory Data Analysis with R3
In addition, two further courses in mathematics, statistics or computer science numbered above 4000.6
Related Requirements
ECON 4100Introduction to Econometrics4
ECON 4110Applied Econometrics4
or ECON 4130 Business and Economic Forecasting
Complete two of the following courses:6
Computer Applications in Finance
Investments
Financial Engineering: Applying Derivatives
Fixed Income Analysis
Introduction to Financial Institutions and Financial Markets
Total Hours68

Related Area Requirements for majors in Mathematics

Candidates for the B.A. in Mathematics must satisfy the requirements in one of the groups below with a grade of C-or better. Candidates for the B.S.Ed. in Mathematics and B.S. in Mathematics must satisfy the requirements in two of the groups below with a grade of C-or better.

If candidates choose group 2, then they cannot apply either of the two courses listed in that group towards the additional 4000 level mathematics courses (beyond the core requirements) that must be completed for each of these degrees.

Students seeking a double degree, either within this department or with another department do not have to fulfill the related area requirements.

Related Area Courses

1) Computer Science
Select two of the following:6
Programming and Data Structures
Computer Organization and Architecture
Design and Analysis of Algorithms
Theory of Computation
Introduction to Computer Graphics
Introduction to Digital Image Processing
2) Statistics
MATH 4200Mathematical Statistics I3
MATH 4210Mathematical Statistics II3
3) Biology
BIOL 2102General Ecology3
BIOL 2103General Ecology Laboratory2
4) Biology
BIOL 2012Genetics3
BIOL 4182Population Biology3
5) Chemistry
CHEM 1111Introductory Chemistry I5
CHEM 1121Introductory Chemistry II5
6) Chemistry
CHEM 3312Physical Chemistry I3
And another 3000-level, or above, chemistry course.3
7) Economics
ECON 1001Principles of Microeconomics3
ECON 1002Principles of Macroeconomics3
ECON 4100Introduction to Econometrics4
8) Philosophy
PHIL 3360Formal Logic3
PHIL 3380Philosophy of Science3
9) Physics
PHYSICS 2111Physics: Mechanics and Heat5
PHYSICS 2112Physics: Electricity, Magnetism, and Optics5
10) Physics
PHYSICS 3221Mechanics3
And another 3000 level, or above, physics course.3
11) Business Administration
SCMA 3320Advanced Supply Chain and Operations Management3
SCMA 4350Prescriptive Analytics and Optimization3
12) Engineering
ENGR 2310Statics3
ENGR 2320Dynamics3

B.S. Ed. in Secondary Education with Emphasis in Mathematics

The B.S. Ed. is a professional education degree designed for students who wish to pursue a teaching career in secondary schools.  Much of the discipline-specific coursework parallels the B.A. or B.S. degree in the discipline; however, the Missouri Department of Elementary and Secondary Education (DESE) requires specific coursework for teacher certification.  Therefore, students interested in the B.S. Ed. should contact the advising office (OASIS) 314-516-5937 in the College of Education for discipline-specific requirements.  Note:  To obtain teaching certification, DESE requires a 3.0 GPA in the discipline and professional education coursework, as well as a 2.75 GPA overall. 

B.A. or B.S. in Mathematics with Master’s Level Coursework for Secondary Teacher Certification

In addition to the B.S. Ed., students may opt to complete a B.A. or B.S. degree in their discipline as an undergraduate, followed by admission to the Graduate School for Master’s level teaching certification.  The College of Education has a one-year accelerated program for post-graduate certification called Teach in 12, or students can choose a traditional path to certification.  Graduate coursework for certification can apply towards a Master’s Degree in Secondary Education, with additional coursework.  Students interested in Master’s Level teacher certification should contact the advising office (OASIS) 314-516-5937 in the College of Education.  Note:  To obtain teaching certification, DESE requires a 3.0 GPA in the discipline and professional education coursework, as well as a 2.75 GPA overall. 

Declaring the Computer Science Major

Students seeking to major in computer science are first designated as “pre-computer science majors” until they have completed CMP SCI 2750 or equivalent course. Upon successful completion of this course with a grade of C- or better, students will be allowed to declare computer science as their major. This course must be completed successfully within two attempts.

Degree Requirements in Computer Science

Candidates for the B. S. Computer Science degree must complete the following work:

1) Computer Science Core
CMP SCI 1250Introduction To Computing3
CMP SCI 2250Programming And Data Structures3
CMP SCI 2261Object-Oriented Programming3
CMP SCI 2700Computer Organization and Architecture3
CMP SCI 2750System Programming and Tools3
CMP SCI 3010Web Programming3
CMP SCI 3130Design and Analysis of Algorithms3
CMP SCI 4250Programming Languages3
CMP SCI 4280Program Translation3
CMP SCI 4500Introduction to the Software Profession3
CMP SCI 4760Operating Systems3
2) Computer Science Electives
Select five more elective computer science courses, numbered above 3000.15
3) Mathematics and Statistics
MATH 1320Applied Statistics I3
MATH 1800Analytic Geometry And Calculus I5
MATH 1900Analytic Geometry And Calculus II5
MATH 2450Elementary Linear Algebra3
MATH 3000Discrete Structures3
4) Additional Skills
ENGL 3130Technical Writing3
Total Hours70

There are no related area requirements for majors in Computer Science

BS and MS Dual Degree in Computer Science 

BS and MS Dual Degree in Computer Science

The Integrated BS/MS ("2+3") dual degree program involves dual credit for qualified undergraduate Computer Science students.  It allows the students to concurrently earn credit for some graduate courses while working on their undergraduate degree, reducing the total hours needed for the subsequent MS degree by up to 12 credit hours.

Entry Requirements

Undergraduate majors can apply for provisional admission to this program if:

  1. They have completed at least 60 credit hours of coursework.
  2. Their overall GPA is 3.0 or higher.
  3. Non-CS majors must at the same time become CS majors.

Upon acceptance to the program in the provisional status, the student continues to work toward his/her undergraduate degree in computer science.

After completion of a minimum of 90 hours and no more than 30 hours away from the undergraduate degree, a provisionally admitted student applies for formal admission to the graduate program.  At this point, the student must meet the entry requirements for admission to the M.S. degree in Computer Science.

Degree Requirements

After acceptance into the program, the student continues to complete his/her undergraduate degree.  The student is reclassified as a graduate student from the next semester and must pay graduate fees. The student will be assigned a graduate adviser to help optimize the transition to the graduate program.  The student continues taking the undergraduate courses but is also allowed to take courses reserved for graduate students.  The student completes all the courses to fulfill the requirements to complete his/her M.S. degree in Computer Science – but must also complete the undergraduate requirements.  Up to 12 credit hours can be counted towards both the undergraduate and graduate degrees, substantially reducing the  hours needed to complete the graduate program by itself.

A student may file for and receive the undergraduate degree at any time when all the requirements are completed, before or in the same semester in which the Master's degree is completed. A student must still complete all the requirements to get a B.S. degree, regardless of whether the student files for the degree or not.  A student may choose to finish the studies just with a B.S.

Minor Requirements

The department offers minors in computer science, mathematics, and statistics. All courses presented for any of these minors must be completed with a grade of C- or better.

Minor in Computer Science

The requirements for the minor are:

CMP SCI 1250Introduction To Computing3
CMP SCI 2250Programming And Data Structures3
Select three additional computer science courses numbered 2000 or above. 9
Total Hours15

A minimum of two computer science courses numbered above 2000 must be taken in residence in the Department of Mathematics and Computer Science at UMSL.

 Minor in Mathematics

The requirements for the minor are:

MATH 1800Analytic Geometry And Calculus I5
MATH 1900Analytic Geometry And Calculus II5
MATH 2000Analytic Geometry And Calculus III5
Select two additional three-hour mathematics couses numbered above 2400 16

 

 

1

excluding MATH 2510

A minimum of two mathematics courses numbered 2000 or above must be taken in residence in the Department of Mathematics and Computer Science at UMSL.

Minor in Statistics

The requirements for the minor are:

MATH 4200Mathematical Statistics I3
MATH 4210Mathematical Statistics II3
Select two additional courses in statistics numbered above 30006
Total Hours12

A minimum of two statistics courses numbered above 3000 must be taken in residence in the Department of Mathematics and Computer Science at UMSL.

Certificate in Actuarial Studies 

Actuaries use the tools of economics, finance, and mathematics to evaluate and price risk. They are employed by insurance companies, pension funds, consulting firms, and a variety of other financial institutions. The actuarial profession has consistently been ranked as one of the most desirable professions in which to be employed. To become an actuary one must satisfy certain educational requirements, pass exams offered by the Society of Actuaries, and complete professional courses.

The Certificate in Actuarial Studies is designed to provide the education needed for entry level employment in the actuarial profession. Those who complete the certificate will satisfy some of the Validation by Educational Experience requirement of the Society of Actuaries and be prepared to take the first two actuarial examinations (P and FM).

Completion of the certificate requires the following courses. Please note that many of these courses have prerequisites so anyone pursuing the certificate should work carefully with an academic advisor.

Required Courses

FINANCE 3500Financial Management3
FINANCE 3521Financial Engineering: Applying Derivatives3
MATH 3010Financial Mathematics I3
MATH 3020Financial Mathematics II3
MATH 4200Mathematical Statistics I3
MATH 4210Mathematical Statistics II3
Total Hours18

Residency Requirement: Of the above required six courses at least five must be taken at the University of Missouri-St. Louis.

Certificate in Internet and Web 

The undergraduate Certificate in Internet and Web is a six-course (18 credit hours) program. It is designed to provide a broad training in technologies related to the Internet and Web, with flexibility allowing a student to satisfy specific interests. A minimum GPA of 2.5 is required for admission.

Required:
CMP SCI 3010Web Programming3
CMP SCI 4010Advanced Web Development with Java3
CMP SCI 4011Client-Side Technologies3
CMP SCI 4012Introduction to Enterprise Web Development3
Choose two of the following:6
Introduction to Android Apps: Android Fundamentals
Introduction to Intelligent Web
Database Management Systems
Computer Networks and Communications
Introduction to Cloud Computing
E-Commerce
Total Hours18

A minimum of four courses must be taken in residence at UMSL. Courses may be substituted with the permission of the department. For more information, students can contact the department chair or email info@arch.umsl.edu.

 Certificate in Data Science

The certificate program provides basic training on skills required for working in growing and popular fields involving data and data analysis. It provides both statistical and computational background while also allowing to focus on specific technologies. A student pursuing this certificate can choose from one of the two tracks, the computational track and the statistical track. Each track consists of three required courses (9 credit hours) plus three additional elective courses (9 credit hours).

Required Courses for the Computational Track:

CMP SCI 4340Introduction to Machine Learning3
CMP SCI 4342Introduction to Data Mining3
Choose one from the following:3
Exploratory Data Analysis with R
Mathematical Statistics I

Required Courses for the Statistical Track:

MATH 4200Mathematical Statistics I3
MATH 4210Mathematical Statistics II3
Choose one from the following:3
Introduction to Statistical Methods in Learning and Modeling
Introduction to Machine Learning

Electives for both tracks:

Select additional three courses from the following:9
Introduction to Intelligent Web
Introduction to Artificial Intelligence
Introduction to Evolutionary Computation
Introduction to Machine Learning
Introduction to Data Mining
Introduction to Biological Data Science
Introduction to Deep Learning
Exploratory Data Analysis with R
Introduction to High-dimensional Data Analysis
Mathematical Statistics I
Mathematical Statistics II
Bayesian Statistical Methods
Introduction to Statistical Computing
Introduction to Statistical Methods in Learning and Modeling
Introduction to Stochastic Processes

Residency requirement: of the required six courses at least five must be taken at the University of Missouri – St. Louis. Elective courses may be substituted with the permission of the program director. For more information, contact the department chair or email info@arch.umsl.edu.

Certificate in Mobile and Ubiquitous Computing 

The undergraduate Certificate in Mobile and Ubiquitous Computing is a six-course (18 credit hours) program. It is designed to provide training in technologies and framework for mobile apps and computing. A minimum GPA of 2.5 is required for admission.

Required Courses:
CMP SCI 4020Introduction to Android Apps: Android Fundamentals3
CMP SCI 4220Introduction to iOS Programming and Apps3
CMP SCI 4222iOS Apps3
CMP SCI 4792Mobile and Ubiquitous Computing3
Choose two of the following:6
Advanced Web Development with Java
Database Management Systems
Introduction to Cloud Computing
Total Hours18

A minimum of four courses must be taken in residence in the Department of Mathematics and Computer Science at UMSL. Courses may be substituted with the permission of the department. For more information, students can contact the department chair or email info@arch.umsl.edu.

Graduate Studies

The Department of Mathematics and Computer Science offers an M.A. degree in mathematics with emphasis in mathematics, a Ph.D. degree in mathematical and computational sciences (with options in mathematics, computer science, and statistics), and an M.S. degree in computer science.

Admission

Applicants must meet the general admission requirements of the Graduate School, described elsewhere in this Bulletin. Additional admission requirements for specific programs are listed below.

Mathematics Programs

Applicants must have at least a bachelor's degree in mathematics or in a field with significant mathematical content. Examples of such fields include computer science, economics, engineering and physics. An applicant’s record should demonstrate superior achievement in undergraduate mathematics.

Individuals may apply for direct admission to either the M.A. or Ph.D. program. Candidates for the M.A. degree may choose to concentrate in either pure or applied mathematics. Students in the M.A. program who want to transfer to the Ph.D. program upon successful completion of 15 credit hours must fill out a new application through Graduate Admissions. 

Students intending to enter the Ph.D. program must have a working ability in modern programming technologies. A student with a deficiency in this area may be required to take courses at the undergraduate level in computer science.

Applicants for the Ph.D. program must, in addition, submit three letters of recommendation and scores from the Graduate Record Examination (GRE) general aptitude test.

Computer Science Programs

Applicants must have at least a bachelor’s degree, preferably in computer science or in a related area. Applicants with bachelor’s degrees outside of computer science must demonstrate significant proficiency in computer science by showing competence (proving related academic or professional experience, or taking a test) in the following areas. Courses in parenthesis are UMSL courses that can be used to fulfill the requirement.

Programming skills in C or C++ and Java (CMP SCI 1250 or CMP SCI 2250, and CMP SCI 2261)

Proficiency with Object-Oriented concepts and terminology (CMP SCI 2261)

Proficiency with dynamic data structures (CMP SCI 2250)

Proficiency with computer organization, architecture, or assembly level programming (CMP SCI 2700)

Proficiency with design and time/space analysis of algorithms (CMP SCI 3130)

Familiarity with Unix/Linux/OSX and with command-line scripting with tools (CMP SCI 2750)

Students must also have satisfactorily completed mathematics courses equivalent to the following UMSL courses:

Two semesters of calculus (MATH 1800 and MATH 1900)

A course in elementary linear algebra (MATH 2450)

A course in discrete mathematics (MATH 3000)

An elementary course in probability or statistics (MATH 1320)

A student missing some of the above requirements may be admitted on restricted status if there is strong supportive evidence in other areas. The student will have to take the missing courses, or otherwise demonstrate proficiency. Special regulations of the Graduate School that apply to students on restricted status are described in the UMSL Bulletin.

Preliminary Advisement

Incoming students are assigned advisers with whom they should consult before each registration period to determine an appropriate course of study. If necessary, students may be required to complete undergraduate course work without receiving graduate credit.

Students interested in the Ph.D. program in mathematical and computational sciences with the computer science option must follow the requirements for that program and that option.

Degree Requirements

Master of Arts in Mathematics

Candidates for the M.A. degree must complete 30 hours of course work with at least 15 hours of courses numbered 5000 or above. All courses numbered below 5000 must be completed with grades of at least B. The selections of the courses numbered 5000 or above need the prior approval of the graduate advisor. The courses taken must include those listed below in the mathematics core and other seven mathematics courses numbered 4000 or higher with at least five courses numbered 5000 or above. 

Students who have already completed courses equivalent to those in the core may  substitute other courses numbered above 4000. All substitutions of courses for those listed in the core require the prior approval of the graduate director.

Thesis Option

Either for the mathematics option or for the data science option, the non-core course work may consist of an M.A. thesis written under the direction of a faculty member in the Department of Mathematics and Computer Science. A thesis is not, however, required for this degree. A student who wishes to write a thesis should enroll in 6 hours of MATH 6900, M.A. Thesis. Students writing an M.A. thesis must defend their thesis in an oral exam administered by a committee of three department members which includes the thesis director. 

MATH 4100Real Analysis I3
MATH 4160Complex Analysis I3
MATH 4450Linear Algebra3
Electives 121
Total Hours30

Master of Arts in Mathematics with an Emphasis and Data Science

Candidates for the M.A. degree must complete 30 hours of course work with at least 15 hours of courses numbered 5000 or above. All courses numbered below 5000 must be completed with grades of at least B. The selections of the courses numbered 5000 or above need the prior approval of the graduate advisor. The courses taken must include those listed below in the mathematics core and other seven mathematics courses numbered 4000 or higher with at least five courses numbered 5000 or above. For the data science option, the courses taken must include the data-science core courses listed below and five elective courses chosen from the listed below in the data-science electives. Up to 2 courses in the data-science electives can be substituted with other courses upon student’s request and graduate program director’s approval.

Students who have already completed courses equivalent to those in the core may  substitute other courses numbered above 4000. All substitutions of courses for those listed in the core require the prior approval of the graduate director.

Thesis Option

Either for the mathematics option or for the data science option, the non-core course work may consist of an M.A. thesis written under the direction of a faculty member in the Department of Mathematics and Computer Science. A thesis is not, however, required for this degree. A student who wishes to write a thesis should enroll in 6 hours of MATH 6900, M.A. Thesis. Students writing an M.A. thesis must defend their thesis in an oral exam administered by a committee of three department members which includes the thesis director. 

Core Courses
MATH 4005Exploratory Data Analysis with R3
MATH 4200Mathematical Statistics I3
MATH 4210Mathematical Statistics II3
MATH 5070Nonlinear Optimization3
MATH 5250Statistical Methods in Learning and Modeling3
Elective Courses15
Choose five of the following courses:
Bayesian Statistical Methods
Introduction to Stochastic Processes
Scientific Computation
High-dimensional Data Analysis
Statistical Computing
Topics in Statistics and its Applications
Topics in Computation
Advanced Topics in Nonlinear Optimization
Machine Learning
Data Mining
Total Hours30

BA/BS and MA Dual Degree Program in Mathematics

This is an integrated BA/BS and MA ("2+3") dual degree program in Mathematics: it is designed to provide an opportunity for mathematics majors at the University of Missouri-St Louis (UMSL) with a strong academic record to start earning graduate work credit before actually completing their undergraduate degree and to shorten, or accelerate, the time required as graduate students to earn their master’s degree. A student in this program can apply up to 12 credit hours of 4000-and-above level courses towards both programs.

Entry Requirements

  • Undergraduate math majors can apply for provisional admission for this program if:
  1. They have completed at least 60 credit hours of coursework and
  2. Their GPA is 3.0 or higher.

Students submit their applications to the department. Once a student is admitted in this provisional status, the student continues to work toward his/her undergraduate degree until the student completes 90-102 undergraduate credit hours. Meanwhile the student will be advised to complete the required courses for graduate admission.

  • A provisionally admitted student is reviewed for formal admission after completing 90 undergraduate credit hours. Minimal requirements for admission include:
  1. GPA of 3.0 or higher at the time of the review
  2. MATH 1320, MATH 2020, MATH 2450, MATH 3250 - all completed with a grade of B- or higher.

A student’s application meeting the minimal requirements does not mean the student is automatically admitted in this program. The math graduate committee will review the application and make a decision. In case the application is approved, the student needs to complete a formal application for admission into the graduate program and is recommended for admission by the graduate committee.

Degree Program

  1. The current separate requirements for BA/BS and MA in math remain unchanged.
  2. Once the student is admitted in this program, the student is allowed to take graduate courses (paid with graduate fees).
  3. The student in this program can apply up to 12 credit hours of 4000-and-above level courses towards both the bachelor and master’s degrees. The student may get the BA/BS and MA degrees at the same time.
  4. In case a student cannot complete the master’s degree for some reason, up to 12 credit hours of graduate level courses can be applied towards the BA/BS degree.
  5. Students will pay graduate fees for all courses after being admitted and starting the program.

Master of Science in Computer Science

Candidates for the M.S. degree in Computer Science must complete 30 hours of course work, subject to the Graduate School regulations. Of these, at least 18 hours must be numbered 5000 or above, with at least one course numbered 6000 or above, chosen with the prior approval of the Graduate Director. All courses numbered below 5000 must be completed with grades of at least B-. Outside computer science, up to 6 hours of related course work is allowed upon permission of the Graduate Director.

Students must satisfy all of the following core requirements:

CMP SCI 4760Operating Systems3
CMP SCI 4250Programming Languages3
CMP SCI 5700Computer Systems3
CMP SCI 5500Software Engineering3
CMP SCI 5130Advanced Data Structures And Algorithms3
Total Hours15

Waiving or substituting for a specific requirement can be done on the basis of prior course work or experience at the discretion of the Graduate Director, but it will not reduce the total hours required for the degree.

Additionally, students must attend at least five different seminars or colloquium presentations in the department.

Thesis Option

Students may choose to write an M.S. thesis under the direction of a faculty member in the Department of Mathematics and Computer Science. A thesis is not, however, required for this degree. A student who wishes to write a thesis should enroll in 6 hours of CMP SCI 6900,Thesis. Students writing an M.S. thesis must defend their thesis in an oral exam administered by a committee of three department members which includes the thesis director.

Doctor of Philosophy in Mathematical and Computational Sciences

The program has three options:

  1. Mathematics Option
  2. Computer Science Option
  3. Statistics Option

The requirements for the Ph.D. degree include the following:

  1. Course work
  2. Ph.D. candidacy
  3. Doctoral dissertation

The requirements are described in detail below.

  1. Course Work
    A minimum of 60 hours of courses numbered 4000 or above. 

    In the Mathematics Option, at least 33 hours must be in courses numbered 5000 or above.

    In the Computer Science Option, at least 45 hours must be in courses numbered 5000 or above.

    In the Statistics Option, at least 33 hours must be in courses numbered 5000 or above.

    At most 9 hours of a student’s enrollment in MATH 7990 (Dissertation Research) may be counted. Students are expected to maintain a 3.0 average on a 4.0 scale. All courses numbered below 5000 must be completed with a grade of at least B. Courses outside the Department of Mathematics and Computer Science will require approval of the graduate director.

    When students who have earned a Master’s degree are admitted to the doctoral program, appropriate credits of course work may be applied toward meeting the requirements for the doctoral degree, subject to Graduate School regulations and the approval of the graduate director. The same applied to those with some appropriate graduate credits but without a completed Master’s degree.
  2. Ph.D. Candidacy
    Advancement to Ph.D. candidacy is a three-step process consisting of:
    1. Completing 18 hours of 5000 level courses other than MATH 7990, Ph.D. Dissertation Research.
    2. Passing the comprehensive examination.
    3. Selecting a Ph.D. committee and preparing a dissertation proposal and defense of the proposal.

Qualifying Examination

A student must fulfill the following requirements.

Basic Requirement

Pass one written examination covering fundamental topics. This examination would normally take place within the first 12 credit hours of study after admission to the Ph.D. program.

Mathematics Option

Topics from real analysis, complex analysis, and linear algebra:

MATH 4100Real Analysis I3
MATH 4160Complex Analysis I3
MATH 4450Linear Algebra3
Total Hours9

Computer Science Option

Topics from the theory of programming languages, operating systems, analysis of algorithms, and computer systems:

CMP SCI 4250Programming Languages3
CMP SCI 4760Operating Systems3
CMP SCI 5130Advanced Data Structures And Algorithms3
CMP SCI 5700Computer Systems3
Total Hours12

Statistics Option

Topics from real analysis, linear algebra, and mathematical statistics:

MATH 4100Real Analysis I3
MATH 4450Linear Algebra3
MATH 4200Mathematical Statistics I3
MATH 4210Mathematical Statistics II3
Total Hours12

Additional Requirement

After fulfilling the basic requirement above, the student must meet one of the following:

  1. Pass a written examination in an area of the student’s interests. This area will be approved by the graduate committee and will be based on a set of two or more graduate courses taken by the student. This examination would normally take place within the first 24 credit hours of study after admission to the Ph.D. program.
  2.  Write a survey paper in a specialized area under the direction of a member of the graduate faculty. The student should propose to take this option when he/she has already finished at least 2 graduate level courses and has the approval of the graduate committee. The paper should be submitted within four semesters, at which time an oral examination given by a committee of at least three members of the graduate faculty must be passed.

 In both parts 1) and 2), the graduate committee will determine if the topics are consistent with the option that the student is pursuing.

Dissertation Committee and Dissertation Proposal

After completing the comprehensive examinations, each student chooses a dissertation advisor and prepares a Dissertation Proposal. Usually students choose an advisor from contacts made through their course work. The dissertation committee will be formed, and the student will meet with this committee for an oral defense of his/her dissertation proposal. The dissertation proposal is a substantial document describing the problem to be worked on and the methods to be used, as well as demonstrating the student’s proficiency in written communication.

Doctoral Dissertation

Each Ph.D. candidate must write a dissertation that is an original contribution to the field on a topic approved by the candidate’s Ph.D. Committee and the department, and which meets the standards and requirements set by the Graduate School including the public defense of the dissertation. Students working on a dissertation may enroll in MATH 7990, Ph.D. Dissertation Research. A maximum of 9 hours in MATH 7990 can be used toward the required hours of work in courses numbered 5000 or above.

BS and MS Dual Degree in Computer Science

The Integrated BS/MS ("2+3") dual degree program involves dual credit for qualified undergraduate Computer Science students.  It allows the students to concurrently earn credit for some graduate courses while working on their undergraduate degree, reducing the total hours needed for the subsequent MS degree by up to 12 credit hours.

Entry Requirements

Undergraduate majors can apply for provisional admission to this program if:

  1. They have completed at least 60 credit hours of coursework.
  2. Their overall GPA is 3.0 or higher.
  3. Non-CS majors must at the same time become CS majors.

Upon acceptance to the program in the provisional status, the student continues to work toward his/her undergraduate degree in computer science.

After completion of a minimum of 90 hours and no more than 30 hours away from the undergraduate degree, a provisionally admitted student applies for formal admission to the graduate program.  At this point, the student must meet the entry requirements for admission to the M.S. degree in Computer Science.

Degree Requirements

After acceptance into the program, the student continues to complete his/her undergraduate degree.  The student is reclassified as a graduate student from the next semester and must pay graduate fees. The student will be assigned a graduate adviser to help optimize the transition to the graduate program.  The student continues taking the undergraduate courses but is also allowed to take courses reserved for graduate students.  The student completes all the courses to fulfill the requirements to complete his/her M.S. degree in Computer Science – but must also complete the undergraduate requirements.  Up to 12 credit hours can be counted towards both the undergraduate and graduate degrees, substantially reducing the  hours needed to complete the graduate program by itself.

A student may file for and receive the undergraduate degree at any time when all the requirements are completed, before or in the same semester in which the Master's degree is completed. A student must still complete all the requirements to get a B.S. degree, regardless of whether the student files for the degree or not.  A student may choose to finish the studies just with a B.S.

Financial Assistance

Any student who intends to apply for financial assistance, in the form of a teaching assistantship or a research assistantship, is required to have three letters of recommendation submitted with the application to the graduate program in Mathematics or Computer Science. The application must include scores on the GRE general aptitude test. Applicants are also encouraged to submit scores in the GRE subject area test in Mathematics or Computer Science. Applications for financial assistance should be submitted before February 15 prior to the academic year in which the student expects to begin graduate study. Notifications of awards are generally made March 15, and students awarded financial assistance are expected to return letters of acceptance by April 15.

Mathematics and Computer Science Department Program Outcomes

The Mathematics and Computer Science Department offers the following degrees and has identified what students will know and be able to do after completing each program. Explore this page to learn more about the opportunities each program provides. Click a shortcut to jump down to the program of interest.

Bachelor of Science (B.S.) in Computer Science
Bachelor of Arts (B.A.) in Mathematics
Bachelor of Science (B.S.) in Mathematics  
Bachelor of Science (B.S.) in Mathematics with Data Science option 
Bachelor of Science (B.S.) in Mathematics with Fiscal Mathematics option
Certificate in Data Science
Certificate in Internet and Web
Certificate in Mobile Apps and Ubiquitous Computing
Minor in Computer Science
Minor in Mathematics
Minor in Statistics

Bachelor of Science (B.S.) in Computer Science

Upon completion of a BS in Computer Science at the University of Missouri St. Louis, students will be able to:

  • Apply logical reasoning, algorithmic and mathematical principles, and computer science theory to understand and solve a wide variety of computational problems
  • Analyze computing problems, their size and scope, and input-output requirements
  • Analyze, evaluate, and compare alternative solutions to computing problems, with particular reference to computational complexity, scalability, and usability
  • Compare multiple general-purpose programming languages and select and use the appropriate languages for specific applications
  • Design, implement (code) and document solutions to computational problems
  • Create software systems following specific design and performance requirements within practical constraints
  • Implement Internet applications on client and server sides
  • Work effectively in teams to design, implement and evaluate solutions to computational problems
  • Effectively communicate computer science concepts and solutions, verbally and in writing
  • Recognize and promote the professional, social, ethical and legal issues and responsibilities in the computing / software profession 

Bachelor of Arts (B.A.) in Mathematics

  • A successful undergraduate should, upon completion, be able to:
  • Write clear, logically consistent proofs.
  • Read, understand and assess the veracity of logical arguments or mathematical proofs.
  • Reformulate problems or questions in relevant mathematical terms.
  • Solve problems which involve analysis, algebra or linear algebra, elementary number theory, elementary probability or statistics.
  • Demonstrate basic proficiency in speaking, reading  and writing in a language in addition to English.

Bachelor of Science (B.S.) in Mathematics    

A successful undergraduate should, upon completion, be able to:

  • Write clear, logically consistent proofs.
  • Read, understand and assess the veracity of logical arguments or mathematical proofs.
  • Reformulate problems or questions in relevant mathematical terms.
  • Solve problems which involve analysis, algebra or linear algebra, elementary number theory.
  • Interpret, formulate and solve applied problems in probability and statistics.
  • Interpret, formulate and solve applied problems in mathematics relating to annuities, bonds and derivative investments.

Bachelor of Science (B.S.) in Mathematics with Data Science option

A successful undergraduate should, upon completion, be able to:

  • Write clear, logically consistent proofs.
  • Read, understand and assess the veracity of logical arguments or mathematical proofs.
  • Reformulate problems or questions in relevant mathematical terms.
  • Solve problems which involve analysis, algebra or linear algebra, elementary number theory.
  • Interpret, formulate and solve problems and assess data related questions from an advanced probabilistic and statistical viewpoint.

Bachelor of Science (B.S.) in Mathematics with Fiscal Mathematics option

A successful undergraduate should, upon completion, be able to:

  • Write clear, logically consistent proofs.
  • Read, understand and assess the veracity of logical arguments or mathematical proofs.
  • Reformulate problems or questions in relevant mathematical terms.
  • Solve problems which involve analysis, algebra or linear algebra, elementary number theory.
  • Interpret, formulate and solve applied problems in probability and statistics.
  • Interpret, formulate and solve applied problems in mathematics relating to annuities, bonds and derivative investments.

Certificate in Data Science

Upon completion of a Certificate in Data Science at the University of Missouri St. Louis, students will be able to:

  • Identify, interpret, and manage the computational issues involved in the handling of large volumes of data
  • Apply algorithmic principles and statistical theories to analyze data-sets
  • Build and evaluate data-based models
  • Apply machine learning techniques to data-mining problems

Certificate in Internet and Web

Upon completion of a Certificate in Internet and Web at the University of Missouri St. Louis, students will be able to:

  • Identify and implement techniques for communicating complex information on the Web
  • Use Web languages to integrate media and user interaction
  • Design and develop Internet applications
  • Use the state-of-the-art languages and frameworks on both server and client sides

Certificate in Mobile Apps and Ubiquitous Computing

Upon completion of a Certificate in Mobile Apps and Ubiquitous Computing at the University of Missouri St. Louis, students will be able to:

  • Identify and implement techniques for communicating complex information in the Internet, particularly for mobile and wireless platforms
  • Use appropriate programming languages and tools to integrate media and user interaction
  • Design and develop applications in mobile and wireless computing, using representative mobile devices and platforms
  • Assess and implement security principles in mobile applications
  • Evaluate the quality and performance of mobile applications

Minor in Computer Science

Upon completion of a Minor in Computer Science at the University of Missouri St. Louis, students will be able to:

  • Identify and interpret the basic computational issues in problem solving
  • Apply the tools and techniques necessary for programming practice
  • Use at least two general-purpose programming languages for solving computational problems
  • Design, implement (code) and document solutions to computational problems

Minor in Mathematics

A successful undergraduate should, upon completion, be able to:

  • Reformulate problems or questions in relevant mathematical terms.
  • Solve problems which involve algebra or calculus (of one or several variables).

Minor in Statistics

A successful undergraduate should, upon completion, be able to:

  • Reformulate problems or questions in relevant statistical terms.
  • Solve problems which involve probability or statistical concepts and procedures.

Sample Four Year Plans 

Mathematics BA  Mathematics BS  Computer Science BS

Mathematics BA

First Year
FallHoursSpringHours
INTDSC 100311CMP SCI 12503
ENGL 11003MATH 18005
MATH 10303EXPLORE - Humanities & Fine Arts3
MATH 10352EXPLORE - Social Sciences3
EXPLORE - Humanities & Fine Arts3CORE - US History & Government3
EXPLORE - Social Sciences  
 12 17
Second Year
FallHoursSpringHours
MATH 13203MATH 20005
MATH 19005Foreign Language 10015
Cultural Diversity Requirement3EXPLORE - Social Sciences3
CORE - Communication Proficiency3EXPLORE - Math & Sciences3
EXPLORE - Humanities & Fine Arts3 
 17 16
Third Year
FallHoursSpringHours
MATH 32503MATH 20203
ENGL 31003MATH 24503
Foreign Language 10025MATH 4000+ level course3
Elective or minor3Foreign Language 21013
 14 12
Fourth Year
FallHoursSpringHours
MATH 41003MATH 44003
MATH 4000+ level course3Related area course3
Related area course3Elective or minor9
Elective or minor6 
 15 15
Total Hours: 118

Please Note: This plan is an example of what a four year plan could look like for a typical student. Placement exam scores in math as well as the completion of coursework may change the plan. It should not be used in the place of regular academic advising appointments. All students are encouraged to meet with their advisor each semester. All requirements are subject to change.

Mathematics BS

First Year
FallHoursSpringHours
INTDSC 10031MATH 18005
ENGL 11003CMP SCI 12503
MATH 10303Cultural Diversity Requirement3
MATH 10352EXPLORE - Social Sciences 
General Education 3Elective or minor3
CORE – Communication Proficiency3 
 15 14
Second Year
FallHoursSpringHours
MATH 13203MATH 20005
MATH 19005EXPLORE - Humanities & Fine Arts3
CORE – US History & Government3EXPLORE - Social Sciences3
EXPLORE - Humanities & Fine Arts3EXPLORE - Math & Sciences3
EXPLORE - Social Sciences  
 14 14
Third Year
FallHoursSpringHours
MATH 32503MATH 20203
ENGL 31003MATH 24503
General Education6CMP SCI/ MATH/ STAT 4000+ level course3
 Related area course3
 Elective or minor3
 12 15
Fourth Year
FallHoursSpringHours
MATH 41003MATH 44003
CMP SCI/ MATH/ STAT 4000+ level course3MATH 41603
MATH/STAT 4000+ level course3MATH 44503
Related Area courses6Related Area courses6
 15 15
Total Hours: 114

Please Note: This plan is an example of what a four year plan could look like for a typical student. Placement exam scores in math as well as the completion of coursework may change the plan. It should not be used in the place of regular academic advising appointments. All students are encouraged to meet with their advisor each semester. All requirements are subject to change.

Computer Science BS

First Year
FallHoursSpringHours
INTDSC 100311CMP SCI 12503
ENGL 11003MATH 18005
MATH 10303EXPLORE – Social Sciences3
MATH 10352CORE – US History & Government3
EXPLORE – Humanities & Fine Arts3EXPLORE – Humanities & Fine Arts3
EXPLORE – Social Sciences3 
 15 17
Second Year
FallHoursSpringHours
CMP SCI 22503CMP SCI 22613
MATH 13203CMP SCI 27003
MATH 19005CMP SCI 27503
EXPLORE – Math & Sciences3EXPLORE – Math & Sciences3-5
CORE – Information Literacy3CORE – Communication Proficiency3
 17 15-17
Third Year
FallHoursSpringHours
CMP SCI 30103CMP SCI 42503
MATH 24503CMP SCI 31303
MATH 30003CMP SCI 3000+ level elective6
ENGL 31303EXPLORE – Humanities & Fine Arts3
Valuing Skills Elective3 
 15 15
Fourth Year
FallHoursSpringHours
CMP SCI 42803CMP SCI 45003
CMP SCI 3000+ level elective6CMP SCI 47603
Cultural Diversity Requirement3CMP SCI 3000+ level elective3
EXPLORE – Social Sciences3Elective or minor6
 15 15
Total Hours: 124-126

 Please Note: This plan is an example of what a four year plan could look like for a typical student. Placement exam scores in math as well as the completion of coursework may change the plan. It should not be used in the place of regular academic advising appointments. All students are encouraged to meet with their advisor each semester . All requirements are subject to change.

Computer Science Courses

CMP SCI 1011 Introduction to the Internet and World Wide Web: 3 semester hours

Intended for any student wishing to utilize the Internet and World Wide Web more effectively. Topics include networking basics, the Internet and World Wide Web, browsers, search engines, Web Services, utilities, tools, online privacy and security. Students will learn to develop a personal web page using skills acquired in the course.

CMP SCI 1012 Learning to Program Using Virtual Worlds: 3 semester hours

Introduces modern programming principles without requiring the knowledge of a traditional programming language. Instead, this course utilizes a novel graphical approach that enables the student to create, populate, and manipulate virtual 3-dimensional worlds which resemble video games. The development of these worlds allows students to gain direct experience and skills in using computers to solve problems. Students will create worlds of varying complexity.

CMP SCI 1250 Introduction to Computing: 3 semester hours

Prerequisites: MATH 1030 or MATH 1045 with B- or better, or MATH 1100, or MATH 1800, or a 70% on the proctored UMSL ALEKS Math Placement obtained at most one year prior to enrollment in this course. This course provides an introduction to the concepts of computation, problem solving, and computer systems. It covers fundamental programming constructs, basic data types, and modularization using a modern high level language. Problem solving skills are developed through a progression of programming projects.

CMP SCI 2250 Programming and Data Structures: 3 semester hours

Prerequisite: CMP SCI 1250. Continuation of CMP SCI 1250. Discusses properties and implementation of abstract data types such as lists, trees, stacks and queues. Introduces procedural and class abstraction, basic program architecture, use of interfaces, modular programming, and file processing.

CMP SCI 2261 Object-Oriented Programming: 3 semester hours

Prerequisite: CMP SCI 2250. Introduces object-oriented concepts, terminology, and notation (UML) using Java. Covers encapsulation, classes, objects, inheritance, and the use of class libraries. Additional topics may include graphical user interfaces, applets, and related tools and technologies.

CMP SCI 2700 Computer Organization and Architecture: 3 semester hours

Prerequisites: CMP SCI 1250 and CMP SCI 2250 (CMP SCI 2250 can be taken concurrently). This course introduces details of computer systems from architectural and organizational points of view. It covers data representation, basic digital logic circuits, memory types and hierarchies, I/O and storage devices, CPU architectures such as RISC, CISC, parallel, and multi-core.

CMP SCI 2750 System Programming and Tools: 3 semester hours

Prerequisites: CMP SCI 2250 and CMP SCI 2700 (CMP SCI 2700 can be taken concurrently). This course covers systems programming, scripting, libraries, utilities, and development tools. Additional programming topics include piping, binary files, exception handling, command-line arguments and symbolic debugging. This course also explores tools available in the Unix/Linux environments.

CMP SCI 3010 Web Programming: 3 semester hours

Prerequisites: CMP SCI 2261 (or concurrent enrollment). This course provides a survey of current Web technologies including markup languages (such as HTML/XHTML, CSS, XML), client side languages (such as JavaScript), server side languages (such as PERL, PHP), and Web protocols. Client-server computing projects are a course requirement.

CMP SCI 3130 Design and Analysis of Algorithms: 3 semester hours

Prerequisites: CMP SCI 2250, MATH 1320, and MATH 3000. This course addresses the design and analysis of fundamental algorithms in computer science. Studies basic sorting algorithms, priority queues, order statistics, search trees, and hash tables. Analysis techniques may involve time and space complexity analysis of both iterative and recursive algorithms, analysis of algorithm correctness, and amortized complexity analysis. Additional topics may include data compression, string manipulation, greedy algorithms, dynamic programming, and graph traversal.

CMP SCI 3200 .NET Framework: 3 semester hours

Prerequisites: CMP SCI 3010. This course introduces the .NET framework and related languages and technologies. Topics will include Visual Studio and C# for OOP and web applications. Additional topics may include ASP.NET with MVC, data access, and windows communication.

CMP SCI 3410 Video Game Design and Development: 3 semester hours

Prerequisites: CMP SCI 2261. This course covers major aspects of the design and development of video games, including world/level design, game UI design, game character design, game engine programming, 2D/3D modeling and rendering, game physics and animation. This is a project-based course in which students learn to apply acquired knowledge and skills to building a video game in a team environment.

CMP SCI 3710 Assembly Language Programming: 3 semester hours

Prerequisite: CMP SCI 2700. Explores machine architecture concepts and principles through a study of assembly language programming. Topics covered include integer and floating point arithmetic, procedures, conditional processing, strings, macros, and interfaces to high level languages. Programming projects using a commercially available assembly language will be required.

CMP SCI 3760 Cyber Threats and Defense: 3 semester hours

Prerequisites: CMP SCI 2250. This course provides students with the basic foundation knowledge in various cyber threats, defense methods and mechanisms. For cyber threats, the course uses an adversary model (resources, capabilities, intent, motivation, access) to cover threats such as password cracking, backdoors, trojans, viruses, wireless attacks, sniffing, spoofing, session hijacking, denial of service, DDoS, BOTs, MAC spoofing, web app attacks, zero-day exploits, and vulnerabilities that enable them. Cyber threat topics include attack timing, social engineering, attack indication, attack trees, insider problem, covert channels, and threat information sources (e.g., CERT). Typical cyber defense mechanisms will also be covered including intrusion detection, honeypot and honeynets, network monitoring and traffic analysis, access control, DMZ and proxies, network hardening.

CMP SCI 3780 Software Security: 3 semester hours

Prerequisites: CMP SCI 2261, CMP SCI 2750, and CMP SCI 3010. This course introduces the basic software security principles and pitfalls, including topics such as buffer, integer and string problems, runtime errors, SQL and command injection. Additional topics may include data protection, secure file access, password and network security.

CMP SCI 3990 Undergraduate Internship in Computer Science: 3 semester hours

Prerequisites: Consent of Advisor. The internship provides for a student to attain field experience in an organization related to Computer Science. A student is engaged off-campus for an assignment of at least 320 hours working on a project as directed by his/her supervisor in the host organization. The project should be approved by the student's academic advisor, or a designated faculty member, who will monitor the student's progress. The course cannot be repeated for credit.

CMP SCI 4010 Advanced Web Development with Java: 3 semester hours

Prerequisites: CMP SCI 2261 and CMP SCI 3010; or graduate standing. This course covers more advanced Java topics, along with related concepts and technologies for Web development. Topics may include database connectivity, multi threading, security, networking, MVC pattern, testing and source control for Java applications, and server-side topics such as servlets and web servers.

CMP SCI 4011 Client-Side Technologies: 3 semester hours

Prerequisites: CMP SCI 3010. This course explores in depth the current state-of-the-art front-end, client-side technologies, focusing on JavaScript. Topics may include MongoDB, AngularJS, React, jQuery, Node.js, Express.js, and CSS.

CMP SCI 4012 Introduction to Enterprise Web Development: 3 semester hours

Prerequisites: CMP SCI 4010. This course covers design and implementation issues for enterprise web development, and some popular advanced technologies. Topics include MVC and persistence frameworks, such as Spring and Hibernate. Other topics may include Java Web services, EJB, messaging standards such as JMS, and Java EE design patterns. Students will develop enterprise-level web application projects. Credit cannot be earned for both CMP SCI 4012 and CMP SCI 5012.

CMP SCI 4020 Introduction to Android Apps: Android Fundamentals: 3 semester hours

Prerequisites: CMP SCI 4010, or consent of the instructor. This course covers the fundamental programming principles, software architecture and user experience considerations underlying handheld software applications and their development environments. Involves in-depth, hands-on examples, implemented on the Android Platform, and discussion of security. Credit not granted for both CMP SCI 4020 and CMP SCI 5020.

CMP SCI 4030 Introduction to Intelligent Web: 3 semester hours

Prerequisites: CMP SCI 3010 and CMP SCI 3130. This course covers the application of artificial intelligence and other modern techniques to help construct, navigate, and experience the Web. Topics may include retrieval models, classification, mining, association, topology, and indexing algorithms such as PageRank and HITS. Credit cannot be earned for both CMP SCI 4030 and CMP SCI 5030.

CMP SCI 4140 Theory of Computation: 3 semester hours

Prerequisites: CMP SCI 3130 or graduate standing. This course provides an introduction to the theory of computation. It describes basic computational models, such as finite state machines, pushdown automata, Turing machines and grammars. It also covers the concept of nondeterministic computation and the relationships between different computational models. Additionally it discusses decidability, reducibility, and classification of problems into complexity classes based on their time and space complexity, such as P, NP, and PSPACE.

CMP SCI 4220 Introduction to iOS Programming and Apps: 3 semester hours

Prerequisites: CMP SCI 2261 and CMP SCI 2750; or graduate standing. This course will use Swift for building iOS apps. It also introduces Xcode, Interface Builder, basic design patterns like MVC and delegation, and core libraries for Swift and iOS. Additional topics may include network communication, data persistence, basic animation, and mapping. This is a project-oriented class that will require significant use of a Mac with Xcode installed.

CMP SCI 4222 iOS Apps: 3 semester hours

Prerequisites: CMP SCI 4220 or consent of the instructor. This course focuses on building more sophisticated iOS apps. May include networking such as web services, Bluetooth and wifi connectivity, graphics and animation in 2-d and 3-d, autolayouts, OpenGL, advanced data sources such as plist and core data, source control and unit testing. May also discuss security topics. Credit not granted for both CMP SCI 4222 and CMP SCI 5222.

CMP SCI 4250 Programming Languages: 3 semester hours

Prerequisites: CMP SCI 2261 or graduate standing. This course studies the principles, approaches, and trade-offs in modern programming languages, including a comparative study of syntax, semantics, and pragmatics. It also examines major programming paradigms: object-oriented, imperative, functional and logic.

CMP SCI 4280 Program Translation: 3 semester hours

Prerequisites: CMP SCI 2700, CMP SCI 2750, CMP SCI 3130, and CMP SCI 4250, or graduate standing. This course focuses on methods, techniques, and mechanisms used to create the abstraction from high level programming to machine level execution. Using program translation as an example of a complex task, this course also teaches how to manage and develop solutions for complex programming problems using modular incremental development and testing using an individual semester long project.

CMP SCI 4300 Introduction to Artificial Intelligence: 3 semester hours

Prerequisites: CMP SCI 3130. This course provides an introduction to artificial intelligence. The list of topics may include search, planning, knowledge-based reasoning, probabilistic inference, machine learning, natural language processing, and practical applications. Credit cannot be granted for both CMP SCI 4300 and CMP SCI 5300.

CMP SCI 4320 Introduction to Evolutionary Computation: 3 semester hours

Prerequisites: CMP SCI 2261, CMP SCI 2750 and CMP SCI 3130. This course introduces the concepts of nature-inspired problem solving with artificial evolution using selection, crossover, mutation and inheritance. It discusses applications of evolutionary algorithms, overviews the existing models and instances, and analyzes specific instances such as genetic algorithms, evolutionary programming, evolution strategies, and genetic programming. Credit not granted for both CMP SCI 4320 and CMP SCI 5320.

CMP SCI 4340 Introduction to Machine Learning: 3 semester hours

Prerequisites: CMP SCI 2261 and CMP SCI 3130. This course provides an introduction to machine learning in the context of applications such as data mining, natural language processing, and adaptive computer systems. The course reviews several supervised, unsupervised, and reinforcement machine learning techniques such as naive Bayes networks, clustering, and decision trees. Selected concepts in computational learning theory may also be covered. Credit cannot be granted for both CMP SCI 4340 and CMP SCI 5340.

CMP SCI 4342 Introduction to Data Mining: 3 semester hours

Prerequisites: CMP SCI 2261 and CMP SCI 3130. This course provides an introduction to data mining principles, algorithms and applications. Topics may include data preprocessing, data transformation, similarity and dissimilarity measures, data representation, classification techniques, association analysis, cluster analysis, regression, dimension reduction, and anomaly detection. Credit not granted for both CMP SCI 4342 and CMP SCI 5342.

CMP SCI 4370 Introduction to Biological Data Science: 3 semester hours

Prerequisites: CMP SCI 3130 or consent of instructor. This course provides an introduction into several key areas of biological data science, with a focus upon genetic data. Relevant background topics in genetics, current issues, and a variety of available resources will be explored. Upon successful completion of this course, the student will be able to evaluate algorithms for analyzing genetic data, including assessments of sources of errors and analysis of time and space complexity; address shortcomings in existing approaches; and implement efficient and effective software for exposing information hidden in genetic data. Credit cannot be granted for both CMP SCI 4370 and CMP SCI 5370.

CMP SCI 4390 Introduction to Deep Learning: 3 semester hours

Prerequisites: CMP SCI 3130 or consent of instructor. This course introduces mathematical foundations for deep learning, and follows with practical applications using selected domains such as image classification or protein predictions. It also covers dense neural networks, convolutional neural networks, recurrent neural networks, and other state-of-the-art networks. Credit cannot be granted for both CMP SCI 4390 and CMP SCI 5390.

CMP SCI 4410 Introduction to Computer Graphics: 3 semester hours

Prerequisites: CMP SCI 2250 and MATH 2450. This course covers the theoretical foundation and algorithms for computer graphics. Students learn the basics of graphics programming for modeling, rendering, and animation of 2D and 3D objects, using standard graphics API. A brief discussion of special graphics hardware, such as GPU, may be included. Credit cannot be granted for both CMP SCI 4410 and CMP SCI 5410.

CMP SCI 4420 Introduction to Digital Image Processing: 3 semester hours

Prerequisites: MATH 1900, MATH 2450, CMP SCI 2750, and CMP SCI 3130. This course focuses on image analysis and visual perception. Students learn data structures and algorithms for image processing, region and texture analysis, image filtering, edge detection, contour following, and image enhancement in both spatial and frequency domain. Other topics may include color processing, coding for storage, retrieval, transmission, and image restoration. Credit cannot be granted for both CMP SCI 4420 and CMP SCI 5420.

CMP SCI 4500 Introduction to the Software Profession: 3 semester hours

Prerequisites: CMP SCI 2261, CMP SCI 3010, and MATH 3000. This course focuses on software development and on the skills required for success in the software profession. Topics related to software development may include software process, models and views, software architectures, documentation, and testing strategies. Topics related to the profession may include ethics, licensing, copyright, trademarks, and professional conduct. Individual and group projects, research, and presentations may be required in this capstone course.

CMP SCI 4520 Introduction to Object-Oriented Analysis and Design: 3 semester hours

Prerequisites: CMP SCI 2261 and CMP SCI 3130. This course covers object-oriented development, using UML and following an agile process. It discusses elements of analysis, requirements, design, implementation and deployment, such as use cases, static and dynamic models, patterns, and frameworks. This course includes a semester long project. Credit not granted for both CMP SCI 4520 and CMP SCI 5520.

CMP SCI 4610 Database Management Systems: 3 semester hours

Prerequisites: CMP SCI 3010 and MATH 3000; or graduate standing. This course focuses on database theory and applications, with emphasis on the relational model. Topics include database design, modeling, file systems, indexing, integrity constraints, relational algebra, normalization, transaction processing, and concurrency control. Students are exposed to emerging DBMS technologies and applications. Several programming projects will be required using a popular SQL server.

CMP SCI 4700 Computer Forensics: 3 semester hours

Prerequisites: CMP SCI 2750 and CMP SCI 3010; or graduate standing. This course explores topics and methodologies for examining digital evidence, along with some principles of the investigative process. Includes memory, file system, operating system, network, and mobile device forensics. This course addresses both theory and hands-on aspects for conducting digital forensic examinations.

CMP SCI 4730 Computer Networks and Communications: 3 semester hours

Prerequisites: CMP SCI 2750 and MATH 1320; or graduate standing. This course provides a broad overview of computer networks and communications. Covers the fundamental principles and protocols across the whole layering structure of the Internet protocol stack. A top-down approach covers multiple topics including network application layer, transport layer, network layer, link layer, and physical layer protocols. May also include a range of related technologies such as WWW, HTTP, FTP, DNS, SMTP, TCP, UDP, ICMP, IPv4, IPv6, OSPF, RIP, BGP, IEEE 802.11 (WiFi), cellular networks, LANs, Ethernet, CSMA/CD, CDMA, multimedia networking, network management, and security in Internet.

CMP SCI 4732 Introduction to Cryptography for Computer Security: 3 semester hours

Prerequisites: MATH 3000 or consent of instructor. This course provides an introduction to cryptography as it applies to computer security. It describes cryptographic code-making and code-breaking, and how they are integrated within larger security systems. Topics include symmetric encryption algorithms like AES, asymmetric encryption using prime number factorization and elliptic curves, message authentication codes, key exchange protocols and attacks on all these systems. Additional topics may include onion networks and blockchain technology, as well as possible attacks on those systems. Credit cannot be granted for more than one of CMP SCI 4732, CMP SCI 4780, and CMP SCI 5732.

CMP SCI 4740 Introduction to High Performance Computing: 3 semester hours

Prerequisites: CMP SCI 2750 and CMP SCI 3130. This course introduces algorithms for multiprocessor and multi-core architectures. Students learn the models of modern parallel computation and techniques to take advantage of parallel architectures for distributed and shared memory multi-processor architectures. Credit not granted for both CMP SCI 4740 and CMP SCI 5740.

CMP SCI 4750 Introduction to Cloud Computing: 3 semester hours

Prerequisites: CMP SCI 2750. This course provides an introduction to development and deployment of applications in the cloud space. Touches on different aspects of cloud computing such as IaaS, PaaS, and SaaS. Includes significant discussion on legal and security aspects of clouds in the marketplace. May also include public, private, and hybrid clouds, and Internet of Things. Credit not granted for both CMP SCI 4750 and CMP SCI 5750.

CMP SCI 4760 Operating Systems: 3 semester hours

Prerequisites: CMP SCI 2750 and CMP SCI 3130; or graduate standing. This course covers 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. It presents examples from contemporary operating systems and requires practical projects implemented within a modern operating system or simulator environment.

CMP SCI 4780 Computer and Network Security: 3 semester hours

Prerequisites: CMP SCI 4730 or graduate standing. This course provides a broad overview of computer and network security technologies and concerns from multiple perspectives, such as cryptography, Public Key Infrastructures (PKI), hashes and message digests, computer viruses and malware, email security, TCP/IP security, IPSec, Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Networks (VPN), Firewall, AAA (Authentication, Authorization, Accounting), wireless and mobile systems security, secure identifications (IDs), cloud security, privacy and integrity, network attacks, system monitoring, and Intrusion Detection System (IDS). Management and human factors related to security will also be discussed.

CMP SCI 4782 Information Security: 3 semester hours

Prerequisites: CMP SCI 4730 or CMP SCI 4732 or CMP SCI 4780 or consent of instructor. This course covers topics related to maintaining security in an organizational infrastructure, including risk analysis of the environment, access level and control including multi-factor authentication, and detection capabilities to ensure adequate security monitoring. Additional topics may include network level protections, firewalls, intrusion detection/prevention systems, securing web and mobile applications, securing cloud implementations, and overall architectural considerations for system security. Credit not granted for both CMP SCI 4782 and CMP SCI 5782.

CMP SCI 4792 Mobile and Ubiquitous Computing: 3 semester hours

Prerequisites: CMP SCI 4730 or consent of instructor. This course covers mobile and wireless networking and provides a comprehensive treatment of wireless data and telecommunication networks. Topics include recent trends in mobile and wireless networking, wireless coding and modulation, wireless signal propagation, wireless local area networks, millimeter wave gigabit wireless networks, vehicular wireless networks, white spaces, Bluetooth and Bluetooth Smart, wireless personal area networks, wireless protocols for Internet of Things (IoT), and cellular networks.

CMP SCI 4880 Individual Studies: 1-3 semester hours

Prerequisites: Consent of instructor. This course allows a student to pursue individual studies under the supervision of a faculty member. It may include development of a software project. The course may be repeated for credit.

CMP SCI 4890 Topics in Computer Science: 3 semester hours

Prerequisites: Consent of the Instructor. This course covers a special topic in computer science to be determined by recent developments in the field and the interests of the instructor. This course may be taken for credit more than once so long as the topic discussed in each semester is different.

CMP SCI 5012 Enterprise Web Development: 3 semester hours

Prerequisites: CMP SCI 4010 or consent of instructor. Covers design and implementation issues for enterprise web development, and some popular advanced technologies. Topics include MVC and persistence frameworks, such as Spring and Hibernate. Other topics may include Java Web services, EJB, messaging standards such as JMS, and Java EE design patterns. Students will develop enterprise-level web application projects. Credit cannot be earned for both CMP SCI 4012 and CMP SCI 5012.

CMP SCI 5020 Android Apps: Android Fundamentals: 3 semester hours

Prerequisites: CMP SCI 4010 or consent of instructor. Covers the fundamental programming principles, software architecture and user experience considerations underlying handheld software applications and their development environments. Involves in-depth, hands-on examples, implemented on the Android Platform, and discussion of security. Credit not granted for both CMP SCI 4020 and CMP SCI 5020.

CMP SCI 5030 Intelligent Web: 3 semester hours

Prerequisite: Graduate standing. This course covers the application of artificial intelligence and other modern techniques to help construct, navigate, and experience the Web. Topics may include retrieval models, classification, mining, association, topology, and indexing algorithms such as PageRank and HITS. Credit cannot be earned for both CMP SCI 4030 and CMP SCI 5030.

CMP SCI 5130 Advanced Data Structures and Algorithms: 3 semester hours

Prerequisites: Graduate standing in Computer Science. 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.

CMP SCI 5222 Advanced iOS Apps: 3 semester hours

Prerequisites: CMP SCI 4220 or consent of instructor. Focuses on building sophisticated apps using iOS. Will cover recent developments in networking such as web services, Bluetooth and wifi connectivity, graphics and animation in 2-d and 3-d, autolayouts, OpenGL, advanced data sources such as plist and core data, source control and unit testing. May also discuss security topics. Credit not granted for both CMP SCI 4222 and CMP SCI 5222.

CMP SCI 5300 Artificial Intelligence: 3 semester hours

Prerequisites: Graduate standing. This course provides an introduction to artificial intelligence. The list of topics may include search, planning, knowledge-based reasoning, probabilistic inference, machine learning, natural language processing, and practical applications. Credit cannot be granted for both CMP SCI 4300 and CMP SCI 5300.

CMP SCI 5320 Evolutionary Computation: 3 semester hours

Prerequisites: Graduate standing in Computer Science. This course introduces the concepts of nature-inspired problem solving with artificial evolution using selection, crossover, mutation and inheritance. It discusses applications of evolutionary algorithms, overviews the existing models and instances, and analyzes specific instances such as genetic algorithms, evolutionary programming, evolution strategies, and genetic programming. Credit not granted for both CMP SCI 4320 and CMP SCI 5320.

CMP SCI 5340 Machine Learning: 3 semester hours

Prerequisites: Graduate standing in Computer Science. This course provides an introduction to machine learning in the context of applications such as data mining, natural language processing, and adaptive computer systems. The course reviews several supervised, unsupervised, and reinforcement machine learning techniques such as naive Bayes networks, clustering, and decision trees. Selected concepts in computational learning theory may also be covered. Credit cannot be granted for both CMP SCI 4340 and CMP SCI 5340.

CMP SCI 5342 Data Mining: 3 semester hours

Prerequisites: Graduate standing in Computer Science. This course provides an introduction to data mining principles, algorithms and applications. Topics may include data preprocessing, data transformation, similarity and dissimilarity measures, data representation, classification techniques, association analysis, cluster analysis, regression, dimension reduction, and anomaly detection. Credit not granted for both CMP SCI 4342 and CMP SCI 5342.

CMP SCI 5370 Biological Data Science: 3 semester hours

Prerequisites: Graduate standing in Computer Science or consent of instructor. This course provides an introduction into several key areas of biological data science, with a focus upon genetic data. Relevant background topics in genetics, current issues, and a variety of available resources will be explored. Upon successful completion of this course, the student will be able to evaluate algorithms for analyzing genetic data, including assessments of sources of errors and analysis of time and space complexity; address shortcomings in existing approaches; and implement efficient and effective software for exposing information hidden in genetic data. Credit cannot be granted for both CMP SCI 4370 and CMP SCI 5370.

CMP SCI 5390 Deep Learning: 3 semester hours

Prerequisites: Graduate standing in Computer Science. This course reviews a typical machine learning recipe, mathematical foundations for deep learning, and provides an introduction to deep learning. Topics include dense neural networks, convolutional neural networks, and recurrent neural networks. The course will cover building, training, and using deep neural networks for solving various machine learning problems like image classification and protein contact prediction. Credit cannot be granted for both CMP SCI 4390 and CMP SCI 5390.

CMP SCI 5410 Computer Graphics: 3 semester hours

Prerequisites: Graduate standing in Computer Science. This course covers the theoretical foundation and algorithms of computer graphics. Students learn the basics of graphics programming for modeling, rendering, and animation of 2D and 3D objects, using standard graphics API. A brief discussion of special graphics hardware, such as GPU, may be included. Credit cannot be granted for both CMP SCI 4410 and CMP SCI 5410.

CMP SCI 5420 Digital Image Processing: 3 semester hours

Prerequisites: Graduate Standing in Computer Science. This course focuses on image analysis and visual perception. Students learn data structures and algorithms for image processing, region and texture analysis, image filtering, edge detection, contour following, and image enhancement in both spatial and frequency domain. Other topics may include color processing, coding for storage, retrieval, transmission, and image restoration. Credit cannot be granted for both CMP SCI 4420 and CMP SCI 5420.

CMP SCI 5500 Software Engineering: 3 semester hours

Prerequisite: Graduate standing. Introduces software engineering as a discipline, discusses stages of the software life cycle, compares development models such as waterfall, prototyping and incremental/iterative, covers requirements analysis, effort and cost estimation, compares structured and object-oriented analysis and design methods. Discusses verification/validation, quality assurance, software reliability, testing methods, maintenance, documentation, project management and team structure, metrics, and available tools.

CMP SCI 5520 Object Oriented Analysis and Design: 3 semester hours

Prerequisite: Graduate Standing in Computer Science. This course covers object-oriented development, illustrated with a visual modeling language and following an agile process. Discusses elements of analysis, requirements, design, implementation, and deployment such as use cases, static and dynamic diagrams, patterns, and frameworks. This course includes a semester long project starting with requirements and culminating with deployment. Credit not granted for both CMP SCI 4520 and CMP SCI 5520.

CMP SCI 5620 Intelligent Information Retrieval: 3 semester hours

Prerequisites: CMP SCI 4300 or CMP SCI 5300. This course studies techniques for analysis of information by statistical, syntactical, and logical methods. Topics related to multimedia information are also discussed.

CMP SCI 5700 Computer Systems: 3 semester hours

Prerequisite: Graduate standing in Computer Science. 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.

CMP SCI 5732 Cryptography for Computer Security: 3 semester hours

Prerequisites: Graduate standing. This course provides an introduction to cryptography as it applies to computer security. It describes cryptographic code-making and code-breaking, and how they are integrated within larger security systems. Topics include symmetric encryption algorithms like AES, asymmetric encryption using prime number factorization and elliptic curves, message authentication codes, key exchange protocols and attacks on all these systems. Additional topics may include onion networks and blockchain technology, as well as possible attacks on those systems. Credit cannot be grant for more than one of CMP SCI 4732, CMP SCI 4780, and CMP SCI 5732.

CMP SCI 5740 High Performance Computing: 3 semester hours

Prerequisite: Graduate Standing in Computer Science. This course introduces algorithms for multiprocessor and multi-core architectures. Students learn the models of modern parallel computation and techniques to take advantage of parallel architectures for distributed and shared memory multi-processor architectures. Credit not granted for both CMP SCI 4740 and CMP SCI 5740.

CMP SCI 5750 Cloud Computing: 3 semester hours

Prerequisites: Graduate standing. Provides an introduction to development and deployment of applications in the cloud space. Touches on different aspects of cloud computing such as IaaS, PaaS, and SaaS. Includes significant discussion on legal and security aspects of clouds in the marketplace. May also include public, private, and hybrid clouds, and Internet of Things. Credit not granted for both CMP SCI 4750 and CMP SCI 5750.

CMP SCI 5782 Advanced Information Security: 3 semester hours

Prerequisites: CMP SCI 4730 or CMP SCI 4732 or CMP SCI 4780 or CMP SCI 5732 or consent of instructor. The topics covered in this course are risk analysis to understand the security requirements of an environment; access controls to understand the level of controls needed for different practical situations, including multi-factor authentication; detection capabilities, to ensure adequate security monitoring for information systems; network level protections, with firewalls, intrusion detection/prevention systems; securing the web and mobile applications and cloud implementations; and overall security architecture to understand how various controls can provide the security-in-depth that is required in the current environment. Credit not granted for both CMP SCI 4782 and CMP SCI 5782.

CMP SCI 5794 Security of IoT Systems: 3 semester hours

Prerequisites: CMP SCI 4730 or consent of the department. This course covers the cutting-edge techniques on the emerging edge cloud and wireless/mobile Internet of Things (IoT) systems. It covers the IoT reference architecture, integrated IoT security architecture, major threats and vulnerabilities with the IoT devices and edge cloud, and defense mechanisms. It includes hands-on labs on both the vulnerabilities and defense of the systems. Credit cannot be granted for both CMP SCI 4794 and CMP SCI 5794.

CMP SCI 5870 Computer Science Seminar: 1-3 semester hours

Prerequisites: Graduate standing. 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.

CMP SCI 5880 Computer Science Independent Project: 1-3 semester hours

Prerequisites: Graduate standing and consent of instructor This course offers the student an opportunity to work on an advisor-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 CMP SCI 5880 and CMP SCI 6900.

CMP SCI 5890 Topics in Computer Science: 1-3 semester hours

Prerequisites: Graduate standing. This course offers various topics not offered on a regular basis. This course may be taken for credit more than once so long as the topic discussed in each semester is different.

CMP SCI 5900 Graduate Internship in Computer Science: 3 semester hours

Prerequisites: Consent of Advisor. The internship provides for a student to attain field experience in an organization related to Computer Science. A student is employed off-campus for an assignment of at least 320 hours working on a project as directed by his/her supervisor in the host organization. The project should be approved by the student's academic advisor, or a designated faculty member, who will monitor the student's progress. The student is responsible for having the project supervisor at the company establish contact with the academic advisor to establish schedule and goals, and a procedure to evaluate the goals. The student will submit a written report to the advisor at the end of internship. The course cannot be repeated for credit. Students completing this course will be allowed only up to three hours of Independent Study (CMP SCI 5880).

CMP SCI 6320 Advances in Evolutionary Computation: 3 semester hours

Prerequisites: CMP SCI 5320. This course focuses on some advanced topics in genetic and evolutionary computation (both theory and applications). Topics may include genetic algorithm variants, intelligent metaheuristics, evolutionary machine learning, differential evolution, swarm intelligence, learning classifier systems, and Markov models. A substantial part of the course will be based on selected topics from recent literature. This is a project-based course, with the project typically involving literature search and conducting and reporting research. Projects may involve developing specific applications or implementing a specific model.

CMP SCI 6340 Genetic Programming: 3 semester hours

Prerequisites: CMP SCI 5320. This course provides an in-depth exploration of Genetic programming, including advanced concepts such as scalability, evolution of modularity and regularity, and constrained evolution with CGP, STGP, or CFG-based GP. It may be reading, research, or application oriented.

CMP SCI 6410 Topics in Computer Graphics: 3 semester hours

Prerequisites: CMP SCI 4410 or CMP SCI 5410. This course covers various aspects of advanced graphics techniques, such as geometric modeling, rendering, shading, texturing, and computer animation. The course provides an in-depth study of recent advanced topics in computer graphics.

CMP SCI 6420 Topics In Image Processing and Multimedia: 3 semester hours

Prerequisites: CMP SCI 5420. This course covers new developments in digital image processing, computer vision, and multimedia. Topics to be covered may include image databases, object tracking, and large-scale data visualization.

CMP SCI 6900 Thesis: 1-6 semester hours

Prerequisites: Completion of at least 12 graduate credits and approval of research topic by thesis advisor. 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 CMP SCI 5880 and CMP SCI 6900.

Mathematics Courses

MATH 0005 Intermediate Algebra: 3 semester hours

Prerequisites: A satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. Preparatory material for college level mathematics courses. Covers systems of linear equations and inequalities, polynomials, rational expressions, exponents, quadratic equations, graphing linear and quadratic functions. This course carries no credit towards any baccalaureate degree.

MATH 1020 Contemporary Mathematics (MOTR MATH 120): 3 semester hours

Prerequisites: A satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. 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 1020 if credit has been granted for MATH 1310, MATH 1800, MATH 1100, MATH 1102, or MATH 1105. Concurrent enrollment in MATH 1020 and any of these courses is not permitted.

MATH 1021 Choice and Chance: 3 semester hours

Same as PHIL 1021. Prerequisites: A satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. This course provides an introduction to inductive logic and the theory of probability in an organized and systematic way, so as to give students tools for more effective decision-making. We will introduce the probability calculus, basic concepts of utility theory, decision theory and different approaches to understanding probability. This course is designed to be accessible to students of all levels. Satisfies mathematics proficiency.

MATH 1025 Geometry in the Real World: 3 semester hours

Prerequisites: A satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. Presents topics in geometry designed to enrich the student's understanding of mathematics. Geometry as it applies to the physical world and such fields as art, music, nature, motion, architecture and city planning will be examined. This course is designed to be accessible to students of all levels. Satisfies mathematics proficiency.

MATH 1030 College Algebra (MOTR MATH 130): 3 semester hours

Prerequisites: A satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course, or approval of the department. Topics in algebra and probability, polynomial functions, the binomial theorem, logarithms, exponentials, and solutions to systems of equations.

MATH 1035 Trigonometry: 2 semester hours

Prerequisite: MATH 1030 or MATH 1040, or concurrent registration in either of these two courses, or a satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. A study of the trigonometric and inverse trigonometric functions with emphasis on trigonometric identities and equations.

MATH 1040 College Algebra for Science and Engineering: 4 semester hours

Prerequisites: A satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. Topics in this course include factoring, simplifying rational functions, functions and their graphs, solving linear and nonlinear equations, polynomial functions, inverse functions, the binomial theorem, logarithms, exponentials, solutions to systems of equations using matrices, solutions to nonlinear systems of equations, and sequences.

MATH 1045 PreCalculus (MOTR MATH 150): 5 semester hours

Prerequisites: A satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course, or consent of the department. This course covers topics including factoring, simplifying rational functions, functions and their graphs, solving linear and nonlinear equations, polynomial functions, inverse functions, the binomial theorem, logarithms, exponentials, solutions to systems of equations using matrices, solutions to nonlinear systems of equations, and sequences. Students will also study trigonometric and inverse trigonometric functions with emphasis on trigonometric identities and equations.

MATH 1100 Basic Calculus: 3 semester hours

Prerequisites: MATH 1030 or MATH 1040 or MATH 1045 or a satisfactory score on the UMSL ALEKS Placement Examination, obtained at most one year prior to enrollment in this course. This course introduces plane analytic geometry and basic differential and integral calculus with applications to various areas. No credit for Mathematics majors. Credit not granted for both MATH 1800 and MATH 1100.

MATH 1102 Finite Mathematics: 3 semester hours

Prerequisites: MATH 1030 or MATH 1040 or MATH 1045 or a satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. This course introduces logic and set theory, partitions and counting problems, elementary probability theory, stochastic processes, Markov chains, vectors and matrices, linear programming, and game theory.

MATH 1105 Basic Probability and Statistics: 3 semester hours

Prerequisites: MATH 1030 or MATH 1040 or MATH 1045 or a satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. 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 MATH 1310, MATH 1320, and MATH 1105.

MATH 1150 Structure of Mathematical Systems I: 3 semester hours

Prerequisites: 45 hours of college credit and a satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course OR successful completion of MATH 1030 no more than 2 years prior to enrollment in this course. This course examines topics including problem solving, patterns, sets, numeration systems, whole numbers and operations, positive rational numbers and operations, and an introduction to variables and equations, with an emphasis placed on using multiple techniques for each of the aforementioned topics.

MATH 1310 Elementary Statistical Methods: 3 semester hours

Prerequisites: MATH 1030 or MATH 1040 or MATH 1045 or a satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course. An introduction to the basic tools and elementary methods of statistics, such as testing of hypotheses, analysis of variance, method of least squares, and time series. A student may not receive credit for more than one of MATH 1310, MATH 1320, and MATH 1105.

MATH 1320 Introduction to Probability and Statistics: 3 semester hours

Prerequisites: MATH 1030 or MATH 1040 or MATH 1045 or consent of the department. The course will cover basic concepts and methods in probability and statistics. Topics include descriptive statistics, probabilities of events, random variables and their distributions, sampling distributions, estimation of population parameters, confidence intervals and hypothesis testing for population means and population proportions, chi-square tests. A student may not receive credit for more than one of MATH 1310, MATH 1320 and MATH 1105.

MATH 1800 Analytic Geometry and Calculus I: 5 semester hours

Prerequisites: MATH 1030 and MATH 1035, or MATH 1040 and MATH 1035, or MATH 1045, or a satisfactory score on the UMSL ALEKS Math Placement Examination, obtained at most one year prior to enrollment in this course, or approval of the department. This course provides an introduction to differential and integral calculus. Topics include limits, derivatives, related rates, Newton's method, the Mean-Value Theorem, Max-Min problems, the integral, the Fundamental Theorem of Integral Calculus, areas, volumes, and average values.

MATH 1900 Analytic Geometry and Calculus II: 5 semester hours

Prerequisite: MATH 1800. Topics include conic sections, rotation of axes, polar coordinates, exponential and logarithmic functions, inverse (trigonometric) functions, integration techniques, applications of the integral (including mass, moments, arc length, and hydrostatic pressure), parametric equations, infinite series, power and Taylor series.

MATH 2000 Analytic Geometry and Calculus III: 5 semester hours

Prerequisite: MATH 1900. Topics include vectors, cylindrical and spherical coordinates, vector-valued functions, arc length and curvature, functions of several variables, partial and directional derivatives, gradients, extrema, Lagrange multipliers, multiple integrals, change of variables, surface area, vector fields, Stokes' Theorem.

MATH 2010 Introduction to Inquiry Approaches to STEM Education (STEP I): 1 semester hour

Same as CHEM 2010, PHYSICS 2010, BIOL 2010, and SEC ED 2010. Prerequisites: Concurrent enrollment BIOL 1821, BIOL 1831, CHEM 1111, CHEM 1121, PHYSICS 2111, PHYSICS 2112, MATH 1800, or MATH 1900 or have a declared STEM major. Students who want to explore teaching careers become familiar with lesson plan development by writing, teaching and observing lessons in a local school class. Students build and practice inquiry-based lesson design skills and become familiar with and practice classroom management in the school setting. As a result of the STEP I experiences students should be able to decide whether to continue to explore teaching as a career and ultimately finishing the remainder of the WE TEACH MO curriculum leading to teacher certification. The classroom observations and teaching represent a major field component and requires at least one two hour block of free time during the school day once a week.

MATH 2011 Designing Inquiry-Based STEM Experiences (STEP II): 1 semester hour

Same as CHEM 2011, PHYSICS 2011, BIOL 2011, and SEC ED 2011. Prerequisites: BIOL 2010, CHEM 2010, PHYSICS 2010, MATH 2010, or SEC ED 2010. Students explore teaching careers, become familiar with STEM school setting through observing and discussing the school environment and by developing and teaching inquiry-based lessons.

MATH 2020 Introduction to Differential Equations: 3 semester hours

Prerequisite: MATH 2000. Topics will be chosen from: linear differential equations, equations with constant coefficients, laplace transforms, power series solutions, systems of ordinary differential equations.

MATH 2300 Introduction to Discrete Structures: 3 semester hours

Prerequisites: MATH 1100 or MATH 1800, and CMP SCI 1250. This course treats fundamental mathematical concepts in discrete structures useful for computer science. Topics include logic, sets, equivalence relations and partitions, functions, elementary number theory, cardinality, basic combinatorial methods, trees and graphs.

MATH 2450 Elementary Linear Algebra: 3 semester hours

Prerequisite: MATH 1100 or MATH 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 eingenvectors.

MATH 2510 Structure of Mathematical Systems II: 3 semester hours

Prerequisites: MATH 1150. Topics include an introduction to probability, statistics, and displays of data; a study of elementary geometry, including points, lines, planes, angles, properties of triangles, properties of quadrilaterals, other 2- and 3-dimensional shapes; similarity; measurement and conversions; Pythagorean Theorem; perimeter; area; surface area, and volume. This course does not apply towards the elective requirements for any of the majors, minors or related areas in mathematics and statistics.

MATH 3000 Discrete Structures: 3 semester hours

Prerequisites: MATH 1900 or MATH 1100, and CMP SCI 1250 or equivalent. This course introduces fundamental concepts and important data structures in Discrete Mathematics and serves as an important foundation for subsequent courses in Computer Science. It provides a formal system on which mathematical reasoning is based, and various problem-solving strategies with emphasis on the algorithmic approach (both iterative and recursive). Topics include logic, sets, functions and relations; methods of proof, including mathematical induction; elements of number theory; order of growth and basic analysis of algorithms efficiency; recurrence relations; basic counting methods; graphs and trees. Credit not granted for students with Mathematics major.

MATH 3010 Financial Mathematics I: 3 semester hours

Prerequisites: MATH 1900 or MATH 1100, and MATH 1320 or SCMA 3300 (or equivalents). This course introduces the theory of interest, annuities (certain), annuities with differing pay periods, amortization schedules and sinking funds.

MATH 3020 Financial Mathematics II: 3 semester hours

Prerequisites: MATH 3010. This course introduces the premium-discount formula for bonds, bond amortization, term structure of interest rates and pricing theory for options.

MATH 3100 Problem Solving in Mathematics: 1 semester hour

Prerequisite: MATH 2000. Course will train students to solve and write solutions to challenging mathematical problems, like those found in competitive exams like the Putnam Exam.

MATH 3250 Foundations of Mathematics: 3 semester hours

Prerequisites: MATH 1900 and CMP SCI 1250. The course will focus on developing an understanding of proofs and rigorous mathematical reasoning. Topics will include logic, sets, relations, functions, number theory, and counting methods.

MATH 3320 Applied Statistics: 3 semester hours

Prerequisites: MATH 1320. The course will cover topics including multiple regression, analysis of variance, generalized linear models, and applications of these methods. Using R for statistical analysis will be part of the course.

MATH 3520 Structure of Mathematical Systems III: 3 semester hours

Prerequisites: MATH 2510. Topics from MATH 1150 and MATH 2510 are continued. Other topics include integers and the real number system, relations and functions, coordinate system and linear equations, congruence, geometric constructions, geometric proofs, isometries, tessellations, and trigonometry. This course does not apply towards the elective requirements for any of the majors, minors or related areas in mathematics and statistics.

MATH 4005 Exploratory Data Analysis with R: 3 semester hours

Prerequisites: MATH 1320, MATH 2000 and MATH 2450. This course covers data analysis methods with R. It introduces the basic goals and techniques of the data science process, methods of characterizing and visualizing data and building predictive and inferential models. R will be introduced at the beginning of the class and then used throughout the rest of the class.

MATH 4030 Applied Mathematics I: 3 semester hours

Prerequisite: MATH 2020 and MATH 2450. Topics chosen from Fourier series, special functions, partial differential equations, and boundary value problems.

MATH 4060 Applied Differential Equations: 3 semester hours

Prerequisites: MATH 2020 and MATH 2450. The study of ordinary differential equations and partial differential equations is continued with applications in such areas as physics, engineering and biology.

MATH 4070 Introduction to Nonlinear Optimization: 3 semester hours

Prerequisites: MATH 1320, MATH 2000, MATH 2450 and (MATH 3000 or MATH 3250). This course will introduce the theory, methods, and applications of nonlinear optimization. It will cover convex functions, convex analysis, linear and quadratic programs, semidefinite programming and other optimization problems. Topics may include duality theory, algorithms of descent method, Newton's method and interior-point methods, and applications to signal processing, statistics and other fields will be covered. Credit cannot be earned for both MATH 4070 and MATH 5070.

MATH 4080 Introduction to Scientific Computation: 3 semester hours

Prerequisites: MATH 2000 and MATH 2450. This course will introduce fundamental algorithms in numerical linear algebra, matrix factorizations including SVD and QR, direct and iterative methods for solving linear systems, least squares problems and eigenvalue problems. Other topics covered will be chosen from numerical integration and differentiation, iterative methods for ODEs and PDEs, Discrete Fourier transform and FFT, spline smoothing and kernel smoothing. Credit cannot be earned for both MATH 4080 and MATH 5080.

MATH 4090 Introduction to High-dimensional Data Analysis: 3 semester hours

Prerequisites: MATH 1320, MATH 2000 and MATH 2450. This course introduces several advanced classical and modern techniques for modeling and analysis of high-dimensional datasets with low-dimensional structures. The topics covered in this course include principal component analysis, factor analysis, clustering-based methods, and sparse and low-rank recovery theory and algorithms. Credit cannot be earned for both MATH 4090 and MATH 5090.

MATH 4100 Real Analysis I: 3 semester hours

Prerequisites: MATH 3250, or CMP SCI 3130, or consent of instructor. This course provides an introduction to real analysis in one variable. Topics include the real number system, limits, continuity, differentiability, and sequences and series of functions.

MATH 4160 Complex Analysis I: 3 semester hours

Prerequisites: MATH 2000 or consent of the instructor. This course introduces complex numbers and their geometrical representation, point sets, analytic functions of a complex variable, complex integration, Taylor and Laurent series, residue theorem, and conformal mapping.

MATH 4200 Mathematical Statistics I: 3 semester hours

Prerequisites: MATH 1320 and MATH 2000. Introduction to the theory of probability and statistics using concepts and methods of calculus.

MATH 4210 Mathematical Statistics II: 3 semester hours

Prerequisites: MATH 4200. Continuation of MATH 4200. Sampling distributions, estimation theory, properties of estimators, hypothesis testing, NeymanPearson Theorem, likelihood ratio tests, introduction of analysis of variance and linear models. Basics of some nonparametric procedures.

MATH 4220 Bayesian Statistical Methods: 3 semester hours

Prerequisites: MATH 1320, MATH 2000 or MATH 1100; or consent of the instructor. This course introduces Bayesian methods in data analysis and the use of the R language and BUGS. The first half of the course covers inferential theorems and computation methods on fundamental Bayesian statistics, such as estimation, hypothesis testing, MCMC methods, model selection and hierarchical modeling. The second half of the course concentrates on particular models used in practice, such as Bayesian generalized linear models, Bayesian two-factor ANOVA, Bayesian logistic and probit models.

MATH 4225 Introduction to Statistical Computing: 3 semester hours

Prerequisites: MATH 1320, MATH 2000 and MATH 2450. This course will introduce fundamental algorithms in Monte Carlo methods: random variable generation, Monte Carlo integration, Monte Carlo optimization, Markov chain Monte Carlo, Metropolis-Hastings algorithm, Gibbs sampler, Langevin algorithms and Hamilton Monte Carlo, perfect, iterated and sequential importance sampling. Other topics covered may include particle systems, hidden Markov models, parallel and cloud computing. Credit cannot be earned for both MATH 4225 and MATH 5225.

MATH 4230 Numerical Analysis I: 3 semester hours

Prerequisites: MATH 2020, MATH 2450, and the ability to program in an upper-level language. Solutions of equations, interpolation and approximation numerical differentiation and integration, and numerical solutions of initial value problems in ordinary differential equations. Selected algorithms will be programmed for solution on computers.

MATH 4250 Introduction to Statistical Methods in Learning and Modeling: 3 semester hours

Prerequisites: MATH 1320, MATH 2000 and MATH 2450. This course will introduce basic statistical principles and methods for modeling, inference, prediction and classification. The topics will be chosen from linear regression, basis expansion methods, kernel smoothing methods, model regularization, model selection and assessment, and other nonparametric methods. Credit cannot be earned for both MATH 4250 and MATH 5250.

MATH 4260 Introduction to Stochastic Processes: 3 semester hours

Prerequisites: MATH 4200. Basic theory and applications of stochastic processes. Markov chains, recurrent and transient states, stationary distributions, ergodic theorem, renewal processes, discrete martigales and stationary processes.

MATH 4350 Theory of Numbers: 3 semester hours

Prerequisites: MATH 2450 and either MATH 3000 or MATH 3250; or consent of instructor. This course examines the properties of integers, multiplicative functions, congruences, primitive roots, and quadratic residues.

MATH 4390 Topics in Probability and Statistics: 3 semester hours

Prerequisites: Consent of instructor. A seminar on special topics in probability and statistics to be determined by the interests of the instructor. May be repeated for credit provided different topics are studied.

MATH 4400 Introduction to Abstract Algebra I: 3 semester hours

Prerequisites: MATH 2450 and either MATH 3250 or CMP SCI 3130; or consent of instructor. This course introduces groups, rings, and fields, with an emphasis on groups and rings.

MATH 4450 Linear Algebra: 3 semester hours

Prerequisites: MATH 2450 and either MATH 3250 or CMP SCI 3130; or consent of instructor. This course focuses on topics selected from vector spaces, bases, linear transformations, matrices, canonical forms, eigenvalues, hermitian and unitary matrices, inner product spaces, and quadratic forms.

MATH 4460 Introduction to Coding Theory: 3 semester hours

Prerequisites: MATH 2450 and either MATH 3000 or MATH 3250. This course is an introductory course in coding theory. Topics may include linear codes, generator and parity check matrices, dual codes, weight and distance, encoding and decoding, and the Sphere Packing Bound; various examples of codes like the Hamming codes, Golay codes, binary Reed-Muller codes, and the hexacode; Shannon's theorem for the binary symmetric channel, upper and lower bounds on the size of linear and nonlinear codes; constructions and properties of finite fields, basic theory of cyclic codes; concepts of idempotent generator, generator polynomial, zeros of a code, and defining sets, special families of BCH and Reed-Solomon cyclic codes as well as generalized Reed-Solomon codes. Credit cannot be granted for both MATH 4460 and MATH 5460.

MATH 4500 Special Readings: 1-10 semester hours

Prerequisites: 6 credit hours at the Math 4000 level and consent of the instructor. Advanced topics in Mathematics. May be repeated for credit if the topic differs.

MATH 4550 Combinatorics: 3 semester hours

Prerequisites: MATH 2450 and either MATH 3000 or MATH 3250; or consent of instructor. This course introduces advanced counting methods 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.

MATH 4580 Mathematical Logic: 3 semester hours

Prerequisites: MATH 2450 and one of MATH 3250, CMP SCI 3130, or PHIL 4460; or consent of instructor. This course focuses on 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.

MATH 4620 Projective Geometry: 3 semester hours

Prerequisites: MATH 2000, MATH 2450, and either MATH 3250 or CMP SCI 3130; or consent of instructor. This course provides an analytic approach to the study of projective spaces. Theorems of Desargues, Pascal, and Brianchon and projective properties of conics are studied.

MATH 4660 Foundations of Geometry: 3 semester hours

Prerequisites: MATH 2450 and either MATH 3250 or CMP SCI 3130; or consent of instructor. This course focuses on 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.

MATH 4670 Introduction to Non-Euclidean Geometry: 3 semester hours

Prerequisites: MATH 2000, MATH 2450, and either MATH 3250 or CMP SCI 3130; or consent of instructor. This course focuses on a summary of the history of the non-Euclidean geometries and a study of hyperbolic plane geometry.

MATH 4800 Introduction to Topology: 3 semester hours

Prerequisites: MATH 2000 and either MATH 3250 or CMP SCI 3130; or consent of instructor. This course focuses on the study of topological spaces, including the concepts of limit, continuity, connectedness, compactness, etc. Special emphasis is placed on, and examples taken from, the space of real numbers.

MATH 4890 Topics in Mathematics: 3 semester hours

Prerequisite: Consent of instructor.

MATH 4995 Internship in Actuarial Science: 1-3 semester hours

Same as ECON 4995. Prerequisites: Junior standing and consent of program director. Supervised off-campus training in a private or public sector position in which the student applies the knowledge and skills learned in their actuarial science coursework. The internship is monitored by a faculty member and the student must provide a written report at the end of the project. This course may be repeated for a maximum of 6 credit hours.

MATH 5060 Computational Harmonic Analysis: 3 semester hours

Prerequisites: MATH 4030, MATH 4100 and MATH 4450. The course covers the basics of Fourier analysis and wavelet analysis. Topics include Fourier transforms and series, discrete Fourier transform, discrete cosine transform and 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.

MATH 5070 Nonlinear Optimization: 3 semester hours

Prerequisites: Graduate standing. This course will introduce the theory, methods, and applications of nonlinear optimization. It will cover convex functions, convex analysis, linear and quadratic programs, semidefinite programming and other optimization problems. Topics chosen from duality theory, algorithms of descent method, Newton’s method and interior-point methods, and applications to signal processing, statistics and other fields will be covered. Topics are the same as Math 4070 but material is covered at a greater depth and additional projects/assignments are required. Credit cannot be earned for both Math 4070 and Math 5070.

MATH 5080 Scientific Computation: 3 semester hours

Prerequisites: Graduate standing. This course will introduce fundamental algorithms in numerical linear algebra, matrix factorizations including SVD and QR, direct and iterative methods for solving linear systems, least squares problems and eigenvalue problems. Other topics covered will be chosen from numerical integration and differentiation, iterative methods for ODE's and PDE's, Discrete Fourier transform and FFT, spline smoothing and kernel smoothing. Topics are the same as MATH 4080 but material is covered at a greater depth and additional projects/assignments are required. Credit cannot be earned for both MATH 4080 and MATH 5080.

MATH 5090 High-dimensional Data Analysis: 3 semester hours

Prerequisites: Graduate standing. This course introduces several advanced classical and modern techniques for modeling and analysis of high-dimensional datasets with low-dimensional structures. The methods covered in this course include principal component analysis, factor analysis, clustering-based methods, and sparse and low-rank recovery theory and algorithms.Topics are the same as MATH 4090 but material is covered at a greater depth and additional projects/assignments are required. Credit cannot be earned for both MATH 4090 and MATH 5090.

MATH 5100 Real Analysis II: 3 semester hours

Prerequisites: MATH 4100. Introduction to measure and integration. Topics include the Riemann-Stieltjes integral, Lebesgue measure, measurable functions, the Lebesgue integral, Radon-Nikodym and Fubini theorems and the basics of Lp-spaces.

MATH 5110 Differentiable Manifolds: 3 semester hours

Prerequisites: MATH 4100, MATH 4450, and MATH 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.

MATH 5140 Set Theory and Metric Spaces: 3 semester hours

Prerequisites: MATH 4100 or consent of instructor. Naive set theory, cardinal arithmetic, ordinal numbers, the axiom of choice and equivalents, metric spaces, convergence, continuity, compactness, contraction principals and applications. Construction of completions and examples like real numbers and p-adic numbers. Other topics could include the Stone-Weierstrass theorem and metrizability theorems.

MATH 5160 Complex Analysis II: 3 semester hours

Prerequisites: MATH 4160 and either MATH 4100 or MATH 4800. A second course in complex analysis, emphasizing the theory of analytic functions, and including various topics like the Riemann mapping theorem, normal families, analytic continuation, representations of analytic functions, and elliptic functions.

MATH 5225 Statistical Computing: 3 semester hours

Prerequisites: Graduate standing. This course will introduce fundamental algorithms in Monte Carlo methods: random variable generation, Monte Carlo integration, Monte Carlo optimization, Markov chain Monte Carlo, Metropolis-Hastings algorithm, Gibbs sampler, Langevin algorithms and Hamilton Monte Carlo, perfect, iterated and sequential importance sampling. Other topics covered may include particle systems, hidden Markov models, parallel and cloud computing. Topics are the same as Math 4085 but material is covered at a greater depth and additional projects/assignments are required. Credit cannot be earned for both MATH 4225 and MATH 5225.

MATH 5250 Statistical Methods in Learning and Modeling: 3 semester hours

Prerequisites: Graduate standing. This course will introduce basic statistical principles and methods for modeling, inference, prediction and classification. The topics will be chosen from linear regression, basis expansion methods, kernel smoothing methods, model regularization, other nonparametric methods, and model selection and assessment. Topics are the same as MATH 4250 but material is covered at a greater depth and additional projects/assignments are required. Credit cannot be earned for both MATH 4250 and MATH 5250.

MATH 5320 Topics in Statistics and its Applications: 3 semester hours

Prerequisites: MATH 4210 or consent of instructor. The course studies classical and recently developed statistical procedures selected from areas including multivariate analysis, linear and non-linear models, nonparametric methods, and statistical learning. Emphasis is on applications of the procedures.

MATH 5460 Coding Theory: 3 semester hours

Prerequisites: Graduate standing. This course is an introductory course in coding theory. Topics may include linear codes, generator and parity check matrices, dual codes, weight and distance, encoding and decoding, and the Sphere Packing Bound; various examples of codes like the Hamming codes, Golay codes, binary Reed--Muller codes, and the hexacode; Shannon’s theorem for the binary symmetric channel, upper and lower bounds on the size of linear and nonlinear codes; constructions and properties of finite fields, basic theory of cyclic codes; concepts of idempotent generator, generator polynomial, zeros of a code, and defining sets, special families of BCH and Reed--Solomon cyclic codes as well as generalized Reed–Solomon codes. Topics are the same as MATH 4460 but material is covered at a greater depth and additional projects/assignments are required. Credit cannot be granted for both MATH 4460 and MATH 5460.

MATH 5500 Directed Readings: 1-6 semester hours

Prerequisite: Consent of instructor. Independent readings at an advanced level.

MATH 5550 Topics in Advanced Math for the Teacher: 3 semester hours

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.

MATH 5600 Topics in Computation: 3 semester hours

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.

MATH 5700 Topics in Applied Mathematics: 3 semester hours

Prerequisite: Consent of instructor. The course will cover various advanced topics on applied mathematics, and can be taken more than once for credit. Examples of such topics are: fast transforms, digital filters, etc.

MATH 5710 Topics in Analysis: 3 semester hours

Prerequisites: MATH 5100 or consent of instructor. Topics selected from the areas of Fourier analysis, harmonic analysis, functional analysis, special functions, generalized functions, and partial differential equations. May be taken more than once for credit with consent of department.

MATH 5770 Advanced Topics in Nonlinear Optimization: 3 semester hours

Prerequisites: MATH 4070 or MATH 5070; or consent of the instructor. Topics chosen from theory and algorithms of Lagrange multipliers, algorithms for solving variational inequalities, forward-backward splitting algorithms and proximal alternating minimization algorithm for non-convex optimization problems.

MATH 5820 Topics in Algebra: 3 semester hours

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.

MATH 6900 Masters Thesis: 1-6 semester hours

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 6900 to a degree.

MATH 7990 Ph.D. Dissertation Research: 1-9 semester hours

Prerequisites: Completion of comprehensive examinations. May be taken for no more than nine hours.

Cezary Janikow
Associate Professor and Chair
Ph.D., University of North Carolina at Chapel Hill

Sanjiv K. Bhatia
Professor
Ph.D., University of Nebraska-Lincoln

Uday K. Chakraborty
Professor
Ph.D., Jadavpur University

Qingtang Jiang
Professor
Ph.D., Peking University

Prabhakar A. Rao
Professor
Ph.D., University of California, Berkeley

Haiyan Cai
Associate Professor
Ph.D., University of Maryland

Adrian Clingher
Associate Professor
Ph.D., Columbia University

Ronald Dotzel
Associate Professor
Ph.D., Rutgers University

Ravindra Girivaru
Associate Professor
Ph.D., University of Madras

Wenjie He
Associate Professor
Ph.D., University of Georgia

Henry Kang
Associate Professor
Ph.D., Korea Advanced Institute of Science and Technology (KAIST)

Nevena Maric
Associate Professor
Ph.D., University of Sao Paulo

Badri Adhikari
Assistant Professor
Ph.D., University of Missouri-Columbia

Sharlee Climer
Assistant Professor
Ph.D., Washington University

Jianli Pan
Assistant Professor
Ph.D., Washington University

Yuefeng Wu
Assistant Professor
Ph.D., North Carolina State University

Shahla Peterman
Teaching Professor
M.S., University of Wisconsin-Madison

Galina Piatnitskaia
Teaching Professor
Ph.D., Moscow Institute of Physics and Technology

Qiang Sun Dotzel
Associate Teaching Professor
M.A., University of Missouri-St. Louis

Nazire Koc
Associate Teaching Professor
M.S., Southern Illinois University, Carbondale

Emily Ross
Associate Teaching Professor
M.A., Saint Louis University

Jennifer Shrensker
Associate Teaching Professor
M.A., Washington University

David J. Covert
Assistant Teaching Professor
Ph.D., University of Missouri-Columbia

Mark W. Hauschild
Assistant Teaching Professor
Ph.D., University of Missouri-St. Louis

Guannan (Gary) Hu
Assistant Teaching Professor
Ph.D., The University of Kansas

Steven Riegerix
Assistant Teaching Professor
M.S., University of Missouri-St. Louis

Ilgin Sager
Assistant Teaching Professor
Ph.D., Ankara University

Albert Stanger
Assistant Teaching Professor and Math Academic Center Supervisor
M.A., University of Missouri-St. Louis

Raymond Balbes
Professor Emeritus
Ph.D., University of California, Los Angeles

William Connett
Professor Emeritus
Ph.D., University of Chicago

Richard Friedlander
Professor Emeritus
Ph.D., University of California, Los Angeles

Wayne L. McDaniel
Professor Emeritus
Ph.D., Saint Louis University

Stephen Selesnick
Professor Emeritus
Ph.D., University of London

Jerrold Siegel
Professor Emeritus
Ph.D., Cornell University

Frederick Wilke
Associate Professor Emeritus
Ph.D., University of Missouri-Columbia

John Antognoli
Teaching Professor Emeritus
M.A., University of Missouri-St. Louis