Critical thinking through Mathematical reasoning

Years ago I had the luck that I was able to study mathematics at a university for a while. I had to quit due to money reasons, but the short time I was there was enough to give me ways to reason about things which have reshaped my life, and how I view the world.

People seem to typically believe they are using reason to think about things and make conclusions. The sad truth is, we generally aren’t doing that. Properly reasoning about things takes effort, and even when you can formally reach a conclusion, my experience is that it doesn’t always feel correct. While we surely seem capable of reasoning, the fact is that our human brains work more like fuzzy pattern matching, rather than proper reasoning.

It is this “fuzzy pattern matching” way which is used, and abused, by people who want to convince you of lies, for example through marketing or political propaganda.

What a structured way of reasoning provides, is a tool who can help see through a lot of these tricks, and it can help you build more knowledge from previously accepted assumptions. It allows you to think more critically. Critical thinking doesn’t mean you have to automatically disregard everything a certain person, or group of people, claim. What critical thinking means is that you accept that maybe you don’t know something, but you at least have tools which you can use to verify the consistency of what you are being told or assume.

In this article I want to provide a summery of some of these tools and maybe how they can be useful. I do this in the hopes of inspiring people to try them out in real life, and maybe help people become more critical thinkers.

Propositions

It all starts with propositions. A proposition is a sentence who can be either true or not true. For example “1 + 1 = 4”, “14 can be written as the sum of two prime numbers” and “every even number larger than 2 can be written as the sum of two prime numbers” are examples of propositions. But “π is a special number” and “n is a prime number” are not propositions. The first proposition, “1 + 1 = 4”, is obviously not true. The second one is true because 3 + 11 = 14 and 3 and 11 are a prime numbers. The third one is a proposition, it must either be true or not true. But as far as I know, we still don’t know if it is true or not. The other two sentences are not propositions. In the first case, it could be a proposition if we give a specific definition to what it means to be “a special number”, but generally it’s more a subjective thing. The last sentence, “n is a prime number” would be a proposition if “n” had a specific value, but since it doesn’t have this here, this is not a proposition.

Definitions

Here we “defined” what a proposition is. Definitions are important. When defining words, we can use these words to more easily express specific ideas. But beware, this can also be used to confuse our pattern-matching brain. Meanings of words can differ in context, so make sure you know what exactly is being talked about. Even in mathematics itself, the same words can have different, incompatible, definitions. Take for example the set of natural numbers. In the English speaking world, this generally doesn’t include 0. Where I live, it generally does. And that’s just one example.

Logical connections

Basic operators

We also have so called operators who can connect propositions to new propositions. Two basic ones are AND and OR, who both connect two propositions. A AND B will be true if, and only if, both A and B are true. A OR B will be true if, and only if, at least one of the two is true. A typical way to express this, is in a table, for example

+-------+-------+---------+--------+
|   A   |   B   | A AND B | A OR B |
+-------+-------+---------+--------+
| false | false |  false  | false  |
+-------+-------+---------+--------+
| false | true  |  false  | true   |
+-------+-------+---------+--------+
| true  | false |  false  | true   |
+-------+-------+---------+--------+
| true  | true  |  true   | true   |
+-------+-------+---------+--------+

Often, instead of using the labels true and false (which is shorthand for saying “not true”), people often make use of respectively 1 and 0 instead, because it’s easier to see at a glance what’s up.

+---+---+---------+--------+
| A | B | A AND B | A OR B |
+---+---+---------+--------+
| 0 | 0 |    0    |   0    |
+---+---+---------+--------+
| 0 | 1 |    0    |   1    |
+---+---+---------+--------+
| 1 | 0 |    0    |   1    |
+---+---+---------+--------+
| 1 | 1 |    1    |   1    |
+---+---+---------+--------+

Another typical operator, is the NOT operator. This only takes one proposition, and the result is the reverse of the proposition it takes. Behold,

+---+-------+
| C | NOT C |
+---+-------+
| 0 |   1   |
+---+-------+
| 1 |   0   |
+---+-------+

Extending operators

Properly combining propositions like this, gives us a new proposition. Therefor these can be combined too, giving us more complex propositions. As an example, you may have noticed that the word “or” in the human natural language actually has a double meaning. It can mean “at least one or the other”, which our OR operator means. But when people use the word “or”, they can also mean “either one or the other, but not both”. We can express this as well, and is generally called “Exclusive OR”, shortly written as XOR.

+---+---+---------+
| A | B | A XOR B |
+---+---+---------+
| 0 | 0 |    0    |
+---+---+---------+
| 0 | 1 |    1    |
+---+---+---------+
| 1 | 0 |    1    |
+---+---+---------+
| 1 | 1 |    0    |
+---+---+---------+

Of course, this is now a new operator, and the point was that new propositions can be created by using operators to combine propositions. So, is there a way to combine our basic operators AND, OR and NOT into XOR? There is! Let’s try it. When we look at the outcome of our XOR operator, we see the outcome is 1 only when both inputs are different. We can express this with ((NOT A) AND B) OR (A AND (NOT B)). And there are other ways to use these basic operators to get the same outcomes. We can show these have indeed the same outcome as XOR by writing it in our table,

+---+---+---------+------------------------------------+
| A | B | A XOR B | ((NOT A) AND B) OR (A AND (NOT B)) |
+---+---+---------+------------------------------------+
| 0 | 0 |    0    |                 0                  |
+---+---+---------+------------------------------------+
| 0 | 1 |    1    |                 1                  |
+---+---+---------+------------------------------------+
| 1 | 0 |    1    |                 1                  |
+---+---+---------+------------------------------------+
| 1 | 1 |    0    |                 0                  |
+---+---+---------+------------------------------------+

Another important operator is the implication, typically written as an arrow =>. You can read A => B as “if A is true, then B is true”. Note that if A is false, it does not say anything about B, so B can still be both true or false.

+---+---+--------+
| A | B | A => B |
+---+---+--------+
| 0 | 0 |   1    |
+---+---+--------+
| 0 | 1 |   1    |
+---+---+--------+
| 1 | 0 |   0    |
+---+---+--------+
| 1 | 1 |   1    |
+---+---+--------+

Can you figure out how to build a proposition from the operators we’ve seen before, who gives the same outcome? Try it!

Note that in the English language there’s a saying “…if pigs can fly”. It’s a way to say that you won’t do a certain thing; “yeah, I’ll do my homework… if pigs can fly!”, and hilarity ensues. Note that, in a formal sense, nothing has actually being said about wether the person in question will or will not do their homework. After all, the assumption here is that pigs can’t fly, therefor pigs can fly => I'll do my homework, becomes 0 => B. So the truthiness of B, in this example standing for the proposition “I’ll do my homework”, doesn’t change the truthiness of the complete statement pigs can fly => I'll do my homework.

Building further on the implication, we can also have an implication going in both directions, (A => B) AND (B => A). In such a case, we say that A and B are equivalent, and typically use the notation A <=> B.

We have already seen examples of equivalence. When we say that XOR has the same outcome as ((NOT A) AND B) OR (A AND (NOT B)), we are actually saying that they are equivalent. Writing it out (over multiple lines so it remains more readable), gives us

             A XOR B
               <=>
((NOT A) AND B) OR (A AND (NOT B))

On a side note; Sometimes the implication operator is mirrored to point in the other direction, B <= A. Here we can say “B is true if A is true”. Note that B <= A means the same as A => B (note the arrow going from A to B in both cases).

Equivalent forms

The big advantage of writing in a more structured form, is that general rules can be more easily applied. For example, we can easily determine the following is true;

      A => B
       <=>
(NOT B) => (NOT A)

This has some big consequences. For example, we can not simply use an example of something corroborating a proposition as proof for the proposition being true. If we say “All ravens are black”, then we could write this as it's a raven => it's black. But as we just saw, this is equivalent to it's not black => it's not a raven. If a having a black raven is proof for the proposition that all ravens are black, then having a brown writing-desk is also proof for all ravens being black. After all, the proposition that all ravens are black, is equivalent to the proposition that if it’s not black, it’s not a raven. In that sense, a writing-desk would be as much proof of all ravens being black than a raven is, which seems absurd. This is also why, despite popular believe, the scientific method is not about corroborating theories, it’s about falsifying them.

Analogies

“Then you should say what you mean,” the March Hare went on.
“I do,” Alice hastily replied; “at least—at least I mean what I say—that’s the same thing, you know.”
“Not the same thing a bit!” said the Hatter. “You might just as well say that ‘I see what I eat’ is the same thing as ‘I eat what I see’!”
“You might just as well say,” added the March Hare, “that ‘I like what I get’ is the same thing as ‘I get what I like’!”
“You might just as well say,” added the Dormouse, who seemed to be talking in his sleep, “that ‘I breathe when I sleep’ is the same thing as ‘I sleep when I breathe’!”
“It is the same thing with you,” said the Hatter, and here the conversation dropped, and the party sat silent for a minute, while Alice thought over all she could remember about ravens and writing-desks, which wasn’t much.

While not a formal mathematical thing, I do think this is a good time to talk about analogies. In mathematics, we make abstractions. Making an abstraction, is to take out what’s irrelevant, and only leave relevant parts and use that. When we put “All ravens are black” in the form it's a raven => it's black, then we are making an abstraction, not about ravens, but about the fact that this is of the logical form A => B. This means that all rules who apply to A => B will also apply to the reasoning it's a raven => it's black.

Sometimes it’s easier to reason with a specific thing you already know. A good analogy will take something you may find hard to reason about, put it in a more abstract form, then take a different implementation of this abstraction which you find easier to reason about. Analogies always have limits. The rules applying to both cases, are only the rules who apply to the abstraction. When someone uses an analogy, “this is like saying …”, it is important to understand what abstraction they are actually trying to make, and if it indeed fits the specific situation. Similarly, when someone opposes “no, it’s not like… because…”, you should see if they are actually talking about the correct abstraction.

Proofs

Now that we can make propositions that we accept as being true, and know how to use logical operators to form conclusions, we can move to a next concept, proofs. In mathematics a proof is a rigorous way to show if something is true or not, based on accepted definitions and assumptions. When something is proven to be true, there is no doubt left that this is indeed the case. This makes it very different than science or legal issues where proofs aren’t always as rigorous. There are different techniques for proofs, here we show some. A proof in mathematics is generally written as sentences where we follow logical steps to come to a conclusion.

Direct proof

A direct proof is the easiest to understand. We start with what we assume to be true, and using logical steps, we conclude the things we wanted to proof. Here’s an example; Let’s proof that for all strictly positive real numbers a and b, it is true that a < b => a² < b².

Proof: We know that if a < b, then we can multiply both sides of the equation by the same strict positive number, meaning that a² < ab. Similarly we know that ab < b². Therefor, due to the transitive property of ordering, we get that a² < ab < b², and thus a² < b², which is what we wanted to proof.

In this proof, we do make some assumptions. One way to more easily see this, is by trying to find the logical connections that were made here. We start pith the proposition “if a < b, then we can multiply both sides of the equation by the same strict positive number”. Then we make a logical connection. Let’s rephrase our proposition a bit and use a more structured form,

(a < b) AND "for a < b, we can multiply both sides of the equation by the same strict positive number"
        =>
     a² < ab

We also talk about “the transitive property of ordering”. We could try to put that part of our proof in a more structured notation. This takes effort. Actual formal reasoning isn’t something we are very used to, nor is it something we generally do, despite what some people may believe. But by putting or proof in this form, we can easily see what assumptions are being made. In mathematics we have the advantage that everything is eventually build up from some definition. We could try to proof these assumptions based on the definitions of ordering and positive real numbers, only then would our proof be really complete. We won’t do this here, feel free to try yourself, the point of the example here is mostly to show how trying to see the more structured form, can lead to more easily see where there may be possible flaws in reasoning.

It should be noted though, that the proof itself is not this “more structured form”. A proof is a sequence of coherent sentences. This structured form is nothing but a tool to help us analyse what is being said.

Another example of a direct proof, is the proof that 1 = 0.9999.... If you have never been made aware of this, you would probably assume that 0.9999... is smaller than 1, even if it’s only by the tiniest bit. But this is not true, they really are the same number. I will give the logical steps here in structured form, not a formally written proof. While it may not have a lot of extra value here for showing how a direct proof works, it may demonstrate for some people how our mind may sometimes refuse to accept something as truth, even if the proof is right there in front of our eyes.

  a = 0.9999...
10a = 9.9999...   ; we do both sides times 10
 9a = 9           ; we subtract "a" from both sides
  a = 1           ; we divide both sides by 9
  1 = 0.9999...   ; we replace a in the first step with the value of a that we found

Proof by cases

Sometimes it’s hard to find one way to make a proof and it could be helpful to consider different cases. For example “If x = 1 or x = 3, then x² - 4x + 3 = 0.” This could be proven by showing these are the zeros of this quadratic function, but we can do it easier by using cases.

Proof: If x = 1, then x² - 4x + 3 = 1 - 4 + 3 = 0. If x = 3, then x² - 4x + 3 = 9 - 12 + 3 = 0. Therefor if x = 1 or x = 3, then x² - 4x + 3 = 0.

When examining more closely, we notice that we make use of the fact that

(A OR B) => C
        <=>
(A => C) AND (B => C)

Which we already know how to proof. We used tables for this, those too are examples of proof by case.

Proof by contradiction

The proof by contradiction, or my more favourite way of stating it, proof by absurdity, is a way to use logical connections to come to a contradiction, showing that the original propositions could not all have been true.

A known example is the proof that not all numbers are rational numbers. First we have to understand what rational numbers are. We know what so called whole numbers are, they are the things you count with. 1, 2, 3, and so on. But we can also divide numbers, this gives us rational numbers. For example 1/2, 3/4, and so on. The name rational numbers comes from the fact that we are working with ratios of numbers. Whole numbers are also rational numbers, after all each whole number x can be represented as a ratio of 1 by writing it as x/1. We can keep dividing rational numbers in smaller pieces, and we can add pieces together. It seems to make sense then, that any number between two rational numbers must also be a rational number. And yet, the ancient Greeks already knew this was not the case. Again, I will not write a formal proof, but rather I will mix propositions and logical steps through which we come to this conclusion.

If all numbers are rational numbers, then the square root of 2 must also be a rational number. Therefor we can write

a/b = sqrt(2)

Rational numbers are not unique in notation, but we can always write then in simplified form by dividing both sides by the common denominators until they do not have any common denominators any more. Therefor we can say that a and b can be written in such a way that they do not have common denominators.

Next we can

a²/b² = 2
   a² = 2b²

therefor, must be even, and thus a must be even, so we can say a=2k, giving us

   4k² = 2b²
   2k² = b²

But this means that , and thus b, is even, which contradicts the idea that a and b have no common denominators. Therefor the proposition that the square root of 2 is a rational number, can not be true.

In practice

Here we used some mathematical concepts to show how formal reasoning works. But the same techniques can be used outside of mathematics as well. For example; When someone makes a negative blanket statement of a group of people, what are they really saying? Are they saying that this statement is true for all people in this group? I.e. "if part of this group" => "this bad thing is true". Or are they only saying this is true for some of the people in this group. And what are then then concluding must happen? If it’s only true for some people, do they propose to take actions against the whole group of innocent people? And are they saying that this statement is only true for people in this group, or can it also be true for people in another group, maybe the group this person is part of themselves. So what conclusions should we then make about that group?

As mentioned before, despite what many believe, our thinking is generally not very logical. It takes effort to use formal logic to analyse situations, and people with bad intentions have learned tricks to convince people of ideas who simply do not stand up to scrutiny. These tricks sometimes have names, but even then you have to learn them and understand when they are being applied and when not. This can lead to discussions where people dismiss things because they wrongly assume something is a fallacy. The power of using more formal reasoning, at least in my experience, is that you don’t need to study these types or categories of fallacies by name to see when some reasoning is off, you have your own tools to detect them.

But the hardest part I think, is taking up the challenge to confront yourself with your own assumptions. Next time when someone questions a reasoning you make, maybe try to put what you are trying to say in a more formal form. And see in how far it truly stands up to scrutiny.