Skip to content
docs
Arxo ↗

LDC-E4703 — A rule deriving a protected predicate

For LLMs5 sections

A protected predicate names the facts the acceptance phase guards: such a fact enters support only through an accepted support, never straight from a rule head. A rule deriving a protected predicate short-circuits that guard, and the compiler refuses the rule at the policy — even when the rule itself stands on the phase list.

Drop the derivation, or guard a different predicate.

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 settled(t: Thing) kind institutional;
relation ev_edge(edge: Text, doc: Text, link: Text) kind empirical;
relation accepted_support(edge: Text) kind institutional;
rule Mint strict { for t: Thing; when settled(t); then paid(t); }
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;
}
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 settled(t: Thing) kind institutional;
relation ev_edge(edge: Text, doc: Text, link: Text) kind empirical;
relation accepted_support(edge: Text) kind institutional;
rule Mint strict { for t: Thing; when paid(t); then settled(t); }
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:12:1: error LDC-E4703: evidence policy urn:law:demo:diagnostics#EvpV1: rule urn:law:demo:diagnostics#Mint derives a protected predicate urn:law:demo:diagnostics#paid — a protected fact enters support only via an accepted support (§78.2.4)

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

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