Bronk Ramsey 2009 - Order Constraints and the Uniform Phase Prior

Summary

Stratigraphic order enters as a Heaviside-type prior if the dates are ordered and 0 otherwise. But a flat prior on events gives the span a density , heavily favouring long spans. The uniform phase model fixes this by giving a start and end boundary uniform priors and the events a uniform prior between them: , which makes the implied span prior constant.

Overview

A chronological model needs priors for sets of events. The paper builds these in two layers: relative constraints (order) and groupings (phases). Constraints “should only ever be used in conjunction with some kind of a grouping model”.

Main Content

Order constraint (Eqs. 12-13)

For : if , else (equal to the Heaviside except at ). For a sequence: if , else . Each constraint is one more factor in the prior.

The span problem for a flat prior

Under with events, the effective prior of the span is . For it is uniform, but for large it is “very highly weighted to higher values” (Steier and Rom 2000; Bronk Ramsey 2000). This is why people looking at calibrated dates from one phase “instinctively overestimate their spread”.

Proof sketch. The density of the range of iid uniforms on an interval of length is , proportional to for .

Uniform phase model (Eqs. 14-16)

Let (start) and (end) be boundary events with ; the span then has a uniform prior on . Each of the events lies uniformly between them: (Eq. 15). The joint prior is

The effective prior for the span of all the events is constant: the model does not favour short or long phases. The assumption is that events are equally likely anywhere between start and end.

This is the model used in OxCal (Bronk Ramsey 1995), BCal (Buck et al. 1999) and DateLab (Jones and Nicholls 2002); the original derivations are by Buck et al. (1991, 1992) and Zeidler et al. (1998). It also forms “the basis for most of the more complex models”.

Examples

How badly a flat prior biases the span

Setup: events iid (the flat-prior picture). Solution: . Simulation of draws gives mean span (), () and (). Interpretation: with ten dates the prior alone says “this phase spans over 80% of the window”; the uniform phase prior instead leaves the span flat, so the data decide.

import numpy as np
rng = np.random.default_rng(0)
for n in (2, 5, 10):
    t = rng.uniform(0, 1, (200_000, n)); print(n, round((t.max(1) - t.min(1)).mean(), 3))
# 2 0.333 / 5 0.667 / 10 0.818

PyMC-style sketch (untested). Use two boundary variables with an ordering transform and a Potential for :

with pm.Model():
    ta = pm.Flat("ta"); span = pm.HalfFlat("span"); tb = pm.Deterministic("tb", ta + span)
    t = pm.Uniform("t", lower=ta, upper=tb, shape=n)
    # Uniform already supplies the 1/(tb-ta)^n factor of Eq. 16

Connections

See Also

Bronk Ramsey 2009 - Bayesian Analysis of Radiocarbon Dates - Overview