Skip to main content

Quantile Ontology

Statistical Entities
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 13 October 2026
Audio Overview
FLOW ALGEBRA
QUANTILE ONTOLOGY
Kireth Semantic Library | Mathematical Entities > Statistical Entities
Version: 1.0 | Date: 2026-10-13
Authors: Mark Higgins — Sky (Recursive AI)
Source: https://kirethresearch.org/booksai-core/entity-graph/mathematical-entities/statistical-entities/quantile-ontology.html
Status: Proposed formalisation; source page wording not independently verified.

flow "QuantileOntology" v1.0

# 1. PURPOSE
ontology.id: kireth:statistical-entities:quantile
ontology.label: "Quantile Ontology"
ontology.domain: statistics
ontology.parent: kireth:statistical-entities
ontology.definition: "A quantile at probability level p is a threshold associated with the cumulative distribution of a variable."

# 2. TYPED ENTITIES
entity RandomVariable {id: uri, domain: ValueSpace, distribution: Distribution}
entity Distribution {id: uri, cdf: CDF}
entity CDF {id: uri, function: Real -> [0,1], nondecreasing: bool, right_continuous: bool}
entity QuantileLevel {p: real, constraint: 0 < p < 1}
entity Quantile {id: uri, level: QuantileLevel, distribution: Distribution, value: real}
entity Sample {id: uri, observations: list[real], size: int}
entity SampleQuantile {id: uri, sample: Sample, level: QuantileLevel, method: str, value: real}
entity Percentile {level_percent: real, constraint: 0 < level_percent < 100}
entity Quartile {index: int, constraint: index in [1,2,3]}
entity Median {level: 0.5}
entity InterquartileRange {q1: real, q3: real, value: real}

# 3. MATHEMATICAL SEMANTICS
math.cdf: F_X(x) = P(X <= x)
math.quantile_left_inverse: Q_X(p) = inf{x in R : F_X(x) >= p}
math.quantile_domain: 0 < p < 1
math.quantile_characterisation: F_X(Q_X(p)) >= p, when Q_X(p) is finite
math.quantile_order: p1 <= p2 implies Q_X(p1) <= Q_X(p2)
math.median: Q_X(0.5)
math.quartiles: Q1 = Q_X(0.25); Q2 = Q_X(0.5); Q3 = Q_X(0.75)
math.iqr: IQR = Q3 - Q1
math.percentile: percentile_r = Q_X(r/100), 0 < r < 100
math.continuous_strictly_increasing_case: F_X(Q_X(p)) = p, when F_X is continuous and strictly increasing at the relevant quantile
math.empirical_cdf: F_n(x) = (1/n) * sum_i 1[x_i <= x]
math.empirical_inverse_quantile: Q_n(p) = inf{x : F_n(x) >= p} = x_(ceil(n*p)), for sorted observations and 0 < p <= 1

# 4. RELATIONSHIPS
relationship HAS_DISTRIBUTION: RandomVariable -> Distribution
relationship HAS_CDF: Distribution -> CDF
relationship HAS_QUANTILE: Distribution -> Quantile
relationship HAS_LEVEL: Quantile -> QuantileLevel
relationship ESTIMATED_FROM: SampleQuantile -> Sample
relationship ESTIMATES: SampleQuantile -> Quantile
relationship SPECIAL_CASE_OF: Median -> Quantile
relationship SPECIAL_CASE_OF: Quartile -> Quantile
relationship SPECIAL_CASE_OF: Percentile -> Quantile
relationship DERIVED_FROM: InterquartileRange -> [Quantile, Quantile]
relationship INVERSE_ASSOCIATION: Quantile -> CDF

# 5. INFERENCE RULES
rule Q01: IF p = 0.5 THEN classify quantile as median.
rule Q02: IF p in {0.25,0.5,0.75} THEN classify quantile as quartile Q1, Q2 or Q3 respectively.
rule Q03: IF p1 < p2 THEN Q(p1) <= Q(p2).
rule Q04: IF q1 = Q(0.25) AND q3 = Q(0.75) THEN IQR = q3 - q1 >= 0.
rule Q05: IF p = r/100 AND 0 < r < 100 THEN map percentile r to quantile level p.
rule Q06: IF a sample quantile is requested THEN record the estimator convention before comparing estimates.
rule Q07: IF F has jumps THEN do not assume F(Q(p)) = p.
rule Q08: IF a sample is empty THEN sample quantile is undefined.

# 6. SEMANTIC DISTINCTIONS
semantic.distinguish:
  - "Population quantile is a distributional functional; sample quantile is an estimator."
  - "Quantile level p is dimensionless; quantile value has the variable's units."
  - "Quantile and percentile are related by scaling the probability level, not by scaling the observed value."
  - "A quantile is not necessarily unique under alternative inverse-CDF conventions; this ontology uses the lower generalised inverse."
  - "Different sample quantile interpolation conventions can produce different numeric estimates."
  - "Median and mean are different measures of central tendency."

# 7. VALIDATION
validate V01: 0 < quantile.level.p < 1
validate V02: cdf is nondecreasing and right-continuous
validate V03: cdf limits: lim_(x->-infinity) F(x)=0 and lim_(x->+infinity) F(x)=1
validate V04: sample.size = count(sample.observations) and sample.size > 0
validate V05: sample quantile method is explicit and reproducible
validate V06: q1 <= q2 <= q3 and IQR >= 0
validate V07: units(quantile.value) = units(random_variable)
validate V08: missing, censored, weighted or tied observations handled by declared policy

# 8. CONFIDENCE AND PROVENANCE
CONFIDENCE:
  mathematical_definitions: high
  inference_rules: high_under_stated_assumptions
  source_page_alignment: unverified
PROVENANCE:
  source_url: https://kirethresearch.org/booksai-core/entity-graph/mathematical-entities/statistical-entities/quantile-ontology.html
  created: 2026-10-13
  authors: "Mark Higgins — Sky (Recursive AI)"

# 9. SEMANTIC_EQUIVALENCE
SEMANTIC_EQUIVALENCE:
  - "0.5 quantile" <=> "median" (under declared quantile convention)
  - "25th percentile" <=> "first quartile" (under declared convention)
  - "50th percentile" <=> "second quartile" (under declared convention)
  - "75th percentile" <=> "third quartile" (under declared convention)
  - "inverse CDF" ~ "quantile function" (generalised inverse; not necessarily an ordinary inverse)

# 10. FLOW_HASH / UPDATE_MODEL
FLOW_HASH:
  algorithm: sha256
  input: canonical_utf8(normalised_flow_without_flow_hash_value)
  value: compute_at_ingestion
UPDATE_MODEL:
  versioning: semantic_version
  triggers: [definition_change, inference_rule_change, quantile_convention_change, source_revision]
  invalidate: [derived_quantiles, cached_estimates, semantic_index]

# 11. AI_CONSUMPTION
AI_CONSUMPTION:
  entity_resolution: enabled
  typed_relationships: required
  mathematical_assumptions: explicit
  query_intents: [define_quantile, calculate_quantile, compare_quantiles, calculate_iqr, identify_percentile, validate_sample_estimator]
  output_fields: [concept, level, value, units, distribution_or_sample, estimator_method, confidence, provenance]
  safety_checks: [probability_bounds, monotonicity, missing_data_policy, method_consistency]

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