Georgia Institute of TechnologyWebsiteAcademic Catalog
College of ComputingDepartment Website
Thread Degree in Theorysource 1source 2
CS Courses
- Introduction to Object Oriented ProgrammingCS 1331 (3)introCS 1331: Introduction to Object Oriented Programming
Introduction to techniques and methods of object-oriented programming such an encapsulation, inheritance, and polymorphism. Emphasis on software development and individual programming skills.
- Introduction to Discrete Mathematics for Computer ScienceorCS 2050 (3)mathCS 2050: Introduction to Discrete Mathematics for Computer Science
Proof methods, strategy, correctness of algorithms over discrete structures. Induction and recursion. Complexity and order of growth. Number theoretic principles and algorithms. Counting and computability. Credit not allowed for both CS 2050 and CS 2051.
Honors - Induction to Discrete Mathematics for Computer ScienceCS 2051 (3)mathCS 2051: Honors - Induction to Discrete Mathematics for Computer ScienceProof methods, strategy, correctness of algorithms over discrete structures. Induction and recursion. Complexity and order of growth. Number theoretic principles and algorithms. Counting and computability. Credit not allowed for both CS 2051 and CS 2050.
- pick 3
Languages and ComputationCS 3240 (3)plsCS 3240: Languages and ComputationInterpreters as abstract machines and the tools used to construct them, such as scanners and parsers. An introduction to models of computation as embodied by different programming languages. Limits of and relationships between these models.
Computer GraphicsCS 3451 (3)graphicsCS 3451: Computer GraphicsGeometric constuctions; transformations; perception; reflection models; photorealistic; non-photorealistic, and image-based rendering; rendering software and API's; triangle-mesh processing; graphic acceleration; user-interaction, design and animation.
Introduction to Information SecurityCS 4235 (3)sysCS 4235: Introduction to Information SecurityTerms/concepts, threats, controls; problem definition; comprehensive information security model; security for operating systems, databases, network/distributed systems; administering security; legal/ethical/policy issues. Credit not allowed for both CS 4235 and CS 6035.
Introduction to Number TheoryMATH 4150 (3)mathMATH 4150: Introduction to Number TheoryPrimes and unique factorization, congruences, Chinese remainder theorem, Diophantine equations, Diophantine approximations, quadratic reciprocity. Applications such as fast multiplication, factorization, and encryption.
Introduction to Information TheoryMATH 4280 (3)mathMATH 4280: Introduction to Information TheoryThe measurement and quantification of information. These ideas are applied to the probabilistic analysis of the transmission of information over a channel along which random distortion of the message occurs.
Quantum Information and Quantum ComputingMATH 4782 (3)mathMATH 4782: Quantum Information and Quantum ComputingIntroduction to quantum computing and quantum information theory, formalism of quantum mechanics, quantum gates, algorithms, measurements, coding, and information. Physical realizations and experiments. Crosslisted with PHYS 4782.
- or
Math/Stat Courses
- ororIntroduction to Number TheoryMATH 4150 (3)mathMATH 4150: Introduction to Number Theory
Primes and unique factorization, congruences, Chinese remainder theorem, Diophantine equations, Diophantine approximations, quadratic reciprocity. Applications such as fast multiplication, factorization, and encryption.
Early Preparation
- Fundamentals of programming
- Discrete structures
- Proofs and proof techniques
- Calculus, linear algebra, probability and statistics
- Algorithms and Complexity theory
Knowledge Goals
- Advanced efficient algorithms and their analysis
- Complexity classes, and hardness of computation
- Computational problem solving in selected application domains (e.g. theoretical computer science, an applied computer science domain, or another science with a clear computational component).
Skill Outcomes
- Ability to develop and analyze advanced algorithms taking into account fundamental limits.
- Ability to quantify performance of systems that arise in computer science or other sciences.