CS + Linguistics

Computer Science + Linguistics, BS
for the degree of Bachelor of Science Major in Computer Science + Linguistics

Do you ever wonder how Apple’s Siri, Google’s Translate, or Amazon’s Echo work? Are you intrigued by advances in artificial intelligence, which enable computers to have human-like behavior and understand spoken or written language? Do you have what it takes to design user-friendly computer programs and interfaces using natural language communication? If you answered yes to any of these questions, you should consider the CS + Linguistics degree.

The CS + Linguistics blended bachelor's degree is a partnership between the Siebel School of Computing and Data Science in The Grainger College of Engineering and the Department of Linguistics in the College of Liberal Arts & Sciences. As part of the computing community at Illinois, you will benefit from being part of a top-five-ranked Computer Science program with world-class faculty and research. Learn more about the School's Rankings and Statistics.

Alma Mater statue

Degree Requirements

See requirements and curriculum map

Course Catalog

College of LAS

Learn more and how to apply.

Program Page

The metal Grainger Bob statue sits and reads a book.

Frequently Asked Questions

Explore common questions and answers.

FAQ

Five smiling students in matching grey shirts with arms around each other's shoulders on the Bardeen Quad.

CS Student Life

With 800+ student organizations and many CS Student Groups, there's a community for everyone at Illinois.

Student Organizations

Four women talk and work together.

Undergraduate Research

Participate in high-impact semester, year-round, or summer research, mentorship, and showcase opportunities.

Research Opportunities

People in business clothes stand and talk to potential employers.

Career Services

Explore comprehensive career services supporting internships, job searches, and resume development. 

Career Information

Curriculum Map

The curriculum sequence mapped below is a sample sequence. Students will work with an academic advisor to achieve educational goals specific to their needs and preparation.

  • Course prerequisite chain
  • Immediate prerequisite
  • Credit or concurrent registration required
  • Concurrent registration required
  • Postrequisite course sequence
Computer Science + Linguistics Curriculum Map
First YearSecond YearThird YearFourth Year
Fall First YearSpring First YearFall Second YearSpring Second YearFall Third YearSpring Third YearFall Fourth YearSpring Fourth Year
CS 100 (1)1
Introduction to Computer Science as a field and career for incoming first year and external transfer students in the computer science majors. Overview of the field and specific examples of problem areas and methods of solution.
CS 124 (3)
Basic concepts in computing and fundamental techniques for solving computational problems. Intended as a first course for computer science majors and others with a deep interest in computing. Course Information: Credit is not given for both CS 124 and CS 125. Prerequisite: Three years of high school mathematics or MATH 112.
MATH 221 (4)2, 4
First course in calculus and analytic geometry for students with some calculus background; basic techniques of differentiation and integration with applications including curve sketching; antidifferentation, the Riemann integral, fundamental theorem, exponential and trigonometric functions. Course Information: Credit is not given for both MATH 221 and either MATH 220 or MATH 234. Prerequisite: An adequate ALEKS placement score as described at http://math.illinois.edu/ALEKS/ and either one year of high school calculus or a minimum score of 2 on the AB Calculus AP exam. Class Schedule Information: Students must register for one discussion and one lecture section beginning with the same letter. Engineering students must obtain a dean's approval to drop this course after the second week of instruction.
RHET 105 (4)
Introduction in research-based writing and the construction of academic, argumentative essays that use primary and secondary sources as evidence. This course fulfills the Campus Composition I general education requirement. Course Information: Credit is not given for both RHET 105 and any of these other Comp I courses: RHET 101, RHET 102, CMN 111 or CMN 112. Class Schedule Information: Students whose second language is English should take an English placement test through the Division of English as an International Language, before signing up for rhetoric. Engineering students must obtain a dean's approval to drop this course after the second week of instruction.
LING 100 (3)
Introduction to the theory and methodology of general linguistics; includes the various branches and applications of linguistics. Class Schedule Information:Students must register for one discussion and one lecture section.
LAS 101 (1)3
Design Your First Year Experience orients students to the academic environment at Illinois and establishes a useful framework for engaging in learning both inside and outside the classroom and articulating a purpose for their education. Using design-thinking, students explore campus resources, set goals for their academic, personal and professional development during their first year and make multiple (engagement) maps for reaching those goals. Course Information: Prerequisite: Restricted to first-year students in LAS.
CS 128 (3)
Continuation of CS 124. More advanced concepts in computing and techniques and approaches for solving computational problems. Course Information: Prerequisite: CS 124 or CS 125.
CS 173 (3)
Discrete mathematical structures frequently encountered in the study of Computer Science. Sets, propositions, Boolean algebra, induction, recursion, relations, functions, and graphs. Course Information: Credit is not given for both CS 173 and MATH 213. Prerequisite: One of CS 124, CS 125, ECE 220; one of MATH 220, MATH 221.
MATH 231 (3)
Second course in calculus and analytic geometry: techniques of integration, conic sections, polar coordinates, and infinite series. Course Information: Prerequisite: MATH 220 or MATH 221. Class Schedule Information: Students must register for one discussion and one lecture section beginning with the same letter in Fall and Spring terms only. Engineering students must obtain a dean's approval to drop this course after the second week of instruction.
LING2** (3-4)
Linguistics Breadth Elective
CS 225 (4)
Data abstractions: elementary data structures (lists, stacks, queues, and trees) and their implementation using an object-oriented programming language. Solutions to a variety of computational problems such as search on graphs and trees. Elementary analysis of algorithms. Course Information: Credit is not given for CS 277 if credit for CS 225 has been earned. Prerequisite: CS 126 or CS 128 or ECE 220; One of CS 173, MATH 213, MATH 347, MATH 412 or MATH 413. Class Schedule Information: Students must register for one lecture-discussion and one lecture section.
CS 222 (1)
Design and implementation of novel software solutions. Problem identification and definition; idea generation and evaluation; and software implementation, testing, and deployment. Emphasizes software development best practices￿including framework selection, code review, documentation, appropriate library usage, project management, continuous integration and testing, and teamwork. Course Information: Prerequisite: CS 128; credit or concurrent registration in CS 225. Restricted to majors in Computer Science undergraduate curricula only.
LING 301 (3)
Introduction to concepts and techniques essential for syntactic analysis and description, with special attention to testing analyses and justifying them. Course Information: Prerequisite: LING 100 or consent of instructor.
CS 233 (4)7
Fundamentals of computer architecture: digital logic design, working up from the logic gate level to understand the function of a simple computer; machine-level programming to understand implementation of high-level languages; performance models of modern computer architectures to enable performance optimization of software; hardware primitives for parallelism and security. Course Information: Prerequisite: CS 125 or CS 128; CS 173 or MATH 213; credit or concurrent enrollment in CS 225.
MATH 257 (3)8
Introductory course incorporating linear algebra concepts with computational tools, with real world applications to science, engineering and data science. Topics include linear equations, matrix operations, vector spaces, linear transformations, eigenvalues, eigenvectors, inner products and norms, orthogonality, linear regression, equilibrium, linear dynamical systems and the singular value decomposition. Course Information: Credit is not given for both MATH 257 and any of MATH 125, MATH 225, MATH 227, MATH 415 or ASRM 406. Prerequisite: MATH 220 or MATH 221; CS 101 or equivalent programming experience. Class Schedule Information: Students must register for a lecture, a lab, and a discussion section.
LING 307 (3)
Introduction to the theory of meaning for natural language, including techniques for the description of lexical meaning, compositional determination of phrase and sentence meaning, and pragmatic effects on interpretation in context. Course Information: Same as PHIL 307. Prerequisite: LING 100 or consent of instructor.
CS 341 (4)7
Basics of system programming, including POSIX processes, process control, inter-process communication, synchronization, signals, simple memory management, file I/O and directories, shell programming, socket network programming, RPC programming in distributed systems, basic security mechanisms, and standard tools for systems programming such as debugging tools. Course Information: Credit is not given for both CS 341 and either CS 241 or ECE 391. Prerequisite: CS 225 and CS 233. Class Schedule Information: Students must register for one lecture and one discussion section.
CS 361 (3)9
Introduction to probability theory and statistics with applications to computer science. Topics include: visualizing datasets, summarizing data, basic descriptive statistics, conditional probability, independence, Bayes theorem, random variables, joint and conditional distributions, expectation, variance and covariance, central limit theorem. Markov inequality, Chebyshev inequality, law of large numbers, Markov chains, simulation, the PageRank algorithm, populations and sampling, sample mean, standard error, maximum likelihood estimation, Bayes estimation, hypothesis testing, confidence intervals, linear regression, principal component analysis, classification, and decision trees. Course Information: Same as STAT 361. Credit is not given for both CS 361 and ECE 313. Prerequisite: MATH 220 or MATH 221; credit or concurrent registration in one of MATH 225, MATH 257, MATH 415, MATH 416 or ASRM 406. For majors only.
CS 374 (4)
Analysis of algorithms, major paradigms of algorithm design including recursive algorithms, divide-and-conquer algorithms, dynamic programming, greedy algorithms, and graph algorithms. Formal models of computation including finite automata and Turing machines. Limitations of computation arising from fundamental notions of algorithm and from complexity-theoretic constraints. Reductions, undecidability and NP-completeness. Course Information: Same as ECE 374. Prerequisite: One of CS 173, MATH 213; CS 225.
LING 406 (3-4)
Introduces the field of natural language processing and computational linguistics. Topics include finite-state methods, parsing, probabilistic methods, machine learning in NLP, computational semantics and applications of NLP technology. The course combines linguistic theory with computational modeling. Course Information: 3 undergraduate hours. 4 graduate hours. Prerequisite: LING 100 or LING 400, and CS 225 or equivalent, and STAT 200 or STAT 212 or STAT 400 or CS 361 or equivalent.
CS 421 (3-4)
Structure of programming languages and their implementation. Basic language design principles; abstract data types; functional languages; type systems; object-oriented languages. Basics of lexing, parsing, syntax-directed translation, semantic analysis, and code generation. Course Information: 3 undergraduate hours. 3 or 4 graduate hours. Prerequisite: One of CS 233, CS 240 or CS 340; CS 374; one of MATH 225, MATH 257, MATH 415, MATH 416, ASRM 406, BIOE 210.
LING 415 (3-4)10
Explores the 60-year history of using computers to translate human languages, from the 1954 Georgetown experiment to the present. Explores the dominant symbolic and statistical paradigms that have defined machine translation, and the positive and negative dynamics that human translators have experienced when interacting with machine translation systems. Provides hands-on experience with machine translation today. Course Information: Same as TRST 415. 3 undergraduate hours. 4 graduate hours.
CS 446 (3-4)
Principles and applications of machine learning. Main paradigms and techniques, including discriminative and generative methods, reinforcement learning: linear regression, logistic regression, support vector machines, deep nets, structured methods, dimensionality reduction, k-means, Gaussian mixtures, expectation maximization, Markov decision processes, and Q-learning. Application areas such as natural language and text understanding, speech recognition, computer vision, data mining, and adaptive computer systems, among others. Course Information: Same as ECE 449. 3 undergraduate hours. 3 or 4 graduate hours. Prerequisite: CS 225; One of MATH 225, MATH 257, MATH 415, MATH 416, ASRM 406 or BIOE 210; One of CS 361, ECE 313, MATH 461 or STAT 400.
LING 490 (3-4)
Course provides an opportunity to focus on various subfields of the linguistic sciences, depending on the interests of the faculty and student. Course Information: 3 undergraduate hours. 4 graduate hours. May be repeated as topic varies to a maximum of 9 undergraduate hours or 12 graduate hours. Students may register for up to two sections in the same term. Prerequisite: LING 100, LING 400, or consent of instructor.
16 hours 15-16 hours 14 hours 16 hours 13 hours 16-17 hours 15-17 hours 15-17 hours

Notes

Before reviewing the links, students should find their effective Academic Catalog Year. When clicking any links referenced below that take students to the Academic Catalog Year pages, they should be mindful of which Academic Catalog year is displayed.

  1. This optional course is highly recommended for freshmen, who may use it to help meet free elective requirements.
  2. MATH 220 may be substituted. MATH 220 is appropriate for students with no background in calculus.
  3. LAS 102 may be used for external transfer students. LAS 100 is supplemental course international students take along with LAS 101/102/122.
  4. RHET 105 (or an alternative Composition I sequence) is taken either in the first or second semester of the first year, according to the student's UIN (Spring if UIN is Odd). General Education Elective is taken the other semester. Composition I guidelines can be found at Degree and General Education Requirements under Written Communication Requirement
  5. General education: Students must complete the Campus General Education requirements including the campus general education language requirement.
  6. Additional coursework, subject to College of Liberal Arts and Sciences restrictions to Free Electives, so that there are at least 120 credit hours earned toward the degree.
  7. CS 340 and two (2) CS technical electives (400 level CS courses) can be use to substiute the CS 233 and CS 341 requirements. The 2 technical electives must be distinct from courses used to satisfy other major requirements and can replace Free Electives.
  8. MATH 225 may be substituted.
  9. STAT 200 or STAT 212 can be substituted.
  10. Same as TRST 415.
  11. CS 441 can be substituted.

The code used to present this flowsheet is based on original work shared by the University at Buffalo School of Engineering and Applied Sciences.