Re: The BOOLEAN data type - What is really Boolean and what is not?

From: Bruce Rennie <bruce.rennie_at_shell.com.au>
Date: 26 Apr 2003 07:04:07 -0700
Message-ID: <8d821729.0304260604.5780c387_at_posting.google.com>


Costin Cozianu <c_cozianu_at_hotmail.com> wrote in message news:<b8cocp$8q4qk$1_at_ID-152540.news.dfncis.de>... [lots of stuff snipped...]
>
> Any formalism is as good as the quality of the solutions it brings to a
> targeted domain. It's true that for logic circuits you probably need to
> have a proper boolean algebra.

Probably? For the kinds of circuits (technology) that are built today, I would say essential. That of course doesn't mean that other developments either past, present or future won't or can't bring changes. Analog computers are still being used today in various areas of research - however, the mathematical theory on which they are based is sound and as far as I know complete and logical.

>
> For the purpose of constructing type theory, which has its importance
> in, it has been observed that for example Tertium Non Datur ( a \/ (!a)
> = 1 ) is unnecessary or even harmful (it leads to contradictory proofs),
> therefore it is not accepted.
>

We are dealing here with Boolean values and adding something to them. If this added something contradicts the rules of the algebra (axioms) then it can't be added without causing problems and misunderstandings.

> Therefore it is true that you cannot construct boolean algebras with 3
> elements, but you can construct any damn logic you please if you don't
> make that a boolean algebra (i.e. drop the existence of complements and
> consequently you reformulate the Tertium Non Datur or drop it altogether).
>

As long as it is complete and not giving rise to contradictory functions, proofs, etc., then you can build any n-valued system you want. But, it must be very clear what the rules (axioms) and elements of the domain in question are. It would also be a good idea not to make analogs with other systems by which misunderstandings can arise.

I, myself, many years ago looked at designing a 3-value system with its appropriate operations - I decided against it after sometime because I could not get all the inconsistancies out of it (for the purposes I wanted it for at the time)

> Of course, then we have to discuss the merits of the new formalism.
> Given the fact that a large part of modern mathematics has done
> beautfully without tertium non datur, I don't see why database users
> cannot be given the benefit of a doubt that they can work in a
> multi-valued logic not based on boolean algebra.
>

Only give them a chance first, make sure the theory on which the database management system is based is at least non-contradictory and that the questions they ask can be shown to be either answerable correctly or are nonsensical in the first place. My experience has been that most "users" of databases have to be taught or trained how to learn to ask the "right" questions.

So if the theory on which you are designing is solidly based then okay - but if is not then IMHO you are barking up the wrong tree.

> All I care for is to have a lattice with :
>
> 1) bounded below: There exists an element 0, such that a ? 0 = a for
> all a in A.
> 2) bounded above: There exists an element 1, such that a ? 1 = a for all
> a in A.
> 3) distributive law: For all a, b, c in A, (a ? b) ? c = (a ? c) ? (b ? c).
>
> but without the reverse element, and without Tertium Non Datur.
>
> 4) existence of complements: For every a in A there exists an element ¬a
> in A such that a ? ¬a = 1 and a ? ¬a = 0.
>

Not a problem, but don't forget the commutative laws. And be very claer about your mapping functions, otherwise you will end up with contradictions.

>
> Indeed, all the little fuzzy logic(s) I've been taught, doesn't support
> number 4 at all, and number 4 would have absolutely no value for the
> domains for which fuzzy logic is necessary.
>

But are they applicable to the databases that people design and use, such that correct answers can be obtained (relatively easily). They have a place - but is it here. Too many times I have come across people believing the answers obtained from databases (because thay think everything is correct) when the answers they have obtained on investigation have been shown to be "up the creek". Educating them is the hardest part.

> Then we have to analyze the merits or demerits of each formalism, if you
> want to claim that fuzzy logic has no merits because it doesn't support
> number 4, you'd be way off the charts :)
>
> So, I'm all for formalisms and for mathematics in software, but the fact
> that something is a specific formalism or something else is a different
> formalisms, even a less powerful (weaker) formalisms, doesn't say much.
> To make a complete argument you have to discuss the value of the
> formalism with regards to a particular domain of application.
>
> If you can't apply Field theory to a problem you have to see what you
> can do with Anneaux (or how the heck they are called in English ??), if
> you can't have a boolean algebra you may still get useful results just
> with lattice theory.
>
> So why do you think a three valued logic (or indeed a logic on the
> continuous [0,1]) is that bad for database management so that you can
> dismiss it out of hand ?

Show the relevant developed theory that can be used to put it into useful practise then you can ask the above question.
>
> Why do you think it makes any sense at all to have a boolean algebra
> with 2^N elements, let's take the easiest case 4, when I don't see for
> the life of me how you can map the algebraic rules to semantics
> understood by users and programmers ?

The vast majority of cases only needs the simplest algrabra of two elements. My point regarding 2^N elements is that for it to be considered a boolean algebra this is one of the requirements not that it would be necessarily useful. The actual mapping funxctions for the truth tables are quite simple and the axioms don't changes - all the rules remain the same. I just might try teaching it to my youngest son to see how he handles it all. My perspective is that most people should be able to pick it up easily enough - programmers should find it a breeze.
>
>
> best regards,
> Costin Cozianu

-- 
Bruce Rennie ( from God's Own Country Downunder )
Disciple of Jesus Christ in Training

The Cross of Jesus Christ - Salvation for all men.

Song of Solomon ( Song of Songs ) - The greatest Love Story Ever
and a story for our times.

Be a GOD Chaser.
Received on Sat Apr 26 2003 - 16:04:07 CEST

Original text of this message