I just released the third installment of my free course “Logic and Computational Thinking” on edx.org published by Microsoft (outline below). This is a fundamentals course focusing on the basics of formal logic and associating that learning with computer science. I focused this course on helping the student develop basic skills in formal logic with the goal of helping him or her become stronger in thinking about how to apply logic to programming and other technical development tasks (such as testing and even circuit board design). The course includes case studies, plenty of assessment questions, and a large body of fellow students to bounce ideas off of.
As a part of the course curriculum, I was able to license content from a recent book by Dr. Paul Herrick called Think with Socrates: An Introduction to Critical Thinking published by Oxford University Press—probably the most preeminent publisher of philosophy right now. The value of using Dr. Herrick’s book is that it provides a practical perspective on using logic in real-world scenarios and with Dr. Herrick’s more than 30 years of teaching logic, the book provides a solid foundation to the rest of the material I developed for the course. Dr. Herrick was kind enough to record a few videos with me so you can learn from the author of that text directly.
In the two quarters that I’ve taught the course, it is has been well received by the almost 12000 students that have enrolled and I’ve had enormous joy putting the material together. If you’ve never had a formal course in logic, this free offering is a great opportunity to learn about this very important topic so check it out!
You can learn more about the course and enroll here: https://www.edx.org/course/logic-computational-thinking-microsoft-dev262x-1
Paul
Here’s the outline:
1) Module 0: Introduction to the
course
a) What this course is about
i) Analytic logic and its relation to computer
science
ii) ii. Critical thinking as both a lifestyle and aide
to better programming and testing
iii) iii.
Note: This is not a programming course
b) Let’s get started: critical thinking and logical
reasoning
i) What does it mean to think
critically?
ii) An overview of definition, induction, and
deduction
iii) Computer programming and logical
thinking
2) Module 1: Logic and Computer
Science
a) Formal Logic and Computer
Science
i) Introduction and prolegomena
ii) What is a Turing Machine?
iii) Bits
and Bytes
iv) Algorithms
v) Logic and Computer Science
b) Introduction to Formal Logic
i) Introduction to Logic
ii) Arguments
iii) Statements
iv) Propositions
v) Truth Value
vi) Review Questions
c) Symbolizing and Logical
Operators
i) Symbolization
ii) Introduction to Operators
iii) Negation Operator
iv) Conjunction Operator
v) Disjunction Operator
vi) Conditional Operator
vii) Sidebar:
Operator of the largest scope
viii) Truth
Tables
ix) Review Questions
3) Module 2: Deductive and Inductive
Arguments
a) Types of arguments
i) Arguments again
ii) Review Questions
b) Deductive Arguments
i) Valid and invalid arguments
ii) Soundness
iii) Sound deductive arguments
iv) First two deductive syllogisms
v) Sidebar: formal fallacies
vi) Two
more deductive argument forms
vii) Deductive
arguments and computer programs
viii) Review
questions
c) Inductive Arguments
i) Introduction to inductive
arguments
ii) Strong and weak arguments
iii) Cogency
iv) Determining strength
v) Review questions
4) Module 3: Categorical Logic
a) Introduction to Categorical
Logic
i) What is categorical logic?
ii) Aristotle’s theory of forms
iii) Some, all, and none
iv) Quantity and quality
v) Review questions
b) Categorical form and syllogisms
i) Standard categorical form
ii) The categorical syllogism
iii) Forms of categorical syllogisms
iv) Review questions
c) Venn Diagrams
i) Categorical statements and
validity
ii) Venn diagrams: I and O
statements
iii) Venn
diagrams: A and E statements
iv) Using Venn diagrams with categorical
syllogisms
v) Venn diagrams: testing categorical syllogism for
validity
vi) Review questions
5) Module 4: Introduction to Critical
Thinking
a) What is Critical Thinking?
i) Introduction to critical
thinking
ii) Socrates and critical thinking
iii) Socrates’s definition of truth
iv) The
Socratic Method
v) Two Socratic questions
vi) Applying the Socratic Method to computer
science
b) Inductive Reasoning Applied
i) Forms of inductive reasoning
ii) The logic of science
iii) Confirmation and disconfirmation
iv) Mill’s Method
v) Mill’s method: agreement
vi) Mill’s method: difference
vii) Mill’s method:
variation
c) A Case Study
6) Module 5: The Final Exam