Appropriate just means: set up the data structures any way you like in order to capture the right info and support suitable queries.
I'm not trying to find a shortcut to solving NP complete problems. If I did, I probably wouldn't post it here. The question is: are there problems for which: a) a recursive description and/or recursive data structure are a good match b) interesting and/or useful queries can be formulated c) those queries can be solved by general recursive solutions in other programming languages d) cannot be solved by the recursion provided by SQL CTE, because of inherent limitations in the model/algorithm it supports? There are lots of interesting things you can do with graphs (including trees, lists, DAGs etc) including creating them, navigating them, modifying them and measuring them. How far does this particular tool get you? Regards David M Bennett FACS Andl - A New Database Language - andl.org -----Original Message----- From: sqlite-users-boun...@mailinglists.sqlite.org [mailto:sqlite-users-bounces at mailinglists.sqlite.org] On Behalf Of Simon Slavin Sent: Friday, 12 June 2015 10:46 AM To: General Discussion of SQLite Database Subject: Re: [sqlite] Is recursive CTE fully capable? On 12 Jun 2015, at 1:08am, david at andl.org wrote: > The question I'm trying to ask is whether recursive CTE (either as > defined in the standard or as implemented in SQLite) carries the full > capability of evaluating recursive queries on appropriate data > structures, or are there queries that are beyond what it can do? I think your question can only be answered with "What you mean by "appropriate" ?". CTE is part of the 1999 SQL standard and as good a way as any to implement directed graphs in SQL. There are plenty of queries which can be expressed in a SQL database but can't be answered without a computer which can reprogram itself, e.g. The Halting Problem <http://en.wikipedia.org/wiki/Halting_problem> or without a ridiculously long processing time, e.g. The Travelling Salesman Problem <http://en.wikipedia.org/wiki/Travelling_salesman_problem> . CTE is only one type of meta-programming and is not all-powerful. Simon. _______________________________________________ sqlite-users mailing list sqlite-users at mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users