LANGUAGE / COMPACT
Compact syntax
Add uppercase D and U constraints to Clearra-style queues and patterns. The input structure determines the exact scope.
Supply expressions
| Expression | Exact meaning |
|---|---|
| IOTSZJL | Fixed supply order |
| P4 | All orders of four distinct kinds selected from seven |
| P7P4 | Concatenate two independent permutation segments |
| [ITO] | Choose one of I, T, O |
| [ITO]2 | Choose two distinct kinds, in every order |
| [ITO]! | Permute the complete set |
| [^T] | Choose one standard kind other than T |
| * / *! | One arbitrary kind / all seven permutations |
| IOT;ITO | Union of two alternatives |
Repeated letters in brackets repeat a kind, not its count. [TTI]! is not a two-T bag. Use advanced bag or shuffle for multiplicities. Alternatives must have equal length in this profile.
Colon and braces
P7:D(I<T)P4
P7P4:D(I<T)
{T[^T]!}:D(I<O)P4
{P7P4}:D(I<T)
P7:D(I<T,T)U(T<I)A colon attaches to the immediately preceding complete supply expression: P7 in the first line, P4 in the second. Braces group expressions into one scope. D and U can follow one colon, but each block appears at most once per scope.
Order, groups and mixed chains
| RFC3 | Meaning |
|---|---|
| A<B | A precedes B |
| A>B | B precedes A |
| I<TS | I precedes T and S; T/S remain unordered |
| I<T>S | I and S precede T |
| T>IS | Equivalent to I<T>S |
P4:D(I<T)
P4:D(I<TS)
P4:D(I<T>S)
P4:D(T>IS)
P4:D(I<T,T)Bare kinds compare first occurrences inside the attached scope. Groups mean all cross-pairs (AND); mixed chains compare adjacent groups only. I<IT includes I<I and cannot hold. Repeating a kind as TT does not select its second occurrence.
Presence, absence and partial information
Bare T requires presence; TS requires both kinds, not adjacency, an order or OR. In D(I<T), earlier I must exist while later T may be absent. Use D(I<T,T) to require T as well.
| Closed scope | D(I<T) |
|---|---|
| IT | true |
| TI | false |
| IOSZ | true |
| TOSZ | false |
| OSZJ | false |
| ITIT | true |
| TIIT | false |
P4:D(T)
P4:D(TS)
P4:D(I<T,T)Condition lists and D/U
P7:D(I<T<S)
P7:D(I<T,T<S)
P7:D(I<T<S<I)
P7:D(I<T)U(T<I)Commas AND complete expressions. I<T<S means I<T AND T<S. D checks supply order; U checks the use-order projection for the same source scope. These domains must not share a contradiction graph.
A strict cycle is syntactically valid but proves UNSAT in its own scope. No proof means NOT_CHECKED, not PC/hold/placement legality. Resource exhaustion is INCOMPLETE, not an exact empty result.
Counts and concrete cases
| Pattern | Distinct supplies |
|---|---|
| P4 | 840 |
| P4:D(T) | 480 |
| P4:D(TS) | 240 |
| P4:D(I<T) | 360 |
| P4:D(I<T,T) | 120 |
| P4:D(I<TS) | 272 |
| P4:D(I<T>S) | 176 |
These are pure standard-kind sets, not initial-state filters or PC success rates. Reversed comparisons can have identical counts, so exact queues and truth-table members are checked too.