Constraints describe the legal solution space, and the solver picks a point inside it. Each operator in this topic shapes that space in a different way.
Question | Operators that answer it |
|---|---|
What values are legal? |
|
How likely is each value? |
|
What can a function do? | Function calls fold in math at the cost of one-way solving. |
Lesson | What it covers | Path |
|---|---|---|
Value sets, negation, open ranges and arrays as sets. | Required | |
Per-value and per-range weights with exact arithmetic. | Required | |
Truth tables, bidirectional solving and distribution shaping. | Required | |
Overridable defaults, discard order and function staging. | Required |
Path: Required is the core first pass for this part, Recommended is for most learners, and Optional is reference, specialist depth or revision.
randomize() fail, and which only move probability?inside, implication, if/else and dist change the legal set, so a clash between them can leave no solution and the call returns 0. solve...before only moves probability, and a soft constraint steps aside instead of causing a failure.