Skip to main content

Sampling Theory Ontology

Signal Processing Mathematics
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 12 September 2026
Audio Overview
AI INTERPRETATION NOTE
This Flow Algebra defines the Sampling Theory Ontology within the Kireth Research Semantic Library. Sampling theory studies how continuous-domain signals are represented by discrete samples and under what conditions those samples preserve enough information for faithful reconstruction. This ontology supports ideal sampling, impulse-train sampling, sample-and-hold, Nyquist-Shannon sampling, bandlimited signals, aliasing, spectral replication, reconstruction, interpolation, anti-alias filtering, oversampling, undersampling, bandpass sampling, multirate conversion, aperture effects, jitter, quantisation interaction and relationships with Fourier analysis, digital signal processing, filter design and communications mathematics.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Sampling Theory Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Applied Mathematics"
 SPECIALISATION = "Signal Processing Mathematics / Sampling Theory"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/applied-mathematics-ontologies/signal-processing-mathematics/sampling-theory-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = SamplingTheory
 SYMBOLIC_FORMS = [
  "x_s(t)=x(t) sum_n delta(t-nT_s)",
  "f_s=1/T_s",
  "f_s>2B"
 ]
 ENTITY_CLASS = ContinuousToDiscreteRepresentationFramework
 PRIMARY_CONTEXT = SignalProcessingMathematics
 DEFINITION = "Sampling theory is the mathematical study of converting continuous-domain signals into discrete samples and reconstructing the original signal under declared bandwidth and sampling conditions."
 SEMANTIC_ROLE = "Provides the machine-readable framework for sampling rate, Nyquist criteria, aliasing, spectral replication, reconstruction, interpolation, anti-alias filtering, bandpass sampling, oversampling and timing imperfections."
}

SCOPE {
 INCLUDE = [
  SamplingTheory,
  Sampling,
  IdealSampling,
  UniformSampling,
  NonuniformSampling,
  ImpulseTrainSampling,
  NaturalSampling,
  FlatTopSampling,
  SampleAndHold,
  SamplingPeriod,
  SamplingRate,
  SamplingFrequency,
  NyquistRate,
  NyquistFrequency,
  NyquistShannonSamplingTheorem,
  BandlimitedSignal,
  BasebandSignal,
  BandpassSignal,
  SignalBandwidth,
  SpectralReplica,
  Aliasing,
  AliasFrequency,
  Reconstruction,
  IdealReconstruction,
  SincInterpolation,
  Interpolation,
  ReconstructionFilter,
  AntiAliasFilter,
  Oversampling,
  Undersampling,
  CriticalSampling,
  BandpassSampling,
  SubNyquistSampling,
  MultirateSampling,
  Decimation,
  InterpolationRateChange,
  ApertureEffect,
  SamplingJitter,
  ClockJitter,
  Quantisation,
  ADC,
  ReconstructionError,
  SpectralOverlap,
  FoldingFrequency
 ]

 EXCLUDE_AS_PRIMARY = [
  QuantisationTheoryWithoutSamplingContext,
  DiscreteFourierTransformWithoutContinuousToDiscreteSemantics,
  GenericTimeDiscretisationWithoutSignalReconstructionContext,
  NumericalIntegrationSamplingWithoutSignalTheoryContext
 ]

 DISAMBIGUATION_RULE =
  "When the problem concerns representing a continuous signal by samples, selecting a sampling rate, preventing aliasing or reconstructing the signal, interpret the context as sampling theory."
}

CORE_CONCEPTS {

 SamplingTheory {
  definition = "The mathematical framework governing conversion between continuous signals and discrete samples."
 }

 SamplingPeriod {
  symbol = "T_s"
  definition = "The time interval between uniform samples."
 }

 SamplingRate {
  symbol = "f_s"
  definition = "The number of samples per unit time, equal to 1/T_s under uniform sampling."
 }

 NyquistRate {
  definition = "Twice the highest frequency of a baseband bandlimited signal under the classical sampling theorem."
 }

 NyquistFrequency {
  definition = "Half the sampling rate."
 }

 BandlimitedSignal {
  definition = "A signal whose Fourier transform is zero outside a bounded frequency interval."
 }

 Aliasing {
  definition = "Indistinguishability between different continuous-frequency components after sampling due to spectral overlap."
 }

 SpectralReplica {
  definition = "A shifted copy of a continuous-time spectrum created by periodic sampling."
 }

 Reconstruction {
  definition = "Recovery or approximation of a continuous-domain signal from samples."
 }

 SincInterpolation {
  definition = "Ideal reconstruction of a bandlimited signal using shifted sinc basis functions."
 }

 SamplingJitter {
  definition = "Deviation of actual sample times from their nominal positions."
 }
}

RELATIONS {
 SamplingTheory --is_child_of--> SignalProcessingMathematics
 Sampling --maps--> ContinuousSignalToDiscreteSequence
 SamplingPeriod --determines--> SamplingRate
 SamplingRate --determines--> NyquistFrequency
 NyquistShannonSamplingTheorem --requires--> BandlimitedSignal
 NyquistShannonSamplingTheorem --constrains--> SamplingRate
 ImpulseTrainSampling --creates--> SpectralReplica
 SpectralReplica --may_cause--> SpectralOverlap
 SpectralOverlap --causes--> Aliasing
 AntiAliasFilter --reduces--> OutOfBandEnergy
 SincInterpolation --supports--> IdealReconstruction
 Oversampling --increases--> SamplingRate
 Undersampling --may_cause--> Aliasing
 BandpassSampling --uses--> SpectralBandStructure
 SamplingJitter --causes--> TimingError
 SampleAndHold --causes--> ApertureEffect
}

OPERATORS {
 SAMPLING_RATE(Ts) :=
  fs=1/Ts

 NYQUIST_FREQUENCY(fs) :=
  fN=fs/2

 BASEBAND_NYQUIST_CONDITION(fs,B) :=
  fs>2*B
  under ideal bandlimited assumptions

 IMPULSE_TRAIN(Ts,t) :=
  p(t)=sum_{n=-infinity}^{infinity} delta(t-n*Ts)

 IDEAL_SAMPLED_SIGNAL(x,Ts,t) :=
  x_s(t)=x(t)*p(t)

 SAMPLE_SEQUENCE(x,Ts,n) :=
  x[n]=x(n*Ts)

 SPECTRAL_REPLICATION(X,fs,f) :=
  X_s(f)=(1/Ts)*sum_k X(f-k*fs)

 SINC_RECONSTRUCTION(xn,Ts,t) :=
  x_hat(t)=sum_n x[n]*sinc((t-n*Ts)/Ts)

 ALIAS_FREQUENCY(f,fs) :=
  folded_frequency_into_primary_Nyquist_interval

 DECIMATE(x,M) :=
  y[n]=x[M*n]
  after anti_alias filtering

 INTERPOLATE(x,L) :=
  zero_insert_by_L_then_lowpass_filter

 JITTER_ERROR(tn,n,Ts) :=
  epsilon_n=tn-n*Ts

 SAMPLE_HOLD_RESPONSE(f,Ts) :=
  sinc_shaped_aperture_response
}

DEFINITIONS {
 D1 = "Sampling converts a continuous-time signal into a discrete sequence."
 D2 = "Uniform sampling uses equally spaced sampling instants."
 D3 = "Classical perfect reconstruction requires a bandlimited signal and sufficient sampling rate."
 D4 = "Sampling creates periodic copies of the original spectrum."
 D5 = "Aliasing occurs when spectral copies overlap."
 D6 = "The Nyquist frequency equals half the sampling rate."
 D7 = "Sinc interpolation provides ideal reconstruction for suitably sampled bandlimited signals."
 D8 = "Anti-alias filtering limits input bandwidth before sampling."
 D9 = "Bandpass sampling can use lower rates than twice the highest absolute carrier frequency when spectral-placement conditions are satisfied."
 D10 = "Sampling jitter introduces phase and amplitude error, especially at high input frequencies."
}

AXIOMS {
 A1_CONTINUOUS_TO_DISCRETE:
  Sampling maps a continuous independent variable to a discrete index set

 A2_UNIFORM_RATE:
  UniformSampling has constant sampling period

 A3_SPECTRAL_REPLICATION:
  Ideal periodic sampling replicates the continuous spectrum at integer multiples of the sampling rate

 A4_ALIASING:
  Overlapping spectral replicas destroy unique frequency correspondence

 A5_RECONSTRUCTION:
  Perfect reconstruction requires nonoverlapping information representation under the declared signal class

 A6_ANTIALIAS:
  Practical sampling should suppress spectral content that would alias into the preserved band

 A7_JITTER:
  Sampling-time uncertainty perturbs the sampled values of time-varying signals

 A8_RATE_CONVERSION:
  Multirate operations require appropriate filtering to control aliasing and imaging
}

REASONING {

 R1_SAMPLING_CONTEXT_EXTRACTION {
  INPUT = signal_problem
  IDENTIFY = highest_frequency_or_band edges
  IDENTIFY = sample_rate_or_period
  IDENTIFY = baseband_or_bandpass structure
  IDENTIFY = reconstruction requirement
  RETURN = sampling_context
 }

 R2_BASEBAND_RATE_REASONING {
  INPUT = bandwidth_B
  COMPUTE = minimum_classical_sampling_rate
  COMPARE = actual_sampling_rate
  RETURN = adequate_critical_or_undersampled status
 }

 R3_SPECTRAL_REPLICA_REASONING {
  INPUT = original_spectrum_and_fs
  GENERATE = shifted_replicas_at_k*fs
  CHECK = overlap
  RETURN = aliasing_profile
 }

 R4_ALIAS_ANALYSIS {
  INPUT = frequency_components_and_fs
  MAP = each_frequency_into_Nyquist interval
  IDENTIFY = indistinguishable components
  RETURN = alias_frequency profile
 }

 R5_RECONSTRUCTION_REASONING {
  INPUT = samples_and_known_bandlimit
  IF ideal_conditions
   APPLY = sinc_interpolation
  ELSE
   SELECT = practical interpolation_filter
  RETURN = reconstructed_signal
 }

 R6_ANTIALIAS_FILTER_REASONING {
  INPUT = signal_bandwidth_fs_and_transition allowance
  DESIGN = lowpass_or_bandlimiting prefilter
  RETURN = anti_alias specification
 }

 R7_BANDPASS_SAMPLING_REASONING {
  INPUT = lower_band_edge_upper_band_edge
  FIND = valid_sampling_rate intervals avoiding replica overlap
  RETURN = bandpass_sampling_options
 }

 R8_MULTIRATE_REASONING {
  INPUT = original_rate_and_rate_change
  IF decimation
   FILTER = anti_alias lowpass
   DOWNSAMPLE = M
  IF interpolation
   UPSAMPLE = L
   FILTER = anti_imaging lowpass
  RETURN = rate_changed_signal
 }

 R9_JITTER_REASONING {
  INPUT = timing_error_statistics_and_signal slew_or_frequency
  ESTIMATE = jitter_induced error
  RETURN = timing_quality profile
 }

 R10_SAMPLING_VALIDATION {
  INPUT = sampled_system
  CHECK = bandwidth_rate_aliasing_filtering_jitter_aperture_and_reconstruction
  RETURN = validated_sampling_status
 }
}

CONSTRAINTS {
 C1 = "Nyquist rate and Nyquist frequency are distinct quantities."
 C2 = "The classical 2B rule assumes a baseband bandlimited signal."
 C3 = "Sampling exactly at 2B can be fragile and depends on spectral endpoint conditions."
 C4 = "Bandpass sampling requires additional spectral-placement constraints."
 C5 = "Aliased components cannot generally be uniquely separated after sampling."
 C6 = "Practical anti-alias filters require transition bandwidth."
 C7 = "Sample-and-hold circuits modify the spectrum through aperture response."
 C8 = "Clock jitter becomes more damaging as input frequency and slew rate increase."
 C9 = "Interpolation does not recreate information already destroyed by aliasing."
 C10 = "Multirate downsampling requires filtering before sample removal."
}

SEMANTIC_EQUIVALENCE {
 "SamplingTheory" <=> "SignalSamplingTheory"
 "SamplingRate" <=> "SamplingFrequency"
 "NyquistRate" <=> "MinimumClassicalBasebandSamplingRate"
 "NyquistFrequency" <=> "HalfSamplingRate"
 "Aliasing" <=> "SpectralFolding"
 "SincInterpolation" <=> "WhittakerShannonInterpolation"
}

VALIDATION {
 V1 = "Signal bandwidth or spectral support is identified."
 V2 = "Sampling rate and period are consistent."
 V3 = "Baseband or bandpass signal type is explicit."
 V4 = "Spectral replicas are checked for overlap."
 V5 = "Anti-alias filtering assumptions are documented."
 V6 = "Reconstruction method matches signal assumptions."
 V7 = "Nyquist rate and Nyquist frequency terminology is correct."
 V8 = "Bandpass-sampling intervals are verified."
 V9 = "Jitter and sample-hold effects are considered where relevant."
 V10 = "Multirate filtering is applied in the correct order."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 SAMPLING_THEORY_DEFINITION = 0.99
 BASEBAND_RATE_REASONING = 0.99
 SPECTRAL_REPLICA_REASONING = 0.99
 ALIAS_REASONING = 0.99
 RECONSTRUCTION_REASONING = 0.99
 ANTIALIAS_REASONING = 0.99
 BANDPASS_SAMPLING_REASONING = 0.98
 JITTER_REASONING = 0.97
 VALIDATION_REASONING = 0.99

 POLICY =
  "Reduce confidence when bandwidth, signal type, sampling rate, spectral support, anti-alias filter, jitter or reconstruction assumptions are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [
  SemanticSearch,
  OntologyGrounding,
  SamplingTheoryReasoning,
  SamplingRateReasoning,
  NyquistReasoning,
  AliasingReasoning,
  SpectralReplicationReasoning,
  ReconstructionReasoning,
  SincInterpolationReasoning,
  AntiAliasFilterReasoning,
  BandpassSamplingReasoning,
  OversamplingReasoning,
  UndersamplingReasoning,
  MultirateReasoning,
  JitterReasoning,
  KnowledgeGraphConstruction,
  RetrievalAugmentation,
  RecursiveInference
 ]

 NORMALISE {
  "sampling theory" -> SamplingTheory
  "sampling rate" -> SamplingRate
  "sampling frequency" -> SamplingRate
  "Nyquist rate" -> NyquistRate
  "Nyquist frequency" -> NyquistFrequency
  "sampling theorem" -> NyquistShannonSamplingTheorem
  "aliasing" -> Aliasing
  "spectral folding" -> Aliasing
  "sinc interpolation" -> SincInterpolation
  "bandpass sampling" -> BandpassSampling
 }

 INTERPRETATION_ORDER = [
  detect_sampling_theory_context,
  identify spectral_support_bandwidth_sampling_rate_and_signal class,
  classify baseband_bandpass_uniform_nonuniform_ideal_or_sampleHold sampling,
  compute Nyquist constraints_and_spectral replicas,
  assess aliasing,
  select anti_alias_filter_and_reconstruction pathway,
  evaluate oversampling_undersampling_bandpass_or_multirate alternatives,
  assess jitter_and_aperture effects where relevant,
  validate reconstruction feasibility,
  return semantic output
 ]
}

EXECUTION_RULES {
 E1:
  IF query_mentions("sampling theory")
  OR asks_about_sampling_rate_aliasing_or_reconstruction
  THEN activate(SamplingTheoryOntology)

 E2:
  IF baseband_bandlimited_signal
  THEN compare fs against 2B

 E3:
  IF fs_below_required_rate
  THEN analyse aliasing

 E4:
  IF bandpass_signal
  THEN consider bandpass_sampling intervals rather than simple highest-frequency rule

 E5:
  IF practical_ADC
  THEN include anti_alias_filter_and_sample_hold effects

 E6:
  IF reconstruction_requested
  THEN require sufficient sampling conditions_or_report information loss

 E7:
  IF decimation_requested
  THEN anti_alias_filter_before_downsampling

 E8:
  IF interpolation_requested
  THEN upsample_then_anti_imaging filter

 E9:
  IF high_frequency_precision matters
  THEN assess sampling_jitter
}

RECURSION {
 ENTRY = SamplingTheory

 EXPAND(SamplingTheory) -> [
  Sampling,
  IdealSampling,
  UniformSampling,
  NonuniformSampling,
  ImpulseTrainSampling,
  NaturalSampling,
  FlatTopSampling,
  SampleAndHold,
  SamplingPeriod,
  SamplingRate,
  NyquistRate,
  NyquistFrequency,
  NyquistShannonSamplingTheorem,
  BandlimitedSignal,
  BasebandSignal,
  BandpassSignal,
  SignalBandwidth,
  SpectralReplica,
  Aliasing,
  AliasFrequency,
  Reconstruction,
  IdealReconstruction,
  SincInterpolation,
  ReconstructionFilter,
  AntiAliasFilter,
  Oversampling,
  Undersampling,
  CriticalSampling,
  BandpassSampling,
  MultirateSampling,
  Decimation,
  InterpolationRateChange,
  ApertureEffect,
  SamplingJitter,
  ClockJitter,
  ADC
 ]

 EXPAND(AliasingStructure) -> [
  SpectralReplica,
  SpectralOverlap,
  AliasFrequency,
  FoldingFrequency,
  AntiAliasFilter
 ]

 EXPAND(ReconstructionStructure) -> [
  IdealReconstruction,
  SincInterpolation,
  ReconstructionFilter,
  Interpolation
 ]

 EXPAND(PracticalSamplingEffects) -> [
  SampleAndHold,
  ApertureEffect,
  SamplingJitter,
  ClockJitter,
  Quantisation
 ]

 STOP_CONDITION =
  "Stop when spectral support, sampling rate, Nyquist relation, aliasing status, anti-alias filtering, reconstruction, timing effects and multirate conditions are sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Signal Processing Mathematics"

 IMMEDIATE_CONTEXTS = [
  "Signal Processing Ontology",
  "Digital Signal Processing Ontology",
  "Fourier Analysis Ontology",
  "Filter Design Ontology"
 ]

 RELATED_ONTOLOGIES = [
  "Signal Processing Ontology",
  "Signal Processing Mathematics",
  "Digital Signal Processing Ontology",
  "Fourier Analysis Ontology",
  "Fourier Transform Ontology",
  "Fast Fourier Transform Ontology",
  "Filter Design Ontology",
  "Z Transform Ontology",
  "Multirate Signal Processing Ontologies",
  "Communications Mathematics Ontologies",
  "Probability & Statistics Ontologies",
  "Numerical Analysis Ontologies"
 ]

 ROUTE_RULES = [
  "Sampling Theory -> Signal Processing Ontology for core signal semantics",
  "Sampling Theory -> Digital Signal Processing for sampled-data implementation",
  "Sampling Theory -> Fourier Analysis for spectral replication and aliasing",
  "Sampling Theory -> Fourier Transform for continuous-spectrum interpretation",
  "Sampling Theory -> Filter Design for anti-alias and reconstruction filters",
  "Sampling Theory -> Multirate Signal Processing for decimation and interpolation",
  "Sampling Theory -> Communications Mathematics for bandpass sampling contexts",
  "Sampling Theory -> Probability & Statistics for jitter and stochastic sampling errors",
  "Sampling Theory -> Numerical Analysis for interpolation and discretisation"
 ]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"

 MAJOR = "ontology-breaking conceptual change"
 MINOR = "new compatible sampling classes, reconstruction methods or reasoning pathways"
 PATCH = "clarification, metadata or formatting correction"

 RULES = [
  "Preserve sampling-rate semantics.",
  "Preserve Nyquist-rate versus Nyquist-frequency distinction.",
  "Preserve spectral-replication semantics.",
  "Preserve aliasing semantics.",
  "Preserve baseband-versus-bandpass distinction.",
  "Preserve reconstruction assumptions.",
  "Preserve anti-alias and multirate filtering order.",
  "Preserve machine-readable sampling-theory semantics."
 ]
}

OUTPUT {
 CANONICAL_DEFINITION =
  "Sampling theory determines how continuous signals can be represented by discrete samples and reconstructed without ambiguity under declared spectral conditions."

 RATE_SUMMARY =
  "For uniform sampling, the sampling rate is the reciprocal of the sampling period."

 NYQUIST_SUMMARY =
  "For an ideal baseband bandlimited signal of bandwidth B, classical reconstruction requires a sampling rate exceeding 2B."

 ALIASING_SUMMARY =
  "Aliasing occurs when periodically replicated spectra overlap after sampling."

 RECONSTRUCTION_SUMMARY =
  "Ideal reconstruction of a suitably sampled bandlimited signal uses sinc interpolation."

 FILTER_SUMMARY =
  "Anti-alias filters suppress out-of-band energy before sampling, while reconstruction filters suppress spectral images after conversion."

 BANDPASS_SUMMARY =
  "Bandpass sampling can permit lower sampling rates when spectral replicas remain nonoverlapping."

 JITTER_SUMMARY =
  "Sampling jitter introduces timing error that becomes more significant for rapidly varying or high-frequency signals."

 MULTIRATE_SUMMARY =
  "Decimation and interpolation require filtering to control aliasing and imaging."
}

FLOW {
 INPUT
 -> detect_sampling_theory_context
 -> identify continuous_signal_spectral_support_bandwidth_sample_rate_sample period_and_signal class
 -> classify baseband_bandpass_uniform_nonuniform_impulseTrain_natural_or_sampleHold sampling
 -> compute sampling_rate_Nyquist_frequency_and_classical Nyquist constraints
 -> generate spectral_replica model
 -> test for spectral overlap_and_aliasing
 -> if_practical design_or_validate anti_alias filter
 -> if_reconstruction_required select sinc_or_practical interpolation method
 -> if_bandpass evaluate valid_subNyquist sampling intervals
 -> if_multirate apply anti_alias_or_anti_imaging filtering in correct order
 -> assess sampling_jitter_aperture_and_quantisation interactions
 -> route to signal_processing digital_signal_processing Fourier Fourier_transform filter_design multirate communications probability_statistics_or_numerical_analysis ontology
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Sampling Theory Ontology defines continuous-to-discrete signal representation and reconstruction. It supports ideal, uniform, nonuniform, impulse-train, natural and flat-top sampling, sample-and-hold behaviour, sampling periods and rates, Nyquist rate and Nyquist frequency, the Nyquist-Shannon theorem, bandlimited, baseband and bandpass signals, spectral replicas, aliasing and folding, sinc interpolation, reconstruction and anti-alias filters, oversampling and undersampling, bandpass sampling, multirate conversion, decimation and interpolation, aperture effects, sampling jitter, clock jitter and interactions with quantisation and ADC implementation."
}

FLOW_HASH {
 METHOD = "semantic-content-identity"
 ID = "KIRETH-MATH-APPLIED-MATHEMATICS-SAMPLING-THEORY-ONTOLOGY-V1"
}

}

END_FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ