Course title
Logic and ComputationPre-requisite
Calculus ICourse 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 StatesSchool state
ArizonaSchool / district Address
4801 E. Washington St., Suite 250School zip code
85034Requested competency code
MathDate submitted
Approved
YesApproved competency code
- MTHA
- 4 years of Math
Approved date
Deferred Reason
In order to determine applicability more details of math concepts taught is needed.