{
 "schema_version": "0.41",
 "paper": {
  "title": "The observed-data likelihood of ADAM and iETS with unobserved periods",
  "licence": "CC-BY-4.0",
  "declarations": {
   "funding": [],
   "competing_interests": "None declared."
  },
  "classification": {
   "subfield": "openalex:subfields/2613",
   "topics": [
    "openalex:T10974",
    "openalex:T10698",
    "openalex:T12146"
   ],
   "keywords": [
    "exponential smoothing",
    "single source of error",
    "intermittent demand",
    "missing values",
    "Kalman filter",
    "EM algorithm",
    "ADAM",
    "iETS"
   ]
  },
  "contributions": [
   "C1",
   "C2",
   "C3",
   "C4",
   "C5",
   "C6",
   "C7",
   "C8",
   "C9",
   "C10",
   "C11"
  ],
  "highlights": [
   "C1",
   "C2",
   "C5",
   "C4",
   "C8"
  ],
  "autonomy": "human_supervised",
  "contribution_record": "complete",
  "origin": "native",
  "id": "entrylib:2026.000003",
  "version": 1,
  "date": "2026-11-10",
  "status": "active"
 },
 "contributors": [
  {
   "id": "P1",
   "type": "agent",
   "name": "Claude Code",
   "positions": [
    "author"
   ],
   "models": [
    {
     "model": "M1",
     "role": "sole"
    }
   ],
   "credit_roles": [
    "writing_original_draft"
   ],
   "ai_tasks": [
    {
     "task": "json_preparation",
     "extent": "full"
    }
   ],
   "tools": [
    "code_execution",
    "file_access",
    "retrieval"
   ],
   "record_source": "harness",
   "system": {
    "name": "Claude Code"
   },
   "run_period": {
    "start": "2026-10-15",
    "end": "2026-10-15"
   }
  },
  {
   "id": "P2",
   "type": "human",
   "name": "Ivan Svetunkov",
   "orcid": "0000-0001-7826-0281",
   "positions": [
    "supervisor",
    "guarantor"
   ],
   "credit_roles": [
    "conceptualization",
    "methodology",
    "supervision"
   ]
  },
  {
   "type": "agent",
   "positions": [
    "author"
   ],
   "models": [
    {
     "model": "M1",
     "role": "sole"
    }
   ],
   "tools": [
    "code_execution",
    "file_access"
   ],
   "record_source": "user_reported",
   "id": "P3",
   "name": "Claude Code (drafting agent)",
   "credit_roles": [
    "formal_analysis",
    "methodology",
    "software",
    "writing_original_draft"
   ],
   "ai_tasks": [
    {
     "task": "analysis",
     "extent": "substantial"
    },
    {
     "task": "code",
     "extent": "substantial"
    },
    {
     "task": "writing",
     "extent": "substantial"
    }
   ],
   "system": {
    "name": "Claude Code"
   }
  },
  {
   "type": "agent",
   "positions": [
    "contributor"
   ],
   "models": [
    {
     "model": "M1",
     "role": "sole"
    }
   ],
   "tools": [
    "code_execution",
    "file_access"
   ],
   "record_source": "user_reported",
   "id": "P4",
   "name": "Claude Code (numerical evidence agent)",
   "credit_roles": [
    "investigation",
    "software",
    "validation"
   ],
   "ai_tasks": [
    {
     "task": "analysis",
     "extent": "full"
    },
    {
     "task": "code",
     "extent": "full"
    }
   ],
   "system": {
    "name": "Claude Code"
   }
  },
  {
   "id": "P5",
   "type": "agent",
   "name": "Claude Code (independent proof checker)",
   "positions": [
    "contributor"
   ],
   "models": [
    {
     "model": "M1",
     "role": "subagent"
    }
   ],
   "credit_roles": [
    "validation"
   ],
   "ai_tasks": [
    {
     "task": "review",
     "extent": "full"
    }
   ],
   "tools": [
    "code_execution",
    "file_access"
   ],
   "record_source": "self_reported",
   "run_period": {
    "start": "2026-10-15",
    "end": "2026-10-15"
   },
   "system": {
    "name": "Claude Code"
   }
  }
 ],
 "models": [
  {
   "id": "M1",
   "provider": "Anthropic",
   "name": "Claude Opus",
   "version": "5.5",
   "identifier": "claude-opus-5-5",
   "weights": "api_only",
   "accessed": "2026-10-15"
  }
 ],
 "definitions": [
  {
   "id": "D1",
   "term": "single source of error form",
   "definition": "State space form of a time series model, also called the innovations form, in which the observation equation and the state transition share one error term $\\epsilon_t$ per period: $$\\begin{aligned} z_t &= w(\\mathbf v_{t-\\mathbf l}) + r(\\mathbf v_{t-\\mathbf l})\\epsilon_t \\\\ \\mathbf v_t &= f(\\mathbf v_{t-\\mathbf l}) + g(\\mathbf v_{t-\\mathbf l})\\epsilon_t. \\end{aligned}$$",
   "kind": "method"
  },
  {
   "id": "D2",
   "term": "unobserved period",
   "definition": "A period $t$ at which the potential value $z_t$ of the modelled variable is not observed ($O_t=0$): a period with zero demand in an intermittent demand model, where the demand size is not observed, or a period with a missing value.",
   "kind": "concept"
  },
  {
   "id": "D3",
   "term": "observed-data likelihood",
   "definition": "The joint density of the observed data only, obtained by integrating the complete-data likelihood over the values $\\mathbf z_{\\mathrm{mis}}$ at the unobserved periods: $$L(\\theta)=\\int f(\\mathbf y_{\\mathrm{obs}},\\mathbf z_{\\mathrm{mis}};\\theta)\\,d\\mathbf z_{\\mathrm{mis}}.$$",
   "kind": "concept"
  },
  {
   "id": "D4",
   "term": "entropy-augmented likelihood",
   "definition": "The objective of the iETS estimator of Svetunkov and Boylan (2023, eq. B.6): the sum of the one-step log-densities of the observed demand sizes, minus the differential entropy $H_z(\\hat\\mu_t,\\sigma)$ of the size at each period with zero demand, plus the Bernoulli log-likelihood of the occurrence.",
   "kind": "concept",
   "source": "B4"
  },
  {
   "id": "D5",
   "term": "zero-error recursion",
   "definition": "The estimator used in ADAM and in iETS (Svetunkov and Boylan 2023, Appendix C): the single source of error recursion run with $\\epsilon_t=0$ at the unobserved periods and with the fixed persistence vector $\\mathbf g$ at the observed ones, with the likelihood taken as the product of one-step densities at the observed periods.",
   "kind": "method",
   "source": "B4"
  },
  {
   "id": "D6",
   "term": "ADAM multiplicative ETS",
   "definition": "Pure multiplicative exponential smoothing in the form of the Augmented Dynamic Adaptive Model, in which each component $k$ is updated by the factor $(1+\\epsilon_t)^{g_k}$; for ETS(M,Md,M) with seasonal period $m$, $$\\begin{aligned} z_t &= l_{t-1}b_{t-1}^{\\phi}s_{t-m}(1+\\epsilon_t) \\\\ l_t &= l_{t-1}b_{t-1}^{\\phi}(1+\\epsilon_t)^{\\alpha} \\\\ b_t &= b_{t-1}^{\\phi}(1+\\epsilon_t)^{\\beta} \\\\ s_t &= s_{t-m}(1+\\epsilon_t)^{\\gamma}. \\end{aligned}$$",
   "kind": "method"
  },
  {
   "id": "D7",
   "term": "conventional multiplicative ETS",
   "definition": "Pure multiplicative exponential smoothing in the form of Hyndman et al. (2008), in which each component $k$ is updated by the factor $1+g_k\\epsilon_t$; for ETS(M,Md,M) with seasonal period $m$, $$\\begin{aligned} z_t &= l_{t-1}b_{t-1}^{\\phi}s_{t-m}(1+\\epsilon_t) \\\\ l_t &= l_{t-1}b_{t-1}^{\\phi}(1+\\alpha\\epsilon_t) \\\\ b_t &= b_{t-1}^{\\phi}(1+\\beta\\epsilon_t) \\\\ s_t &= s_{t-m}(1+\\gamma\\epsilon_t). \\end{aligned}$$",
   "kind": "method"
  },
  {
   "id": "D8",
   "term": "SSOE Kalman filter",
   "definition": "The recursion for the conditional mean $\\mathbf a_t$ and scaled covariance $\\mathbf P_t$ of the state of a linear single source of error model: at an observed period $$\\begin{aligned} v_t &= z_t-\\mathbf w'\\mathbf a_t \\\\ f_t &= \\mathbf w'\\mathbf P_t\\mathbf w+1 \\\\ \\mathbf k_t &= (\\mathbf F\\mathbf P_t\\mathbf w+\\mathbf g)/f_t \\\\ \\mathbf a_{t+1} &= \\mathbf F\\mathbf a_t+\\mathbf k_t v_t \\\\ \\mathbf P_{t+1} &= \\mathbf F\\mathbf P_t\\mathbf F'+\\mathbf g\\mathbf g'-\\mathbf k_t\\mathbf k_t'f_t; \\end{aligned}$$ at an unobserved period $$\\begin{aligned} \\mathbf a_{t+1} &= \\mathbf F\\mathbf a_t \\\\ \\mathbf P_{t+1} &= \\mathbf F\\mathbf P_t\\mathbf F'+\\mathbf g\\mathbf g'; \\end{aligned}$$ started from $\\mathbf a_1=\\mathbf x_0$, $\\mathbf P_1=\\mathbf 0$.",
   "kind": "method"
  },
  {
   "id": "D9",
   "term": "drift of the states",
   "definition": "The change $d_t=\\log(\\mu_t/\\hat\\mu_t)$ of the logarithm of the location of a pure multiplicative model accumulated over the unobserved periods since the last observed period, relative to the point forecast $\\hat\\mu_t$ with zero errors.",
   "kind": "concept"
  },
  {
   "id": "D10",
   "term": "normal-drift mixture density",
   "definition": "Approximate predictive density of a demand size after $j_t-1$ unobserved periods: the one-step density $f_z(z_t\\mid\\hat\\mu_t e^{d})$ mixed over a normal [[D9:drift of the states]] $d\\sim\\mathcal N(m_t,w_t)$, with $m_t$, $w_t$ computed by 32-node Gauss-Legendre quadrature on the quantile function of $1+\\epsilon$ and the mixture by Gauss-Hermite quadrature.",
   "kind": "method"
  },
  {
   "id": "D11",
   "term": "one-step density",
   "kind": "method",
   "definition": "The density of a demand size after an interval taken as the one-step density $f_z(z_t\\mid\\hat\\mu_t)$ of the model, without the [[D9:drift of the states]] over the unobserved periods."
  },
  {
   "id": "D12",
   "term": "iETS(M,N,N)",
   "kind": "data",
   "definition": "Intermittent demand sizes $$z_t=l_{t-1}(1+\\epsilon_t)$$ with $\\E(1+\\epsilon_t)=1$ and $\\Var(1+\\epsilon_t)=s$, Gamma, log-normal or inverse Gaussian $1+\\epsilon_t$ (the greybox parameterisation of the package) and the level moving at every period, observed or not: $$l_t=l_{t-1}(1+\\epsilon_t)^\\alpha$$ in the [[D6:ADAM multiplicative ETS]] and $$l_t=l_{t-1}(1+\\alpha\\epsilon_t)$$ in the [[D7:conventional multiplicative ETS]]."
  },
  {
   "id": "D13",
   "term": "exact density by convolution",
   "kind": "design",
   "definition": "The exact density of the size after an interval, computed on a grid of step 0.001 in $\\log z$ by FFT convolution with tails cut at 1e-12, compared with an approximation by the largest Kullback-Leibler divergence per observation over $s$ from 0.05 to 1 in steps of 0.05, $\\alpha$ from 0.1 to 0.6 in steps of 0.05 and $j$ from 2 to 20 (kl_mixture.py); a refinement of 164 cells halved the step and cut the tails at 1e-14."
  },
  {
   "id": "D14",
   "term": "Kullback-Leibler divergence",
   "kind": "variable",
   "definition": "The divergence $\\int g\\log(g/h)$ of an approximate density $h$ from the exact density $g$, per observation; over a grid, its largest value."
  },
  {
   "id": "D15",
   "term": "fixed-point moment estimator",
   "kind": "method",
   "definition": "The estimator of the scale $s$ of Gamma or inverse Gaussian sizes that solves the moment equation $s=h(s)$, built from the moments of the drift factor $D_t$, by the iteration $s\\leftarrow h(s)$ from the one-step estimate, stopping at $|s_{new}-s|\\le 10^{-10}s$ or after 100 iterations; a fit fails when an iterate is not positive and finite, the iteration does not converge, or the value leaves the admissible range."
  },
  {
   "id": "D16",
   "term": "Monte Carlo study of the scale",
   "kind": "design",
   "definition": "480 cells of relative errors simulated with the drift ($s\\in\\{0.05,0.2,0.5,1\\}$, $\\alpha\\in\\{0.1,0.3,0.6\\}$, intervals fixed at 2, 5 or 10 or geometric with occurrence probability 0.5 or 0.2, 100 or 1000 observed sizes) and 120 cells within fitted models ($s\\in\\{0.05,0.5\\}$, 100 observed sizes), 2000 replications per cell from numpy SeedSequence(20261015) with one child stream per cell; cells grouped by the drift order $\\E(j-1)\\alpha^2s$ (scale_recovery.py)."
  },
  {
   "id": "D17",
   "term": "relative bias",
   "kind": "variable",
   "definition": "The relative bias of a scale estimate, (mean estimate $- s$)$/s$ over the replications of a cell; its median over cells."
  },
  {
   "id": "D18",
   "term": "failed fits",
   "kind": "variable",
   "definition": "The share of replications in which the scale estimator fails."
  },
  {
   "id": "D19",
   "term": "approximate prediction interval",
   "kind": "method",
   "definition": "The prediction interval of pure multiplicative ETS in the smooth package (generate_prediction_interval with var_anal): the point forecast with zero errors times the quantile of the distribution with mean one and variance $$V_h=(1+v)(1+\\alpha^2v)^{h-1}-1,$$ $v=\\Var(1+\\epsilon)$; for the [[D6:ADAM multiplicative ETS]] with the log-normal distribution, exact in logarithms."
  },
  {
   "id": "D20",
   "term": "ETS(M,N,N) with s = 0.32 and alpha = 0.21",
   "kind": "data",
   "definition": "ETS(M,N,N) with $s=0.32$, $\\alpha=0.21$, 100 observations and initial level 10, with Gamma, inverse Gaussian or log-normal errors, in the ADAM and conventional forms; in the second case the last six of the 100 periods unobserved."
  },
  {
   "id": "D21",
   "term": "simulated paths",
   "kind": "design",
   "definition": "The 0.95 quantile of 1,000,000 simulated paths divided by the point forecast with zero errors, twelve steps ahead and 18 steps from the last observed period after six unobserved periods at the end of the sample (interval_bounds.py, seed 20261015)."
  },
  {
   "id": "D22",
   "term": "upper bound over the point forecast",
   "kind": "variable",
   "definition": "The upper bound of the 90% prediction interval (its 0.95 quantile) divided by the point forecast with zero errors."
  },
  {
   "id": "D23",
   "term": "low-rank factor form",
   "kind": "method",
   "definition": "The [[D8:SSOE Kalman filter]] with the scaled state covariance kept as a low-rank factor $\\mathbf P_t=\\mathbf U_t\\mathbf U_t'$, updated by rank one at each observed period, as in the C++ core of smooth (src/headers/adamCore.h).",
   "broader": [
    "D8"
   ]
  },
  {
   "id": "D24",
   "term": "full covariance form",
   "kind": "method",
   "definition": "The [[D8:SSOE Kalman filter]] with the whole scaled state covariance matrix $\\mathbf P_t$.",
   "broader": [
    "D8"
   ]
  },
  {
   "id": "D25",
   "term": "hourly series with missing values",
   "kind": "data",
   "definition": "1344 hourly observations, generated by ADAM ETS(A,N,A) with lags 24 and 168 or following a fixed sine pattern, with 1 to 48 nested missing values, fitted by ADAM ETS(A,N,A) with lags 24 and 168 (193 state cells), the normal distribution and backcast initial states."
  },
  {
   "id": "D26",
   "term": "interleaved timing",
   "kind": "design",
   "definition": "25 interleaved repetitions per case of the fits with the two forms of the filter, both built from smooth commit 53104ee9, on one cloud VM (Intel Xeon 2.80 GHz, 4 vCPUs, Linux 6.18.44, Python 3.11.15) with one thread (lowrank_timing.py)."
  },
  {
   "id": "D27",
   "term": "speed-up",
   "kind": "variable",
   "definition": "The median run time of the [[D24:full covariance form]] divided by that of the [[D23:low-rank factor form]]."
  },
  {
   "id": "D28",
   "term": "family-scaled error",
   "kind": "method",
   "definition": "The approximation of the predictive density of a pure additive model with Laplace, S or Generalised Normal errors that keeps the error in its family with scale $sf_t^{1/p}$, $p$ such that the variance is proportional to $s^p$, as in the smooth package."
  },
  {
   "id": "D29",
   "term": "Gauss-Hermite mixture",
   "kind": "method",
   "definition": "The mixture of the error density over the normal uncertainty of the states by a Gauss-Hermite rule with $Q$ nodes (16 in the smooth package)."
  },
  {
   "id": "D30",
   "term": "additive errors with state uncertainty",
   "kind": "data",
   "definition": "Laplace, S and Generalised Normal (shape 0.5 to 3) errors with scale $s=1$, convolved with normal state uncertainty of variance $(f_t-1)V(s)$, for 22 values of $f_t$ from 1.01 to 100 (kl_laplace.py)."
  },
  {
   "id": "D31",
   "term": "divergence by numerical integration",
   "kind": "design",
   "definition": "The Kullback-Leibler divergence in both directions between the exact convolution and each approximation, by composite 8-node Gauss-Legendre integration (kl_laplace.py)."
  }
 ],
 "claims": [
  {
   "id": "C1",
   "statement": "For a model of intermittent demand $y_t=o_tz_t$ with Bernoulli occurrence $o_t\\sim\\text{Bernoulli}(p_t)$ independent of a continuous size $z_t$, the [[D3:observed-data likelihood]] is $$\\sum_{O_t=1}\\log f(z_t\\mid Y_{t-1};\\theta) + \\sum_{O_t=1}\\log p_t + \\sum_{O_t=0}\\log(1-p_t),$$ in which the unobserved sizes do not appear and the size and occurrence parts separate.",
   "about": {
    "subject": "D3",
    "relation": "separates into a size part and an occurrence part for",
    "object": "models of intermittent demand",
    "comparator": null,
    "conditions": [
     "Bernoulli occurrence independent of a continuous size"
    ]
   },
   "type": "formal",
   "role": "principal",
   "novelty": "no_prior_found",
   "scope": {
    "population": "models of intermittent demand $y_t=o_tz_t$ (iETS, ADAM with an occurrence part)",
    "data_type": "intermittent demand time series",
    "conditions": [
     "Bernoulli occurrence independent of a continuous demand size"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E1"
    }
   ],
   "assumptions": [
    "C30",
    "C31",
    "C32"
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C2",
   "statement": "The stationary points of the [[D4:entropy-augmented likelihood]] of iETS differ in general from those of the [[D3:observed-data likelihood]], because the entropy term $-H_z(\\theta)$ has a non-zero gradient in the parameters while the cross-entropy of the EM E-step has zero gradient at the current estimate.",
   "about": {
    "subject": "D4",
    "relation": "has stationary points that differ in general from those of",
    "object": "D3",
    "comparator": null,
    "conditions": []
   },
   "type": "formal",
   "role": "principal",
   "novelty": "refutation",
   "scope": {
    "population": "iETS estimated by the entropy-augmented likelihood",
    "data_type": "intermittent demand time series",
    "conditions": [
     "sizes unobserved at the periods with zero demand"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E2"
    },
    {
     "kind": "cited",
     "reference": "B1",
     "self": false
    }
   ],
   "assumptions": [
    "C31",
    "C32"
   ],
   "depends_on": [
    "C1"
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "relations": [
    {
     "type": "contradicts",
     "target": "doi:10.1016/j.ijpe.2023.109013",
     "id_type": "doi",
     "locator": "Appendix B, eq. B.6 (likelihood with the differential entropy of the unobserved sizes, derived by analogy with the EM algorithm)",
     "self": true
    }
   ],
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C3",
   "statement": "For normally distributed demand sizes with fixed location, the maximiser in the variance of the [[D4:entropy-augmented likelihood]] is $\\frac{T_1}{T}\\hat\\sigma^2$, where $\\hat\\sigma^2=\\frac{1}{T_1}\\sum_{O_t=1}e_t^2$ is the fixed point of the EM algorithm, $T$ the number of periods and $T_1$ the number of periods with observed sizes.",
   "about": {
    "subject": "D4",
    "relation": "is maximised at T1/T times the EM fixed point in",
    "object": "the variance of the sizes",
    "comparator": null,
    "conditions": [
     "normal sizes",
     "location held fixed"
    ]
   },
   "type": "formal",
   "role": "principal",
   "novelty": "no_prior_found",
   "scope": {
    "population": "iETS with normally distributed demand sizes",
    "conditions": [
     "location of the sizes held fixed",
     "variance as the only free parameter"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E3"
    }
   ],
   "depends_on": [
    "C2"
   ],
   "verification": "agent_checked",
   "checks": [
    {
     "by": "P5",
     "outcome": "confirmed",
     "extent": "full",
     "notes": "The independent proof checker re-derived the proof of E3 step by step and confirmed it."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C4",
   "statement": "For a pure additive single source of error model with normal errors and [[D2:unobserved period]]s, the [[D8:SSOE Kalman filter]] gives $z_t\\mid Y_{t-1}\\sim\\mathcal N(\\mathbf w'\\mathbf a_t,\\sigma^2 f_t)$ at the observed periods, the exact observed-data log-likelihood $$-\\frac12\\sum_{O_t=1}\\left[\\log(2\\pi\\sigma^2f_t)+\\frac{v_t^2}{\\sigma^2f_t}\\right],$$ and the concentrated variance $$\\hat\\sigma^2=\\frac{1}{T_1}\\sum_{O_t=1}\\frac{v_t^2}{f_t}.$$",
   "about": {
    "subject": "D8",
    "relation": "gives the exact observed-data likelihood of",
    "object": "pure additive SSOE models with normal errors",
    "comparator": null,
    "conditions": [
     "D2"
    ]
   },
   "type": "formal",
   "role": "principal",
   "novelty": "extension",
   "scope": {
    "population": "pure additive single source of error models (ETS with additive components, ARIMA, regression)",
    "data_type": "univariate time series with unobserved periods",
    "conditions": [
     "normally distributed errors",
     "initial states treated as fixed parameters"
    ],
    "excludes": [
     "models mixing additive and multiplicative components"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E4"
    }
   ],
   "assumptions": [
    "C30",
    "C33",
    "C34",
    "C35"
   ],
   "depends_on": [
    "C1"
   ],
   "verification": "agent_checked",
   "checks": [
    {
     "by": "P5",
     "outcome": "confirmed",
     "extent": "full",
     "notes": "The independent proof checker re-derived the proof of E4 step by step and confirmed it."
    }
   ],
   "provenance": "author_stated",
   "relations": [
    {
     "type": "extends",
     "target": "doi:10.1017/cbo9781107049994",
     "id_type": "doi",
     "locator": "Kalman filter for state space models with correlated disturbances",
     "self": false
    },
    {
     "type": "extends",
     "target": "doi:10.1093/acprof:oso/9780199641178.001.0001",
     "id_type": "doi",
     "locator": "Kalman filter for state space models with correlated disturbances",
     "self": false
    }
   ],
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C5",
   "statement": "For pure additive single source of error models with normal errors, [[D2:unobserved period]]s and persistence vector $\\mathbf g\\neq\\mathbf 0$, the maximiser of the [[D5:zero-error recursion]] likelihood is not the maximum likelihood estimator, because the zero-error recursion uses error variance $\\sigma^2$ instead of $\\sigma^2f_t\\geq\\sigma^2$ and gain $\\mathbf g$ instead of $\\mathbf k_t$ at the observed periods after an unobserved one.",
   "about": {
    "subject": "D5",
    "relation": "is not the maximum likelihood estimator of",
    "object": "pure additive SSOE models with normal errors",
    "comparator": null,
    "conditions": [
     "D2",
     "nonzero persistence vector"
    ]
   },
   "type": "formal",
   "role": "principal",
   "novelty": "refutation",
   "scope": {
    "population": "pure additive single source of error models",
    "data_type": "univariate time series with unobserved periods",
    "conditions": [
     "normally distributed errors",
     "persistence vector $\\mathbf g\\neq\\mathbf 0$"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E6"
    }
   ],
   "assumptions": [
    "C30",
    "C33",
    "C34",
    "C35"
   ],
   "depends_on": [
    "C4"
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "relations": [
    {
     "type": "contradicts",
     "target": "doi:10.1016/j.ijpe.2023.109013",
     "id_type": "doi",
     "locator": "Appendix C (estimation with zero errors at the unobserved periods)",
     "self": true
    }
   ],
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C6",
   "statement": "For the [[D6:ADAM multiplicative ETS]] with the log-normal distribution and [[D2:unobserved period]]s, the [[D8:SSOE Kalman filter]] applied to $\\log z_t$, with the known error mean $-s/2$ added to the propagation and the prediction, gives the exact observed-data likelihood, and the maximum likelihood scale $s$ is the positive root of $$\\Big(\\sum \\frac{b_t^2}{f_t}\\Big)s^2+T_1s-\\sum\\frac{(v_t^0)^2}{f_t}=0,$$ where $v_t(s)=v_t^0+sb_t$ is the filter's prediction error.",
   "about": {
    "subject": "D8",
    "relation": "gives in logarithms the exact observed-data likelihood of",
    "object": "D6",
    "comparator": null,
    "conditions": [
     "log-normal distribution",
     "D2"
    ]
   },
   "type": "formal",
   "role": "principal",
   "novelty": "no_prior_found",
   "scope": {
    "population": "pure multiplicative ETS in the ADAM form",
    "data_type": "positive univariate time series with unobserved periods",
    "conditions": [
     "log-normal distribution with $\\E(1+\\epsilon_t)=1$"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E9"
    }
   ],
   "assumptions": [
    "C30",
    "C33",
    "C34",
    "C36"
   ],
   "depends_on": [
    "C4",
    "C12"
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C7",
   "statement": "For the [[D6:ADAM multiplicative ETS]] with the log-normal distribution and all periods observed, the maximum likelihood estimate of the scale is $\\hat s=2(\\sqrt{1+m}-1)$ with $m=\\frac{1}{T_1}\\sum\\log^2(1+\\epsilon_t)$.",
   "about": {
    "subject": "D6",
    "relation": "has the maximum likelihood scale 2(sqrt(1+m)-1)",
    "object": null,
    "comparator": null,
    "conditions": [
     "log-normal distribution",
     "every period observed"
    ]
   },
   "type": "formal",
   "role": "principal",
   "novelty": "no_prior_found",
   "scope": {
    "population": "pure multiplicative ETS in the ADAM form",
    "data_type": "positive univariate time series",
    "conditions": [
     "log-normal distribution with $\\E(1+\\epsilon_t)=1$",
     "every period observed"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E10"
    }
   ],
   "assumptions": [
    "C30",
    "C36"
   ],
   "depends_on": [
    "C6"
   ],
   "verification": "agent_checked",
   "checks": [
    {
     "by": "P5",
     "outcome": "confirmed",
     "extent": "full",
     "notes": "The independent proof checker re-derived the proof of E10 step by step and confirmed it."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C8",
   "statement": "The log-normal scale estimator $2(1-\\sqrt{1-m})$ used in ADAM, with $m=\\frac{1}{T_1}\\sum\\log^2(1+\\epsilon_t)$, is not the maximum likelihood estimator: it overestimates the scale $s$ by about 35% at $s=0.5$ (0.677 against 0.5 when $m=s+s^2/4$) and is undefined for $m>1$.",
   "about": {
    "subject": "the log-normal scale estimator 2(1-sqrt(1-m)) used in ADAM",
    "relation": "is not the maximum likelihood estimator of",
    "object": "the scale s",
    "comparator": null,
    "conditions": []
   },
   "type": "formal",
   "role": "principal",
   "novelty": "refutation",
   "scope": {
    "population": "pure multiplicative ETS in the ADAM form",
    "data_type": "positive univariate time series",
    "conditions": [
     "log-normal distribution with $\\E(1+\\epsilon_t)=1$",
     "every period observed"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E10"
    }
   ],
   "assumptions": [
    "C36"
   ],
   "depends_on": [
    "C7"
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "relations": [
    {
     "type": "contradicts",
     "target": "doi:10.1201/9781003452652",
     "id_type": "doi",
     "locator": "estimator of the scale of the log-normal distribution",
     "self": true
    }
   ],
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C9",
   "statement": "For [[D12:iETS(M,N,N)]] in the [[D7:conventional multiplicative ETS]] form, the [[D10:normal-drift mixture density]] of the demand size after an interval had a largest [[D14:Kullback-Leibler divergence]] per observation from the exact density at least three orders of magnitude smaller than that of [[D11:the one-step density]], for the Gamma, the log-normal and the inverse Gaussian distribution.",
   "about": {
    "subject": "D10",
    "relation": "has a smaller Kullback-Leibler divergence from the exact density than",
    "object": [
     "D14"
    ],
    "comparator": "D11",
    "conditions": [
     "D12",
     "D7"
    ]
   },
   "type": "descriptive",
   "role": "principal",
   "novelty": "no_prior_found",
   "scope": {
    "population": "iETS(M,N,N) with Gamma, log-normal and inverse Gaussian sizes",
    "conditions": [
     "scale $s\\in[0.05,1]$",
     "smoothing parameter $\\alpha\\in[0.1,0.6]$",
     "interval length $j\\in[2,20]$",
     "states known at the previous observed period"
    ],
    "excludes": [
     "models with trend or seasonality",
     "ADAM multiplicative ETS"
    ]
   },
   "support": [
    {
     "kind": "simulation",
     "evidence": "E20",
     "artefacts": [
      "A3",
      "A4",
      "A5"
     ],
     "results": [
      "E20.T1.r1",
      "E20.T1.r2",
      "E20.T1.r3"
     ]
    }
   ],
   "assumptions": [
    "C37"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Deterministic archived computation with a refinement check; one model, one grid, and values that differ from those first reported in the source draft."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C10",
   "statement": "For a model with an occurrence part and occurrence probability $p_t$, a prediction interval of the demand with coverage $c$ that counts the zeros as covered is an interval of the demand sizes with coverage $(c-(1-p_t))/p_t$, centred on the size forecast $\\hat\\mu_t$ rather than on the demand forecast $p_t\\hat\\mu_t$.",
   "about": {
    "subject": "a prediction interval of the demand that counts zeros as covered",
    "relation": "is an interval of the demand sizes centred on",
    "object": "the size forecast",
    "comparator": null,
    "conditions": [
     "models with an occurrence part"
    ]
   },
   "type": "formal",
   "role": "principal",
   "novelty": "no_prior_found",
   "scope": {
    "population": "models with an occurrence part (iETS, ADAM)",
    "conditions": [
     "prediction interval of the demand that counts zeros as covered",
     "Bernoulli occurrence independent of a continuous demand size"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E12"
    }
   ],
   "assumptions": [
    "C31",
    "C32"
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C11",
   "statement": "The smooth package for R and Python implements the [[D3:observed-data likelihood]] without the entropy term, the [[D8:SSOE Kalman filter]] for the pure additive models with the normal distribution and in logarithms for the [[D6:ADAM multiplicative ETS]] with the log-normal distribution, the [[D10:normal-drift mixture density]] with moment-equation scales for the other pure multiplicative models, and the corrected log-normal scale, in one C++ routine shared by both languages.",
   "about": {
    "subject": "the smooth package for R and Python",
    "relation": "implements",
    "object": "D3",
    "comparator": null,
    "conditions": []
   },
   "type": "methodological",
   "role": "principal",
   "novelty": "no_prior_found",
   "scope": {
    "setting": "smooth package for R and Python, master branch at commit 8a5fbbb3"
   },
   "support": [
    {
     "kind": "demonstration",
     "artefacts": [
      "A2"
     ]
    }
   ],
   "depends_on": [
    "C1",
    "C4",
    "C6",
    "C7"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Implementation exists in the public repository; correctness relies on the package tests, not on independent verification."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C12",
   "statement": "In the [[D6:ADAM multiplicative ETS]], the logarithms of the observation and of the components follow a linear single source of error model with innovation $u_t=\\log(1+\\epsilon_t)$ and the measurement, transition and persistence of the corresponding additive model, whereas in the [[D7:conventional multiplicative ETS]] the innovation of component $k$ is $\\log(1+g_k\\epsilon_t)$, which is not proportional to $u_t$.",
   "about": {
    "subject": "D6",
    "relation": "is a linear SSOE model in logarithms, unlike",
    "object": null,
    "comparator": "D7",
    "conditions": []
   },
   "type": "formal",
   "role": "supporting",
   "novelty": "no_prior_found",
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E8"
    }
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "scope": {
    "population": "pure multiplicative ETS in the ADAM and conventional forms"
   },
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C13",
   "statement": "With a dynamic model for the scale, the [[D4:entropy-augmented likelihood]] of iETS is unbounded, because the entropy terms of the periods with zero demand reward a scale going to zero for the normal distribution and to infinity for the Gamma distribution.",
   "about": {
    "subject": "D4",
    "relation": "is unbounded with",
    "object": "a dynamic model for the scale",
    "comparator": null,
    "conditions": [
     "normal or Gamma sizes"
    ]
   },
   "type": "formal",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "iETS with a dynamic model for the scale of the demand sizes",
    "conditions": [
     "normal or Gamma distribution of the sizes"
    ]
   },
   "support": [
    {
     "kind": "argument",
     "warrant": "W1"
    }
   ],
   "depends_on": [
    "C2"
   ],
   "warrant": "W1",
   "provenance": "author_stated",
   "verification": "unchecked",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C14",
   "statement": "With the differential entropy defined as $H=-\\E\\log f$, the sign of the entropy term in equations 29 and B.6 of Svetunkov and Boylan (2023) should be negative.",
   "about": {
    "subject": "the entropy term in eqs 29 and B.6 of Svetunkov and Boylan (2023)",
    "relation": "should have the sign",
    "object": "negative",
    "comparator": null,
    "conditions": [
     "differential entropy defined as H = -E log f"
    ]
   },
   "type": "formal",
   "role": "secondary",
   "novelty": "refutation",
   "support": [
    {
     "kind": "argument",
     "warrant": "W2"
    },
    {
     "kind": "cited",
     "reference": "B4",
     "locator": "eq. 29 and eq. B.6",
     "self": true
    }
   ],
   "warrant": "W2",
   "provenance": "author_stated",
   "verification": "unchecked",
   "relations": [
    {
     "type": "contradicts",
     "target": "doi:10.1016/j.ijpe.2023.109013",
     "id_type": "doi",
     "locator": "eq. 29 and eq. B.6 (sign of the entropy term)",
     "self": true
    }
   ],
   "scope": {
    "population": "iETS objective of Svetunkov and Boylan (2023)"
   },
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C15",
   "statement": "When every period is observed, the [[D8:SSOE Kalman filter]] keeps $\\mathbf P_t=\\mathbf 0$, has gain $\\mathbf k_t=\\mathbf g$ and $f_t=1$, and coincides with the single source of error recursion and the likelihood of the one-step errors.",
   "about": {
    "subject": "D8",
    "relation": "coincides with the SSOE recursion when",
    "object": "every period is observed",
    "comparator": null,
    "conditions": []
   },
   "type": "formal",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "pure additive single source of error models",
    "data_type": "univariate time series",
    "conditions": [
     "every period observed"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E5"
    },
    {
     "kind": "cited",
     "reference": "B2",
     "self": false
    },
    {
     "kind": "cited",
     "reference": "B3",
     "self": false
    }
   ],
   "depends_on": [
    "C4"
   ],
   "verification": "agent_checked",
   "checks": [
    {
     "by": "P5",
     "outcome": "confirmed",
     "extent": "full",
     "notes": "The independent proof checker re-derived the proof of E5 step by step and confirmed it."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C16",
   "statement": "For ETS(A,N,N) with smoothing parameter $\\alpha$ and zero state covariance before an interval of $j$ periods, the gain of the [[D8:SSOE Kalman filter]] at the end of the interval is $$\\alpha_j=\\frac{(j-1)\\alpha^2+\\alpha}{(j-1)\\alpha^2+1},$$ which equals $\\alpha$ for $j=1$ and tends to one as $j$ grows.",
   "about": {
    "subject": "D8",
    "relation": "has at the end of an interval of j periods the gain",
    "object": "((j-1) alpha^2 + alpha) / ((j-1) alpha^2 + 1)",
    "comparator": null,
    "conditions": [
     "ETS(A,N,N)",
     "zero state covariance before the interval"
    ]
   },
   "type": "formal",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "ETS(A,N,N)",
    "conditions": [
     "normally distributed errors",
     "zero state covariance before an interval of $j$ periods"
    ]
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E7"
    }
   ],
   "depends_on": [
    "C4"
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C17",
   "statement": "For pure multiplicative models with the Gamma, log-normal or inverse Gaussian distribution, if $1+e_t=(1+\\epsilon_t)D_t$ with $D_t=e^{d_t}$ independent of $\\epsilon_t$, $\\E(1+\\epsilon_t)=1$ and $\\Var(1+\\epsilon_t)=s$, then $$\\E(e_t^2)=(1+s)\\E(D_t^2)-2\\E(D_t)+1,$$ and for the inverse Gaussian distribution $$\\E\\big(e_t^2/(1+e_t)\\big)=\\E(D_t)-2+(1+s)\\E(D_t^{-1}).$$",
   "about": {
    "subject": "the errors of pure multiplicative models with drift",
    "relation": "have second moments given by the moments of",
    "object": "the drift factor",
    "comparator": null,
    "conditions": [
     "Gamma, log-normal or inverse Gaussian distribution",
     "drift factor independent of the error"
    ]
   },
   "type": "formal",
   "role": "secondary",
   "novelty": "no_prior_found",
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E11"
    }
   ],
   "depends_on": [
    "C12"
   ],
   "verification": "agent_checked",
   "checks": [
    {
     "by": "P5",
     "outcome": "confirmed",
     "extent": "full",
     "notes": "The independent proof checker re-derived the proof of E11 step by step and confirmed it."
    }
   ],
   "provenance": "author_stated",
   "scope": {
    "population": "pure multiplicative models with Gamma, log-normal or inverse Gaussian errors",
    "conditions": [
     "drift factor $D_t$ independent of $\\epsilon_t$"
    ]
   },
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C18",
   "statement": "On errors simulated with the [[D9:drift of the states]] of [[D12:iETS(M,N,N)]] and 1000 observed sizes, the [[D15:fixed-point moment estimator]] of the Gamma and inverse Gaussian scale had a median [[D17:relative bias]] of +0.02% with no [[D18:failed fits]] when the drift order $\\E(j-1)\\alpha^2s$ was at most 0.02, and failed in 18%, 52% and 71% of fits for drift orders of 0.02 to 0.1, 0.1 to 0.3 and above 0.3.",
   "about": {
    "subject": "D15",
    "relation": "recovers the scale without bias at small drift and fails more often at larger drift on",
    "object": [
     "D17",
     "D18"
    ],
    "comparator": null,
    "conditions": [
     "D12"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "iETS(M,N,N) with Gamma and inverse Gaussian sizes",
    "conditions": [
     "errors simulated with the drift, outside a fitted model",
     "1000 observed sizes per series",
     "$s\\in\\{0.05,0.2,0.5,1\\}$, $\\alpha\\in\\{0.1,0.3,0.6\\}$"
    ]
   },
   "support": [
    {
     "kind": "simulation",
     "evidence": "E21",
     "artefacts": [
      "A3",
      "A6"
     ],
     "results": [
      "E21.T1.r1",
      "E21.T1.r2",
      "E21.T1.r3",
      "E21.T1.r4"
     ]
    }
   ],
   "assumptions": [
    "C37"
   ],
   "limitations": [
    "L1"
   ],
   "depends_on": [
    "C17"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Archived Monte Carlo study with 2000 replications per cell; groups by drift order are coarse."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C19",
   "statement": "The point forecast with zero errors of the [[D6:ADAM multiplicative ETS]] is not the conditional mean, because $\\E(1+\\epsilon_t)^{g_k}<1$ for $0<g_k<1$; for ETS(M,N,N) with Gamma errors of mean one and variance $s$ the conditional mean $h$ steps ahead is $$\\hat\\mu_{T+h}\\left[\\frac{\\Gamma(1/s+\\alpha)s^{\\alpha}}{\\Gamma(1/s)}\\right]^{h-1}.$$",
   "about": {
    "subject": "D6",
    "relation": "has a point forecast with zero errors below",
    "object": "the conditional mean",
    "comparator": null,
    "conditions": [
     "0 < g_k < 1"
    ]
   },
   "type": "formal",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "pure multiplicative ETS in the ADAM form"
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E13"
    }
   ],
   "assumptions": [
    "C30"
   ],
   "verification": "unchecked",
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C20",
   "statement": "For [[D20:ETS(M,N,N)]] in the [[D6:ADAM multiplicative ETS]] form with Gamma errors, $s=0.32$ and $\\alpha=0.21$, the [[D19:approximate upper bound of the 90% prediction interval]] divided by the point forecast was 2.431 against 1.807 from [[D21:simulated paths]] twelve steps ahead, and 2.616 against 1.638 after six unobserved periods at the end of the sample.",
   "about": {
    "subject": "D19",
    "relation": "gives a higher upper bound over the point forecast than",
    "object": null,
    "comparator": "D21",
    "conditions": [
     "D20",
     "D6"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "ETS(M,N,N) in the ADAM form",
    "conditions": [
     "Gamma errors",
     "$s=0.32$",
     "$\\alpha=0.21$",
     "100 observations"
    ]
   },
   "support": [
    {
     "kind": "simulation",
     "evidence": "E22",
     "artefacts": [
      "A3",
      "A7"
     ],
     "results": [
      "E22.R1",
      "E22.R2",
      "E22.R3",
      "E22.R4"
     ]
    }
   ],
   "depends_on": [
    "C19"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Archived simulation with 1,000,000 paths; one parameter setting."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C21",
   "statement": "With a single source of error, the scaled state covariance $\\mathbf P_t$ of the [[D8:SSOE Kalman filter]] has rank at most the number of [[D2:unobserved period]]s since it last vanished, which allows a low-rank factor $\\mathbf P_t=\\mathbf U_t\\mathbf U_t'$ with a rank-one update at each observed period.",
   "about": {
    "subject": "D8",
    "relation": "has a state covariance of rank at most the number of unobserved periods since it last vanished",
    "object": null,
    "comparator": null,
    "conditions": [
     "D2"
    ]
   },
   "type": "formal",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "linear single source of error models",
    "data_type": "univariate time series with unobserved periods"
   },
   "support": [
    {
     "kind": "formal_proof",
     "evidence": "E14"
    }
   ],
   "depends_on": [
    "C4"
   ],
   "verification": "agent_checked",
   "checks": [
    {
     "by": "P5",
     "outcome": "confirmed",
     "extent": "full",
     "notes": "The independent proof checker re-derived the proof of E14 step by step and confirmed it."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C22",
   "statement": "For ADAM ETS(A,N,A) with lags 24 and 168 (193 state cells) on [[D25:1344 hourly observations]] generated by ETS(A,N,A), the [[D23:low-rank factor form]] of the [[D8:SSOE Kalman filter]] was 10.55 times faster than the [[D24:full covariance form]] for one missing value and 3.50 times faster for 48, with log-likelihoods equal to within 4.5e-13.",
   "about": {
    "subject": "D23",
    "relation": "is faster than",
    "object": null,
    "comparator": "D24",
    "conditions": [
     "D25"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "ADAM ETS(A,N,A) with double seasonality",
    "data_type": "hourly time series with missing values",
    "conditions": [
     "lags 24 and 168",
     "1344 observations",
     "1 to 48 missing values",
     "data generated by ETS(A,N,A)",
     "one filter pass, one thread"
    ]
   },
   "support": [
    {
     "kind": "empirical_quant",
     "evidence": "E23",
     "artefacts": [
      "A3",
      "A8"
     ],
     "results": [
      "E23.R1",
      "E23.R2",
      "E23.R3"
     ]
    }
   ],
   "limitations": [
    "L2"
   ],
   "depends_on": [
    "C21"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Archived timing with 25 interleaved repetitions; one machine and one model configuration."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C23",
   "statement": "In the smooth package, the [[D8:SSOE Kalman filter]] replaces the fitter only in the last forward pass after backcasting of the initial states, so that fits of series without [[D2:unobserved period]]s are unchanged.",
   "about": {
    "subject": "D8",
    "relation": "replaces the fitter only in the last forward pass after backcasting in",
    "object": "the smooth package",
    "comparator": null,
    "conditions": [
     "D2"
    ]
   },
   "type": "methodological",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "setting": "smooth package for R and Python"
   },
   "support": [
    {
     "kind": "demonstration",
     "artefacts": [
      "A2"
     ]
    },
    {
     "kind": "argument",
     "warrant": "W3"
    }
   ],
   "depends_on": [
    "C15"
   ],
   "warrant": "W3",
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Follows from the complete-data identity and the implementation design; equality to the last bit is stated, not documented by a test reported in the source."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C24",
   "statement": "For [[D30:the pure additive models with the Laplace, S and Generalised Normal distributions]], the smooth package keeps [[D28:the error in its family]] with scale $sf_t^{1/p}$, and the [[D14:Kullback-Leibler divergence]] of this approximation from the exact density is 0.0491 for the Laplace distribution and 0.260 for the S distribution at $f_t=4$.",
   "about": {
    "subject": "D28",
    "relation": "has a small Kullback-Leibler divergence from the exact density on",
    "object": [
     "D14"
    ],
    "comparator": null,
    "conditions": [
     "D30"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "pure additive ADAM models with Laplace, S or Generalised Normal errors"
   },
   "support": [
    {
     "kind": "simulation",
     "evidence": "E24",
     "artefacts": [
      "A3",
      "A9"
     ],
     "results": [
      "E24.R1",
      "E24.R2"
     ]
    }
   ],
   "depends_on": [
    "C4"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Deterministic archived computation with an integration refinement check."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C25",
   "statement": "For [[D12:iETS(M,N,N)]] in the [[D6:ADAM multiplicative ETS]] form, the [[D10:normal-drift mixture density]] of the demand size after an interval had a largest [[D14:Kullback-Leibler divergence]] per observation from the exact density at least two orders of magnitude smaller than that of [[D11:the one-step density]] for the Gamma and the inverse Gaussian distribution, and is exact for the log-normal distribution.",
   "about": {
    "subject": "D10",
    "relation": "has a smaller Kullback-Leibler divergence from the exact density than",
    "object": [
     "D14"
    ],
    "comparator": "D11",
    "conditions": [
     "D12",
     "D6"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "iETS(M,N,N) with Gamma, log-normal and inverse Gaussian sizes",
    "conditions": [
     "scale $s\\in[0.05,1]$",
     "smoothing parameter $\\alpha\\in[0.1,0.6]$",
     "interval length $j\\in[2,20]$",
     "states known at the previous observed period"
    ],
    "excludes": [
     "models with trend or seasonality",
     "conventional multiplicative ETS"
    ]
   },
   "support": [
    {
     "kind": "simulation",
     "evidence": "E20",
     "artefacts": [
      "A3",
      "A4",
      "A5"
     ],
     "results": [
      "E20.T1.r4",
      "E20.T1.r5",
      "E20.T1.r6"
     ]
    }
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Deterministic archived computation with a refinement check; one model and one grid."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C26",
   "statement": "Within [[D12:iETS(M,N,N)]] models fitted by the [[D5:zero-error recursion]], updating the states with the persistence vector $\\mathbf g$ after an interval raised the estimate of the Gamma and inverse Gaussian scale from the moment equation solved by bisection by more than three Monte Carlo standard errors in 97 of 120 cells, with a median increase in [[D17:relative bias]] of 12.8 percentage points.",
   "about": {
    "subject": "D5",
    "relation": "raises the estimated scale on",
    "object": [
     "D17"
    ],
    "comparator": null,
    "conditions": [
     "D12"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "iETS(M,N,N) with Gamma and inverse Gaussian sizes",
    "conditions": [
     "$s\\in\\{0.05,0.5\\}$",
     "100 observed sizes per series"
    ]
   },
   "support": [
    {
     "kind": "simulation",
     "evidence": "E21",
     "artefacts": [
      "A3",
      "A6"
     ],
     "results": [
      "E21.R9",
      "E21.R10",
      "E21.R11"
     ]
    }
   ],
   "depends_on": [
    "C18"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Archived Monte Carlo study; 120 cells with 100 observed sizes."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C27",
   "statement": "For [[D20:ETS(M,N,N)]] in the [[D7:conventional multiplicative ETS]] form with Gamma errors, $s=0.32$ and $\\alpha=0.21$, the [[D19:approximate upper bound of the 90% prediction interval]] divided by the point forecast was 2.431 against 2.393 from [[D21:simulated paths]] twelve steps ahead, and 2.616 against 2.536 after six unobserved periods at the end of the sample.",
   "about": {
    "subject": "D19",
    "relation": "gives a higher upper bound over the point forecast than",
    "object": null,
    "comparator": "D21",
    "conditions": [
     "D20",
     "D7"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "ETS(M,N,N) in the conventional form",
    "conditions": [
     "Gamma errors",
     "$s=0.32$",
     "$\\alpha=0.21$",
     "100 observations"
    ]
   },
   "support": [
    {
     "kind": "simulation",
     "evidence": "E22",
     "artefacts": [
      "A3",
      "A7"
     ],
     "results": [
      "E22.R5",
      "E22.R6",
      "E22.R7",
      "E22.R8"
     ]
    }
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Archived simulation with 1,000,000 paths; one parameter setting."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C28",
   "statement": "For ADAM ETS(A,N,A) with lags 24 and 168 on [[D25:1344 hourly observations]] following a fixed sine pattern, the [[D23:low-rank factor form]] of the [[D8:SSOE Kalman filter]] was 2.96 times faster than the [[D24:full covariance form]] for one missing value and 0.72 times as fast for 48, and slower than the full form above about 30 missing values.",
   "about": {
    "subject": "D23",
    "relation": "is faster than, up to about 30 missing values,",
    "object": null,
    "comparator": "D24",
    "conditions": [
     "D25"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "ADAM ETS(A,N,A) with double seasonality",
    "data_type": "hourly time series with missing values",
    "conditions": [
     "lags 24 and 168",
     "1344 observations",
     "1 to 48 missing values",
     "data following a fixed sine pattern",
     "one filter pass, one thread"
    ]
   },
   "support": [
    {
     "kind": "empirical_quant",
     "evidence": "E23",
     "artefacts": [
      "A3",
      "A8"
     ],
     "results": [
      "E23.R4",
      "E23.R5"
     ]
    }
   ],
   "limitations": [
    "L2"
   ],
   "depends_on": [
    "C21"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Archived timing with 25 interleaved repetitions; one machine and one model configuration."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C29",
   "statement": "At variance ratio $f_t=4$, the [[D29:16-node Gauss-Hermite mixture]] of the error density over normal state uncertainty had a [[D14:Kullback-Leibler divergence]] from the exact density of 0.0081 for the Laplace and 0.113 for the S distribution, against 0.0491 and 0.260 for [[D28:the error kept in its family]] with scale $sf_t^{1/p}$.",
   "about": {
    "subject": "D29",
    "relation": "has a smaller Kullback-Leibler divergence from the exact density than",
    "object": [
     "D14"
    ],
    "comparator": "D28",
    "conditions": [
     "f_t = 4",
     "Laplace or S errors"
    ]
   },
   "type": "descriptive",
   "role": "secondary",
   "novelty": "no_prior_found",
   "scope": {
    "population": "pure additive models with Laplace or S errors",
    "conditions": [
     "$f_t=4$",
     "$s=1$"
    ]
   },
   "support": [
    {
     "kind": "simulation",
     "evidence": "E24",
     "artefacts": [
      "A3",
      "A9"
     ],
     "results": [
      "E24.R1",
      "E24.R2",
      "E24.R3",
      "E24.R4"
     ]
    }
   ],
   "depends_on": [
    "C24"
   ],
   "assessments": [
    {
     "by": "author",
     "strength": "moderate",
     "rationale": "Deterministic archived computation at one variance ratio."
    }
   ],
   "provenance": "author_stated",
   "verifiability": "open",
   "verifiability_flags": []
  },
  {
   "id": "C30",
   "statement": "The errors $\\epsilon_t$ of the single source of error model are independent across periods.",
   "type": "descriptive",
   "role": "supporting",
   "support": [
    {
     "kind": "assumption"
    }
   ],
   "assumption_category": "statistical",
   "check": "unchecked",
   "provenance": "author_stated",
   "verifiability": "not_applicable",
   "verifiability_flags": []
  },
  {
   "id": "C31",
   "statement": "In the intermittent demand model the occurrence $o_t$ is independent of the potential demand size $z_t$.",
   "type": "descriptive",
   "role": "supporting",
   "support": [
    {
     "kind": "assumption"
    }
   ],
   "assumption_category": "theorem_condition",
   "check": "unchecked",
   "provenance": "author_stated",
   "verifiability": "not_applicable",
   "verifiability_flags": []
  },
  {
   "id": "C32",
   "statement": "The potential demand size $z_t$ has a continuous distribution, so that $P(z_t=0)=0$.",
   "type": "descriptive",
   "role": "supporting",
   "support": [
    {
     "kind": "assumption"
    }
   ],
   "assumption_category": "theorem_condition",
   "check": "unchecked",
   "provenance": "author_stated",
   "verifiability": "not_applicable",
   "verifiability_flags": []
  },
  {
   "id": "C33",
   "statement": "Whether a period is observed carries no information about the unobserved value $z_t$ beyond the model, so that the missing values are missing at random.",
   "type": "descriptive",
   "role": "supporting",
   "support": [
    {
     "kind": "assumption"
    }
   ],
   "assumption_category": "statistical",
   "check": "unchecked",
   "provenance": "author_stated",
   "verifiability": "not_applicable",
   "verifiability_flags": []
  },
  {
   "id": "C34",
   "statement": "The initial states of the single source of error model are fixed parameters, so that the state covariance is zero at the start of the sample.",
   "type": "descriptive",
   "role": "supporting",
   "support": [
    {
     "kind": "assumption"
    }
   ],
   "assumption_category": "theorem_condition",
   "check": "unchecked",
   "provenance": "author_stated",
   "verifiability": "not_applicable",
   "verifiability_flags": []
  },
  {
   "id": "C35",
   "statement": "The errors of the pure additive model are normally distributed with constant variance $\\sigma^2$.",
   "type": "descriptive",
   "role": "supporting",
   "support": [
    {
     "kind": "assumption"
    }
   ],
   "assumption_category": "theorem_condition",
   "check": "unchecked",
   "provenance": "author_stated",
   "verifiability": "not_applicable",
   "verifiability_flags": []
  },
  {
   "id": "C36",
   "statement": "In the log-normal ADAM multiplicative ETS, $\\log(1+\\epsilon_t)\\sim\\mathcal N(-s/2,s)$, so that $\\E(1+\\epsilon_t)=1$.",
   "type": "descriptive",
   "role": "supporting",
   "support": [
    {
     "kind": "assumption"
    }
   ],
   "assumption_category": "theorem_condition",
   "check": "unchecked",
   "provenance": "author_stated",
   "verifiability": "not_applicable",
   "verifiability_flags": []
  },
  {
   "id": "C37",
   "statement": "The [[D9:drift of the states]] of a pure multiplicative model over an interval is approximately normally distributed, with the states known at the previous observed period.",
   "type": "descriptive",
   "role": "supporting",
   "support": [
    {
     "kind": "assumption"
    }
   ],
   "assumption_category": "methodological",
   "check": "tested",
   "provenance": "author_stated",
   "check_evidence": "E20",
   "verifiability": "not_applicable",
   "verifiability_flags": []
  }
 ],
 "evidence": [
  {
   "id": "E1",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E1.1",
     "statement": "$P(y_t=0\\mid Y_{t-1})=(1-p_t)\\int f(z\\mid Y_{t-1})dz=1-p_t$",
     "by": [
      "C31",
      "C32"
     ],
     "rule": "independence and continuity"
    },
    {
     "id": "E1.2",
     "statement": "$y_t>0$ has density $p_tf(y_t\\mid Y_{t-1})$",
     "by": [
      "C31"
     ],
     "rule": "independence"
    },
    {
     "id": "E1.3",
     "statement": "The joint density of the observed data is the product of these conditional terms",
     "by": [
      "E1.1",
      "E1.2"
     ],
     "rule": "prediction-error decomposition"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   },
   "assumptions": [
    "C31",
    "C32"
   ]
  },
  {
   "id": "E2",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E2.1",
     "statement": "$Q(\\theta\\mid\\theta^{(k)})$ contains at each zero the cross-entropy $\\int f_z^{(k)}\\log f_z\\,dz=-H_z(\\theta^{(k)})-\\KL(f_z^{(k)}\\|f_z)$",
     "by": [
      "D4"
     ],
     "rule": "definition of the E-step"
    },
    {
     "id": "E2.2",
     "statement": "$$\\partial_\\theta\\int f_z\\log f_z^{\\theta}dz\\Big|_{\\theta=\\theta^{(k)}}=\\partial_\\theta\\int f_z\\,dz=0$$",
     "by": [
      "E2.1"
     ],
     "rule": "differentiation under the integral"
    },
    {
     "id": "E2.3",
     "statement": "$\\nabla Q(\\theta\\mid\\theta^{(k)})|_{\\theta^{(k)}}=\\nabla\\ell(\\theta^{(k)})$, so EM fixed points are stationary points of $\\ell$",
     "by": [
      "E2.2",
      "B1",
      "C1"
     ],
     "rule": "EM identity"
    },
    {
     "id": "E2.4",
     "statement": "$-\\partial_\\theta H_z(\\theta)\\neq0$ in general (e.g. in the scale), adding to the score of $\\ell$",
     "by": [
      "D4"
     ],
     "rule": "differentiation"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   },
   "assumptions": [
    "C31",
    "C32"
   ]
  },
  {
   "id": "E3",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E3.1",
     "statement": "$H_z=\\frac12\\log(2\\pi e\\sigma^2)$ for the normal distribution",
     "by": [
      "D4"
     ],
     "rule": "definition"
    },
    {
     "id": "E3.2",
     "statement": "$$\\frac{\\partial\\ell_H}{\\partial\\sigma^2}=-\\frac{T_1}{2\\sigma^2}+\\frac{\\sum e_t^2}{2\\sigma^4}-\\frac{T_0}{2\\sigma^2},$$ zero at $\\sigma^2=\\sum e_t^2/T$",
     "by": [
      "E3.1"
     ],
     "rule": "differentiation"
    },
    {
     "id": "E3.3",
     "statement": "EM iterates $\\sigma^2_{(k+1)}=(\\sum e_t^2+T_0\\sigma^2_{(k)})/T$ with fixed point $\\frac{1}{T_1}\\sum e_t^2$",
     "by": [
      "B1"
     ],
     "rule": "fixed point"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   }
  },
  {
   "id": "E4",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E4.1",
     "statement": "$(\\mathbf x_{t-1},z_t,\\mathbf x_t)$ is jointly Gaussian given $Y_{t-1}$",
     "by": [
      "C35",
      "C30"
     ],
     "rule": "linearity of Gaussian models"
    },
    {
     "id": "E4.2",
     "statement": "$$\\begin{aligned} \\E(z_t\\mid Y_{t-1}) &= \\mathbf w'\\mathbf a_t \\\\ \\Var(z_t\\mid Y_{t-1}) &= \\sigma^2f_t \\\\ \\Cov(\\mathbf x_t,z_t\\mid Y_{t-1}) &= \\sigma^2(\\mathbf F\\mathbf P_t\\mathbf w+\\mathbf g) \\end{aligned}$$",
     "by": [
      "E4.1"
     ],
     "rule": "moments of linear combinations"
    },
    {
     "id": "E4.3",
     "statement": "Conditioning on $z_t$ gives the update; unobserved periods only propagate",
     "by": [
      "E4.2",
      "C33"
     ],
     "rule": "Gaussian conditioning"
    },
    {
     "id": "E4.4",
     "statement": "The likelihood follows from the observed-data decomposition, and $\\sigma^2$ concentrates out because $f_t$, $\\mathbf k_t$ do not depend on it",
     "by": [
      "E4.3",
      "C1"
     ],
     "rule": "prediction-error decomposition"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   },
   "assumptions": [
    "C30",
    "C33",
    "C34",
    "C35"
   ]
  },
  {
   "id": "E5",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E5.1",
     "statement": "With $\\mathbf P_t=\\mathbf 0$, $f_t=1$ and $\\mathbf k_t=\\mathbf g$",
     "by": [
      "D8"
     ],
     "rule": "substitution"
    },
    {
     "id": "E5.2",
     "statement": "$\\mathbf P_{t+1}=\\mathbf g\\mathbf g'-\\mathbf g\\mathbf g'=\\mathbf 0$",
     "by": [
      "E5.1"
     ],
     "rule": "substitution"
    },
    {
     "id": "E5.3",
     "statement": "By induction from $\\mathbf P_1=\\mathbf 0$ the filter is the SSOE recursion",
     "by": [
      "E5.2"
     ],
     "rule": "induction"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   }
  },
  {
   "id": "E6",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E6.1",
     "statement": "After $j-1$ unobserved periods from $\\mathbf P=\\mathbf 0$, $f=1+\\sum_{i<j}c_i^2$ with $c_i=\\mathbf w'\\mathbf F^{i-1}\\mathbf g$",
     "by": [
      "D8"
     ],
     "rule": "iteration of the propagation"
    },
    {
     "id": "E6.2",
     "statement": "$f_t>1$ when $c_1\\neq0$, and $\\mathbf k_t\\neq\\mathbf g$ while $\\mathbf P_t\\neq\\mathbf 0$",
     "by": [
      "E6.1"
     ],
     "rule": "substitution"
    },
    {
     "id": "E6.3",
     "statement": "The zero-error recursion uses variance $\\sigma^2$ and gain $\\mathbf g$, so its objective differs from the exact likelihood",
     "by": [
      "E6.2",
      "D5",
      "C4"
     ],
     "rule": "comparison"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   }
  },
  {
   "id": "E7",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E7.1",
     "statement": "$P=(j-1)\\alpha^2$, $f=(j-1)\\alpha^2+1$ after $j-1$ unobserved periods",
     "by": [
      "D8"
     ],
     "rule": "substitution $w=F=1$, $g=\\alpha$"
    },
    {
     "id": "E7.2",
     "statement": "$k=(P+\\alpha)/f$",
     "by": [
      "E7.1",
      "D8"
     ],
     "rule": "substitution"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   }
  },
  {
   "id": "E8",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E8.1",
     "statement": "$\\log z_t=\\log l_{t-1}+\\phi\\log b_{t-1}+\\log s_{t-m}+u_t$",
     "by": [
      "D6"
     ],
     "rule": "logarithm"
    },
    {
     "id": "E8.2",
     "statement": "$\\log l_t=\\log l_{t-1}+\\phi\\log b_{t-1}+\\alpha u_t$, $\\log b_t=\\phi\\log b_{t-1}+\\beta u_t$ in the ADAM form",
     "by": [
      "D6"
     ],
     "rule": "logarithm"
    },
    {
     "id": "E8.3",
     "statement": "$\\log l_t=\\log l_{t-1}+\\phi\\log b_{t-1}+\\log(1+\\alpha\\epsilon_t)$ in the conventional form",
     "by": [
      "D7"
     ],
     "rule": "logarithm"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   }
  },
  {
   "id": "E9",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E9.1",
     "statement": "$\\log z_t$ follows a linear Gaussian SSOE model with known error mean $-s/2$",
     "by": [
      "C12",
      "C36"
     ],
     "rule": "linearity in logarithms"
    },
    {
     "id": "E9.2",
     "statement": "The filter of the linear Gaussian model with the Jacobian $-\\sum\\log z_t$ gives the exact likelihood",
     "by": [
      "E9.1",
      "C4"
     ],
     "rule": "change of variables"
    },
    {
     "id": "E9.3",
     "statement": "Predictions are linear in $-s/2$ with gain-only coefficients, so $v_t(s)=v_t^0+sb_t$",
     "by": [
      "E9.2"
     ],
     "rule": "linearity"
    },
    {
     "id": "E9.4",
     "statement": "The score in $s$ times $2s^2$ gives $(\\sum b_t^2/f_t)s^2+T_1s-\\sum(v_t^0)^2/f_t=0$",
     "by": [
      "E9.3"
     ],
     "rule": "differentiation"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   },
   "assumptions": [
    "C30",
    "C33",
    "C34",
    "C36"
   ]
  },
  {
   "id": "E10",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E10.1",
     "statement": "$f_t=1$, $b_t=1/2$ give $s^2+4s-4m=0$",
     "by": [
      "C6",
      "C15"
     ],
     "rule": "substitution"
    },
    {
     "id": "E10.2",
     "statement": "The positive root is $2(\\sqrt{1+m}-1)$; $2(1-\\sqrt{1-m})$ solves $s^2-4s+4m=0$ instead",
     "by": [
      "E10.1"
     ],
     "rule": "quadratic formula"
    },
    {
     "id": "E10.3",
     "statement": "At $s=0.5$, $\\E m=s+s^2/4=0.5625$ and $2(1-\\sqrt{1-0.5625})=0.677$",
     "by": [
      "E10.2",
      "C36"
     ],
     "rule": "arithmetic"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   },
   "assumptions": [
    "C36"
   ]
  },
  {
   "id": "E11",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E11.1",
     "statement": "$e_t^2=(1+e_t)^2-2(1+e_t)+1$ and $e_t^2/(1+e_t)=(1+e_t)-2+(1+e_t)^{-1}$",
     "by": [],
     "rule": "algebra"
    },
    {
     "id": "E11.2",
     "statement": "Independence of $\\epsilon_t$ and $D_t$ with $\\E(1+\\epsilon)^2=1+s$ and, for the inverse Gaussian, $\\E(1+\\epsilon)^{-1}=1+s$",
     "by": [
      "E11.1"
     ],
     "rule": "independence and moments"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   }
  },
  {
   "id": "E12",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E12.1",
     "statement": "$P(y_t\\in[0,u])=(1-p_t)+p_tF_z(u)$ when zeros count as covered",
     "by": [
      "C31",
      "C32"
     ],
     "rule": "law of total probability"
    },
    {
     "id": "E12.2",
     "statement": "Setting it to $c$ gives $F_z$ coverage $(c-(1-p_t))/p_t$, a quantile of the sizes around $\\hat\\mu_t$",
     "by": [
      "E12.1"
     ],
     "rule": "algebra"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   },
   "assumptions": [
    "C31",
    "C32"
   ]
  },
  {
   "id": "E13",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E13.1",
     "statement": "$x\\mapsto x^{g}$ is concave for $0<g<1$, so $\\E(1+\\epsilon)^{g}<(\\E(1+\\epsilon))^{g}=1$",
     "by": [
      "D6"
     ],
     "rule": "Jensen's inequality"
    },
    {
     "id": "E13.2",
     "statement": "For ETS(M,N,N), $\\E(z_{T+h}\\mid Y_T)=\\hat\\mu_{T+h}[\\E(1+\\epsilon)^{\\alpha}]^{h-1}$ by independence of the errors",
     "by": [
      "E13.1",
      "C30"
     ],
     "rule": "independence"
    },
    {
     "id": "E13.3",
     "statement": "For Gamma with mean one and variance $s$, $\\E(1+\\epsilon)^{\\alpha}=\\Gamma(1/s+\\alpha)s^{\\alpha}/\\Gamma(1/s)$",
     "by": [
      "E13.2"
     ],
     "rule": "Gamma moments"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   },
   "assumptions": [
    "C30"
   ]
  },
  {
   "id": "E14",
   "profile": "formal",
   "description": "Analytical derivation in the source draft (artefact A1).",
   "foundation": "Kolmogorov probability axioms",
   "steps": [
    {
     "id": "E14.1",
     "statement": "An unobserved period adds the rank-one term $\\mathbf g\\mathbf g'$",
     "by": [
      "D8"
     ],
     "rule": "propagation"
    },
    {
     "id": "E14.2",
     "statement": "An observed period removes the direction it reveals while adding the new error, so the rank does not increase",
     "by": [
      "D8"
     ],
     "rule": "update"
    },
    {
     "id": "E14.3",
     "statement": "With $\\mathbf M=[\\mathbf U_t^F,\\mathbf g]$ and $\\mathbf M(\\mathbf a,1)'=f_t\\mathbf k_t$, a Householder reflection gives $$\\mathbf U_{t+1}=\\mathbf U_t^F-\\frac{(f_t\\mathbf k_t+\\sqrt{f_t}\\mathbf g)\\mathbf a'}{f_t+\\sqrt{f_t}}$$",
     "by": [
      "E14.2"
     ],
     "rule": "Householder reflection"
    }
   ],
   "artefacts": [
    "A1"
   ],
   "availability": {
    "level": "public"
   }
  },
  {
   "id": "E20",
   "profile": "simulation",
   "description": "Comparison, for iETS(M,N,N) under the ADAM and conventional multiplicative ETS forms, of the normal-drift mixture density (drift moments by 32-node Gauss-Legendre, mixture by 16-node Gauss-Hermite) and of the one-step density against the exact density of the size after an interval, computed on a grid of step 0.001 in log z by FFT convolution with tails cut at 1e-12, by the largest Kullback-Leibler divergence per observation over $s$ from 0.05 to 1 in steps of 0.05, $\\alpha$ from 0.1 to 0.6 in steps of 0.05 and $j$ from 2 to 20; a 164-cell refinement run halved the step and cut tails at 1e-14. The run recorded smooth commit f9d062ee with the claimset scripts not yet committed; the scripts are archived at commit f1de3ea1.",
   "setup": {
    "studied": [
     "D10",
     "D11"
    ],
    "cases": [
     "D12",
     "D6",
     "D7"
    ],
    "procedure": [
     "D13"
    ],
    "lens": [
     "D14"
    ]
   },
   "model": "iETS(M,N,N) with Gamma, log-normal and inverse Gaussian sizes",
   "outputs": "largest KL per observation, conventional form: mixture 0.00115 (Gamma), 0.00448 (log-normal), 0.00400 (inverse Gaussian), one-step 2.359, 5.947, 47.545; ADAM form: mixture 0.01452, 0 (closed form), 0.00045, one-step 4.584, 18.635, 630.772",
   "artefacts": [
    "A3",
    "A4",
    "A5"
   ],
   "data_origin": "primary",
   "preregistered": false,
   "availability": {
    "level": "public"
   },
   "runs": 1,
   "seeds": [
    20261015
   ],
   "execution": {
    "code_version": "f9d062ee850675acc2160d851a34093d035a474e",
    "notes": "Run with the claimset scripts not yet committed; the scripts are archived at f1de3ea1 and the package code is identical at both commits (user-reported)."
   },
   "tables": [
    {
     "id": "T1",
     "description": "Largest Kullback-Leibler divergence per observation from the exact density of the size after an interval, of the normal-drift mixture density and of the one-step density, for iETS(M,N,N) with Gamma, log-normal and inverse Gaussian sizes in the conventional and the ADAM form",
     "conditions": {
      "model": "iETS(M,N,N)"
     },
     "row_labels": [
      "distribution",
      "ets_form"
     ],
     "columns": [
      "largest KL divergence per observation, normal-drift mixture vs exact density",
      "largest KL divergence per observation, one-step vs exact density"
     ],
     "rows": [
      {
       "id": "r1",
       "label": [
        "dgamma",
        "conventional"
       ],
       "values": [
        0.00114767,
        2.35934
       ]
      },
      {
       "id": "r2",
       "label": [
        "dlnorm",
        "conventional"
       ],
       "values": [
        0.00447805,
        5.94732
       ]
      },
      {
       "id": "r3",
       "label": [
        "dinvgauss",
        "conventional"
       ],
       "values": [
        0.00399623,
        47.5452
       ]
      },
      {
       "id": "r4",
       "label": [
        "dgamma",
        "adam"
       ],
       "values": [
        0.0145197,
        4.58358
       ]
      },
      {
       "id": "r5",
       "label": [
        "dlnorm",
        "adam"
       ],
       "values": [
        9.63871e-07,
        18.6354
       ]
      },
      {
       "id": "r6",
       "label": [
        "dinvgauss",
        "adam"
       ],
       "values": [
        0.000446034,
        630.772
       ]
      }
     ],
     "artefact": "A4"
    }
   ]
  },
  {
   "id": "E21",
   "profile": "simulation",
   "description": "Monte Carlo study of the scale of Gamma and inverse Gaussian iETS(M,N,N) sizes under the ADAM and conventional forms. Part A: 480 cells of simulated relative errors with drift ($s\\in\\{0.05,0.2,0.5,1\\}$, $\\alpha\\in\\{0.1,0.3,0.6\\}$, intervals fixed at 2, 5 or 10 or geometric with occurrence probability 0.5 or 0.2, 100 or 1000 observed sizes), 2000 replications per cell, fixed-point iteration with tolerance 1e-10 and at most 100 iterations; a fit fails when an iterate is not positive and finite, the iteration does not converge, or the value leaves the admissible range. Part B: 120 cells within fitted models with $s\\in\\{0.05,0.5\\}$ and 100 observed sizes. Cells are grouped by the drift order $\\E(j-1)\\alpha^2s$. The run recorded smooth commit f9d062ee with the claimset scripts not yet committed; the scripts are archived at commit f1de3ea1.",
   "setup": {
    "studied": [
     "D15",
     "D5"
    ],
    "cases": [
     "D12",
     "D6",
     "D7"
    ],
    "procedure": [
     "D16"
    ],
    "lens": [
     "D17",
     "D18"
    ]
   },
   "model": "iETS(M,N,N) relative errors with drift",
   "artefacts": [
    "A3",
    "A6"
   ],
   "data_origin": "primary",
   "preregistered": false,
   "availability": {
    "level": "public"
   },
   "runs": 2000,
   "seeds": [
    "numpy SeedSequence(20261015), one child stream per cell"
   ],
   "outputs": "fixed-point estimator, 1000 observed sizes, by drift order: <=0.02 median relative bias +0.02%, 0% failed; 0.02-0.1 -0.06%, 18%; 0.1-0.3 -0.42%, 52%; >0.3 -0.43%, 71%. Within fitted models the gain update raised the relative bias in 97 of 120 cells by a median of 12.8 percentage points",
   "results": [
    {
     "id": "R9",
     "variable": "cells where the gain update raised the scale estimate by more than three Monte Carlo standard errors",
     "value": 97,
     "conditions": {
      "estimator": "moment equation solved by bisection",
      "observed_sizes": 100,
      "comparison": "fitted model with gain update vs simulated drift errors"
     },
     "artefact": "A6"
    },
    {
     "id": "R10",
     "variable": "number of cells",
     "value": 120,
     "conditions": {
      "estimator": "moment equation solved by bisection",
      "observed_sizes": 100,
      "comparison": "fitted model with gain update vs simulated drift errors"
     },
     "artefact": "A6"
    },
    {
     "id": "R11",
     "variable": "median increase in relative bias from the gain update",
     "value": 0.127928,
     "conditions": {
      "estimator": "moment equation solved by bisection",
      "observed_sizes": 100,
      "comparison": "fitted model with gain update vs simulated drift errors"
     },
     "artefact": "A6"
    }
   ],
   "execution": {
    "code_version": "f9d062ee850675acc2160d851a34093d035a474e",
    "notes": "Run with the claimset scripts not yet committed; the scripts are archived at f1de3ea1 and the package code is identical at both commits (user-reported)."
   },
   "tables": [
    {
     "id": "T1",
     "description": "Median relative bias and share of failed fits of the fixed-point estimator of the Gamma and inverse Gaussian scale on 1000 observed sizes simulated with the drift, by drift order",
     "conditions": {
      "estimator": "fixed point",
      "observed_sizes": 1000
     },
     "row_labels": [
      "drift_order"
     ],
     "columns": [
      "median relative bias of the scale estimate",
      "share of failed fits"
     ],
     "rows": [
      {
       "id": "r1",
       "label": [
        "<=0.02"
       ],
       "values": [
        0.000159064,
        0.0
       ]
      },
      {
       "id": "r2",
       "label": [
        "0.02-0.1"
       ],
       "values": [
        -0.000599351,
        0.176735
       ]
      },
      {
       "id": "r3",
       "label": [
        "0.1-0.3"
       ],
       "values": [
        -0.00418249,
        0.523375
       ]
      },
      {
       "id": "r4",
       "label": [
        ">0.3"
       ],
       "values": [
        -0.00430986,
        0.710058
       ]
      }
     ],
     "artefact": "A6"
    }
   ]
  },
  {
   "id": "E22",
   "profile": "simulation",
   "description": "Comparison of the approximate upper bound of the 90% prediction interval (0.95 quantile) of ETS(M,N,N) with $s=0.32$, $\\alpha=0.21$, 100 observations and initial level 10, divided by the point forecast, with the quantile of 1,000,000 simulated paths, twelve steps ahead and 18 steps from the last observation after six unobserved periods at the end of the sample, for Gamma, inverse Gaussian and log-normal errors under the ADAM and conventional forms. The run recorded smooth commit 3eb93bb1 with the claimset scripts not yet committed; the scripts are archived at commit f1de3ea1.",
   "setup": {
    "studied": [
     "D19"
    ],
    "cases": [
     "D20",
     "D6",
     "D7"
    ],
    "procedure": [
     "D21"
    ],
    "lens": [
     "D22"
    ]
   },
   "model": "ETS(M,N,N), s=0.32, alpha=0.21",
   "outputs": "Gamma, bound over point forecast, approximate vs simulated: ADAM form 2.431 vs 1.807 (h=12), 2.616 vs 1.638 (six trailing unobserved); conventional form 2.431 vs 2.393, 2.616 vs 2.537",
   "artefacts": [
    "A3",
    "A7"
   ],
   "data_origin": "primary",
   "preregistered": false,
   "availability": {
    "level": "public"
   },
   "runs": 1000000,
   "seeds": [
    20261015
   ],
   "results": [
    {
     "id": "R1",
     "variable": "approximate upper bound of the 90% interval over the point forecast",
     "value": 2.43087,
     "conditions": {
      "distribution": "Gamma",
      "ets_form": "adam",
      "h": 12,
      "unobserved_at_end": 0,
      "s": 0.32,
      "alpha": 0.21
     },
     "artefact": "A7"
    },
    {
     "id": "R2",
     "variable": "simulated upper bound of the 90% interval over the point forecast",
     "value": 1.80713,
     "conditions": {
      "distribution": "Gamma",
      "ets_form": "adam",
      "h": 12,
      "unobserved_at_end": 0,
      "s": 0.32,
      "alpha": 0.21
     },
     "artefact": "A7"
    },
    {
     "id": "R3",
     "variable": "approximate upper bound of the 90% interval over the point forecast",
     "value": 2.61587,
     "conditions": {
      "distribution": "Gamma",
      "ets_form": "adam",
      "h": 12,
      "unobserved_at_end": 6,
      "s": 0.32,
      "alpha": 0.21
     },
     "artefact": "A7"
    },
    {
     "id": "R4",
     "variable": "simulated upper bound of the 90% interval over the point forecast",
     "value": 1.63792,
     "conditions": {
      "distribution": "Gamma",
      "ets_form": "adam",
      "h": 12,
      "unobserved_at_end": 6,
      "s": 0.32,
      "alpha": 0.21
     },
     "artefact": "A7"
    },
    {
     "id": "R5",
     "variable": "approximate upper bound of the 90% interval over the point forecast",
     "value": 2.43087,
     "conditions": {
      "distribution": "Gamma",
      "ets_form": "conventional",
      "h": 12,
      "unobserved_at_end": 0,
      "s": 0.32,
      "alpha": 0.21
     },
     "artefact": "A7"
    },
    {
     "id": "R6",
     "variable": "simulated upper bound of the 90% interval over the point forecast",
     "value": 2.39273,
     "conditions": {
      "distribution": "Gamma",
      "ets_form": "conventional",
      "h": 12,
      "unobserved_at_end": 0,
      "s": 0.32,
      "alpha": 0.21
     },
     "artefact": "A7"
    },
    {
     "id": "R7",
     "variable": "approximate upper bound of the 90% interval over the point forecast",
     "value": 2.61587,
     "conditions": {
      "distribution": "Gamma",
      "ets_form": "conventional",
      "h": 12,
      "unobserved_at_end": 6,
      "s": 0.32,
      "alpha": 0.21
     },
     "artefact": "A7"
    },
    {
     "id": "R8",
     "variable": "simulated upper bound of the 90% interval over the point forecast",
     "value": 2.53649,
     "conditions": {
      "distribution": "Gamma",
      "ets_form": "conventional",
      "h": 12,
      "unobserved_at_end": 6,
      "s": 0.32,
      "alpha": 0.21
     },
     "artefact": "A7"
    }
   ],
   "execution": {
    "code_version": "3eb93bb12aa875b23a0d6cc1ba57523c89a83e76",
    "notes": "Run with the claimset scripts not yet committed; the scripts are archived at f1de3ea1 and the package code is identical at both commits (user-reported)."
   }
  },
  {
   "id": "E23",
   "profile": "quant",
   "description": "Timing of the SSOE Kalman filter in the smooth package with the low-rank factor against the full covariance, both built from smooth commit 53104ee9, for ADAM ETS(A,N,A) with lags 24 and 168 (193 profile cells), normal distribution and backcast initial states, on 1344 hourly observations with 1 to 48 nested missing values, for data generated by ETS(A,N,A) and by a fixed sine pattern; 25 interleaved repetitions per case on one cloud VM (Intel Xeon 2.80 GHz, 4 vCPUs, Linux 6.18.44, Python 3.11.15) with one thread.",
   "setup": {
    "studied": [
     "D23",
     "D24"
    ],
    "cases": [
     "D25"
    ],
    "procedure": [
     "D26"
    ],
    "lens": [
     "D27"
    ]
   },
   "design": "benchmark",
   "estimand": "ratio of median run time, full covariance over low-rank factor",
   "n": 25,
   "data_origin": "primary",
   "preregistered": false,
   "artefacts": [
    "A3",
    "A8"
   ],
   "availability": {
    "level": "public"
   },
   "results": [
    {
     "id": "R1",
     "variable": "speed-up of low-rank over full covariance filter",
     "value": 10.5511,
     "unit": "ratio",
     "conditions": {
      "data": "ets",
      "missing_values": 1,
      "timed_call": "filter pass"
     },
     "artefact": "A8"
    },
    {
     "id": "R2",
     "variable": "speed-up of low-rank over full covariance filter",
     "value": 3.50461,
     "unit": "ratio",
     "conditions": {
      "data": "ets",
      "missing_values": 48,
      "timed_call": "filter pass"
     },
     "artefact": "A8"
    },
    {
     "id": "R3",
     "variable": "largest absolute difference in log-likelihood, low-rank vs full",
     "value": 4.54747e-13,
     "conditions": {
      "data": "ets"
     },
     "artefact": "A8"
    },
    {
     "id": "R4",
     "variable": "speed-up of low-rank over full covariance filter",
     "value": 2.96089,
     "unit": "ratio",
     "conditions": {
      "data": "sine",
      "missing_values": 1,
      "timed_call": "filter pass"
     },
     "artefact": "A8"
    },
    {
     "id": "R5",
     "variable": "speed-up of low-rank over full covariance filter",
     "value": 0.723544,
     "unit": "ratio",
     "conditions": {
      "data": "sine",
      "missing_values": 48,
      "timed_call": "filter pass"
     },
     "artefact": "A8"
    },
    {
     "id": "R6",
     "variable": "largest absolute difference in log-likelihood, low-rank vs full",
     "value": 0.0,
     "conditions": {
      "data": "sine"
     },
     "artefact": "A8"
    }
   ],
   "execution": {
    "code_version": "53104ee9757348b8aa32779dc7fc06c754be9681",
    "hardware": "cloud VM, Intel Xeon 2.80 GHz, 4 vCPUs, one thread",
    "software": "Linux 6.18.44, glibc 2.39, Python 3.11.15",
    "notes": "Both variants built from the clean commit 53104ee9; the timing script is archived at f1de3ea1."
   }
  },
  {
   "id": "E24",
   "profile": "simulation",
   "description": "Kullback-Leibler divergence, in both directions, between the exact convolution of Laplace, S and Generalised Normal (shape 0.5 to 3) errors with normal state uncertainty and three approximations (the error kept in its family with scale $sf_t^{1/p}$, the one-step density, and Gauss-Hermite mixtures with 8 to 64 nodes), for 22 values of $f_t$ from 1.01 to 100, by composite 8-node Gauss-Legendre integration. The run recorded smooth commit 3eb93bb1 with the claimset scripts not yet committed; the scripts are archived at commit f1de3ea1.",
   "setup": {
    "studied": [
     "D28",
     "D29"
    ],
    "cases": [
     "D30"
    ],
    "procedure": [
     "D31"
    ],
    "lens": [
     "D14"
    ]
   },
   "model": "pure additive model with Laplace errors",
   "outputs": "Laplace at f_t=4, family-scaled: 0.0491 (exact||approximation), 0.0563 (reverse); above 0.05 for f_t above about 4.5, levelling off at 0.056; S at f_t=4: 0.260; 16-node Gauss-Hermite at f_t=4: 0.0081 (Laplace), 0.113 (S)",
   "artefacts": [
    "A3",
    "A9"
   ],
   "data_origin": "primary",
   "preregistered": false,
   "availability": {
    "level": "public"
   },
   "runs": 1,
   "seeds": [
    20261015
   ],
   "results": [
    {
     "id": "R1",
     "variable": "KL divergence, exact density vs approximation",
     "value": 0.049114,
     "conditions": {
      "distribution": "dlaplace",
      "approximation": "family_scaled",
      "f_t": 4,
      "s": 1
     },
     "artefact": "A9"
    },
    {
     "id": "R2",
     "variable": "KL divergence, exact density vs approximation",
     "value": 0.2598,
     "conditions": {
      "distribution": "ds",
      "approximation": "family_scaled",
      "f_t": 4,
      "s": 1
     },
     "artefact": "A9"
    },
    {
     "id": "R3",
     "variable": "KL divergence, exact density vs approximation",
     "value": 0.00809702,
     "conditions": {
      "distribution": "dlaplace",
      "approximation": "gauss_hermite 16 nodes",
      "f_t": 4,
      "s": 1
     },
     "artefact": "A9"
    },
    {
     "id": "R4",
     "variable": "KL divergence, exact density vs approximation",
     "value": 0.112709,
     "conditions": {
      "distribution": "ds",
      "approximation": "gauss_hermite 16 nodes",
      "f_t": 4,
      "s": 1
     },
     "artefact": "A9"
    }
   ],
   "execution": {
    "code_version": "3eb93bb12aa875b23a0d6cc1ba57523c89a83e76",
    "notes": "Run with the claimset scripts not yet committed; the scripts are archived at f1de3ea1 and the package code is identical at both commits (user-reported)."
   }
  }
 ],
 "warrants": [
  {
   "id": "W1",
   "reasoning": "deductive",
   "premises": [
    "C2"
   ],
   "text": "With a dynamic scale model, the scale at each period with zero demand is a free function of the parameters and enters the entropy-augmented likelihood only through the term $-H_z$; for the normal distribution $-H_z=-\\frac12\\log(2\\pi e\\sigma^2)$ increases without bound as $\\sigma\\to0$, and for the Gamma distribution the entropy decreases in the scale for large values, so the objective has no finite maximum."
  },
  {
   "id": "W2",
   "reasoning": "deductive",
   "premises": [],
   "text": "The expected log-density of an unobserved size is $\\int f_z\\log f_z\\,dz$, which equals $-H_z$ when the differential entropy is $H_z=-\\E\\log f_z$; the term added for each zero therefore enters the objective with a negative sign."
  },
  {
   "id": "W3",
   "reasoning": "deductive",
   "premises": [
    "C15"
   ],
   "text": "The SSOE Kalman filter coincides with the single source of error recursion whenever its covariance is zero; the covariance starts at zero after backcasting and becomes non-zero only at an unobserved period, so on series without unobserved periods the last forward pass performs the same operations as the recursion."
  }
 ],
 "limitations": [
  {
   "id": "L1",
   "category": "model_specification",
   "statement": "Within a model fitted by the zero-error recursion, the fixed-point moment estimate of the Gamma and inverse Gaussian scale is biased upwards, because the states after an interval are updated with gain $\\mathbf g$ and part of the drift leaks into the following errors.",
   "affects": [
    "C18"
   ],
   "impact": "could_bias_magnitude",
   "mitigation": "none"
  },
  {
   "id": "L2",
   "category": "computational",
   "statement": "The low-rank timing comparison uses one model configuration and one series length on one cloud VM (Intel Xeon 2.80 GHz, 4 vCPUs).",
   "affects": [
    "C22",
    "C28"
   ],
   "impact": "reduces_transferability",
   "mitigation": "none"
  }
 ],
 "artefacts": [
  {
   "id": "A1",
   "kind": "manuscript",
   "uri": "https://github.com/openforecast-org/smooth/blob/8a5fbbb334b0d6192a3c3e8a5773f512e548e891/python/docs/INTERMITTENT_LIKELIHOOD.tex",
   "version": "sha256:44eb855578262cd1668929bc6659cfcaaa4cd3b3e153541deffd91720908d1e3",
   "availability": {
    "level": "public"
   },
   "description": "LaTeX source of the draft 'Estimating exponential smoothing with unobserved periods: the observed-data likelihood of ADAM and iETS' (October 2026).",
   "licence": "LGPL-2.1-only"
  },
  {
   "id": "A2",
   "kind": "software",
   "uri": "https://github.com/openforecast-org/smooth/tree/8a5fbbb334b0d6192a3c3e8a5773f512e548e891",
   "version": "8a5fbbb334b0d6192a3c3e8a5773f512e548e891",
   "licence": "LGPL-2.1-only",
   "availability": {
    "level": "public"
   },
   "description": "smooth package for R and Python, including the SSOE Kalman filter in the shared C++ core (src/headers/adamCore.h)."
  },
  {
   "id": "A3",
   "kind": "code",
   "uri": "https://github.com/openforecast-org/smooth/blob/f1de3ea10509cace5120af32fa0423a26797dca3/python/docs/claimset/scripts",
   "version": "f1de3ea10509cace5120af32fa0423a26797dca3",
   "licence": "LGPL-2.1-only",
   "availability": {
    "level": "public"
   },
   "description": "Python scripts (kl_mixture.py, scale_recovery.py, interval_bounds.py, lowrank_timing.py with build_lowrank_variants.sh, kl_laplace.py) that produce the numerical results on the observed-data likelihood of ADAM and iETS."
  },
  {
   "id": "A4",
   "kind": "table",
   "uri": "https://github.com/openforecast-org/smooth/blob/f1de3ea10509cace5120af32fa0423a26797dca3/python/docs/claimset/scripts/results/kl_mixture.csv",
   "version": "f1de3ea10509cace5120af32fa0423a26797dca3",
   "licence": "LGPL-2.1-only",
   "availability": {
    "level": "public"
   },
   "description": "Kullback-Leibler divergence per observation of the normal-drift mixture density and of the one-step density from the exact density of the iETS(M,N,N) demand size after an interval, for 25,080 cells of distribution, ETS form, scale, smoothing parameter and interval length."
  },
  {
   "id": "A5",
   "kind": "table",
   "uri": "https://github.com/openforecast-org/smooth/blob/f1de3ea10509cace5120af32fa0423a26797dca3/python/docs/claimset/scripts/results/kl_mixture_refine.csv",
   "version": "f1de3ea10509cace5120af32fa0423a26797dca3",
   "licence": "LGPL-2.1-only",
   "availability": {
    "level": "public"
   },
   "description": "Refinement check of 164 cells of the iETS(M,N,N) Kullback-Leibler grid with half the grid step and a tail cut of 1e-14, with differences from the base run."
  },
  {
   "id": "A6",
   "kind": "table",
   "uri": "https://github.com/openforecast-org/smooth/blob/f1de3ea10509cace5120af32fa0423a26797dca3/python/docs/claimset/scripts/results/scale_recovery.csv",
   "version": "f1de3ea10509cace5120af32fa0423a26797dca3",
   "licence": "LGPL-2.1-only",
   "availability": {
    "level": "public"
   },
   "description": "Mean, bias, Monte Carlo standard error, relative bias and number of failed fits of scale estimators for Gamma and inverse Gaussian iETS(M,N,N) sizes, on simulated drift errors (480 cells) and within fitted models (120 cells)."
  },
  {
   "id": "A7",
   "kind": "table",
   "uri": "https://github.com/openforecast-org/smooth/blob/f1de3ea10509cace5120af32fa0423a26797dca3/python/docs/claimset/scripts/results/interval_bounds.csv",
   "version": "f1de3ea10509cace5120af32fa0423a26797dca3",
   "licence": "LGPL-2.1-only",
   "availability": {
    "level": "public"
   },
   "description": "Upper bound of the 90% prediction interval of ETS(M,N,N) divided by the point forecast, approximate against simulated, for Gamma, inverse Gaussian and log-normal errors under the ADAM and conventional forms, twelve steps ahead and after six unobserved periods at the end of the sample."
  },
  {
   "id": "A8",
   "kind": "table",
   "uri": "https://github.com/openforecast-org/smooth/blob/f1de3ea10509cace5120af32fa0423a26797dca3/python/docs/claimset/scripts/results/lowrank_timing.csv",
   "version": "f1de3ea10509cace5120af32fa0423a26797dca3",
   "licence": "LGPL-2.1-only",
   "availability": {
    "level": "public"
   },
   "description": "Median and interquartile range of run times of the low-rank and full-covariance SSOE Kalman filter for ADAM ETS(A,N,A) with lags 24 and 168 on 1344 hourly observations with 1 to 48 missing values, with speed-ups and the largest differences in log-likelihood and fitted values."
  },
  {
   "id": "A9",
   "kind": "table",
   "uri": "https://github.com/openforecast-org/smooth/blob/f1de3ea10509cace5120af32fa0423a26797dca3/python/docs/claimset/scripts/results/kl_laplace.csv",
   "version": "f1de3ea10509cace5120af32fa0423a26797dca3",
   "licence": "LGPL-2.1-only",
   "availability": {
    "level": "public"
   },
   "description": "Kullback-Leibler divergence, in both directions, between the exact convolution of Laplace, S and Generalised Normal errors with normal state uncertainty and its family-scaled, one-step and Gauss-Hermite approximations, for variance ratios $f_t$ from 1.01 to 100."
  }
 ],
 "references": [
  {
   "id": "B1",
   "target": "10.1111/j.2517-6161.1977.tb01600.x",
   "id_type": "doi"
  },
  {
   "id": "B2",
   "target": "10.1080/01621459.1997.10473684",
   "id_type": "doi"
  },
  {
   "id": "B3",
   "target": "10.1111/j.2517-6161.1985.tb01355.x",
   "id_type": "doi"
  },
  {
   "id": "B4",
   "target": "10.1016/j.ijpe.2023.109013",
   "id_type": "doi"
  }
 ]
}
