Skip to content
docs
Arxo ↗

LDC-E1331 — Duplicate anonymous assert

For LLMs5 sections

An assertion without an explicit identifier is keyed by its own content: the same normalized fact with the same provenance stated twice collapses onto one identity, and the second statement cannot be told apart from the first. The compiler stops at the repetition and asks for an explicit identifier that separates the two.

The repair is to state the fact once, or to give each statement its own identifier. Distinct facts keep distinct identities.

Arxo Law
language "law.core" version "0.2";
package demo.diagnostics version "0.1.0";
namespace "urn:law:demo:diagnostics";
entity Tenant;
relation tall(t: Tenant) kind institutional;
const Joe: Tenant = entity_ref("urn:law:demo:diagnostics#Joe");
assert tall(Joe);
assert tall(Joe);
Arxo Law
language "law.core" version "0.2";
package demo.diagnostics version "0.1.0";
namespace "urn:law:demo:diagnostics";
entity Tenant;
relation tall(t: Tenant) kind institutional;
const Joe: Tenant = entity_ref("urn:law:demo:diagnostics#Joe");
assert tall(Joe);

The engine reports this in its own wording:

Output
example.law:9:1: error LDC-E1331: exact duplicate of an anonymous assert (the same normalized fact and provenance) or digest ambiguity: give an explicit `id` (§207)

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

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