Morris campus
 
Morris Campus

Computer Science B.A.

Division of Science & Mathematics - Adm
Division of Science and Mathematics
  • Program Type: Baccalaureate
  • Requirements for this program are current for Fall 2015
  • Required credits to graduate with this degree: 120
  • Required credits within the major: 53
  • Degree: Bachelor of Arts
The computer science curriculum is designed to not only provide a solid background in fundamentals, but also to continuously respond to rapid changes in the field of computing by equipping our students with modern tools, approaches, and cutting-edge concepts and technologies. Coursework in computer science spans three core areas of computing, including theory, software development, and systems. Beginning computer science courses are open to non-majors and satisfy the mathematical and symbolic reasoning component of the general education requirements. All computer science majors must complete a senior seminar capstone experience, and the discipline prides itself on the high quality of students' papers and presentations in this course. The program also includes mathematics or statistics in the required coursework. Computer science majors develop software, explore hardware systems, and apply theoretical concepts. Reflecting the collaborative nature of today's world, team work is heavily integrated into computer science coursework. Students are encouraged to use and supplement their formal education through research opportunities, internship experiences, programming and robotics competitions, and student and professional organizations. Many students take advantage of the opportunity to collaborate with computer science faculty on research projects, presenting the results at international, national, and regional conferences, as well as at UMM's Undergraduate Research Symposium. Study in computer science is required for management and math majors at UMM, as well as for students pursuing a variety of pre-engineering programs. Many UMM computer science majors enter the job market upon graduation, primarily in the computing industry. Others pursue postgraduate work toward a masters or doctoral degree in computing, business, library science, or a variety of other fields. Objectives--the computer science discipline is designed to: * serve students from other disciplines requiring knowledge of computer science; * advance student learning in computer science at a depth and breadth appropriate to undergraduates; * advance student competence in research in computer science; * advance student writing and presentation skills appropriate for the field; * advance student teamwork and collaboration skills; and * prepare students for careers in industrial settings and/or postgraduate work in computing.
Program Delivery
This program is available:
  • via classroom (the majority of instruction is face-to-face)
Admission Requirements
For information about University of Minnesota admission requirements, visit the Office of Admissions website.
General Requirements
All students are required to complete general University and college requirements. For more information, see the general education requirements.
Program Requirements
Students are required to take 2 semester(s) of any second language.
Grades of D or D+ in CSCI 1201, 1301, 1302, and 2101 may not be used to meet the major requirements. No more than one course with a grade of D or D+, offset by an equivalent number of credits of A or B grades, may be used to meet the requirements for a computer science major. Courses may not be taken S-N unless offered S-N only. A minimum GPA of 2.00 is required in the major to graduate. The GPA includes all, and only, University of Minnesota coursework. Grades of "F" are included in GPA calculation until they are replaced. Elective courses: computer science major electives are divided into three areas: systems courses (CSCI 44xx), theory courses (CSCI 45xx), and programming and languages courses (CSCI 46xx). The discipline offers an array of courses in each area. The courses listed are representative of the courses offered. New courses are continually developed and added to keep up with changes in the field.
Required Courses
CSCI 1302 - Foundations of Computer Science [M/SR] (4.0 cr)
CSCI 2101 - Data Structures [M/SR] (5.0 cr)
CSCI 3402 - Computing Systems: Concepts (3.0 cr)
CSCI 3403 - Computing Systems: Practicum (2.0 cr)
CSCI 3501 - Algorithms and Computability [M/SR] (5.0 cr)
CSCI 3601 - Software Design and Development [M/SR] (5.0 cr)
CSCI 4901 - Senior Seminar (1.0 cr)
IS 1091 - Ethical and Social Implications of Technology [E/CR] (2.0 cr)
Take one of the following:
CSCI 1201 - Introduction to Digital Media Computation [M/SR] (4.0 cr)
or CSCI 1301 - Problem Solving and Algorithm Development [M/SR] (4.0 cr)
Elective Courses
Take 10 or more credit(s) including exactly 3 sub-requirements(s) from the following:
Computing Systems Courses (44xx):
Take 2 - 4 credit(s) from the following:
· CSCI 4403 - Systems: Data Mining (2.0 cr)
· CSCI 4406 - Systems: Wireless Data Networks (2.0 cr)
· CSCI 4409 - Systems: Programming for Parallel Architecture (2.0 cr)
· CSCI 4451 - Systems: Distributed Systems (4.0 cr)
· CSCI 4452 - Systems: Computer Networks (4.0 cr)
· CSCI 4453 - Systems: Database Systems (4.0 cr)
· CSCI 4454 - Systems: Robotics (4.0 cr)
· CSCI 4456 - Systems: Advanced Operating Systems (4.0 cr)
· CSCI 4457 - Systems: Ubiquitous Computing (4.0 cr)
· CSCI 4458 - Systems: Bioinformatic Systems (4.0 cr)
· CSCI 4459 - Systems: Virtualization and Operating System Administration, Configuration, and Implementation (4.0 cr)
· Theory Courses (45xx):
Take 2 - 4 credit(s) from the following:
· CSCI 4506 - Theory: Fuzzy Logic and Fuzzy Sets (2.0 cr)
· CSCI 4507 - Theory: Data Compression (2.0 cr)
· CSCI 4508 - Theory: Algorithm Design (2.0 cr)
· CSCI 4511 - Theory: Artificial Life (2.0 cr)
· CSCI 4552 - Theory: Advanced Algorithms (4.0 cr)
· CSCI 4553 - Theory: Evolutionary Computation and Artificial Intelligence (4.0 cr)
· CSCI 4554 - Theory: Cryptography (4.0 cr)
· CSCI 4555 - Theory: Neural Networks and Machine Learning (4.0 cr)
· CSCI 4556 - Theory: Computer Graphics (4.0 cr)
· CSCI 4557 - Theory: Quantum Computing (4.0 cr)
· Processes, Programming, and Languages Courses (46xx):
Take 2 - 4 credit(s) from the following:
· CSCI 4604 - Processes, Programming, and Languages: Graphical User Interfaces (2.0 cr)
· CSCI 4605 - Processes, Programming, and Languages: Refactoring (2.0 cr)
· CSCI 4651 - Processes, Programming, and Languages: Programming Languages (4.0 cr)
· CSCI 4652 - Processes, Programming, and Languages: Compilers (4.0 cr)
· CSCI 4653 - Processes, Programming, and Languages: Software Engineering (4.0 cr)
· CSCI 4654 - Processes, Programming, and Languages: Modern Functional Programming (4.0 cr)
· CSCI 4655 - Processes, Programming, and Languages: Software Design and Development II (4.0 cr)
· CSCI 4656 - Processes, Programming, and Languages: Human-Computer Interaction and Interface Design (4.0 cr)
· CSCI 4657 - Processes, Programming, and Languages: Programming Languages for Client-Server Systems (4.0 cr)
· CSCI 4658 - Processes, Programming, and Languages: Usability, Design, and Mobile Technologies (4.0 cr)
Math and Statistics Electives
MATH 1101 and above, excluding MATH 2211, or STAT 2xxx and above.
Take 12 or more credit(s) from the following:
· CSCI 2701 - Introduction to Data Science [M/SR] (4.0 cr)
· MATH 1101 - Calculus I [M/SR] (5.0 cr)
· MATH 1102 - Calculus II [M/SR] (5.0 cr)
· MATH 2101 - Calculus III [M/SR] (4.0 cr)
· MATH 2111 - Linear Algebra [M/SR] (4.0 cr)
· MATH 2202 - Mathematical Perspectives [M/SR] (4.0 cr)
· MATH 2401 - Differential Equations [M/SR] (4.0 cr)
· MATH 2501 - Probability and Stochastic Processes [M/SR] (4.0 cr)
· MATH 3xxx
· MATH 4xxx
· STAT 2xxx
· STAT 3xxx
· STAT 4xxx
 
More program views..
View college catalog(s):
· Division of Science and Mathematics

View sample plan(s):
· Computer Science 1
· Computer Science 2
· Computer Science 3

View checkpoint chart:
· Computer Science B.A.
View PDF Version:
Search.
Search Programs

Search University Catalogs
Related links.

Division of Science and Mathematics

Morris Admissions

Morris Application

One Stop
for tuition, course registration, financial aid, academic calendars, and more
 
CSCI 1302 - Foundations of Computer Science (M/SR)
Credits: 4.0 [max 4.0]
Typically offered: Every Spring
Basic proof techniques, propositional and predicate logic, induction and invariants, program correctness proofs, simple Big-Oh analysis of algorithms, set theory, introductory graph theory, and basic summations.
CSCI 2101 - Data Structures (M/SR)
Credits: 5.0 [max 5.0]
Typically offered: Every Fall
Introduction to data structures, including stacks, queues, trees, and graphs; implementation of abstract data types and introduction to software testing, using object-oriented techniques and reusable libraries. (4 hrs lect, 2 hrs lab) prereq: 1201 or 1301 or instr consent
CSCI 3402 - Computing Systems: Concepts
Credits: 3.0 [max 3.0]
Course Equivalencies: 02224 - CSci 3402/CSci 3401
Prerequisites: 1302 and 2101 or #
Typically offered: Every Spring
Overview of computing systems, operating systems, and networks. Sources of complexity. Fundamental abstractions such as memory, processing, and communication; memory management and data storage; threads, processes, race conditions and deadlock; and inter-process and inter-computer communication. Modularity and organization; virtualization; protection and security; performance. prereq: 1302 and 2101 or instr consent
CSCI 3403 - Computing Systems: Practicum
Credits: 2.0 [max 2.0]
Course Equivalencies: 02225 - CSci 3403/CSci 3401
Prerequisites: 1302 and 2101 or #
Typically offered: Every Fall
Lab experience with key computing systems tools and concepts. Command-line tools; shell and system scripting; system programming. Pointers and explicit memory management. Digital logic, gates, electronics, and microcomputers. Network organization and communication; client-server programming. Processes and threads; parallel and distributed computing. Performance and profiling. prereq: 1302 and 2101 or instr consent
CSCI 3501 - Algorithms and Computability (M/SR)
Credits: 5.0 [max 5.0]
Typically offered: Every Fall
Models of computation (such as Turing machines, deterministic and non-deterministic machines); approaches to the design of algorithms, determining correctness and efficiency of algorithms; complexity classes, NP-completeness, approximation algorithms. (4 hrs lect, 2 hrs lab) prereq: 1302, 2101 or instr consent
CSCI 3601 - Software Design and Development (M/SR)
Credits: 5.0 [max 5.0]
Typically offered: Every Spring
Design and implementation of medium- and large-scale software systems. Principles of organizing and managing such designs and implementations throughout their lifetime. Designing for modularity and software reuse; use of libraries. Dynamics of working in groups. Group work on a substantial software project. prereq: 1302, grade of at least C- in 2101, or instr consent
CSCI 4901 - Senior Seminar
Credits: 1.0 [max 1.0]
Grading Basis: S-N only
Typically offered: Every Fall & Spring
In-depth survey of literature in a specific computer-related field of the student's choice. Students analyze various articles or similarly published works, synthesize their contents, and present their work formally in a conference setting. Multiple writing and speaking experiences reviewed by faculty and classmates. Requires attendance and presentation at a student conference near the end of the semester in addition to regular class meetings. prereq: IS 1091 or instr consent, jr or sr
IS 1091 - Ethical and Social Implications of Technology (E/CR)
Credits: 2.0 [max 2.0]
Typically offered: Every Fall & Spring
Description of appropriate technological advances. Historical development related to technology and its development cycle. Discussion of the ethical and social implications of technology.
CSCI 1201 - Introduction to Digital Media Computation (M/SR)
Credits: 4.0 [max 4.0]
Typically offered: Every Spring
Using images, sounds, and movies to introduce problem solving, data representation, data manipulation, and programming principles including recursion. Introduction to basic ideas in hardware, software, and computing.
CSCI 1301 - Problem Solving and Algorithm Development (M/SR)
Credits: 4.0 [max 4.0]
Typically offered: Every Fall
Introduction to different problem solving approaches, major programming paradigms, hardware, software, and data representations. Study of the functional programming paradigm, concentrating on recursion and inductively-defined data structures. Simple searching and sorting algorithms.
CSCI 4403 - Systems: Data Mining
Credits: 2.0 [max 2.0]
Typically offered: Periodic Fall & Spring
An introduction to a new field which tries to solve the problem of how to store (warehouse) and how to extract (mine) valid, useful, and previously unknown data from a source (database or web) which contains an overwhelming amount of information. Algorithms applied include searching for patterns in the data, using machine learning, and applying artificial intelligence techniques. prereq: 2101 or instr consent
CSCI 4406 - Systems: Wireless Data Networks
Credits: 2.0 [max 2.0]
Prerequisites: 3402, 3403 or #
Typically offered: Periodic Fall & Spring
Licensed vs. unlicensed carrier frequencies. Physical layer characteristics and protocols. Network topologies. Discussion of current and upcoming standards. Data privacy and security. prereq: 3402, 3403 or instr consent
CSCI 4409 - Systems: Programming for Parallel Architecture
Credits: 2.0 [max 2.0]
Prerequisites: 3402, 3403 or #
Typically offered: Periodic Spring
Study of programming models, languages, and approaches for parallel computer architectures. Topics include introduction to parallel computing and parallel architectures, approaches to program parallelization, mechanisms for communication and synchronization between tasks, and study of programming language support for parallel computation. prereq: 3402, 3403 or instr consent
CSCI 4451 - Systems: Distributed Systems
Credits: 4.0 [max 4.0]
Prerequisites: 3402, 3403 or #
Typically offered: Periodic Fall & Spring
An introduction to distributed systems/computation. Topics include processes and threads, physical vs. logical clocks, interprocess communication and coordination, election algorithms, synchronization, distributed task scheduling, distributed shared memory, distributed file systems, and replicated data management. prereq: 3402, 3403 or instr consent
CSCI 4452 - Systems: Computer Networks
Credits: 4.0 [max 4.0]
Prerequisites: 3402, 3403 or #
Typically offered: Periodic Fall & Spring
Principles of computer networks. Network topologies, protocols, routing, internetworking, security and privacy. prereq: 3402, 3403 or instr consent
CSCI 4453 - Systems: Database Systems
Credits: 4.0 [max 4.0]
Typically offered: Periodic Fall & Spring
Introduction to relational, object-relational, and object database systems. Topics include the relational model, SQL and related query languages, JDBC and database applications programming, database design, query processing and optimization, indexing techniques, and transaction management. prereq: 2101 or instr consent
CSCI 4454 - Systems: Robotics
Credits: 4.0 [max 4.0]
Typically offered: Periodic Fall & Spring
An introduction to robotic systems including robot mechanics, algorithms in robotics, and sensor interfaces for autonomous mobile and arm robots. Concepts of kinematics and coordinate systems, real-time programming, embedded systems, pattern recognition algorithms, simulation environments, and subsumption architecture within the context of robotics applications are explored. prereq: 2101 or instr consent
CSCI 4456 - Systems: Advanced Operating Systems
Credits: 4.0 [max 4.0]
Prerequisites: 3402, 3403 or #
Typically offered: Periodic Fall & Spring
Broad exposure to advanced operating systems topics such as process communication, protection, security, memory management, operating system kernels, network operating systems, synchronization, naming, and distributed systems. prereq: 3402, 3403 or instr consent
CSCI 4457 - Systems: Ubiquitous Computing
Credits: 4.0 [max 4.0]
Prerequisites: 3403 or #
Typically offered: Periodic Fall & Spring
Study of the mechanisms and environments of ubiquitous computing. Topics may include computer and network architectures for ubiquitous computing, mobile computing mechanisms, multimodal interaction, pervasive software systems, location mechanisms, techniques for security and user-authentication, and experimental ubiquitous computing systems. prereq: 3403 or instr consent
CSCI 4458 - Systems: Bioinformatic Systems
Credits: 4.0 [max 4.0]
Prerequisites: 3403 or #
Typically offered: Periodic Fall & Spring
Introduction to bioinformatics with an emphasis on computer systems. Possible topics include: utilizing software for genetic sequencing, large-scale data management using databases, algorithms for construction of phylogenetic trees, bioinformatic scripting, and other tools for bioinformatics. prereq: 3403 or instr consent
CSCI 4459 - Systems: Virtualization and Operating System Administration, Configuration, and Implementation
Credits: 4.0 [max 4.0]
Prerequisites: 3402 and 3403 or #
Typically offered: Periodic Fall & Spring
The basics of virtualizing hardware and key systems services such as networking. Use of virtualization tools to support an incremental exploration of the installation and configuration of an operating system. More detailed exploration of the implementation details of certain operating system services as time allows. prereq: 3402 and 3403 or instr consent
CSCI 4506 - Theory: Fuzzy Logic and Fuzzy Sets
Credits: 2.0 [max 2.0]
Typically offered: Periodic Fall & Spring
Fuzzy logic and fuzzy sets are used in expert systems, controllers, pattern recognition, databases, decision making, robotics, and economics. The basic theory of fuzzy sets and fuzzy logic along with a brief survey of some of the current research. May include presentations and/or a project. prereq: 3501 or instr consent
CSCI 4507 - Theory: Data Compression
Credits: 2.0 [max 2.0]
Typically offered: Periodic Fall & Spring
Introduction to data compression (including lossy and lossless compression techniques), wavelets, differential encoding techniques (including pulse code and delta modulation), and subband coding with applications to speech, audio, and images. Compression standards such as the CCITT international standard and MPEG audio compression standard. prereq: 3501 or instr consent
CSCI 4508 - Theory: Algorithm Design
Credits: 2.0 [max 2.0]
Typically offered: Periodic Fall & Spring
Approaches to the design of efficient algorithms for solving a variety of practical problems such as string matching or those that can be modeled on a tree or graph. Techniques studied include dynamic programming, divide and conquer, greedy methods, backtracking, and approximation algorithms. prereq: 3501 or instr consent
CSCI 4511 - Theory: Artificial Life
Credits: 2.0 [max 2.0]
Typically offered: Periodic Fall & Spring
Introduction to the field of Artificial Life and the phenomena of living systems, with an emphasis on computational approaches to understanding the logic of living systems in artificial environments. Techniques and tools used to better understand the complex information processing that defines living systems, such as agent-based systems, evolutionary computation, cellular automata, and digital simulations. prereq: 2101 or instr consent
CSCI 4552 - Theory: Advanced Algorithms
Credits: 4.0 [max 4.0]
Typically offered: Periodic Fall & Spring
Techniques for designing and analyzing efficient algorithms to solve a variety of practical problems. Some algorithmic techniques include dynamic programming, greedy methods, and amortized analysis. Other topics include graph algorithms, string matching, approximation algorithms, and NP-Completeness. prereq: 3501 or instr consent
CSCI 4553 - Theory: Evolutionary Computation and Artificial Intelligence
Credits: 4.0 [max 4.0]
Typically offered: Periodic Fall & Spring
Introduction to Evolutionary Computation as an Artificial Intelligence tool for developing solutions to problems that are difficult to describe precisely or solve formally, as well as comparisons with other AI techniques. Includes discussions of theoretical background and tools, implementation issues, and applications. prereq: 2101 or instr consent
CSCI 4554 - Theory: Cryptography
Credits: 4.0 [max 4.0]
Typically offered: Periodic Fall & Spring
Theory and applications of cryptography. Overview of necessary mathematical concepts. Discussion of algorithms and protocols including public and private key encryption, authentication, and zero knowledge proofs. prereq: 1302, 2101 or instr consent
CSCI 4555 - Theory: Neural Networks and Machine Learning
Credits: 4.0 [max 4.0]
Typically offered: Periodic Fall & Spring
Study of the underlying theory, structure, and behavior of neural networks and of how neural networks compare to and can be used to supplement other methods of machine learning. Methods such as decision tree learning, inductive learning, reinforcement learning, supervised learning, and explanation-based learning are examined. Analysis of the strengths and weaknesses of various approaches to machine learning. Includes an implementation project. prereq: 1302, 2101 or instr consent
CSCI 4556 - Theory: Computer Graphics
Credits: 4.0 [max 4.0]
Typically offered: Periodic Fall & Spring
Introduction to basic concepts and algorithms in computer graphics, including three-dimensional geometry and various approaches to modeling three-dimensional scenes. An introduction to transformation and viewing, lighting, shading, texture, and color. Advanced topics may include ray tracing, radiosity, and animation. Students complete several significant projects. prereq: 1302, 2101 or instr consent
CSCI 4557 - Theory: Quantum Computing
Credits: 4.0 [max 4.0]
Prerequisites: 1302, 2101,(3501 or Math 1101 or higher) or #
Typically offered: Periodic Spring
Summarization of relevant mathematical and quantum mechanical concepts. Basic quantum algorithms concepts and simple algorithms are explored, along with Shor's algorithm, Grover's algorithm, and the quantum Fourier transform. prereq: 1302, 2101,(3501 or Math 1101 or higher) or instr consent
CSCI 4604 - Processes, Programming, and Languages: Graphical User Interfaces
Credits: 2.0 [max 2.0]
Prerequisites: 3601 or #
Typically offered: Periodic Fall & Spring
An exploration into designing Graphical User Interfaces. Aspects of human-computer interaction are discussed along with how to design good user interfaces. Students complete a project using Java's Swing. prereq: 3601 or instr consent
CSCI 4605 - Processes, Programming, and Languages: Refactoring
Credits: 2.0 [max 2.0]
Prerequisites: 3601 or #
Typically offered: Periodic Fall & Spring
Introduction to methodologies for the long-term development and maintenance of software systems. Discussion of methods of fixing errors and extending functionality in a controlled manner that builds on and improves the underlying system design, as well as tools for regression testing to help catch introduced errors. There is a significant programming component as well as change documentation and classroom presentations. prereq: 3601 or instr consent
CSCI 4651 - Processes, Programming, and Languages: Programming Languages
Credits: 4.0 [max 4.0]
Prerequisites: 2101 or #
Typically offered: Periodic Fall & Spring
History of programming languages, formal specification of syntax and semantics of programming languages from a variety of paradigms (procedural, functional, logic-programming, object-oriented, and parallel paradigms), modern language features. prereq: 2101 or instr consent
CSCI 4652 - Processes, Programming, and Languages: Compilers
Credits: 4.0 [max 4.0]
Prerequisites: 3501, 3601 or #
Typically offered: Periodic Fall & Spring
Program translations from a variety of paradigms. Lexical analysis and parsing techniques, intermediate representations, type checking, code generation, error detection and recovery, optimization. prereq: 3501, 3601 or instr consent
CSCI 4653 - Processes, Programming, and Languages: Software Engineering
Credits: 4.0 [max 4.0]
Prerequisites: 3601 or #
Typically offered: Periodic Fall & Spring
Examination of software engineering techniques and methodologies. Topics include software life cycle models, analytical and software tools used in software engineering, software metrics, testing techniques, design techniques, planning and estimation methodologies, and issues related to the reusability, portability, and interoperability of software systems. Emphasis on the application of these techniques and methodologies to real world problems. Includes a team-based software development project. prereq: 3601 or instr consent
CSCI 4654 - Processes, Programming, and Languages: Modern Functional Programming
Credits: 4.0 [max 4.0]
Prerequisites: 1302, 2101 or #
Typically offered: Periodic Fall & Spring
Survey of concepts, tools, and techniques from the realm of functional programming. Topics include higher order functions, currying, type systems, concurrency models, mechanisms for managing state, and methods of compilation and evaluation such as graph reduction and term rewriting. prereq: 1302, 2101 or instr consent
CSCI 4655 - Processes, Programming, and Languages: Software Design and Development II
Credits: 4.0 [max 4.0]
Prerequisites: 3601 or #
Typically offered: Periodic Summer
Design and implementation of a medium-scale software system in an intensive, full-time lab setting where teams use object-oriented tools and agile development processes. Emphasis on the creation, evolution, and maintenance of system design. prereq: 3601 or instr consent
CSCI 4656 - Processes, Programming, and Languages: Human-Computer Interaction and Interface Design
Credits: 4.0 [max 4.0]
Prerequisites: 2101 or #
Typically offered: Periodic Fall & Spring
Introduction to the design, evaluation, and implementation of interactive computing systems for human use with a particular emphasis on user interfaces. Possible domains include usability issues for desktop applications, embedded systems, and Web design. Student projects include evaluative studies and sample implementations. prereq: 2101 or instr consent
CSCI 4657 - Processes, Programming, and Languages: Programming Languages for Client-Server Systems
Credits: 4.0 [max 4.0]
Prerequisites: 3601 or #
Typically offered: Periodic Fall & Spring
Client/Server model and related Internet protocols. Server-side data storage. Common programming languages and technologies for client-side and server-side data processing. Related security issues. prereq: 3601 or instr consent
CSCI 4658 - Processes, Programming, and Languages: Usability, Design, and Mobile Technologies
Credits: 4.0 [max 4.0]
Prerequisites: 3601 or #
Typically offered: Periodic Fall
Design, evaluation, and use of innovative handheld, mobile, and wearable technologies. Topics include needs and issues unique to mobile users, as well as social and organizational impacts of mobile technologies. The course consists of a mix of lectures and seminar-style discussions, with projects incorporating important aspects of design, implementation, and evaluation. prereq: 3601 or instr consent
CSCI 2701 - Introduction to Data Science (M/SR)
Credits: 4.0 [max 4.0]
Course Equivalencies: 02221 - CSci 2701/Stat 2701
Prerequisites: CSci 1201 or CSci 1251 or CSci 1301, Stat 1601 or Stat 2601 or Stat 2611 or #
Typically offered: Every Spring
Same as Stat 2701. Introduction to data science and informatics and their application to real world scenarios. Computational approaches to data types; database creation including technologies such as SQL/no-SQL; data visualization; data reduction, condensation, partitioning; statistical modeling; and communicating results. prereq: CSci 1201 or CSci 1251 or CSci 1301, Stat 1601 or Stat 2601 or Stat 2611 or instr consent
MATH 1101 - Calculus I (M/SR)
Credits: 5.0 [max 5.0]
Typically offered: Every Fall & Spring
Limits and continuity; the concepts, properties, and some techniques of differentiation, antidifferentiation, and definite integration and their connection by the Fundamental Theorem. Partial differentiation. Some applications. Students learn the basics of a computer algebra system. prereq: 1012, 1013 or placement
MATH 1102 - Calculus II (M/SR)
Credits: 5.0 [max 5.0]
Typically offered: Every Fall & Spring
Techniques of integration. Further applications involving mathematical modeling and solution of simple differential equations. Taylor's Theorem. Limits of sequences. Use and theory of convergence of power series. Students use a computer algebra system. prereq: 1101
MATH 2101 - Calculus III (M/SR)
Credits: 4.0 [max 4.0]
Typically offered: Every Fall & Spring
Multivariable and vector calculus. Three-dimensional analytic geometry; partial differentiation; multiple integration; gradient, divergence, and curl; line and surface integrals; divergence theorem; Green and Stokes theorems; applications. prereq: 1102 or instr consent
MATH 2111 - Linear Algebra (M/SR)
Credits: 4.0 [max 4.0]
Prerequisites: 1102 or #
Typically offered: Every Fall & Spring
Matrix algebra, systems of linear equations, finite dimensional vector spaces, linear transformations, determinants, inner-product spaces, characteristic values and polynomials, eigenspaces, minimal polynomials, diagonalization of matrices, related topics; applications. prereq: 1102 or instr consent
MATH 2202 - Mathematical Perspectives (M/SR)
Credits: 4.0 [max 4.0]
Typically offered: Every Spring
Introduction to the methodology and subject matter of modern mathematics. Logic, sets, functions, relations, cardinality, and induction. Introductory number theory. Roots of complex polynomials. Other selected topics. prereq: 1101
MATH 2401 - Differential Equations (M/SR)
Credits: 4.0 [max 4.0]
Typically offered: Every Fall
First-order and second-order differential equations with methods of solution and applications, Laplace transforms, systems of equations, series solutions, existence and uniqueness theorems, the qualitative theory of differential equations. prereq: 1102 or instr consent
MATH 2501 - Probability and Stochastic Processes (M/SR)
Credits: 4.0 [max 4.0]
Course Equivalencies: 00927 - Math 2501/Stat 2501
Typically offered: Every Fall
Same as Stat 2501. Probability theory; set theory, axiomatic foundations, conditional probability and independence, Bayes' rule, random variables. Transformations and expectations; expected values, moments, and moment generating functions. Common families of distributions; discrete and continuous distributions. Multiple random variables; joint and marginal distributions, conditional distributions and independence, covariance and correlation, multivariate distributions. Properties of random sample and central limit theorem. Markov chains, Poisson processes, birth and death processes, and queuing theory. prereq: 1101 or instr consent