The Math of Reliability: stochastic processes
We need "time", change is the norm not the exception
Search for a command to run...
We need "time", change is the norm not the exception
No comments yet. Be the first to comment.
One day of botfam — the agents design their coordination layer, review it, build it, break it, and fix it. I contribute two shell commands and a bedtime rule.
The last post ended on a promise. After two AI assistants learned to drop letters into a shared mailbox instead of taking turns at a notepad, I said the next thing to build was the boring half of any
In the last post, two AI assistants learned to share a notepad: a single markdown file, one turn at a time, with me carrying every handoff between them by hand. It worked. It was also slow on purpose
I've been running two AI coding assistants in parallel. Claude for architecture and implementation — it reasons carefully about code structure and catches edge cases. Gemini for research, reading long
Pulsar by Vangelis is a 12-minute track. The first seven minutes are slow, evolving, near-silence synthesis. Then it erupts. Deep Cuts was telling me it sounded like AC/DC. The bug was in how I'd been
Take a collection random variables and organize them in some way, you get a stochastic process or a random field.
We need to explore more than just basic statistics and discuss how sequences of random variables change over time and space. (This is another introductory post, so I can build upon these concepts later)
What does organizing mean? It involves assigning each variable an index from a set. If the index set consists of natural or real numbers (or can be mapped to these), we refer to it as a stochastic process. If the index set is higher-dimensional, it's called a random field.
The state space is the shared space from which all these random variables draw their values.
When we consider the product of index set and state space, there are several typical combinations:
discrete-time, discrete-state
discrete-time, continuous-state
continuous-time, discrete-state
continuous-time, continuous-state
(note: this list isn't complete! there are more options!)
The index set doesn't have to be time.
When we do talk about time, we should be really thinking about times in the plural. There are multiple domains of time, not just one. A lot of confusion and mistakes happen when different concepts of time are mixed without careful consideration.
Random variables aren't limited to single numbers. They can be vectors, matrices, functions, and much more. All they require is a method to measure things, which in mathematical terms, is called a σ-algebra. A measurable space is actually defined by a pair (X,Σ), where X is a set and Σ is a σ-algebra.
The result of a stochastic process is a function that connects the index set with the state space. This is known by several names: as the realization, sample function, or, when it involves time, as a trajectory or sample path. The difference between two random variables (for example, two steps in the same sample path) is called an increment.
In my previous article, I talked about Bernoulli random variables. A Bernoulli process is a series of independent and identically distributed (i.i.d.) random variables with a state space of {0,1}, where there's a constant probability p over time. A Bernoulli process operates in discrete time and has discrete states.
A random walk is a sum of random variables or vectors. Many ideas can be thought of as sums: you just need an associative way to combine things and a starting point (a zero or identity element), this is called a Monoid. If you've heard about Haskell, you might know about Monads, which apply similar concepts in programming. Monads can represent many things: from simple optional values and lists (like a series of changes over time), to changes in state, ongoing processes, and even parallel operations. Random walks are processes that operate in discrete time.
Random walks are typically described as the sum of iid random variables or vectors. However, we shouldn't restrict ourselves to fixed parameters. In reality, especially in incident response, transient behavior often arises from parameters or conditions that change over time.
The simplest form, a simple random walk, is indeed stationary discrete-time, discrete-space. It is based on Bernoulli trials that are mapped to increments of {-1, 1}, and the resulting state space includes all integers.
A Wiener process is the continuous equivalent of a simple random walk: it operates in continuous time and has stationary, independent, and identically distributed increments that follow a normal distribution. This concept is widely used in areas like quantitative finance (e.g., Black-Scholes model) and physics (e.g., Brownian motion).
A Poisson process counts the random number of events up to some time. If the rate of events remains constant over time, it is called an homogeneous Poisson process. When the probability of events changes over time, they are called nonhomogeneous.