Intro to Logic

Categories:

Recommended

In this course, we’ll spend a few weeks working with proofs which do include all the small, pedantic steps, to instill a mental framework for what a rigorous proof is. But after that, you can relax your proofs to leave out such low-level steps, once you appreciate that they are being omitted.

The need for proofs

The ancient Greeks loved to hang around on the stoa, sip some wine, and debate. But at the end of the day, they wanted to sit back and decide who had won the argument. When Socrates claims that one statement follows from another, is it actually so? Shouldn’t there be some set of rules to officially determine when an argument is correct? Thus began the formal study of logic.

ASIDE: The three fundamental studies were the Trivium grammar (words), logic (reasoning), and rhetoric (effective communication). These allowed study of the QuadTivium arithmetic (patterns in number), geometry (patterns in space), music (patterns in tone), and astronomy (patterns in time). All together, these subjects comprise the seven liberal arts.

These issues are of course still with us today. And while it might be difficult to codify real-world arguments about (say) gun-control laws, programs can be fully formalized, and correctness can be specified. We’ll look at three examples where formal proofs are applicable:

  • playing a simple game, WaterWorld;
  • checking a program for type errors;
  • circuit verification.

Many other areas of computer science routinely involve proofs, although we won’t explore them here. Manufacturing robots first prove that they can twist and move to where they need to go before doing so, in order to avoid crashing into what they’re building. When programming a collection of client and server computers, we usually want to prove that the manner in which they communicate guarantees that no clients are always ignored. Optimizing compilers prove that, within your program, some faster piece of code behaves the same as and can replace what you wrote. With software systems controlling more and more life-critical applications, it’s important to be able to prove that a program always does what it claims.

Category:

Attribution

The source of the flipbook:
Matthias Felleisen , Phokion Kolaitis , Ian Barland , John Greiner , Moshe Vardi. (2019). Intro to Logic. Open Textbooks for Hong Kong. http://www.opentextbooks.org.hk/certificates-and-diplomas/18066

This selection and arrangement of content as a collection is copyrighted by Matthias Felleisen, John Grenier, Moshe Vardi, Phokion Kolaitis and Ian Barland under the Creative Commons Attribution-ShareAlike 4.0 International License (http://creativecommons.org/licenses/by-sa/4.0/). Collection structure revised: January 29, 2008.

VP Flipbook Maker

Would you like to create your own flipbook? You can just upload your PDF document to the online flipbook maker and convert your content into flipbook. Try Visual Paradigm’s online flipbook tool.