Course title

Logic and Computation

Pre-requisite

Calculus I

Course description

The art and science of computation predates the modern computer by centuries; and in fact is built upon a double foundation of formal logic (going all the way back to authors such as Aristotle) and mathematical reasoning such as set theory; algorithms; and functions. The modern computer is a physical model for repeated uses Boolean logic in the same way that the abacus is a physical model for repeated steps for performing numerical computation.

The goals of this course are to give students (1) a grounding in formal logic from Aristotle through Boole; (2) a foundation in the mathematics relevant to the theory of computation; (3) the philosophical connection between the two; (4) initiation into seeing the world through the lens of computation; which is proving a rethinking of the world on a scale at least as large as the introduction of calculus caused; and (5) an understanding of the limits of formal logic and computation; including the need for heuristics alongside algorithms because of either computational complexity or computational impossibility. All of this is oriented towards the end of getting students to think computationally and algorithmically.

Twenty-five out of a total of 36 weeks of the course are spent on pure logic and the Theory of Computation. These topics are in part demonstrated in the remaining weeks by utilizing programing concepts; principally Java. However; the use of the Java programing language is to help establish these mathematical principles.  For this reason; this course should be considered a mathematics course and not a technology course.

The logic portion includes everything necessary to understand the basic underpinnings of mathematical logic and syllogistic reasoning; including proofs of theorems about logical statements (DeMorgan’s Laws; etc.). The topics from the Theory of Computation include formal languages; regular expressions; deterministic and non-deterministic finite automata; and Turing machines. Along the way; students will employ famous mathematical algorithms; e.g. Euclid’s algorithm for finding the greatest common divisor; and various mathematical topics necessary to understand these algorithms; including modular arithmetic and base systems other than base ten.

School country

United States

School state

Arizona

School / district Address

4801 E. Washington St., Suite 250

School zip code

85034

Requested competency code

Math

Date submitted

Approved

Yes

Approved competency code

  • MTHA
  • 4 years of Math

Approved date

Deferred Reason

In order to determine applicability more details of math concepts taught is needed.

Online / Virtual

No