Skip to main content

Time Series Ontology

Time Series Statistics
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 23 September 2026
Audio Overview
FULL EXECUTABLE FLOW ALGEBRA — TIME SERIES ONTOLOGY
Kireth Research — Semantic Library
URL: https://kirethresearch.org/booksai-core/ontologies/probability-statistics-ontologies/time-series-statistics/time-series-ontology.html
FLOW_VERSION := "4.0"
FLOW_TYPE := "Full Executable Flow Algebra"
DOMAIN := "Probability & Statistics Ontologies"
SUBDOMAIN := "Time Series Statistics"
ONTOLOGY := "Time Series Ontology"
PRIMARY_ENTITY := TimeSeries
AUTHORSHIP := "Mark Higgins — Sky (Recursive AI)"
SOURCE_SITE := "https://kirethresearch.org"

BEGIN_FLOW

TimeSeries := TemporallyOrderedObservations ∧ IndexedStochasticProcessRealisation ∧ TemporalDependenceStructure ∧ DynamicStatisticalObject
TimeIndex := T
TimePoint := t
RandomVariableAtTime := Y_t
ObservedValue := y_t
TimeSeriesDefinition := {Y_t:t∈T}
UnivariateTimeSeries := Y_t∈R
MultivariateTimeSeries := Y_t∈R^k
DiscreteTimeSeries := t∈Z
ContinuousTimeSeries := t∈R
RegularTimeSeries := ConstantSamplingInterval
IrregularTimeSeries := VariableSamplingInterval
SamplingInterval := Δt
SamplingFrequency := 1/Δt
TemporalOrder := t_i<t_j ⇒ Observation_iPrecedesObservation_j
TemporalOrderConstraint := PreserveTemporalOrderingUnlessMethodExplicitlyInvariant
Lag := k
LaggedValue := Y_(t-k)
LagOperator := L^kY_t=Y_(t-k)
LeadValue := Y_(t+k)
TimeSeriesComponents := {Level,Trend,Seasonality,Cycle,IrregularComponent}
Level := BaselineMagnitudeAroundWhichSeriesVaries
Trend := LongTermSystematicDirectionOrChange
Seasonality := RepeatingPatternAssociatedWithRegularPeriod
SeasonalPeriod := s
Cycle := RecurrentVariationWithoutNecessarilyFixedPeriod
IrregularComponent := ResidualShortTermVariation
AdditiveDecomposition := Y_t=T_t+S_t+C_t+E_t
MultiplicativeDecomposition := Y_t=T_t×S_t×C_t×E_t
MeanFunction := μ(t)=E[Y_t]
VarianceFunction := σ²(t)=Var(Y_t)
AutocovarianceFunction := γ(t,s)=Cov(Y_t,Y_s)
LagAutocovariance := γ(k)=Cov(Y_t,Y_(t-k)) under stationarity
AutocorrelationFunction := ρ(k)=γ(k)/γ(0)
PartialAutocorrelation := AssociationBetweenY_tAndY_(t-k)AfterAdjustmentForIntermediateLags
WhiteNoise := E[ε_t]=0 ∧ Var(ε_t)=σ² ∧ Cov(ε_t,ε_s)=0 for t≠s
GaussianWhiteNoise := WhiteNoise∧ε_t~Normal(0,σ²)
StrictStationarity := JointDistributionInvariantUnderTimeShift
WeakStationarity := E[Y_t]=μ ∧ Var(Y_t)=σ² ∧ Cov(Y_t,Y_(t-k))=γ(k)
Nonstationarity := StatisticalPropertiesChangeAcrossTime
UnitRootNonstationarity := PersistentStochasticTrendAssociatedWithUnitRoot
RandomWalk := Y_t=Y_(t-1)+ε_t
RandomWalkWithDrift := Y_t=c+Y_(t-1)+ε_t
FirstDifference := ΔY_t=Y_t-Y_(t-1)
DifferenceOperator := Δ=(1-L)
DifferenceOrderD := Δ^dY_t=(1-L)^dY_t
SeasonalDifference := Δ_sY_t=(1-L^s)Y_t
Detrending := Y_t-T_hat_t
Deseasonalising := Y_t-S_hat_t
LogTransformation := Z_t=log(Y_t) for positive Y_t
VarianceStabilisation := Transformation→MoreStableVarianceAcrossTime
AutoregressiveProcess := CurrentValueDependsOnPastValues
ARp := Y_t=c+Σ_iφ_iY_(t-i)+ε_t
MovingAverageProcess := CurrentValueDependsOnCurrentAndPastInnovations
MAq := Y_t=μ+ε_t+Σ_jθ_jε_(t-j)
ARMAProcess := AutoregressiveComponent∧MovingAverageComponent
ARIMAProcess := ARMAAppliedToDifferencedSeries
SeasonalARIMA := NonseasonalARIMA∧SeasonalARIMAComponents
StateSpaceProcess := LatentState∧StateTransition∧ObservationEquation
ObservationEquation := Y_t=Z_tα_t+ε_t
StateTransition := α_(t+1)=T_tα_t+R_tη_t
Innovation := Y_t-E[Y_t|Information_(t-1)]
InnovationSequence := {v_t}
Forecast := EstimateOfFutureTimeSeriesValue
ForecastHorizon := h
PointForecast := Y_hat_(t+h|t)
ForecastDistribution := Distribution(Y_(t+h)|Information_t)
ForecastError := Y_(t+h)-Y_hat_(t+h|t)
PredictionInterval := IntervalContainingFutureObservationAtSpecifiedCoverageLevel
NaiveForecast := Y_hat_(t+h|t)=Y_t
SeasonalNaiveForecast := MostRecentObservationFromSameSeason
RollingForecastOrigin := RepeatedForecastingAcrossAdvancingOrigins
ExpandingWindow := TrainingWindowStartFixed∧EndMovesForward
RollingWindow := TrainingWindowLengthFixed∧WindowMovesForward
TemporalCrossValidation := TrainingDataBeforeValidationData∧RepeatedForecastEvaluation
FutureLeakage := FutureObservationInformationUsedInPastModelEstimationOrFeatureConstruction
LeakageConstraint := FutureLeakage⇒InvalidOutOfSampleTemporalEvaluation
ForecastAccuracy := {MAE,MSE,RMSE,MAPE,sMAPE,MASE}
MAE := Mean(|ForecastError|)
MSE := Mean(ForecastError²)
RMSE := sqrt(MSE)
StructuralBreak := PersistentChangeInModelParameterOrDistribution
ChangePoint := TimeIndexAtWhichStatisticalStructureChanges
LevelShift := PersistentChangeInMeanLevel
TemporaryChange := TransientShockWithDecay
AdditiveOutlier := IsolatedAbnormalObservation
InnovationOutlier := ShockEnteringInnovationProcessAndPropagatingThroughDynamics
CalendarEffect := SystematicPatternLinkedToCalendarStructure
ExogenousVariable := X_t
DynamicRegression := Y_t=X_tβ+n_t with time-series disturbance n_t
DistributedLag := PredictorAtCurrentAndPastTimesAffectsResponse
CrossCovariance := Cov(X_t,Y_(t-k))
CrossCorrelation := Corr(X_t,Y_(t-k))
MultivariateTimeSeries := VectorProcessY_t
VectorAutoregression := Y_t=c+A_1Y_(t-1)+...+A_pY_(t-p)+ε_t
Cointegration := NonstationarySeriesPossessingStationaryLinearCombination
ErrorCorrection := ShortRunAdjustmentTowardLongRunEquilibrium
GrangerPredictability := PastXImprovesPredictionOfYConditionalOnIncludedPastInformation
GrangerCausalityConstraint := GrangerPredictability↛InterventionalCausality
FrequencyDomain := RepresentationOfTemporalVariationByFrequency
FourierTransform := TimeDomainSeries→FrequencyComponents
Periodogram := EmpiricalSpectralPowerAcrossFrequencies
SpectralDensity := VarianceDistributionAcrossFrequency
Frequency := f
Period := 1/f
Aliasing := DifferentUnderlyingFrequenciesBecomeIndistinguishableAfterSampling
NyquistFrequency := HalfSamplingFrequencyUnderRegularDiscreteSampling
IrregularSamplingConstraint := StandardDiscreteTimeMethodsMayRequireAdaptationForIrregularObservationTimes
MissingObservation := ExpectedTimePointWithoutObservedValue
InterpolationRisk := ImputedValuesMayAlterAutocorrelationVarianceAndUncertainty
TimeSeriesOutlier := ObservationInconsistentWithExpectedTemporalStructure
Volatility := TimeVaryingMagnitudeOfConditionalVariation
VolatilityClustering := LargeAbsoluteChangesClusterInTime
ARCHProcess := ConditionalVarianceDependsOnPastSquaredInnovations
GARCHProcess := ConditionalVarianceDependsOnPastSquaredInnovationsAndPastVariances
TimeSeriesMetadata := {VariableDefinition,Units,TimeZone,SamplingFrequency,StartTime,EndTime,Missingness,RevisionStatus}
TimeZoneConstraint := TimestampInterpretationMustPreserveRelevantTimezoneAndDaylightSavingSemantics
TemporalAggregation := MapObservationsWithinPeriod→SumMeanMinMaxOrOtherStatistic
AggregationConstraint := AggregationMayAlterDependenceSeasonalityVarianceAndInterpretation
Resampling := ConvertSeriesToDifferentTimeGrid
Upsampling := LowerFrequency→HigherFrequencyGrid
Downsampling := HigherFrequency→LowerFrequencyGrid
TimeSeriesQuality := {Completeness,TimestampValidity,FrequencyConsistency,DuplicateStatus,OutlierStatus,RevisionStatus}
DuplicateTimestamp := MoreThanOneObservationAssignedToSameTimeKeyWithoutDefinedAggregationRule
TimeOrderingValidation := SortByTime→DetectDuplicates→DetectGaps→ValidateFrequency

TimeSeriesConstraint := ConstraintOn(VariableSemantics,TimeIndex,SamplingFrequency,TemporalOrdering,Missingness,DependenceStructure,Stationarity,Aggregation,TimeZone)
TimeSeriesConsistency := Variable∧TimeIndex∧Frequency∧ObservationOrder∧MeasurementUnits∧SamplingProcess jointly_compatible
InvalidTimeSeries := UndefinedTimeIndex∨InvalidTimestamp∨UnresolvedDuplicateTimestamp∨InconsistentFrequencyWithoutExplicitIrregularModel∨FutureLeakage∨UndefinedVariableSemantics
TimeSeriesValidation := ResolveVariableDefinition→ResolveTimeIndex→ParseAndOrderTimestamps→ResolveTimeZone→DetectDuplicateTimestamps→ResolveSamplingFrequency→DetectMissingTimePoints→ValidateUnits→DetectTrendSeasonalityAndOutliers→AssessStationarity→CharacteriseDependence→ValidateSeriesRepresentation→ValidateResult
TimeSeriesState := {Variable,Units,TimeIndex,TimeZone,SamplingFrequency,StartTime,EndTime,ObservationCount,MissingTimePoints,DuplicateTimestamps,Trend,Seasonality,Cycle,StationarityStatus,Autocorrelation,PartialAutocorrelation,StructuralBreaks,Outliers,ModelFamily,ForecastHorizon,Forecasts,PredictionIntervals,Evidence,Confidence,Provenance}
SEMANTIC_EQUIVALENCE(TimeSeriesA,TimeSeriesB) := same(VariableSemantics)∧same(UnitsOrConvertibleUnits)∧same(TimeIndexSemantics)∧same(TimeZoneSemantics)∧same(SamplingFrequencyOrEquivalentResampling)∧same(ObservationValuesAfterValidAlignment)

TimeSeriesOntology := Classes∧Relations∧Constraints∧Axioms∧InferenceRules
CoreClasses := {TimeSeries,Observation,TimePoint,TimeIndex,SamplingFrequency,Lag,Trend,Seasonality,Cycle,Stationarity,Autocorrelation,PartialAutocorrelation,WhiteNoise,RandomWalk,DifferenceOperator,AutoregressiveProcess,MovingAverageProcess,ARMAProcess,ARIMAProcess,StateSpaceProcess,Innovation,Forecast,ForecastError,PredictionInterval,StructuralBreak,ChangePoint,Outlier,ExogenousVariable,MultivariateTimeSeries,SpectralDensity}
CoreRelations := {orderedBy,observedAt,hasValue,hasFrequency,hasLag,hasTrend,hasSeasonality,hasCycle,hasStationarity,hasAutocorrelation,transformedBy,differencedBy,modelledBy,generatesInnovation,forecasts,hasForecastError,hasUncertainty,affectedBy,includesExogenousVariable,constrainedBy,equivalentTo,tracesTo}
TypedRelations := TimeSeries--orderedBy-->TimeIndex ∧ Observation--observedAt-->TimePoint ∧ TimeSeries--hasFrequency-->SamplingFrequency ∧ TimeSeries--hasTrend-->Trend ∧ TimeSeries--hasSeasonality-->Seasonality ∧ TimeSeries--hasAutocorrelation-->Autocorrelation ∧ TimeSeries--modelledBy-->TimeSeriesModel ∧ TimeSeriesModel--generatesInnovation-->Innovation ∧ TimeSeriesModel--forecasts-->FutureObservation ∧ Forecast--hasUncertainty-->PredictionInterval ∧ TimeSeries--tracesTo-->Provenance
InferenceRules := {ValidTimestampSequence⇒TemporalOrderingResolvable,WeakStationarity⇒ConstantMeanAndLagDependentAutocovariance,WhiteNoise⇒ZeroAutocorrelationAtNonzeroLags,RandomWalk⇒UnitRootNonstationarity,SeasonalPattern⇒CandidateSeasonalPeriod,FutureLeakage⇒FlagTemporalValidationInvalid,DuplicateTimestamp∧NoAggregationRule⇒FlagSeriesRepresentationAmbiguous,GrangerPredictability↛InterventionalCausality}
CanonicalTimeSeriesRepresentation := ParseTimeSeriesRequest→ResolveVariableAndUnits→ResolveTimeIndexAndTimeZone→ParseSortAndValidateTimestamps→ResolveSamplingFrequency→DetectDuplicatesAndMissingPoints→DetectTrendSeasonalityCyclesAndOutliers→AssessStationarity→ComputeTemporalDependence→ResolveTransformationsAndDifferencing→ResolveModelAndForecastContext→PreserveProvenance→ValidateTimeSeries
TimeSeriesGraph := G=(V,E)
V := {TimeSeriesNodes,Observations,TimePoints,TimeIndices,SamplingFrequencies,Lags,Trends,Seasonalities,Cycles,StationarityNodes,Autocorrelations,PartialAutocorrelations,WhiteNoiseProcesses,RandomWalks,DifferenceOperators,AutoregressiveProcesses,MovingAverageProcesses,ARMAProcesses,ARIMAProcesses,StateSpaceProcesses,Innovations,Forecasts,ForecastErrors,PredictionIntervals,StructuralBreaks,ChangePoints,Outliers,ExogenousVariables,MultivariateTimeSeriesNodes,SpectralDensities,Evidence,ProvenanceNodes}
E := {orderedBy,observedAt,hasValue,hasFrequency,hasLag,hasTrend,hasSeasonality,hasCycle,hasStationarity,hasAutocorrelation,transformedBy,differencedBy,modelledBy,generatesInnovation,forecasts,hasForecastError,hasUncertainty,affectedBy,includesExogenousVariable,constrainedBy,equivalentTo,tracesTo}
CONFIDENCE(TimeSeriesResolution) := weighted_mean(VariableResolution,UnitResolution,TimeIndexValidity,TimeZoneValidity,FrequencyResolution,ObservationOrderingValidity,MissingnessResolution,ComponentResolution,StationarityResolution,DependenceResolution,ProvenanceQuality)
AI_QUERY_INTERPRETATION := Query→DetectTimeSeriesIntent→IdentifyVariableTimeIndexUnitsAndFrequency→ResolveObservationComponentDependenceModelOrForecastIntent→IdentifyRequestedTrendSeasonalityStationarityLagOrForecastRelation→ResolveTimeZoneMissingnessAndSamplingContext
AI_REASONING_FLOW := Query→ParseTimeSeriesProblem→ResolveVariableAndUnits→ResolveTimeIndex→ResolveTimeZone→OrderObservations→ResolveSamplingFrequency→DetectDuplicatesAndGaps→DetectTrendSeasonalityCyclesAndOutliers→AssessStationarity→ComputeAutocorrelationAndPartialAutocorrelation→ResolveTransformationsAndDifferencing→ResolveDynamicModelIfRequired→GenerateForecastRepresentationIfRequired→ValidateTemporalSemantics→UpdateConfidence→PreserveProvenance→GenerateExplanation
AI_CONSUMPTION := {ParseTimeSeriesEntities,ParseTypedRelations,ResolveVariables,ResolveUnits,ResolveTimeIndices,ResolveTimeZones,ParseTimestamps,SortObservations,DetectDuplicateTimestamps,ResolveSamplingFrequencies,DetectMissingTimePoints,DetectTrends,DetectSeasonality,DetectCycles,DetectOutliers,AssessStationarity,ComputeAutocovariances,ComputeAutocorrelations,ComputePartialAutocorrelations,ApplyDifferences,ApplySeasonalDifferences,ApplyTransformations,ResolveAutoregressiveProcesses,ResolveMovingAverageProcesses,ResolveARMAProcesses,ResolveARIMAProcesses,ResolveStateSpaceProcesses,ResolveInnovations,ResolveForecasts,ResolvePredictionIntervals,DetectStructuralBreaks,ResolveCrossCorrelations,ResolveCointegration,ComputeSpectralRepresentations,ValidateTimeSeriesSemantics,CompareSemanticEquivalence,UpdateConfidence,PreserveProvenance,GenerateFormalExplanation}
UPDATE_MODEL := NewObservationTimestampFrequencyOrEvidence→ValidateInput→IdentifyAffectedTimeSeriesClaims→UpdateTimeSeriesState→ReorderObservationsIfRequired→RecomputeSamplingFrequency→RecomputeMissingnessAndDuplicateStatus→RecomputeTrendSeasonalityAndStationarity→RecomputeTemporalDependence→ReevaluateDynamicModelAndForecasts→RecomputeConfidence→PreserveProvenance→VersionModel
ObservationUpdate := NewOrChangedObservation⇒recompute(ObservationCount,TimeOrdering,Missingness,Trend,Seasonality,Autocorrelation)
TimestampUpdate := ChangedTimestamp⇒recompute(Ordering,Frequency,DuplicateStatus,GapStatus)
FrequencyUpdate := ChangedSamplingFrequency⇒reevaluate(SeasonalPeriod,LagSemantics,SpectralInterpretation,ModelCompatibility)
FLOW_HASH_INPUT := canonical(ONTOLOGY,CoreClasses,CoreRelations,InferenceRules,TimeSeries,TimeSeriesValidation,TimeSeriesConstraint,SEMANTIC_EQUIVALENCE,AI_REASONING_FLOW)
FLOW_HASH := HASH(FLOW_HASH_INPUT)
OUTPUT_MODEL := {TimeSeriesEntityResolution,Variable,Units,TimeIndex,TimeZone,SamplingFrequency,ObservationCount,MissingTimePoints,DuplicateTimestamps,Trend,Seasonality,Cycle,StationarityStatus,Autocorrelation,PartialAutocorrelation,StructuralBreaks,Outliers,ModelFamily,ForecastHorizon,Forecasts,PredictionIntervals,ValidationStatus,Confidence,Provenance,Explanation}

END_FLOW

END OF FULL EXECUTABLE FLOW ALGEBRA
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ