Re: The MySQL/PHP pair

From: Paul <paul_at_test.com>
Date: Fri, 05 Nov 2004 23:14:45 +0000
Message-ID: <418c0964$0$36790$ed2619ec_at_ptn-nntp-reader02.plus.net>


Dawn M. Wolthuis wrote:

>> You could say this. But then L is a "variable" (in the predicate 
>> logic sense) and not a predicate. So when we translate over to 
>> relations, L is atomic in the sense that the relational system 
>> cannot look inside it - its inner workings are only visible to the 
>> type system. This is because the relational system can only look 
>> inside predicates.

>
> I don't care how it is implemented. As far as I'm concerned, a
> relation is a type, just as a bag is a type or a string, or name.

I don't think this is an implementation thing though - it's more fundamental than that. I think the system of predicates has to be isomorphic to the system of relations and unless you preserve things like atomicity this won't be the case.

And I don't think relations are just another type - they are special because they represent your basic logical framework. All the other types are just tacked on afterwards to make life easier. Relations are the logic and the other types are the things that the logic talks about.

>> Maybe there is some system of basic logic where lists are 
>> fundamental concepts but I'm not aware of it (and I'm not being 
>> facetious here).

>
> English? OK, I did take grad level logic courses once upon a time and
> I do recognize that a formal system of logic is important for
> querying the data, for example. But I use lists in English
> propositions often. Think of lists as connected by ANDs just as
> separate columns are except that they share the same type. What's so
> difficult about that? I guess the variable length of the list is
> one thing that could cause difficulty, but since it doesn't cause any
> difficulty in the environment in which I work, I suspect that any
> theorectical difficulty has work-arounds in the practical world.

Well if you google around you can find websites that approach logic from a more philosophical that mathematical angle, using sentences in a natural language. But they still basically parallel the mathematic definitions.

>> The second question is why not start with second order logic? Well,
>>  its theory is a lot more complicated and you get stuff like
>> Godel's theorems biting you with things like unprovability and 
>> incompleteness.

>
> So what? Mathematicians have put up with Godel's theorem for quite
> some time and we haven't thrown out the Real numbers along with
> various operators because of it.

Good point. It is a bit unnerving to think that all you've got might be built on sand though. Interesting as well to see I think it was Dan's post about the practical difficulties he faced trying to build a system with nested relations.

>> Where I'm not totally clear is how much this has to do with 
>> infinities and whether the fact that databases are finite makes a 
>> difference, or whether their unboundedness is sufficient to cause
>> problems.

>
> I don't know either. I would like to get my brain around this so I
> understand the arguements for eliminating lists in our data models.

Maybe there are two possible arguments:
1) simplicity, because we want to base it on standard first-order logic. 2) to avoid logical paradoxes or queries that return incorrect results etc. I'd like to see some concrete examples of this though.

Argument 1 is the simple answer, argument 2 is a bit more esoteric.

Paul. Received on Sat Nov 06 2004 - 00:14:45 CET

Original text of this message