Skip to content
docs
Arxo ↗

LDC-E4702 — A non-strict rule in the acceptance phase

For LLMs5 sections

The acceptance phase runs only the strict fragment: every rule on the phase list must be strict. A defeasible rule, a default, or a defeater among them cannot execute there, and the compiler refuses the rule at the policy.

Make the rule strict, or take it off the phase list.

Arxo Law
language "law.core" version "0.2";
package demo.diagnostics version "0.1.0";
namespace "urn:law:demo:diagnostics";
entity Thing;
relation paid(t: Thing) kind empirical;
relation ev_edge(edge: Text, doc: Text, link: Text) kind empirical;
relation accepted_support(edge: Text) kind institutional;
rule Judge defeasible { for edge: Text; for doc: Text; when ev_edge(edge, doc, "supports"); then accepted_support(edge); }
evidence policy EvpV1 {
profile "law.core.evidence-policy/0.1";
accepts accepted_support;
protects paid;
input edge ev_edge;
rule Judge;
}
Arxo Law
language "law.core" version "0.2";
package demo.diagnostics version "0.1.0";
namespace "urn:law:demo:diagnostics";
entity Thing;
relation paid(t: Thing) kind empirical;
relation ev_edge(edge: Text, doc: Text, link: Text) kind empirical;
relation accepted_support(edge: Text) kind institutional;
rule Judge strict { for edge: Text; for doc: Text; when ev_edge(edge, doc, "supports"); then accepted_support(edge); }
evidence policy EvpV1 {
profile "law.core.evidence-policy/0.1";
accepts accepted_support;
protects paid;
input edge ev_edge;
rule Judge;
}

The engine reports this in its own wording:

Output
example.law:10:1: error LDC-E4702: evidence policy urn:law:demo:diagnostics#EvpV1: rule urn:law:demo:diagnostics#Judge is not strict — the acceptance phase executes only the strict §103 fragment (§78.2.5)

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

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