CSCI 2820  Linear Algebra with Computer Science Applications
Primary Instructor

Fall 2020
Introduces the fundamentals of linear algebra in the context of computer science applications. Includes vector spaces, matrices, linear systems, and eigenvalues. Includes the basics of floating point computation and numerical linear algebra.
CSCI 2824  Discrete Structures
Primary Instructor

Spring 2018
Covers foundational materials for computer science that is often assumed in advanced courses. Topics include set theory, Boolean algebra, functions and relations, graphs, propositional and predicate calculus, proofs, mathematical induction, recurrence relations, combinatorics, discrete probability. Focuses on examples based on diverse applications of computer science. Same as CSPB 2824.
CSCI 3090  Introduction to Quantum Computing
Primary Instructor

Spring 2020 / Spring 2021
Covers the basics of quantum computation, including the basics of quantum information; axioms of quantum mechanics; quantum circuits and universality; the relationship between quantum and classical complexity classes; simple quantum algorithms such as the quantum Fourier transform; Shor factoring algorithm; Grover search algorithm; physical implementation of quantum computation; error correction and fault tolerance. Same as PHYS 3090.
CSCI 4950  Senior Thesis
Primary Instructor

Fall 2021 / Spring 2022
Provides an opportunity for senior computer science majors to conduct exploratory research in computer science. Department enforced restriction, successful completion of a minimum of 36 credit hours of Computer Science coursework and approved WRTG. May be repeated up to 8 total credit hours.
CSCI 5444  Introduction to Theory of Computation
Primary Instructor

Fall 2019
Reviews regular expressions and finite automata. Studies Turing machines and equivalent models of computation, the Chomsky hierarchy, contextfree grammars, pushdown automata, and computability.
CSCI 6214  Randomized Algorithms
Primary Instructor

Fall 2021
Randomization is a powerful tool to design and analyze algorithms, and one that has played, and continues to play, a key role in the theory of algorithms and complexity. This course will give a technical foundation in common probabilistic tools to design and analyze algorithms, and use this foundation to cover several important randomized algorithms.
CSCI 7000  Current Topics in Computer Science
Primary Instructor

Fall 2018 / Fall 2020
Covers research topics of current interest in computer science that do not fall into a standard subarea. May be repeated up to 8 total credit hours.
PHYS 3090  Introduction to Quantum Computing
Primary Instructor

Spring 2020 / Spring 2021
Covers the basics of quantum computation, including the basics of quantum information; axioms of quantum mechanics; quantum circuits and universality; the relationship between quantum and classical complexity classes; simple quantum algorithms such as the quantum Fourier transform; Shor factoring algorithm; Grover search algorithm; physical implementation of quantum computation; error correction and fault tolerance. Same as CSCI 3090.