José Antonio Riaza Valverde
José Antonio Riaza Valverde
No. I've been working on a branch to incorporate attributed variables, but I don't know when I'll get back to it.
Sorry for the delay. Currently, the `use_module` directive only can be used to load libraries of Tau Prolog. User-defined modules can't be used. In the next days I'll start working...
It seems like a problem with the `(-)/1` operator when printing the term. I'll check it. Thanks.
This is due to the order of application/composition of the substitutions. In the first case: - => - => - `fail` In the second one: - => - => -...
What is wrong with `f(X,X)`? 1. => 2. => `fail` If `f(X,X)` unifies with another term, a substitution `{X/something}` is generated. Then, this substitution is applied to the rest of...
I mean, after performing a resolution step on a state `s = `, the unification of `A` with `A'` produces a substitution `\sigma = {X/a, Y/b, ....}`. The variables of...
The derivation is correct. * Tau Prolog selects the most left atom of the goal: Goal: `X = s(X), X = s(1)`, Substitution: `{}`, Selected atom: `X = s(X)` *...
Interesting. And how do you avoid the infinite loop in case `Y = s(s(Y)), Y = s(Y).`? ``` => => => => => => => => ... ```
There is currently no direct way to do it. Your function covers all cases, since an answer can be: - an error (`pl.type.Term` object), - a substitution (`pl.type.Substitution` object, values...
Hi @gilbert. First of all, thank you very much for your PR. Tau Prolog already has a function that fetches all solutions for a given query: `(Session/Thread).prototype.answers`. But I see...