ON “THE FINAL NULL IN THE COFFIN” AND LOGIC PART 1
with David McGoveran and Fabian Pascal

 

 

 

From: BS

To: Editor

Date: 9 Oct 2004

 

I just finished reading PRACTICAL DATABASE FOUNDATIONS paper #8, The Final NULL in the Coffin. Wow... I have to reread it and give it some serious thought before commenting on the main points of the paper.  At the moment, however, I have a compulsion to raise some minor objections that don't detract from your paper in general...

 

On page 8, you claim: "2VL was developed and tested over more than two thousand years.  During this time no generally agreed-upon 3VL adequate model of the world has been formulated, and not for lack of trying."

 

I disagree with this point, especially the "not for lack of trying" part.  I believe that the bias of the Greek tradition has stifled exploration of anything other than 2VL in Western society.  To a lesser degree, I am bothered by the word "adequate", because it's a rather subjective term, and furthermore, the adequacy of 2VL has been questioned more than once.  ("If the king of France is bald..." and other problems come to mind.)

 

Later, you claim: "And because of the above-mentioned 'realm confusion'--humans think in 2VL, not in 3VL--it would also be unintuitive."

 

I have two objections to this point.  Firstly, I believe that that realm confusion exists independent of the kind of logic system being used.  The mantra "The computer is never wrong" is what messes with people's heads when a computer does, in fact, present incorrect or incomplete information--again, this holds true regardless of the logic system being used.

 

Secondly, I have seen no scientific study that demonstrates that humans naturally think in 2VL.  I have the idealistic belief that as long as realm confusion is avoided, then a 3VL or even a 4VL system is completely comprehensible to a human being.

 

To support a general refutation of the idea that 3VL is foreign to humans and that no system has been in use outside of a philosophy course, I would like to draw your attention to the Aymara of South America.  They are not exactly a small people, and their logic system (which is even encoded in their language) has been around for a long time. I recommend that you take a look at the Ternary Logic site, and especially this page in particular:

 

As for a possible alteration of your paper in light of this information, I would suggest merely toning down the assertions about the human innateness of 2VL.  On the other hand, since very few in your audience have heard of the Aymara language or culture, I doubt anyone else will notice, so what the heck.

 

Full disclosure: I personally employ a 4VL system in my view of the universe (although, in my database design, I've stuck with 2VL so far)--true, false, unknown, and unknowable.  I believe that it is the smallest *complete* logic system an intelligent system (such as a human brain) can *honestly* employ.  Furthermore, I believe that if my system became common knowledge, higher education would improve, because students would be allowed to say "I don't know" instead of being forced to lie to make it look like they know all the answers.  ;)

 

As for the real meat of your paper, I'm going to compare your approach to Darwen's and look over my own notes on the same topic, and then get back to you.  I am quite excited (although not surprised, honestly) by the paper.  I believe that your approach is logically correct, but ... [more to come]

 

Keep up the good work.

 

 

Fabian Pascal Responds: I will let David address the 2VL vs. nVL issue. I will simply say that:

 

1. There is hardly a need for scientific study to prove that the realm confusion exists, we encounter it in almost each and every case in which inferences in the presence of missing data are made, and whenever NULLs are discussed (see the debunkings section in the paper under consideration).

 

2. The 2VL “innateness” may well be cultural, but that does not negate the argument in practice.

 

3. The distinction between “unknown” and “unknowable” is tricky and opens the Pandora box of infinite regressions (unknown whether unknown or unknowable, unknown whether…, and so on.)

 

 

David McGoveran Responds: Let me clarify. Indeed, the adequacy of 2VL (in fact, many different 2VLs) has been questioned many times. However:

 

(a) The use of the term "logic" in the paper should be interpreted as "formal logic."

 

(b) Although efforts to formalize logic have been around for a few thousand years, the extensive effort is properly limited to the last 100. However, during this time our understanding of classes of systems of formal logic has grown in leaps and bounds, so much so that the results of the previous 2000 were easily replicated for, in principle, an infinity (yes, I said infinity) of logical systems by organizing those systems into classes and proving general properties of the classes.

 

(c) My papers, Nothing from Nothing Parts 1-4, Database Programming and Design 6(12) December 1993; 7(1) January 1994; 7(2) February1994; 7(3) March 1994 (republished in C. J. Date’s RELATIONAL DATABASE WRITINGS 1994-1997) showed that every class of nVL (n > 2) formal logical system leaves much to be desired as a foundation for relational databases. And I addressed the problems with Lukasiewicz and Post and others discussed on the Aymara website.

 

(d) The reader (or practitioner) needs to differentiate between states of reasoning and truth values. Certainly one can have a state of reasoning about a particular statement that is "unknown" or even "unknowable". However, unless the formal logic theory and its self-consistent interpretation are laid out, these states do not qualify as "truth values." Formal logic takes this partially into account by requiring that expressions subject to truth valuation must be "well-formed."

 

(e) Human beings are prone to informal, imprecise, and often faulty reasoning, leading to invalid conclusions or conclusions that are only contextually valid. Among other strategies, we try to solve problems by, and are very adept at, shifting logical systems in mid-stream -- for example, changing premises or changing interpretations or even changing the "real-world" target of our reasoning.

 

(f) Indeed, it is clear that the detection of "undecidable" propositions (a.k.a. paradoxes and sometimes even "jokes") is not, and cannot be, done within a single logical framework. Human beings are capable of "thinking about thinking" (about thinking about thinking...). Having the power to do this within a single logical system always means that that logical system is either incomplete or undecidable.

 

(g) Linguistic logic -- the study of logic as evidenced by natural language, and trying to find "the" formal logical system that underlies natural languages -- has, despite the efforts of numerous brilliant scholars, never identified the formal logic underlying language. However, it is well known that natural languages are context sensitive, while computer languages and almost all formal logic is context-free.

 

(h) If one takes "unknown" (i.e., "I don't know") or "unknowable (i.e., "There is no means possible by which I will ever know or be able to conclude") as truth values, then I suggest we must also entertain "huh?" (i.e., "I don't understand"). "Unknowable" is already tenuous -- it implies an omniscient decision about what is knowable and what is not! And in a finite time! When introducing "truth values" like "unknown" and "unknowable", we are in the realm of belief. And that's another topic altogether.

 

 

From: BS

To: David McGoveran

 

Pleasantries:  I cannot sufficiently express my appreciation for the insight offered by you and your colleagues.  I know nobody locally (including college professors, *sigh*) who has the knowledge to discuss matters of logic and reason with me, which stifles my learning.

 

I'm sure you can tell I'm not a logician, although I'm doing what I can to learn.  In fact, most of my non-computer study is in languages and linguistics, which influences my (sometimes frustrated) view of logic. McCawley's book WHAT EVERY LINGUIST HAS ALWAYS WANTED TO KNOW ABOUT LOGIC has somewhat helped me bridge the gap.

 

Frivolity Warning: Some of the ideas I express below are very utopian or are of philosophical rather than practical nature.  Most of the ideas do not directly relate to relational databases, but rather reflect more on psychology or human-computer interaction.

 

1. My 4VL approach stems from my distaste for the attitude of some traditional logicians who claim that any proposition that does not "sensibly" resolve to true or false is "unfair".  I don't wish to bore you at this time with the details of my system, but I believe that any proposition at a given point in time resolves to one of my four values, thus removing the question of "fairness".  Furthermore, although I value consistency, I also value completeness and honesty.  (Sadly, I have read that it is impossible to simultaneously achieve the first two in a mathematical system, but a boy can dream, can't he?)

 

(a) Understood.

 

(b) All I can offer against points (a) and (b) is that perhaps not enough effort has yet been put forth to formalize a 3VL or 4VL.  (A number of fields, such as Finite Mathematics, could have been discovered much earlier if it were not for lack of impetus.)  When I search for information on 3VL with the means I have available to me, I find few resources.  Perhaps you could suggest a book or two dedicated to 3VL (or classes of logic systems) to improve my understanding.  (Perhaps I will discover that I've been trying to re-invent a wheel--a wobbly wheel, even.)

 

(c) I just searched online bookstores for the book you mentioned, and unfortunately, "not in stock" is what I'm finding. Bummer. I agree with you on the inapplicability of nVL (n > 2) in the relational model as I understand it, but I would like to read your specific arguments about it, so I hope to find a copy somewhere.

 

Among today's technologies, nothing I know of could implement my 4VL, although a modified form of Prolog might be a good start.

 

In my defense, my reason for bringing up 4VL is that I am uncomfortable with the assertion that "humans think in 2VL" (page 8), which is a human psychology issue, not a relational issue.

 

(d) Understood.  I have been working for a while on the rules of my system, but again, I don't feel like boring you with the details at this time, especially since I haven't explored all the possibilities yet.  Let me just vaguely say that I hope eventually to produce a complete formal system that is adequate for my goals.

 

(e) Yes, quite true.  Humans tend to be inconsistent but thorough, while computer systems tend to be consistent but incomplete.  What worries me is that, given how much people trust computers (and databases in particular), the lack of context and thoroughness of computer systems misleads users.  As a specific point, to assert that anything not recorded is false (since it is not true), is misleading.  Oft-heard statements like  "There is no Bob--he's not in the computer, so he can't exist," stem, at least in part, from over-reliance on simplistic databases.

 

(f) I think that this is a key point in the problem of using computers to model the real world.  The lack of inference capability is quite a barrier to a comprehensive database. I don't have the Holy Grail that would give computers the powers of semantics, let alone pragmatics, that humans have, but I would like to point out some steps in that direction:

 

1)     Prolog, as "clunky" as it can be, can do an impressive job of inferring facts, using a ruleset system that I haven't yet seen elsewhere.

 

2)     In the "Final Null" paper, the use of metadata is a way of reporting facts about facts, correct?  It may be a very small step towards "thinking about thinking", but I do believe that it is such a step.  (Perhaps I am reading too much into it.)

 

(g) Okay ... this is where my hopes for artificial intelligence usually get shot down.  Linguists still haven't defined what semantics really are.  We don't know what "meaning" really means, which, of course, means that no one can create a formal logic system, let alone a computer system, that handles meaning the way humans innately do.

 

(h) Unfortunately, this part is harder to discuss, because it gets more philosophical and personal in nature, but I shall do my best to respond in a few paragraphs.

 

1)     In my understanding, the "huh?" option is covered by "unknowable".

 

2)     The "unknowable" value does not require omniscience, but rather awareness of one's own knowledge ("thinking about thinking" to some degree).  For example, in the knowledge base of my mind, the proposition "5 = chicken" (which would usually elicit a "Huh?") is "unknowable" because my knowledge base has no way to compare the number 5 and chicken.  If new rules were added that allowed a comparison, then the proposition might resolve to something else.  Now, if you aren't currently rolling on the floor laughing at the apparent silliness of this example, I would like to point out that this kind of proposition happens all the time in programming.  In many systems, a "type-mismatch" error occurs.  In others, one of the operands is implicitly cast (no matter how badly) to the same type as the other in order to make a comparison.  In linguistic terms, such an occurrence indicates a semantic or pragmatic error (which, again I admit, is hard for a computer system to catch in many cases).

 

3)     As for the temporal issue, I make no claims about what may be knowable in the future (with eventual changes to the knowledge base), but give an answer based on the current knowledge base at the time of a given assertion.  Thus, what I would call "honesty" (a concept generally foreign to computers) is maintained.  One reason why I would like to see such powerful reasoning applied in a database is that I dislike how many current systems, when given an "unknowable" proposition, will generally either report "false" (which *might* be correct, as any guess might be, but is not honest) or throws an exception (which is usually a simplified cop-out and can disrupt program flow).  A friendly response to an "unknowable" query would explain why the system cannot know the answer.

 

I hate sounding like a post-modernist, but actually, I assert that the only difference between belief and knowledge is that what is called "knowledge" is merely generally accepted belief.  Instead of delving into a silly discussion about why I believe this, I wish to point out the practicality of considering "knowledge" to be nothing more than "belief":  No system, human or computer, is omniscient, and I feel that this should be admitted by both human and computer to the best of our abilities. As I pointed out earlier, people place (too) much trust in the supposed infallibility and omniscience of computer systems. I feel that this  (currently unwarranted) trust gives impetus to create systems that admit when it does not know an answer to a query and when it cannot (for semantic or pragmatic reasons) process a query.  In other words, the

relational model does wonders for logical integrity; I would like, in addition, to see stronger support for conceptual integrity built into a DBMS.

 

Now, to shoot myself even harder in the foot, I admit that the kind of system necessary to fully implement my idea of "honesty" would pass the Turing Test, and there's no such system in sight.  In case you're wondering, no, I don't have hopes for the Semantic Web.

 

In an attempt to return to the "Final Null" paper ... it seems to me that "honesty", as I have called it, is what is supported in the paper where it is noted that the proposed DBMS would "keep users aware of knowledge imperfection". The paper covers the "unknown" possibility to a large extent, which I greatly like.  At this time, I can offer no suggestion as to how an RDBMS could handle the "unknowable" possibility, and I sheepishly almost regret even mentioning it.

 

I apologize for having drifted so far from the realm of relational databases, but I remind you that the 4VL topic began with my objection to the assertion that "humans tend to think in 2VL".  I hope that my idealistic ramblings have not been too great a distraction from more practical discussions.

 

(To be continued in Part 2)

 

 

Posted 11/26/04