# The Major in Logic and Computation

Director: Professor Smith

Office: Baker Hall 161C

Email: joelms@cmu.edu

Logic and Computation is a B.S. degree.

The course requirements for the major consist of seven core courses (including one seminar) and four electives. The core courses provide comprehensive background in logic, computability, and analytic philosophy.

In their freshman and sophomore years, students are expected to take four courses that provide preparation in computer science, mathematics, and statistics: 15-112 Fundamentals of Programming and Computer Science, 21-127 Concepts of Mathematics, 36-201 Statistical Reasoning and Practice and 80-211 Logic and Mathematical Inquiry.

Students should also plan to complete Computer Science courses 15-122 Principles of Imperative Computation and 15-150 Principles of Functional Programming before their junior year.

80-310 Logic and Computation and 80-150 Nature of Reason must be taken no later than the fall of the junior year.

NOTE: With suitable planning and advice from the program director, it is possible to complete the program in two years, beginning in the junior year.

In their senior year, students present and discuss their research in 80-511 Thesis Seminar.

All courses, if taken at CMU, must be taken for a letter grade and passed with a grade of "C" or above.

## Curriculum

Logic and Computation is a B.S. degree. In their freshman and sophomore years, students are expected to take three courses that provide preparation in computer science, mathematics, and statistics: 15-110 Principles of Computing, 21-127 Concepts of Mathematics, 36-201 Statistical Reasoning and Practice. 80-211 Logic and Mathematical Inquiry is part of the major's Core Requirements, but should be taken no later than the spring of the sophomore year. This also applies to the computer science sequence 15-121 and 15-150/15-211.

NOTE: Students should complete the prerequisites before their junior year. It is strongly recommended that students take 80-211 Logic and Mathematical Inquiry no later than the spring of their sophomore year and, if possible, also 15-121 and 15-150 /15-211 . However, with suitable planning and advice from the program director, it is possible to complete the program in two years, beginning in the junior year.

The course requirements for the major consist of seven core courses (including one seminar) and four electives. The core courses provide comprehensive background in logic, computability, and analytic philosophy. 80-310 Logic and Computation and 80-150 Nature of Reason must be taken no later than the fall of the junior year. Four advanced electives are chosen in the area of focus, and should support independent research towards fulfilling the senior thesis requirement. In their senior year, students present and discuss their research in 80-511 Thesis Seminar.

**Prerequisites (31 units)**

15-112 Fundamentals of Programming and Computer Science (12 units)

21-127 Concepts of Mathematics (10 units)

36-201 Statistical Reasoning and Practice (9 units)

**Logic and Computation Core (65 units)**

80-150 Nature of Reason (9 units)

80-211 Logic and Mathematical Inquiry (9 units)

80-310 Formal Logic (9 units)

80-311 Computability and Incompleteness (9 units)

15-122 Principles of Imperative Computation (10 units)

15-150 Principles of Functional Programming (10 units)

80-511 Thesis Seminar (9 units)

**Logic and Computation Electives (36 units)**

Bearing in mind prerequisites, Logic and Computation majors must complete four advanced courses in areas that use logical and computational tools, such as philosophy, computer science, linguistics, mathematical logic, psychology, or statistics. The sequence of courses, mostly at the 300-level, must be selected in consultation with the program director.

## Sample Curricula

Here are five samples of Logic and Computation curricula (beyond the core courses), each reflecting a different emphasis.

**Sample 1.** A student interested in Computer Science might take the following courses:

80-315 Modal Logic

80-413 Category Theory

15-312 Foundations of Programming Languages

15-317 Constructive Logic

**Sample 2.** A student interested in Language and Information Technology might take the following courses:

80-280 Linguistic Analysis

80-281 Language and Thought

80-381 Meaning in Language

80-383 Language in Use

80-580 Seminar on the Philosophy of Language

**Sample 3.** A student interested in Artificial Intelligence and Cognitive Science might take the following courses:

80-313 Philosphical Logic

80-314 Logic and Artificial Intelligence

80-315 Modal Logic

80-411 Proof Theory

85-412 Cognitive Modeling

**Sample 4.** A student interested in Logic and the Foundations of Mathematics might consider the following courses:

80-254 Analytic Philosophy

80-312 Philosophy of Mathematics

80-365 Ramsey

80-411 Proof Theory

80-413 Category Theory

**Sample 5.** A student interested in Methodology might consider the following courses:

80-220 Philosophy of Science

80-221 Philosophy of Social Science

80-321 Causation, Law, and Social Policy

36-309 Experimental Design for Behavioral and Social Sciences

Logic and Computation Degree Requirements (min.) 360 units

## Logic and Computation as a Second Major

The Logic and Computation major is also suitable as a second major for students in H&SS or for students in other colleges within the university. Non-Dietrich College students interested in an additional major in Logic and Computation need to take only those courses in the Dietrich College General Education Program that are prerequisites to courses required in the major; all other Dietrich College General Education requirements are waived for these students. Depending on the student's back-ground, the requirements of the second major in Logic and Computation can be fulfilled with as few as five additional courses. However, the department limits the courses that may be ‘double counted'; the core courses in the Philosophy department may not be double counted.

## The M.S. Program in Logic and Computation

The Department of Philosophy also offers a graduate M.S. degree in Logic and Computation, which culminates with the writing of a master's thesis. It is ordinarily a two-year program, but students in the Logic and Computation major are able to complete the additional requirements in one year. Interested students are invited to contact the department for further information and apply to the program in their senior year.

## Resources for Current Majors

The following links are for students currently enrolled in the program.