# Boolean algebraic expression vs Propositional logic expression

There is a lot of similarity between Propositional logic and Boolean algebraic expressions.

Similar aspects :

1) Both has variables of two states.

2) Operations of Boolean algebra and propositional logic are similar.

3) Simplification of formula expressed in logic can be minimized using Boolean algebra and vice versa.

My doubt is are they both same? If same, why studying differently? I mean why can't Propositional logic can be directly applied to digital logic instead of introducing Boolean algebra again(academically)?

• Considering algebraic structure, both are Boolean algebras. Propositional logic has applications in logic and the two-element Boolean algebra that you mention has application in circuit designing. You can read this for more info : en.wikipedia.org/wiki/Boolean_algebra_(structure) Aug 18 '15 at 4:42

They are not the same, but I don't blame you for thinking that they are. The reason why it doesn't seem clear that they are the same is that you've only seen one example of each.

So let's step back, define them separately, and then look at some interesting examples.

Propositional logic is a branch of mathematics that studies propositions, their truth or falsity, and how they combine.

What you probably think of as "propositional logic" is actually just one kind of propositional logic, namely, classical logic. However, this is not the only kind of classical logic and not the only one that is interesting in computer science.

Some theories are built on top of classical logic. Presburger arithmetic, for example, is the theory of natural numbers with addition. Tarski arithmetic is the theory of real closed fields. First-order logic is the theory of quantified variables over non-logical objects.

You can think of these logic systems as types of propositional logic, with more axioms to deal with the extra stuff. Many constraint-type problems are expressible in this framework; you can look up satisfiability modulo theories for more information on how this is used.

But there are also propositional logics that are not "classical". One example of a non-classical logic is intuitionistic logic. This is a logic that models constructive proofs, which is interesting because constructive proofs are the same thing as well-behaved computer programs. ("Well-behaved" in this sense means there is no unbounded recursion.) They are also the basis for modern type systems, such as that of Haskell.

Constructive proofs (e.g. pick any proof from Euclid's Elements) are implementable as computer programs. Given some geometric objects as input, you could implement the proof (at least in principle) as a computer program that performs the construction.

You can't do that with non-constructive proofs. Let's look at an example to see what I mean. I'll prove that there are two irrational numbers, $$a$$ and $$b$$, such that $$a^b$$ is rational.

Consider $$z = \sqrt{2}^\sqrt{2}$$. This number is either rational or irrational.

Case 1: If $$z$$ is rational, then set $$a = b = \sqrt{2}$$, and the theorem is proven.

Case 2: If $$z$$ is irrational, set $$a = z$$ and $$b = \sqrt{2}$$. Then $$a^b = 2$$ and the theorem is proven.

QED

The reason why this proof isn't constructive is that it relies on the law of the excluded middle; $$z$$ must be either rational or irrational, but we don't (and, in a sense, can't) actually test which of them is true.

Intuitionistic logic systems tend to give you proof systems that are decidable. This is an extremely important practical concern. If you consider, for example, the Java bytecode verifier, or the type system for a programming language (both of which prove that some program is type-correct), they must terminate with an answer, so they must be based on a decidable proof system. By allowing propositions that are neither provable nor refutable, you avoid Gödel-like incompleteness.

That's just one example, of course. Other non-classical propositional logics include modal logic (which can be used to model situations where you have multiple agents who know different things; think about network protocols), and temporal logics (where the truth or falsity of a proposition may change over time).

The thing that connects all of them is the notion of a "proposition". Propositional logic can be thought of as the study of a family of logic systems, all of which deal with the notion of a mathematical statement that has a "truth"-type judgment.

Boolean algebra, on the other hand, is a purely algebraic system, characterised by a set of axioms. Saying "Boolean algebra" is like saying "group" or "field" in abstract algebra. Classical propositional logic satisfies the axioms, but so do other mathematical structures.

The subsets of a set $$S$$, for example, form a Boolean algebra; with the "not" operator corresponding to "set complement", "and" corresponding to "set intersection", and "or" corresponding to "set union". You can think of "true" as being $$S$$ and "false" as the empty set, but these are not the only "truth values" which the system models.

Lattices form Boolean algebras, and some lattices are important in computer science (e.g. Scott domains). Moreover, some important non-classical logic-like systems naturally form Boolean algebras, such as fuzzy logic.

So what I hope you can see is that while the two notions are related (some Boolean algebras model some propositional logics), they are not exactly the same thing. How they differ is part of what makes them interesting.

• The paragraph on "Intuitionistic logic systems tend ..." is wrong to misleading at best. 1) They don't tend to be decidable unless you mean proof check is decidable in which case so do classical systems. Generally intuitionistic systems are equiconsistent with their classical counterparts and you can convert classical statements into equiprovable forms in an intuitionistic logic via something like double negation translation. 2) Type checking being decidable doesn't avoid Godel-like incompleteness. You can apply Godel's proof just fine to any intuitionistic logic (such as Heyting algebra)
– Jake
Apr 29 '20 at 21:06
• So... I wrote this 5 years ago, and I'm honestly not sure what I meant by that. I think what was in my brain at the time was that if you need a decidable system (e.g. you're implementing a bytecode verifier or type checker), you want decidability, and you should use an intuitionistic logic. Apr 30 '20 at 4:50

You are cheating a bit by saying "Boolean algebraic expression" and "propositional logic expression" instead of "Boolean algebra" and "propositional logic". A Boolean algebra is a model of propositional logic, just like a Heyting algebra is a model of intuitionistic propositional logic. The main reason why some models are not Boolean algebras is that Boolean algebra refers to the structures defined within ZFC set theory (or any other given set theory), but it is possible to construct models which are only "meta" Boolean algebras, i.e. which have all the operations and first order properties of a Boolean algebra, but can't be proved to be isomorphic to a ZFC-defined Boolean algebra. This is actually more important for intuitionistic propositional logic, because people there have a more natural tendency to work outside of ZFC.

I intent to rewrite this answer later, give some references, explain it on a more practical level, explain the relation to the fact that Boolean and Heyting algebras are also partially ordered structures, and maybe also try to engage with the "Boolean algebraic expression" view intended and suggested by the question.

• Is it correct to say that if Boolean algebra is a model of a logic then this logic is a propositional logic? When you say meta Boolean algebra, you mean abstract? You seem to put a stress on intuitionistic propositional logic: does it suggests there are intuitionistic logic which are not propositional? (ex. order higher than one) Apr 29 '20 at 20:17
• @Hibou57 I don't mean abstract when I say meta. (However, often those meta models are very hypothetical and even worse than abstract. But not always, sometimes they are just: I really mean this (even if vague), and not its translation into ZFC.) By "meta", I just mean outside of ZFC set theory. For example, if you have a model of ZFC+some large cardinal axiom, then that model certainly cannot be defined within ZFC. But it can still be a "meta" model of a first order theory. ("meta", because the definition of being a model might also include the requirement to be defined within ZFC.) Apr 30 '20 at 10:14

I would say an important difference is at least: one cannot add an axiom to Boolean algebra, while one can add one or multiple axioms in propositional logic, although there is not that much one could add since all consistent and interesting axiom set is already known (modulo their interpretations).

— Edit —

Yesterday I thought about two other important ones

Unless I’m wrong, a proposition is not necessarily reducible to True or False, while a Boolean expression, is. This is so, although both evaluate to the same domain, the domain they reduce to is not the same: Boolean for Boolean algebra, proposition (including truth judgment) for proposition calculus. The difference is that a Boolean is just a value in a set of two, while a proposition typically has a meaning attached to it, and this meaning would just vanish if it was reduced to True or False (it can still prove to be tautological). Evaluation and reduction are not the same. Everyone understands evaluation, but the reduction is less common, so I would say it is like a rewriting. When one writes P, it means P, not True or False (*), although P may be True or False. While when one writes True or False or a Boolean expression, it means True or False, because that is the only thing of interest, in Boolean algebra.

(*) One would not be happy if someone was to replace his/her P with a Boolean unless he/she is doing Boolean calculus in proposition calculus (which is possible too). But one would be very happy to witness that P may be replaced by Q, as an example, showing P and Q means the same somehow. Anyway, deriving True or False from a proposition, would be useless: what one wants, is a new valid proposition.

Also, I know some logic may have non‑logical constant or variable, but I’m unsure this is the case with proposition calculus. I guess yes, but I’m not sure. If it is indeed this way, then this is another difference: there are no non‑Boolean variables or constants in Boolean algebra.

I came to this question because I was struggling with the same question as the OP, but after reading the answers I still didn't feel like I understood the difference. After struggling with it for a while, I think I've got an answer that satisfies me, so I thought I'd share it.

I think the difference (or at least a difference) is that in boolean algebra the variables are free to take on any value. An atomic proposition's truth value depends on its meaning, and a composite proposition's truth value depends on the values of the constituent atomic propositions, which may be constrained depending on their meaning. For example, the proposition P:"x=0" depends on the value of x and may be true or false. The proposition Q:"1=2" can only be false, and the proposition R:"1=1" can only be true. The composite proposition (P∧Q)∨R is true when the atomic propositions P, Q and R have the meanings defined above. The value of the analogous boolean algebra expression pq+r depends on the values of p, q and r, which are free to take on 0 or 1, and the resulting values of the overall expression can be evaluated by a truth table. The truth of the proposition as defined above can also be evaluated in a truth table, but some of the rows are missing because the atomic propositions can't take on those particular values due to their meaning.

p q r pq+r     P Q R (P∧Q)∨R
0 0 0   0
0 0 1   1      0 0 1       1
0 1 0   0
0 1 1   1
1 0 0   0
1 0 1   1      1 0 1       1
1 1 0   1
1 1 1   1


In the above, I've called P a proposition, but actually it's called a formula. It's not a proposition until the value of x is fixed so that P has a definite truth value. But for the purposes of trying to evaluate the potential truth value of a propositional formula, it helps me to think of a formula like P as a "variable proposition" whose value is free to vary in the truth table.