*As I mentioned, I’ll be posting drafts of various sections of my book here on the blog. This is a rough draft of the introduction to a chapter on logic. I would be extremely greatful for comments, critiques, and corrections.*

I’m a big science fiction fan. In fact, my whole family is pretty

much a gaggle of sci-fi geeks. When I was growing up, every

Saturday at 6pm was Star Trek time, when a local channel show

re-runs of the original series. When Saturday came around, we

always made sure we were home by 6, and we’d all gather in front of

the TV to watch Trek. But there’s one one thing about Star Trek for

which I’ll never forgive Gene Roddenberry or Star Trek:

“Logic”. As in, Mr. Spock saying “But that would

not be logical.”.

The reason that this bugs me so much is because it’s taught a

huge number of people that “logical” means the same

thing as “reasonable”. Almost every time I hear anyone

say that something is logical, they don’t mean that it’s logical –

in fact, they mean something almost exactly opposite – that it

seems correct based on intuition and common sense.

If you’re being strict about the definition, then saying that

something is logical by itself is an almost meaningless

statement. Because what it means for some statement to be

logical is really that that statement is inferable

from a set of axioms in some formal reasoning system. If you don’t

know what formal system, and you don’t know what axioms, then the

statement that something is logical is absolutely meaningless. And

even if you do know what system and what axioms you’re talking

about, the things that people often call “logical” are

not things that are actually inferable from the axioms.

Logic, in the sense that we generally talk about it, isn’t

really one thing. Logic is a name for the general family of formal

proof systems with inference rules. There are many logics, and a

statement that is a valid inference (meaning that it is logical)

in one system may not be valid in another. To give you a very

simple example, think about a statement like “The house on the corner

is red”. Most people would say that it’s *logical*

that that statement is either true or false: after all, either the house

*is* red, or the house *isn’t* red. In fact, most

people would agree that the statement “Either the house is red, or it

isn’t red” *must be* true.

In the most common logic, called *predicate
logic*, that’s absolutely correct. The original

statement is either true or false; the statement with an “or” in

it must be true. But in another common logic, called

*intuitionistic*logic, that’s

*not*

true. In intuitionistic logic, there are three possible truth

values: something can be true (which means that there is a proof

that it is true); something can be false (which means that there

is a proof that it is false); and something can be unknown so far

(which means that there’s no proof either way).

In addition to having different ways of defining what’s true

or provable, different logics can describe different things. Our

good old familiar predicate logic is awful at describing things

involving time – there’s really no good particularly good way in

predicate logic to say “I’m always hungry at 6pm”. But

there are other logics, called *temporal
logics* which are designed specifically for making

statements about time. We’ll look at temporal logics later. For

now, we’ll stick with simple familiar logics.

### So What is Logic?

A logic is a formal symbolic system, which consists of:

- A set of
*atoms*, which are the objects

that the logic can reason about. - A set of rules describing how you can form statements

in the logic (the*syntax*of the logic). - A system of
*inference rules*

for mechanically discovering

new true statements using known true statements. - A
*model*which describes how the atoms and predicates

in the logic map onto a real, consistent set of objects and properties.

The key part of that definition is the

*mechanical* nature of inference. What logic does is

provide a completely mechanical system for determining the truth

or falsehood of a statement given a set of known truths. In

logic, *you don’t need to know what something means in order to
determine if it’s true!*. As long as the logic

*has*a

valid model, you don’t need to know what the model

*is*to

be able to do valid reasoning in that logic.

The easiest way to get a sense of how that can possibly work

is to use an example. We’ll start with one simple logic, and show

how it can be used in a mechanical fashion to deduce true statements

– without knowing what those statements mean. For now, we won’t even

really define the logic formally, but instead just rely on intuition.

Most arguments that we hear day to day are based informally on a logic

called *predicate logic*; to be more specific, they’re

mostly first order predicate logic.

In predicate logic, we’ve got a collection of objects which we

can reason about, which we usually call

*atoms*. To say anything about objects, we use

predicates. Predicates are statements that assert some property

about on object, or some relationship between objects. For

example, if I had a pet dog named Joe, we could make statements

about him like `Dog("Joe")`

,

which would say “Joe is a dog.”. Or we could form statements about

specific relationships: `Likes("Joe",`

is a logical way of saying “Joe

"Rex")

likes Rex”.

We can also form general statements. For example, if Joe likes

all other dogs, we can say that in logic: `(∀x)`

. The

Dog(x) ⇒ Likes("Joe", x)

upside down “A” stands for “for all”; the statement

says “For all x, if x is a dog, then Joe likes x.”

### Inference Rules

Where things get interesting is the inference rules. Inference

rules describe how to perform reasoning in the logic – which is another

way of saying that they describe how the logic can allow you to figure

out what’s true or false, based on reasoning starting from an initial

set of given facts.

Inference rules are usually written as *sequents*,

which we’ll get to in another section; for now, we’ll

stick with informal descriptions.

The simplest inference rules allow you to just manipulate

simple statements. For example, if you know `A ∧`

is true, then you know

B`A`

is

true.

Another group of inference rules combine similar

statements to derive new facts. For example, the most famous rule

of logic is called *modus ponens*: if you know

that the statement `P ⇒ Q`

is true,

and you also know that `P`

is true, then you

can infer that `Q`

must be true.

More interesting rules allow you to do things like work from

the general to the specific: if you know that `∀`

, and “A” is an atom, then you can

x: P(x)

infer `P("A")`

.

Yet other rules allow you to transform statements. For example,

if you know that `∃x : P(x)`

, then

you can infer that `¬∀x: ¬P(x)`

.

With the rules we’ve looked at so far, we can build an example of

what I meant by totally mechanical inference.

Let’s suppose we have a bunch of atoms, “a”,

“b”, “c”, …, and two predicates, P

and Q.

We know a few simple facts:

`P("a", "b")`

`P("b", "c")`

`∀x, y, z: P(x,y) ∧ P(y,z)`

⇒ Q(x,z)

What can we infer using this? Using a general-to-specific

inference, we can say `P("a",`

"b") ∧ P("a", "b")

⇒ Q("a", "c")

Then, we can combine `P("a",`

and

"b")`P("b",`

to infer

"c")

`P("a", "b") ∧`

. (Remember, we’re

P("b", "c")

being totally mechanical, so if we want to use the implication, we

need to exactly match its left-hand side, so we need to do an

inference to get the “and” statement.)

Finally, we can now use modus ponens to infer

`Q("a","c")`

. We

have *no idea* what the atoms a, b, and c are; we have

no idea what the predicates P and Q mean. But we’ve been able to

infer true statements.

So what do the statements mean? That depends on the model. For a given set of symbolic statements, you can use more than one model – so long as each model is valid, the meanings of the inferences will be valid in all models assigned to the statements. (We’ll talk more about models in section …) In this case, we could use several different models; I’ll show two examples:

- “a” could be 1, “b” could be 2,

and “c” could be 3, with P(x,y) meaning “x is

1 plus y”, and Q(x,y) meaning “x is 2 plus y”.

Then we would have used the fact that 2 is 1+1 and 3 is 1+2 to infer

that 3 is 2+1.,/p> - “a” could be my father, Irving;

“b” could be me, and “c” could be my

son Aaron, with P(x,y) meaning “x is the father of

y” and Q(x,y) meaning “x is the grandfather of

y”. Then we would have used the fact that Irving is my

father, and I am Aaron’s father to infer that Irving is

Aaron’s grandfather.

Looks good.

I would say add a quick explanation of the symbols for “not” and “there exists” just as you did for the symbol for “for all”. To be consistent, you should either explain every symbol you use, or assume that your readers already know them all (IMO).

I agree with SciencePundit about defining the symbols. You also use the AND and IF symbol without really saying what they are, I don’t think.

Also, this statement:

Don’t you mean P(“a”, “b”) ∧ P(“b”, “c”) ⇒ Q(“a”, “c”)?

Hey,

New reader, but I like the blog a lot. Hope this isn’t overkill, but I had a bunch of feedback to give on this post. Some of it’s nit-pickery, but I did notice a couple of typos in there that you will want to correct. Sorry if it runs long; my old advisors were terribly brutal about the details when I presented logical work, and it has stuck hard with me.

(In the following, “PX” refers to paragraph X, and “SY” to sentence Y.

P1, S2: “local channel show” -> “local channel showed”

Throughout: following punctuation should almost always appear inside quotes, as, e.g., P1, penultimate sentence: “Logic.” (instead of “Logic”.) This is especially true at the end of sentences, where you should never have two punctuation marks, as in the last sentence of P1 (just end it with “logical.”) This doesn’t hold when you’re using something that is structural to the sentence, like a semi-colon between parts, or when you are doing something like asking a question about a quote, like

Did he say “I will do it”?

A small nit-pick that may not help at all in a general book: in P4, you talk about logic in terms of axioms, but of course we can also present systems in non-axiomatic form (i.e., natural-deduction presentations). While these are equivalent to axiomatic formulations, importantly, we don’t necessarily need axioms, we just need a formal system that takes us from premisses to conclusions. I’m not sure if there’s a nice way to make that distinction, or if it’s even worth it, especially in an introduction, however. I do note that in your list of the 4 components of a logic, in the “So What is Logic?” section, you don’t include axioms there, so it might be confusing to the reader who doesn’t know much about this stuff.

In P5, you distinguish between predicate and intuitionistic logic. The point you make is correct, but the former label is a bit misleading. I would simply distinguish classical from intuitionistic logic. The law of excluded middle holds in classical logic, whether it be propositional or predicate (or otherwise) in style; further, you can always create a predicate logic that is intuitionistic (it just adds quantification to an intuitionist base, just as classical predicate logic is built on classical propositional logic). And you don’t actually need predicates to make the point anyway: you can treat the statement “the house is red” as a simple propositional atom, r, and the law holds as (r or not r). Of course, in your four things a logic will have, you include mappings for the predicates, so maybe you want to ignore this complication, too.

In P6, S3, you should have a comma after “temporal logics” and before “which”. Grammar is mutable, but a basic rule is that “which” always has a comma before it, and if you don’t want the comma, use “that” instead.

In the description of what logic is, you talk about inference rules as taking us from known truths to more truths. However, inference rules actually do a little more than that: they take us from some sentences to some other sentences. Now, IF the previous sentences are true, then so are the latter; but nothing guarantees or requires that the prior sentences ARE true. We can reason logically from false premisses just as well (only we end up with conclusions that are often false as well). In fact, we can even reason from flatly inconsistent premisses: it’s just that they lead to the “anything goes” result that everything follows!

For the example about the universal instantiation rule (forall x P(x) => P(a)), you might want to include a simple gloss in words on what that means.

In your explanation of the numerical interpretation of your example, you have the predicates a bit backward. For this to work, P(x,y) would have to mean “x is y minus 1” and Q(x,y) would have to mean “x is y minus 2” (or reverse the order of what “a,” “b,” and “c” mean to get it to work).

To put it bluntly: what’s the point of this introduction? You certainly make an interesting point about the difference between “logical” and “reasonable”, but your example is quite long relative to your description of what logic is, and it seems to run out of steam by the end (with very little wrap up).

Furthermore, your example introduces a bunch of ideas along the way without any visual cues, so it’s very difficult to scan the introduction without getting lost in the symbols. Also, I agree with #1 that you should define your symbols or assume readers know them already. Given the content, I imagine that readers don’t know all the symbols, which brings me to my second point…

I think there is absolutely no reason to introduce any sort of formal syntax in your introduction. I can’t imagine any reader that is learning about logic would have an easy time understanding modus ponens without any discussion of material implication. Keeping the discussion informal (and this means NO symbols) forces descriptions that avoid ambiguity created by using syntax that an uninformed reader would not understand. To use another example, you introduce predicates in terms of the common functional syntax, e.g. P( a, b, c ), but you never describe what this syntax means and why we would want to use it.

Also, what I feel this introduction lacks most is a motivation for why logic is useful/important. Great, so we have a mechanical way of deriving truths, but why do I care? If anything, this seems rather inefficient at first glance. Given how much you think the mechanical nature of logic is important, I’m surprised there is no mention whatsoever about the history of logic such as Hilbert’s program or examples such as axioms in Euclid’s geometry.

You don’t really talk about proofs (which is certainly a key motivator) and it seems like some discussion of consistency is in order (otherwise logic is rather pointless).

The first few paragraphs are great, but I think the readers you seem to be targeting would lose interest rather quickly. I am personally very interested in logic and what generally makes me retain interest in your blog posts is the intriguing topic, the clarification you provide, and pointing out common [interesting] mistakes people make. Your first point about reasonable vs. logical does exactly that, but unfortunately the intro goes somewhat downhill from there.

Hope that helps– I think your writing style has potential for good material about logic, but you sort of betray your own style.

What Martin said in his #4. Also, when you say:

“A set of

atoms, which are the objects that the logic can reason about.”someone who doesn’t already know what you’re talking about (which is your audience, right?) would probably think you were talking about (what we would call) the

domain(which is actually part of the model). You might want to say more about how you are using the term “object” here, and in what sense “logic can reason about” such things, which is not at all clear from what you say here.Oh, about Mr. Spock. Of course you’re right that that use of “logical” is unfortunate. But it’s worse than that, as I recall, given that he often wasn’t even being

reasonable. Like when he would say something like “Logically, the probability of that is a mere 7.2 percent” about something which wasin no wayquantifiable to that degree of precision. I guess he never read your post on significant figures.a) Words very often has multiple valid meanings: ‘logical’ does not just mean complying to a formal system of logic. Taking a quick look at the OED, it has been in use since the 17th Century to mean ‘Characterized by reason; rational, reasonable’. The term logical has always had both a formal and a colloquial meaning, and neither is particularly older than the other. Saying that Spock is using it wrong is sort of like complaining that the Civil Rights Movement used the word ‘integration’, when we all know took very few sums under curves.

b) To get extremely nerdy: When Spock talks about ‘logic’, he is talking about a particular religious concept that is deeply ingrained in Vulcan culture. Vulcans are prone to fits of emotion, and are far stronger than humans, and as a result their religion emphasizes the suppression of emotion and the importance of good justification for actions. The idea of ‘logic’ corresponds to something like a purity of thought, reason untainted by emotion. When Spock talks about ‘Logic’, imagine it like a Muslim talking about ‘Justice’, which is them attempting to translate ‘Adalah’.

@ Lowk: You certainly make a valid point about the dictionary definition, but it seems there should be some distinction between the two, since MarkCC’s original statement seems intuitively right in this context. However, the dictionary definition for reasonable (and the example given) create a bit of confusion.

1. agreeable to reason or sound judgment; logical:

a reasonable choice for chairman.Clearly, reasonable and logical are synonyms, but now that I look at what MarkCC wrote again, he thinks that reasonable means “correct based on intuition and common sense” (which is the same as this definition)

I’m going to go further than Lowk and say that the issue is that the formal/mathematical meaning is very much subsumed by the other meaning. The logic that is implied by the primary meaning of “logical” is whatever logic people tend to reason with (i.e. intuition, which is almost certainly not even a logic).

…which kind of brings up a bigger point: I don’t think there are any words in the English language that commonly mean (to a non-logician) what you here mean by “logical.” That’s why I (and clearly others too) fell into the same trap you fell into– you are writing about formal logic and use the word logical, so we assume that the two are related, but they’re not in their common usage, which is why common usage is so dangerous when trying to be “logical.”

This, in retrospect, makes my previous comment about motivation for logic that much more valid. One of the reasons you want to be able to do things mechanically is because that is more verifiable and you are less likely to make mistakes that go unnoticed. By breaking down a complex idea into simple steps, it’s much easier to tell if it’s correct or not (i.e. derivable from your axioms).

Thanks for all the comments!

I am working to try to restructure it and reduce the dryness of it. This is just a first draft, and my hope was that I could get some hints from the comments – and that’s definitely working!

Some of the problems that you all have complained about are a result of seeing this out of context. In the actual book, the previous chapter goes through an informal mathematical construction – showing how you build the objects that you’re working with using sets, and how you describe their behavior using logic. The motivation for why you should care about logic is presented primarily in that chapter – but your comments are all absolutely correct that I should reiterate it here, albeit in a shorter form.

Anyway.. Thanks for all the comments, and keep ’em coming!

Great book project. I am going to follow it from now on – it looks interesting!

I think the confusion you describe here goes back to the ancient times. For example, the lists of “logical fallacies,” frequently used in our days to fuel flame wars, typically include a bizarre mixture of formal logic and human reasonableness. The ancients can be forgiven for thinking there can be only One Right Logic, or One Right Geometry for that matter – the Euclid’s one, of course. You may want mention the ancient roots of equating one’s set of math axioms and conclusions with reasonableness, justice, and other human virtues.

I think it’s unfortunate that you criticize the use of “logical” to mean “reasonable”, which, as pointed out by others, is perfectly correct and has been done for many years. It seems that the use of logic as you define it would require that your introduction actually be true.

Your quibbling about the common use of the word “logical” to connote that which is reasonable reminds me of the adage from Lowry’s

The Giver, and I am paraphrasing despite the quotation marks, ~”We must have precision in language.”Constructive criticism: Unless you get some philosophy professors teaching symbolic logic to adopt it as required reading, I don’t anticipate your sales will be strong.

Re #12:

When I started this blog, I thought that it probably wouldn’t last more than a week or two, and that I’d be lucky if I got a couple of dozen people to read it. Now, I consistently get 3000 readers per day. I never would have dreamed that there was an audience that size for my math ramblings!

So I don’t even attempt to predict whether the book will sell well or not. The publisher clearly thinks it’s got a chance. And I’m working very hard to try to produce something that people will enjoy reading.

This is a very rough draft of one of the hardest parts of the book to write. The whole reason that I posted it was to get exactly the kinds of negative feedback that many of the commenters have provided. I knew that this section wasn’t flowing the way I want it to, and I’m still not sure of how to fix it.

As far as quibbling about the meaning of logical… I’ve got my own strong opinion about how the word should be used. You don’t have to agree with me. But I *still* hate the way that Star Trek uses “logical” to mean things that are anything but logical. And I think that using that as a starting point is an engaging way of starting the chapter. If I can make the rest of the chapter read as entertainingly as the first couple of paragraphs, I’ll be incredibly happy, even if people think I’m being overly strict about definitions.

I always find that rule difficult to follow, I suspect as the result of years of typing string literals. If I’m quoting something, and the original

didn’thave a period at the end, it just seems wrong to put one in, even if it comes at the end of my sentence.Star Trek uses “logical” to mean approximately what Sherlock Homes meant by “logical.” It is a character- and plot-driven device. Not that I’m saying that “Bones” = Dr. Watson or that Uhuru = Irene, or that Starfleet Command is on Baker Street.

My suggestion being to NOT apply Law of the Excluded Middle to “logical”, but instead to consider its casual and imprecise use in entertainment genres including Science Fiction and Mystery. And that SOME kind of “logical” is what divides Science Fiction from Sci-Fi.

I agree with the comments about Spock and logic made in the comment section. It’s really off-putting to say that the FICTIONAL show Star Trek used the word “logical” incorrectly, when it really just did so for theatrical reasons, and the word does mean “reasonable” in everyday usage. Words have more than one meaning. In my opinion, they SHOULD have more than one meaning. To say that they shouldn’t have used the word “logical” on Star Trek in that way, basically indicates a condescending, holier-than-thou attitude to people who do use it that way.

[Logic is a name for the general family of formal proof systems with inference rules. ]

Even in the technical sense of the word, that doesn’t quite work. Fuzzy logic falls under the technical sense of the word “logic” and very rarely deals with formal proof systems (Zadeh even wrote a paper where explained that in fuzzy maths, the notion of proof comes as a secondary notion… unlike crisp maths). Does a fuzzy logic expert system formally prove things? No. Do most papers on fuzzy logic concern formal proofs? Well, they may prove something, but they don’t generally aim at developing a structure for proofs.

[To give you a very simple example, think about a statement like “The house on the corner is red”. Most people would say that it’s logical that that statement is either true or false: after all, either the house is red, or the house isn’t red.]

I don’t think most people would actually agree here. Foregoing the physics definition of red as a certain wavelength of light, most people, I believe, would view the color red as a perception. There exist different shades of red. So, it doesn’t make sense to say that a red shirt is as red as red hair or a darker red house. Plus, one side of the house could be red and another side white. So, is the house red? I think a better example of a statement working out as either true or false would come as something like “The batter hit a homerun.” Or “She went shoe shopping.” Or something where “shades” of it at least come as much harder to think of than examples like “The brick is red.”

I think that this is a logical way of explaining 😉

I mean reasonable!

For the critics: I think opening about Spock is just a way to draw readers into it. Is there any other logical (reasonable, I mean) reason to delve into a book on logic? And in math, distinction in words is key…

-Eric

Software Engineer