School Of Arts And Sciences: Computer Science And Mathematics Course Descriptions

Undergraduate 2024-2025

INF 120 Principles of Programming I (3)
Prerequisite(s): Grade of "C" or better in MTH 187 /Equiv or placement
Gain an understanding of the basic concepts and considerations of structured and object-oriented programming methodologies and be able to apply these concepts appropriately to solve a variety of typical problems, programming in an event-driven graphical development environment including creating classes and objects.

INF 221 Principles of Programming II (3)
Prerequisite(s): INF 120 or equivalent
Develop programming techniques emphasizing reliability, maintainability, and reusability. This course includes an introduction to objects, classes, and object-oriented design, incorporating encapsulation, inheritance, polymorphism, and abstraction. Additional topics include systems development lifecycle (SDLC), multi-dimensional arrays, exception handling, addresses, pointers, and dynamic storage allocation.

INF 230 Database Design & Development (3)
Prerequisite(s): INF 120 or equivalent
This course provides an introduction to fundamental database concepts including current relational database modeling, file management, data definition, and standards. Learn to develop structured query language (SQL) statements to develop, retrieve, manipulate, and maintain data. Use complex and compound criteria from multiple tables to develop appropriate reports and perform data analysis. Also explore some contemporary non-relational databases.

INF 250 Web Fundamentals & Standards (3)
This course is designed to provide students with the fundamentals of current and proposed standards for HTML, XHTML and CSS. This course also explores web technologies, examining future directions that present opportunities for multimedia developers, examines various multimedia formats (images, audio, video, sound and animation), web standards and accessibility.

INF 255 Client-Side Scripting (3)
Prerequisite(s): INF 221 and INF 250
Introduction to the Document Object Model (DOM), fundamentals of Internet application design, development, and deployment using client-side scripting language(s) and the use of external libraries such as JQuery. Further examination of various multimedia formats (images, audio, video, sound and animation).

INF 256 Server-Side Scripting (3)
Prerequisite(s): INF 221 and INF 250
This course covers the configuration of web server software and the use of server-side programming. Topics include: Server-side scripting in languages such as PHP and Java Server Pages, SQL, database access and drivers, security issues, including access control and secured transmissions.

INF 270 Intro to Mobile Application Development (3)
Prerequisite(s): INF 221 or equivalent
In this course, students will be introduced to the foundations of mobile development and its unique requirements and constraints. Students will create a variety of mobile applications. Requirements and design decisions tied to mobile application development and how they relate to limited resources available on mobile devices are emphasized.

INF 324 Data Structures (3)
Prerequisite(s): INF 221
In-depth study of the abstract data type: its theory and implementation, study of complex data structures including trees, B-trees and graphs.

INF 325 Networks (3)
Prerequisite(s): INF 221
Introduction to networking and technologies for wireless protocols and multimedia messaging services.

INF 328 Object-Oriented Analysis and Design (3)
Prerequisite(s): INF 221
This course covers techniques of abstraction and object design, design patterns, and object modeling and how to apply these concepts to web and mobile applications.

INF 331 Applied Database (3)
Prerequisite(s): INF 230
This course builds on the Database Design & Development course and focuses on the creation, administration and use of databases utilizing a multi-tier application design methodology. This course assumes knowledge of database system concepts. The student will be introduced to application program development in a database environment with emphasis on setting up, modifying, and querying a database. Students will also do extensive project work writing and utilizing database stored procedures and triggers.

INF 355 Advanced Client-Side Scripting (3)
Prerequisite(s): INF 255
This course covers the more advanced Object-Oriented features of a client-side scripting language as well as AJAX with XML and JSON. Open source libraries such as jQuery, JQuery Mobile, and Prototype are covered with an emphasis on developing plugins for these libraries.

INF 356 Advanced Server-Side Scripting (3)
Prerequisite(s): INF 256
Advanced topics for scripting in a server-side programming language. Topics covered will include object-oriented web application frameworks , Model/View/Controller (MVC) design pattern, Content Management Systems (CMS), web services, XML Schemas, SOAP (Simple Object Access Model), WSDL (Web Services Description Language), authentication, authorization, session management, PDF generation and email communication.

INF 370 Algorithms (3)
Prerequisite(s): INF 324
Introduction to useful algorithms for searching, sorting and decision making; utilization of methods to quantify and classify efficiency of algorithms; probabilistic and randomized algorithms and dynamic programming. Course covers advanced algorithms on graphs, divide-and-conquer and dynamic programming, greedy methods, backtracking, branch-and-bound, computational complexity and parallel algorithms.

INF 377 Introduction to Automata (3)
Prerequisite(s): INF 221
Course presents a study of formal languages. Topics include: language classes, formal definitions of grammars and acceptors, deterministic/nondeterministic systems, finite state machines, push down automata and normal forms.

INF 378 Machine Learning and Data Mining (3)
Prerequisite(s): INF 221, INF 230, MTH 320
The course will focus on various data mining and machine learning techniques and their applications. Students will manage real data and implement applications for machine learning and data mining using Python and related libraries.

INF 380 Operating Systems (3)
Prerequisite(s): INF 324
Course offers an introduction to the theory and practice behind modern computer operating systems. Topics will include: computer and operating system structures, process and thread management, process synchronization and communication, memory management, virtual memory, file system, I/O subsystem and device management.

INF 391 Topics in Computing (3)
Prerequisite(s): INF 120 or equivalent and 2 other INF courses
Variable topic course with emphasis is on current trends in technology. Course may be taken up to four times (total of 12 credit hours).

INF 396 Co-Op:Parallel(PT) (0-3) EXP
Prerequisite(s): CED 220
A related work experience supervised by a faculty coordinator in collaboration with the cooperative education. Credit is awarded upon successful completion of the work experience, documentation and evaluation. This course can be repeated for a maximum total of nine credits.

INF 400 Senior Research (1)
Prerequisite(s): Senior status or permission of instructor
Students work independently mentored by a faculty advisor on a project that demonstrates and integrates knowledge attained through previous coursework.

INF 496 Co-Op:Parallel(FT) (0-3) EXP
Prerequisite(s): CED 220
A related work experience supervised by a faculty coordinator in collaboration with the cooperative education. Credit is awarded upon successful completion of the work experience, documentation and evaluation. This course can be repeated for a maximum total of nine credits.

MTH 097 Introductory and Intermediate Algebra (4)
New Course
Prerequisite(s): Placement
Operations with signed numbers, simplifying expressions; order of operations; solving linear equations and inequalities; graphing of linear equations and inequalities; solving systems of equations; polynomials; exponents; roots and radicals; factoring; solving quadratic equations.

MTH 098 Intermediate Algebra (3)
Prerequisite(s): Placement
Simplifying expressions; order of operations; solving linear equations and inequalities; graphing of linear equations and inequalities; solving systems of equations; polynomials; exponents, roots and radicals; solving quadratic equations.

MTH 165 Hacking Math: A Tech-Based Survey of Mathematics (3) CMA
Prerequisite(s): Grade of "C" or Better in MTH 097 or MTH 098/Equiv or Placement.
This course is a survey of major branches of mathematics with examples of problems and methods in each, and explored primarily through the use of the programming language Python. (However, no previous coding experience is needed or required for success in this course!) Topics include solving linear equations in one variable and applications of linear equations in one variable, basic concepts of number theory, geometry, mathematics of finance, probability, and basic descriptive and inferential statistics.

MTH 170 A Liberal Arts View of Math (3) CMA
Prerequisite(s): Grade of "C" or better in MTH 097 or MTH 098/Equiv or placement
This course is designed to enhance students' mastery of the mathematics encountered in everyday life. These skills will foster a student's ability to make good life decisions and to be a good citizen. Topics will include interpreting commonly-encountered statistics, decision-making in health and social science issues and the mathematics of chance. Financial mathematics will also be explored including personal budgeting, investing, credit and loans.

MTH 172 Mathematics for Early Childhood and Special Educators (3) CMA
Prerequisite(s): Grade of "C" or Better in MTH 097 or MTH 098/Equiv or Placement
This course prepares pre-service early childhood and special educators who are charged with teaching regular education P-5 and special education K-12 students. Educators will be exposed to the breadth and depth of critical concepts mandated by the state according to the Ohio Mathematics Learning Standards and Progressions. The course will challenge students to develop a deep understanding of the material they will eventually be teaching through critical thinking, mathematical investigations, discussions, and writing. The major mathematical concepts covered in this course will be Algebra (expressions, equations, functions, linear equations), Geometry (shapes, area, perimeter, symmetry, congruence, similarity), and Transformations (volumes, reflections, translations, and rotations) with a focus on how these topics would be applied in a classroom. There will be an emphasis on understanding and using the NCTM mathematical processes of problem-solving, reasoning and proof, communication (including writing), representation, and connection.

MTH 174 Statistics I (3) CMA
Prerequisite(s): Grade of "C" or Better in MTH 097 or MTH 098/Equiv or Placement
Introductory level college statistics course; Topics will include data collection; graphical representation; measurements and interpretation of univariate and bivariate data; continuous distributions; hypothesis testing.

MTH 180 Math for Business (3) CMA
Prerequisite(s): Grade of "C" or better in MTH 097 or MTH 098/Equiv or placement
Application of linear functions; matrices and their use in solving systems of equations; basic concepts of probability; geometric and simplex method for linear programming; mathematics of finance.

MTH 187 Precalculus Algebra & Trigonometry (4) CMA
Prerequisite(s): Grade of "C" or better in MTH 097 or MTH 098/Equiv or placement
Rational expressions and equations; quadratic, radical, and polynomial equations; linear, and nonlinear inequalities. Also, the course will include a comprehensive study of polynomial, rational, exponential, logarithmic, and trigonometric functions along with properties, graphs, inverses, and applications.

MTH 193 Calculus I (4) CMA
Prerequisite(s): Grade of "C" or better in MTH 187/Equiv or placement
Differential calculus, limits, continuity, differentiation, applications of the derivative, antiderivatives, Fundamental Theorem of Calculus, definite and indefinite integrals, numerical integration.

MTH 194 Calculus II (4)
Prerequisite(s): Grade of "C" or better in MTH 193 or "4" or higher on AP Calc AB
Techniques of integration, applications of integration, improper integrals, sequences and series, Taylor series and polynomials, binomial series, polar coordinates, parametric equations.

MTH 220 Discrete Mathematics (3)
Prerequisite(s): Grade of "C" or better in MTH 193
Most, if not all, of the math classes you've taken up to now have focused on computation and problem solving. This class is intended as a transition to more abstract mathematics, so the emphasis will be on theory, critical thinking and the ability to communicate mathematically. The topics covered will include but are not limited to propositional and predicate logic; methods of proof, sequences, recursion, recurrence relations, set theory, functions, relations, graphs and counting.g.

MTH 255 Introduction to Linear Algebra (3)
Prerequisite(s): Grade of "C" or better in MTH 193
Corequisite(s): MTH 194
Vectors, systems of linear equations, vector spaces, linear transformations, matrices, determinants, and related applications.

MTH 293 Calculus III (4)
Prerequisite(s): Grade of "C" or better in MTH 194 or "4" or higher on AP Calc BC
Functions of several variables, vectors, lines and planes, vector functions, 3D parametric curves, partial derivatives and applications, gradients and directional derivatives, multiple integrals, line integrals, Green's Theorem, Stokes' Theorem and Divergence Theorem .

MTH 301 Mathematical Modeling (3)
Prerequisite(s): INF 120
Modeling techniques to solve problems from fields such as natural sciences, social sciences, business, and engineering; applications of general problem-solving strategies and fundamental modeling techniques to support future studies or work in mathematics-dependent fields.

MTH 305 College Geometry (3)
Prerequisite(s): MTH 220, junior or senior level or permission of instructor
Study of geometry from different perspectives, including Euclidean and non-Euclidean geometries, and other assorted topics; use of current geometry software; survey of the history of geometry.

MTH 310 Differential Equations (3)
Prerequisite(s): MTH 194 or INF 120.
First and second order ordinary differential equations having constant coefficients; linear systems; non-homogeneous equations using determined coefficients; applications.

MTH 315 Number Theory (3)
Prerequisite(s): MTH 220
Study of relations between and among integers; including divisibility, primes, unique factorization, congruence, primitive roots, and indices; Diophantine equations and Fibonacci numbers; selected historical topics.

MTH 320 Probability/Statistics (4)
Prerequisite(s): Grade of "C" or better in MTH 193
Corequisite(s): MTH 194
Descriptive statistics, probability, discrete and continuous random variables, probability distributions, sampling, estimation, and combinatorics.

MTH 325 Numerical Analysis (3)
Prerequisite(s): MTH 255
Numerical differential and integration; measures of accuracy; sources of error and error analysis; solutions of non-linear equations by iterative processes; differential equations; functional approximation; initial value problems; applications.

MTH 361 Abstract Algebra (3)
Prerequisite(s): MTH 220
Abstract algebraic structures and their application; group and group isomorphism and homomorphisms; rings and fields; historical references.

MTH 391 Advanced Calculus (3)
Prerequisite(s): MTH 220 and MTH 293
This course studies the foundations of calculus, including convergence, limits, sequences and series of real numbers and functions, continuity, differentiation, and Riemann integrals.

MTH 396 Cooperative Education Work Experience: Parallel (3) EXP
Prerequisite(s): CED 220, MTH 220
Opportunity for students to work in an area to which mathematics is applied such as computers, statistics, business, or actuarial science. Credit is awarded upon successful completion of the work experience, documentation of predetermined Learning Agreement and evaluation of work performance. Evaluation of work performed is on a pass/fail basis. This course can be repeated for a maximum total of nine credits.

MTH 400 Senior Research (1)
Prerequisite(s): 21 hours of mathematics above MTH 193
(1 credit per semester taken in two semesters). Students work independently mentored by a faculty advisor on a topic that integrates mathematics learned in previous courses.

MTH 496 Cooperative Education Work Experience: Alternating (3) EXP
Prerequisite(s): CED 220, MTH 220
Opportunity for students to work in an area to which mathematics is applied such as computers, statistics, business, or actuarial science. Credit is awarded upon successful completion of the work experience, documentation of predetermined Learning Agreement and evaluation of work performance. Evaluation of work performed is on a pass/fail basis. This course can be repeated for a maximum total of nine credits.

NLP 105 Introduction to Linguistics for Computer Scientists (3)
In this class, we will explore common questions that linguistics answers such as: Where did English come from? Why do people have accents? If a baby hears two languages, will the baby be confused? The course will explore language structure (syntax), language in culture and use (pragmatics), word parts (morphology), and the sounds of human speech (phonetics and phonology). Expect to dive into fun projects, like teaching people to speak English, creating your own language, and finding out where you favorite words came from and why. This course provides necessary conceptual background for students interested in corpus linguistics and natural language processing and is a prerequisite to Introduction to Language and Computers.

NLP 106 Introduction to Secondary Research Methods (3)
Have you ever heard on the news "scientists have discovered" ...says who, where? Or what about a medical procedure or a drug...how do we know what kind of research has been done...is it safe? If you have ever wondered about these type of questions, this course is for you. We will learn how to find and interpret academic and scientific articles in order to find answers to real world questions. We will learn to think critically about things that may impact the value of the research, such as sample selection and researcher bias. We will also work together to write an article with the view of submitting it to a journal or conference for publication. Natural language processing and computational linguistics requires a deep understanding of the real-world problems at hand and whether the computer derived solutions indeed work as intended in the messy contexts of workplaces and society-at-large. This course will prepare students to be critical consumers of information about the problems they are trying to solve and is a prerequisite to Introduction to Primary Research Methods.

NLP 120 Principles of NLP Programming I (3)
Prerequisite(s): MTH 165
This course will enable students to develop an understanding of the basic concepts and considerations of structured and object-oriented programming methodologies and be able to apply these concepts appropriately to solve a variety of real-world problems using Natural Language Processing (NLP) algorithms from existing open source libraries. INF 120 can be substituted for this course for CS-NLP double major students.

NLP 125 Introduction to Language and Computers (3)
Prerequisite(s): NLP 105
If you've ever wondered how your phone knows what you're going to type or how Google knows what you're trying to buy, this course will answer your questions. Using examples from technology and media we use every day, this course will overview basic concepts related to corpus linguistics (using a big collection of language to understand how language works) and natural language processing (understanding what language is trying to say and often using that information to make real time decisions). Working together, we will engage in hands-on activities and projects using corpus linguistics and natural language processing tools. We will also contemplate what all the advancements in technology mean to our daily work (are robots going to take over?) and privacy (who or what is listening to us and how and why?).

NLP 126 Introduction to Primary Research Methods (3)
Prerequisite(s): NLP 106
The first step to solving a problem, in computer science and other concentration areas, is narrowing the problem down and developing a plan of attack. Suppose we have a formal business or computer problem - and we determine that no one else has ever answered our exact question - how would we go about finding the answer? In this course you will learn how to develop and refine your own research question and conduct a mini-study using proper research theory and methods to look for answers. You will have the opportunity to explore pathways towards publishing or presenting your research.

NLP 221 Principles of NLP Programming II (3)
Prerequisite(s): NLP 120
Students will expand their knowledge of concepts and considerations of structured and object-oriented programming methodologies mastered in NLP 120 by learning approaches for development of reliable, highly maintainable, and re-usable NLP projects. To this end, students will expand their knowledge of object-oriented design approaches through the introduction to encapsulation, inheritance, polymorphism, and abstraction. Students will utilize these approaches to expand the project they developed in NLP 120. Additional topics include systems development lifecycle (SDLC), multi-dimensional arrays, exception handling, addresses, pointers, and dynamic storage allocation. INF 221 can be substituted for this course for CS-NLP double major students.

NLP 230 Applications of Database & Design Development for NLP Programming (3)
Prerequisite(s): NLP 120, INF 120, or equivalent
In addition to providing an introduction to fundamental database concepts including current relational database modeling, file management, data definition, and standards, students will learn to develop structured query language (SQL) statements to develop, retrieve, manipulate, and maintain NLP data generated in in their previously developed projects. Students will learn to use complex and compound criteria from multiple tables to develop appropriate reports and perform data analysis of the NLP data stored in the relational database. Additionally, students will explore some contemporary non-relational databases. INF 230 can be substituted for this course for CS-NLP for double major students.

NLP 250 Web Fundamentals and NLP Programming (3)
Prerequisite(s): NLP 105, NLP 120, NLP 230 or equivalent
This course is intended to equip students with robust understanding of the fundamentals of current and proposed standards for HTML, XHTML and CSS. Using this knowledge, the students will develop web applications aimed at expanding their existing project developed in NLP 230. This course also examines various multimedia formats (images, audio, video, sound and animation), web standards and user accessibility. INF 250 can be substituted for this course for CS-NLP double major students.

NLP 270 Creating NLP-Driven Mobile Applications (3)
Prerequisite(s): NLP 221/INF 221and NLP 230
In this course, students will be introduced to the foundations of mobile app development and its unique requirements and constraints. Students will create a mobile app for their NLP web project created in NLP 230. Students will learn the requirements and design decisions tied to mobile application development and how they relate to limited resources available on mobile devices are emphasized. INF 270 can be substituted for this course for CS-NLP double major students.

NLP 340 Directed Research (1-3)
New Course
In this course, the student will design and conduct Natural Language Processing research under the direction of an NLP faculty member. The student will collect and interpret the data gathered and will present the results of the work as agreed upon by the student and his or her research advisor. Normally this will include a presentation at the University's annual Celebration of Teaching and Learning and at a regional conference or authoring a written paper.

NLP 350 Applied Social Computing (3)
New Course
Applied Social Computing: The goal of this course, taken towards the end of the student?s Mount education, is to synthesize the students? Mount experience and aid students in acquiring real-life technical, professional, and research skills. In this course, students will select from one of several possible research and/or technology projects that are associated with the Mount. Students will participate in their selected projects to review relevant professional and/or academic literature, conduct a needs analysis and/or develop their project?s technical specifications, and then map out a project goals timeline document. At the end of the term, students will present their experiences and their project to stakeholders and the Social Computing faculty and students.