Skip to content
docs
Arxo ↗

LDC-E1349 — Completed names no instance

For LLMs5 sections

The completed predicate asks about a finished production, and a production belongs to someone: the two-place shape names the procedure and the instance whose completion is meant. The one-place shape names no instance, and a silent “any instance” would turn true after the fact — so the compiler stops at the call.

The repair is to name both: the procedure and the instance. A complete question answers exactly as asked.

Arxo Law
language "law.core" version "0.2";
package demo.diagnostics version "0.1.0";
namespace "urn:law:demo:diagnostics";
entity Tenant;
relation done(t: Tenant) kind institutional;
procedure Review(t: Tenant) {
state Open initial;
state Closed terminal;
transition Decide {
from Open;
to Closed;
}
}
rule Flag defeasible {
for t: Tenant;
when completed(t);
then done(t);
}
Arxo Law
language "law.core" version "0.2";
package demo.diagnostics version "0.1.0";
namespace "urn:law:demo:diagnostics";
entity Tenant;
relation done(t: Tenant) kind institutional;
procedure Review(t: Tenant) {
state Open initial;
state Closed terminal;
transition Decide {
from Open;
to Closed;
}
}
rule Flag defeasible {
for t: Tenant;
when completed(Review, t);
then done(t);
}

The engine reports this in its own wording:

Output
example.law:17:10: error LDC-E1349: `completed(P)` §163 does not name a procedure instance: an arity-one predicate does not say WHOSE production is complete (§163, §161.2, §163.1)

Documentation for Arxo. Writings — blog.arxo.io.

Anonymous visit counts on stats.arxo.io, no cookies.