Re: Codd and many-valued logics

From: Nicola <nvitacolonna_at_gmail.com>
Date: Sun, 12 Jun 2016 09:08:13 +0200
Message-ID: <njj1os$2m83$1_at_adenine.netfront.net>


On 2016-06-12 00:33:17 +0000, James K. Lowden said:

> On Wed, 8 Jun 2016 21:20:53 +0200
> Nicola <nvitacolonna_at_gmail.com> wrote:
>

>> On 2016-06-07 02:44:35 +0000, James K. Lowden said:
>> 
>>> On Sun, 5 Jun 2016 13:03:36 +0200
>>> Nicola <nvitacolonna_at_gmail.com> wrote:
>> 
>> I agree that compromises are necessary. There are, however, branches
>> of engineering where four-valued (and even nine-valued) logics are
>> routinely used. People do not seem daunted by the 4 billions or so
>> dyadic truth tables (just to quote a silly argument brought against
>> many-valued logics).

>
> This is your field, not mine. I would be grateful for some pointers.

I am not a hardware engineer, but IEEE 1364, among the rest, defines four-valued logic gates.

>>> I suspect that normalization theory made Not Applicable not
>>> applicable anyway.
>> 
>> I believe so. Nonetheless, Not Applicable nulls allow you to use much
>> less predicates (P(A,B) vs P1(A,B), P2(A), P3(B), P4()).

>
> Yes, but. Not Applicable becomes Missing very easily. Given tuples,
>
> R{A}, S{A,B}
> and
> Union( R, S )
>
> by what right can we declare the missing values Not Applicable?

In the (limited) setting I am describing, you *assume* that all your nulls are to be interpreted as Not Applicable nulls. There is no imperfect information and there are no Missing nulls. If you need to deal with uncertainty, you have do to it in some other way, but not with nulls.

> Mathematically, we cannot, because the distinction relies on what
> R and S represent to the user. So we're stuck with just Missing.

I am not sure I understand your point. If you stipulate that the nulls in your tables represent Not Applicable (i.e., non-existent) values, then the nulls in their union will still represent Not Applicable (i.e., non-existent) values.

The semantics I am assuming here is formally described in the 2012 paper I have mentioned.

Btw, it is interesting to remark that Codd had already noted this in his 1979 paper. He introduced his rules for nulls assuming a “value at present unknown” interpretation, but at the end of §2.3 wrote: «If we were dealing with relations having a closed world interpretation, the “property inapplicable” type would be more appropriate.»

Nicola

Received on Sun Jun 12 2016 - 09:08:13 CEST

Original text of this message