Description
Choose a fair initial level and independent uniform run lengths, then alternate two explicit distinct levels; support is level/run assignments, not uniform over all bounded traces.
A random construction is defined by its sampling support: positions, permutations, complete tilings, proposal sequences or another explicit set. Uniform choices at one stage do not necessarily make final visible outcomes uniform. A replay seed gives a deterministic sequence; equal values can hide different sampled positions. These tools are for reproducible synthetic examples rather than cryptographic entropy.
Choose a fair initial level and independent uniform run lengths, then alternate two explicit distinct levels; support is level/run assignments, not uniform over all bounded traces.
When to use this tool
Use this tool to choose a fair initial level and independent uniform run lengths, then alternate two explicit distinct levels; support is level/run assignments, not uniform over all bounded traces.
How to use the tool and how it works
- Enter low, high, runs, minimum, maximum, seed using the definitions below.
- Run the operation. Resolve input-format errors before interpreting an output.
- Read result.seed, result.initialHigh, result.runs, result.values, using the stated boundary, ordering, sign and absence conventions.
Choose the initial low/high level with one fair binary draw, then draw every run length independently and uniformly in [minimum,maximum]. Alternate the two levels and return both run records and expanded values.1
| Input field | Meaning and units | Accepted input |
|---|---|---|
| low | First finite output level; it must differ from high. | Finite numeric value satisfying the stated comparisons. |
| high | Second finite output level; it must differ from low. | Finite numeric value satisfying the stated comparisons. |
| runs | Number of alternating runs, integer 1–128; runs×maximum must not exceed 128. | Finite safe integer satisfying the stated bounds. |
| minimum | Inclusive positive run/chunk-length lower bound, integer 1–128. | Finite safe integer satisfying the stated bounds. |
| maximum | Inclusive positive run/chunk-length upper bound, integer 1–128. It must be at least minimum; a reflecting walk requires it to be strictly greater. | Finite safe integer satisfying the stated bounds. |
| seed | Nonblank replay seed, at most 256 UTF-16 code units; an injected source overrides seeded draws. | Text, at most 8,192 UTF-16 code units; narrower grammar/range rules also apply. |
| Output field | Interpretation |
|---|---|
| result | Object containing the fields below. |
| result.seed | Original supplied seed string; injected-source replay additionally requires that source’s state. |
| result.initialHigh | Whether the first alternating run uses the supplied high level. |
| result.runs | Alternating numeric level/positive integer length records. |
| result.values | Generated/reordered literal values, preserving the stated positional support. |
{
"input": {
"low": 0,
"high": 1,
"runs": 3,
"minimum": 1,
"maximum": 2,
"seed": "batch56"
},
"output": {
"result": {
"seed": "batch56",
"initialHigh": true,
"runs": [
{
"value": 1,
"length": 2
},
{
"value": 0,
"length": 2
},
{
"value": 1,
"length": 2
}
],
"values": [
1,
1,
0,
0,
1,
1
]
}
}
} Limitations and assumptions
- Levels must differ. runs and lengths are 1–128 with runs×maximum≤128; the construction is not uniform over all arbitrary traces of a bounded total length.
- A nonblank seed of at most 256 UTF-16 code units is required. With ordinary use the seed initializes one deterministic advancing source; an application-injected random source takes precedence and the seed alone then cannot replay the result. Uniformity statements assume independent uniform source draws in [0,1). Source calls are bounded and degenerate injected sources can fail a rejection budget. This is not cryptographically secure.
- Every declared outer field is required and unknown outer fields are rejected. Strings and JSON text have size limits, lists are bounded to 128 entries, and JSON nesting/node counts are bounded. Tighter operation-specific bounds stated above take precedence.
- Ordinary numeric outputs must be finite and within safe-integer magnitude. Exact large lengths/counts use decimal strings. Original record indexes and code-unit positions are zero-based; span ends are exclusive unless stated otherwise.
Alternative or Complementary methods
Choose a generator whose support matches the intended experiment and retain source-position provenance. Use a separate statistically justified process model or cryptographic source where those properties matter.
References
Similar or alternative tools
- Random Two-Bank Bijection
Assign unique supplied right-bank IDs to left-bank IDs by a uniform full bijection, not arbitrary graph matching or schedule generation.
- Random Two-Row Domino Tiling
Uniformly sample complete domino tilings of a 2xN board via exact Fibonacci completion counts and rank unranking, reporting vertical singles or paired horizontal domino placements.