Conventions

This page summarises the visual and structural conventions used throughout the book.

Code

R code appears in syntax-highlighted blocks. Output is prefixed with #> to make the boundary between input and output explicit:

mean(c(1, 2, 3, 4, 5))
#> [1] 3

Inline code is in monospace. Function calls always include parentheses (mean() rather than mean). Package-qualified calls (digest::digest) appear when the function is not universally known or when the chapter is teaching package usage. All code is written in the native R pipe (|>) and uses <- for assignment.

Callouts

Four callout types appear:

TipTip

A small practical recommendation.

A short question testing comprehension of the just-read material. Click to expand the answer.

WarningWarning

A pitfall the reader may otherwise hit.

ImportantThe sceptic’s reflex

A claim demoted to its true epistemic tier. These recur because the field’s central failure mode is delivering narrative in the cadence of fact.

The falsifiability tiers

Throughout the book, every claim is classified into one of four tiers, and the reader is trained to do the same:

  1. Protocol fact. Verifiable by reading code, running a node, or checking a proof.
  2. Empirical claim. A measurable statement about observed on-chain or market data.
  3. Economic claim. A conditional statement about incentives that holds under stated assumptions.
  4. Narrative. An unfalsifiable or forward-looking story about value or destiny.

The sceptic’s reflex, applied to any assertion, is to name its tier before believing it.

Cross-references

Sections, figures, and tables are referenced by their Quarto label (@sec-mining-poisson, @fig-avalanche, @tbl-attack). These resolve to clickable links in HTML and proper numbers in PDF. Literature is cited by @bibkey and collected in the References.

Mathematical notation

Conventional notation throughout. Vectors are bold lower-case (\(\mathbf{x}\)); matrices are bold upper-case (\(\mathbf{X}\)); scalars and parameters are non-bold. Random variables are upper-case (\(X\)); realisations are lower-case (\(x\)). Estimators carry hats (\(\hat\theta\)). The hash function is \(H(\cdot)\); a miner’s hash-power fraction is \(q\); the honest fraction is \(p = 1 - q\).

Chapter structure

Every content chapter follows the same template:

  1. Learning objectives. What you will be able to do after the chapter.
  2. Orientation. A short prose framing.
  3. The statistician’s contribution. The judgements at the centre of the chapter that no tool automates.
  4. Content sections with Check-your-understanding callouts at natural pauses.
  5. Worked example. A runnable R analysis.
  6. Collaborating with an LLM. Prompt / Watch for / Verification triples for AI assistance.
  7. Exercises. The work.
  8. Further reading. Where to go next.

The pattern repeats deliberately. By the third chapter you know where to find each component.