• V0ldek@awful.systems
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    10 months ago

    [Datalog] is equivalent to tuple relational calculus

    Well, Prolog also allows recursion, and is Turing complete, so it’s not as rudimentary as you make it out to be.

    But to anyone even passingly familiar with theoretical CS this is nonsense. Prolog is not “reasoning” in any deeper sense than C is “reasoning”, or that your pocket calculator is “reasoning”. It’s reductive to the point of absurdity, if your definition of “reason” includes Prolog then the Brainfuck compiler is AGI.

    • self@awful.systemsM
      link
      fedilink
      English
      arrow-up
      2
      ·
      10 months ago

      Datalog is specifically a non-TC subset of Prolog with a modified evaluation strategy that guarantees queries always terminate, though I was being imprecise — it’s the non-recursive subset of Datalog that’s directly equivalent to TRC (though Wikipedia shows this by mapping Datalog to relational algebra, whereas I’d argue the mapping between TRC and Datalog is even easier to demonstrate). hopefully my imprecision didn’t muddy my point — the special sauce at Prolog’s core that folks seem to fetishize is essentially ordinary database shit, and the idea of a relational database having any kind of general reasoning is plainly ridiculous.