Skip to content
docs
Arxo ↗

LDC-E1345 — Parallel state with one region

For LLMs5 sections

A parallel state runs regions side by side, so it needs at least two: one region is just a sequential state wearing a heavier spelling, and the toolchain would emit a shape its own gates reject. A parallel block with a single region stops the compiler at the state.

A join faces the same honesty rule from the other side: a join with no regions joins nothing, and a quorum larger than the region count can never be reached. Either shape stops the compiler at the join.

The repair is to give the parallel state its plural meaning — two or more regions — or to write the sequential state plainly. Joins count only regions that exist.

Arxo Law
language "law.core" version "0.2";
package demo.diagnostics version "0.1.0";
namespace "urn:law:demo:diagnostics";
entity Tenant;
event Filed {
tenant: Tenant;
}
procedure Solo(t: Tenant) {
state Start initial;
state Work parallel {
region Only {
state A initial;
state B terminal;
transition Go {
from A;
to B;
on Filed;
}
}
}
state Done terminal;
transition Begin {
from Start;
to Work;
on Filed;
}
transition End {
from Work;
to Done;
on Filed;
}
}
Arxo Law
language "law.core" version "0.2";
package demo.diagnostics version "0.1.0";
namespace "urn:law:demo:diagnostics";
entity Tenant;
event Filed {
tenant: Tenant;
}
procedure Solo(t: Tenant) {
state Start initial;
state Work parallel {
region Left {
state A initial;
state B terminal;
transition Go {
from A;
to B;
on Filed;
}
}
region Right {
state C initial;
state D terminal;
transition Go2 {
from C;
to D;
on Filed;
}
}
}
state Done terminal;
transition Begin {
from Start;
to Work;
on Filed;
}
transition End {
from Work;
to Done;
on Filed;
}
}

The engine reports this in its own wording:

Output
example.law:11:11: error LDC-E1345: состояние "Work": `parallel` с одной областью отвергается — составному состоянию нужно не меньше двух областей (§162.1); до выдачи IR не допускается

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

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