Skip to content

Main content

Random Absorbing Integer Walk

Replay seed or one advancing injected source, uniform over the explicitly stated finite support, not cryptographically secure. Generate fair independent unit-step proposals and hold at a boundary after the first hit in an explicit bounded integer interval; proposals still draw after absorption for replay.

Loading tool…

Description

Generate a seeded bounded integer walk with fair unit-step proposals and absorbing endpoints, retaining every proposal after absorption.

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.

Generate a seeded bounded integer walk with fair unit-step proposals and absorbing endpoints, retaining every proposal after absorption.

When to use this tool

Use this generator to create replayable examples of a process that stops changing after reaching either boundary, while retaining its unused driving proposals.

How to use the tool and how it works

  1. Enter initial, minimum, maximum, steps, seed using the definitions below.
  2. Run the operation. Resolve input-format errors before interpreting an output.
  3. Read result.seed, result.states, result.proposals, using the stated boundary, ordering, sign and absence conventions.

Generate exactly steps independent signed ±1 proposals from one advancing source. Begin states with initial. If the current state already equals minimum or maximum, append that same state; otherwise add the next proposal. Proposals continue to be generated and reported after absorption.1

Input fieldMeaning and unitsAccepted input
initialInitial integer state within the explicitly supplied counter/walk bounds.Finite safe integer satisfying the stated bounds.
minimumInclusive integer lower state bound within ±1,000,000; minimum<maximum.Finite safe integer satisfying the stated bounds.
maximumInclusive integer upper state bound within ±1,000,000; minimum<maximum.Finite safe integer satisfying the stated bounds.
stepsNumber of transitions, integer 1–127; the states output includes the initial state as well.Finite safe integer satisfying the stated bounds.
seedNonblank 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 fieldInterpretation
resultObject containing the fields below.
result.seedOriginal supplied seed string; injected-source replay additionally requires that source’s state.
result.statesState sequence including the initial coordinate followed by every transition.
result.proposalsIndependent signed ±1 proposals before reflection.
json
{
  "input": {
    "initial": 1,
    "minimum": 0,
    "maximum": 2,
    "steps": 3,
    "seed": "batch56"
  },
  "output": {
    "result": {
      "seed": "batch56",
      "states": [
        1,
        2,
        2,
        2
      ],
      "proposals": [
        1,
        1,
        1
      ]
    }
  }
}

Limitations and assumptions

  • The endpoints are absorbing, so visible state paths are not uniformly distributed. Bounds and initial are integers within ±1,000,000 with minimum<maximum and initial inside; steps is 1–127. Starting at an endpoint yields a constant state path.
  • 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.
  • Numeric outputs must remain finite and within safe-integer magnitude. Original record indexes and cell coordinates are zero-based; stated half-open ranges exclude their end.

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

  1. Tool behavior and example: Random Absorbing Integer Walk — tool.io

Similar or alternative tools