Re: more on delete from join
Date: Wed, 02 Sep 2009 12:31:22 GMT
"Marshall" <marshall.spight_at_gmail.com> wrote in message
On Sep 1, 8:03 am, Kevin Kirkpatrick <kvnkrkpt..._at_gmail.com> wrote:
And if it still looks like guessing to you, you still haven't grasped the concept. Is solving systems of _linear_ equations "guessing?" No; it is a process that is entirely deterministic and arithmetically sound. The identical qualities hold under the idea of solving systems of relational expressions.
A minor quibble. It is a process whose outcome is entirely deterministic. The process itself may rely on heuristics to determine the course of action needed to solve the system of equations.
When I learned algebra in high school, we learned various methods of solving systems of equations. Only one of them, the determinant method, was guaranteed to work for every solvable system. And the determinant method was a royal pain. So, if you could find one of the easier methods that worked, such as removing common factors, you could solve the system much more easily.
You see, a solution strategy really is an imperative: do this, then do that, then do that, and you'll get the solution. The validity of a strategy is a matter of strict logic. The applicability of a given strategy to a given problem might or might not be a matter of strict logic. It certainly wasn't taught that way, when I took algebra.
All of this reminds me a little bit of query optimization in a DBMS. Composers of queries are encouraged to think of the query as specifying what is to be found, rather than how to find it. The DBMS, on the other hand, generates an imperative strategy for carrying out the request. The strategy generator portion of an optimizer certainly uses heuristics for generating strategies to be cost evaluated. Hopefully, the strategy generator generates no incorrect strategies, just some costly ones. Received on Wed Sep 02 2009 - 07:31:22 CDT