Introduction to Logical Thinking — Unveiling the Code of Reasoning

Kevin L Mason Jr.
KismetCreative
Published in
4 min readJul 11, 2023

Introduction to Logic

Welcome to our blog series on logical thinking! In this introductory post, we will dive into the fascinating world of logical reasoning and its crucial role in programming. Whether you are a non-programmer looking to understand the foundations of logic or a seasoned programmer seeking to refresh your understanding, this series has something for everyone.

Data gets it

Laying the Foundation of Logical Thinking

When creating computer programs, developers use programming languages to provide computers with coded instructions to follow. Developers create these instructions by translating logical thinking into a process the computer can read and follow. To understand the logic behind these processes, we break them into statements and evaluate them with conditional logic and truth tables. By the end of this tutorial, you will have a solid understanding of these concepts and their relevance to programming.

Let’s start by exploring what statements are and how they relate to programming.

Statements: The Building Blocks of Logic

In logic, a statement is a declarative sentence that can be either true or false. Think of a statement as a claim or assertion that can be evaluated for its truth value. In programming, statements serve as the foundation for decision-making and problem-solving.

For our example throughout this tutorial, let’s consider the statement: “It is raining outside.”

This simple statement can be evaluated as either true or false, depending on the current weather conditions.

It’s not just raining, it’s pouring

Conditional Statements: Making Decisions

Conditional statements allow us to make decisions and perform different actions based on specific conditions. They form the backbone of logical reasoning in programming.

For example, let’s consider the following conditional statement: “If it is raining outside, take an umbrella; otherwise, leave the umbrella at home.”

In this statement, the condition “it is raining outside” acts as the trigger for the decision-making process. If the condition is true, the action of taking an umbrella is executed. If the condition is false, the action of leaving the umbrella at home is performed.

Truth Tables: Evaluating Statements

Truth tables provide a systematic way to evaluate the truth values of statements and compound statements. They help us understand the logical relationships between different conditions and the resulting truth values.

To construct a truth table, we use logical operators to define comparisons between two or more statements.

Using our example above, “It is raining outside,” we can construct a truth table to evaluate its truth value under different scenarios:

Truth tables are used to “lay it all on paper” and better understand the problems

Compound Statements and Logical Operators

In programming, we often need to combine multiple statements using logical operators. Logical operators include AND, OR, XOR, NOT, NAND, NOR, and XNOR and they allow us to create compound statements with more complex conditions.

For instance, consider the compound statement: “It is raining outside AND I have an umbrella.”

Here, we have combined two statements using the “AND” operator. The compound statement will only be true if both statements are individually true.

To visualize this, we use a truth table, where we can assign “A” to the statement “It is raining outside” and “B” to the statement “I have an umbrella”:

  1. AND Operator (P AND Q): In this case, the compound statement “P AND Q” is true only when both “P” and “Q” are true.
  2. OR Operator (P OR Q): The compound statement “P OR Q” is true when at least one of “P” or “Q” is true.
  3. NOT Operator (NOT P): The “NOT P” statement negates the truth value of “P.”
  4. XOR Operator (P XOR Q): The compound statement “P XOR Q” is true when either “P” or “Q” is true, but not both.
  5. NAND Operator (P NAND Q): The compound statement “P NAND Q” is true except when both “P” and “Q” are true.
  6. NOR Operator (P NOR Q): The compound statement “P NOR Q” is true only when both “P” and “Q” are false.
  7. XNOR Operator (P XNOR Q): The compound statement “P XNOR Q” is true when both “P” and “Q” have the same truth value (either both true or both false).
As logic complexifies, truth tables can get crazy

The truth table shows that when it is raining outside (true), the statement “It is raining outside” is true. Conversely, when it is not raining outside (false), the statement is false.

The truth table demonstrates the truth values of the compound statement based on different combinations of individual statements.

Exercises: Apply Your Logical Thinking

Now, let’s put your logical thinking skills into action with some exercises:

  1. Construct a truth table for the compound statement: “I am hungry OR it is lunchtime.”
  2. Write a conditional statement using the statement “I have completed my work” that triggers the action “Take a break” if the statement is true.
  3. Create a compound statement using the statements “I am tired” and “It is late” using the “AND” operator.

Conclusion

This is part one of our series on Logical Thinking. It is an incredibly versatile way of analyzing elements of reality and can have many application in your life outside of programming.

If you have a project you’re struggling with or are looking for someone to help with your business, look no further than Kismet Creative. Visit our website and contact us now!

--

--

Kevin L Mason Jr.
KismetCreative

Network Engineer I and Software Engineer at Comcast Business