Core Curriculum
Core Curriculum (2006-2007)
This core curriculum is available to undergraduates who are declared before the end of Autumn Quarter 2007-2008. The core was revised for
2007-2008 and again for
2008-2009. In
general, students are not bound by changes in requirements that are
instituted after they declare. Earlier versions of the core can be
viewed at the
Stanford
Bulletin site, in the Symbolic Systems section for each year. For both the core and concentrations, discontinued courses are generally listed as options for a few years after they
were last offered, for the benefit of students who have already taken those courses. NOTE
that all core
courses must be passed with a C- or better to complete the major.
Students who get lower than a C- in a core course should contact the
program director or associate director to discuss whether they should
continue
in the program.
- Cognitive Science
- Introduction to Cognitive Science (Sym Sys 100)
or one of the following:
- Phenomenological Foundations of Cognition, Language, and
Computation (CS 378)
- Introduction to Computational Linguistics (Ling 180)
- Natural Language Processing (Ling 280/CS 224N)
- Language and Thought (Psych 131)
- Birds to Words: Cognition, Communication, and Language
(Psych 137)
- The Neural Basis of Cognition: A Parallel Distributed Processing Approach (Psych 209A)
- Computer Programming*
- Programming Methodology (CS 106a) and Programming
Abstractions (CS 106b); or Programming Methodology and Abstractions
(Accelerated) (CS 106x)
- Programming Paradigms (CS 107)
- Discrete Structures
- Discrete Structures (CS 103b)
or Discrete Structures (Accelerated) (CS 103x)
- Logic
- (a) Basic Concepts in Mathematical Logic (Phil 150)
(formerly Phil 159) or (b) Basic Concepts in Mathematical Logic
(Phil 150X) (formerly Phil 159X) and either Discrete
Mathematics for Computer Science (CS 103A) or Discrete
Structures (Accelerated) (CS 103X)
- First-Order Logic (Phil 151) (formerly Phil 160A)
- Probability
- One of the following:
- Probability, Induction, Statistics (Stat 121)
- Theory of Probability (Stat 116)
- Statistical Methods in Engineering and the Physical
Sciences (Stat 110)
- Probabilistic Analysis (Management Science and
Engineering 120)
- Introduction to Probability and Statistics (EE 178)
- Introduction to Probability Theory (Math 151)
- Introduction to Probability and Statistics for Engineers
(CME 106/Engr 155C)
- Philosophical Foundations
- An introductory course in Philosophy, to be taken prior to
Phil 80, from among the following:
- God, Self, and World (Phil 10)
- Introduction to Moral Philosphy (Phil 20)
- Introduction to Political Philosophy (Phil 30)
- Introduction to Philosophy of Science (Phil 60)
- Modern Philosophy, Descartes to Kant (Phil 102)
- The Fate of Reason (IHum 23A and 23B -- must complete
both)
- Mind, Matter and Meaning (Phil 80)
- Cognitive Psychology
- Introduction to Cognition and the Brain (Psych 55) or
Introduction to Cognitive Psychology (Psych 40)
- Formal Linguistics
- Introduction to Syntax (Ling 120)
- One of the following:
- Introduction to Linguistic Meaning (Ling 130a)
- Introduction to Lexical Semantics (Ling 130b)
- Introduction to Semantics and Pragmatics (Ling 230a)
- Artificial Intelligence
- Introduction to Artificial Intelligence (CS 121)
or Artificial Intelligence: Principles and Techniques (CS 221)
- Turing Computability
(May be fulfilled by a course taken for another requirement in
the major)
- One of the following:
- Discrete Structures (CS 103b)
- Introduction to Automata and Complexity Theory (CS 154)
- Computability and Logic (Phil 152) (formerly Phil 160B)
- Introduction to Cognitive Science (Sym Sys 100)
- Advanced Small Seminar
(May be fulfilled by a course taken for another requirement in
the major)
- an upper division, limited-enrollment seminar drawing on
material from other courses in the core. Courses listed under Symbolic
Systems Program offerings with numbers between SSP 201 and 209 are
acceptable, as are other courses which will be announced at the
beginning of each academic year. A listing for the current academic
year appears here.
* NOTE: A score of 4 or 5 on the Advanced Placement Computer Science A
or AB test can substitute for CS 106A provided that the Computer
Science Department approves the student for placement into CS 106B. The
Computer Science Department generally discourages students from
skipping courses in the introductory programming series, however. In
exceptional cases, students may, after consulting with instructors for
the CS 106-107 courses, elect to skip 106A&B/X entirely and go
directly into 107,
with the stipulation that a more advanced course must then be taken
in
addition to the other requirements in the Symbolic Systems major.
Any such course
must be approved by Symbolic Systems staff and should generally be more
a more advanced course taught in the Computer Science Department.