Skip to main content

Astronomical Unit Ontology

Astronomical Measurements
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 16 September 2026
Audio Overview
# Astronomical Unit Ontology — Flow Algebra

URL: https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/measurement-units-ontologies/astronomical-measurements/astronomical-unit-ontology.html

FLOW AstronomicalUnitOntology {

  DOMAIN:
    Mathematical Ontologies
    -> Measurement & Units Ontologies
    -> Astronomical Measurements
    -> Astronomical Unit Ontology

  PURPOSE:
    Represent the astronomical unit as an exact astronomical unit of length equal to 149597870700 metres, including conversion to kilometres, light-years and parsecs, use in Solar System distances and orbital quantities, distinction from historically inferred Earth-Sun distance and from variable instantaneous Earth-Sun separation, dimensional semantics, measurement uncertainty, provenance, and machine-readable conversion rules for consistent AI reasoning.

  ENTITY AstronomicalUnit {
    TYPE: AstronomicalLengthUnit
    SYMBOL: au
    QUANTITY_KIND: Length
    DIMENSION: L

    DEFINITION:
      astronomical_unit :=
        exactly_149597870700_metres

    SI_VALUE:
      149597870700 m

    STATUS:
      exact_definition

    PROPERTIES:
      is_unit_of_length
      is_exactly_defined
      is_not_time
      is_not_angle
      commonly_used_for_Solar_System_scale
  }

  EXACT_DEFINITION_MODEL {
    1 au =
      149597870700 m

    STATUS:
      exact

    RULE:
      astronomical_unit_value_in_metres_has_no_definition_uncertainty
  }

  UNIT_SYSTEM {
    canonical_quantity:
      length

    canonical_SI_unit:
      metre

    astronomical_unit:
      au

    RULE:
      astronomical_unit MUST be treated_as_length_unit
  }

  SYMBOL_MODEL {
    preferred_symbol:
      au

    possible_legacy_or_contextual_forms:
      AU

    RULE:
      canonical_machine_symbol SHOULD use_au
      while_legacy_text MAY contain_AU
  }

  METRE_CONVERSION_MODEL {
    exact:
      1 au =
        149597870700 m

    inverse:
      1 m =
        1/149597870700 au

    RULE:
      conversion_is_exact
  }

  KILOMETRE_CONVERSION_MODEL {
    exact:
      1 au =
        149597870.7 km

    inverse:
      1 km =
        1/149597870.7 au

    RULE:
      conversion_is_exact_given_decimal_definition
  }

  LIGHT_YEAR_CONVERSION_MODEL {
    light_year:
      1 ly =
        9460730472580800 m

    relation:
      1 au =
        149597870700 /
        9460730472580800 ly

    approximate:
      1 au approximately_equals
        1.58125074e-5 ly

    inverse:
      1 ly approximately_equals
        63241.077 au

    RULE:
      light_year_conversion_rounding_precision MUST be preserved
  }

  PARSEC_CONVERSION_MODEL {
    approximate:
      1 pc approximately_equals
        206264.806 au

    inverse:
      1 au approximately_equals
        4.84813681e-6 pc

    RULE:
      parsec_conversion_is_geometry_related_and_should_preserve_precision
  }

  DISTANCE_CONVERSION_MODEL {
    metres_from_au:
      d_m =
        d_au*149597870700

    au_from_metres:
      d_au =
        d_m/149597870700

    kilometres_from_au:
      d_km =
        d_au*149597870.7

    RULE:
      conversion MUST preserve_underlying_length_quantity
  }

  HISTORICAL_MODEL {
    historical_role:
      unit_related_to_scale_of_Earth_Sun_system

    historical_determination:
      formerly_connected_to_astronomical_constants_and_observational_ephemerides

    modern_status:
      exact_defined_length

    RULE:
      modern_astronomical_unit MUST_NOT be treated_as_measurement_of_current_Earth_Sun_distance
  }

  EARTH_SUN_DISTANCE_DISTINCTION_MODEL {
    astronomical_unit:
      fixed_exact_length

    Earth_Sun_distance:
      time_varying_orbital_separation

    relation:
      Earth_Sun_distance_is_of_order_one_au

    RULE:
      1_au != instantaneous_Earth_Sun_distance
  }

  ORBITAL_DISTANCE_MODEL {
    suitable_quantities:
      semimajor_axis
      perihelion_distance
      aphelion_distance
      heliocentric_distance
      geocentric_distance
      interplanetary_range

    RULE:
      astronomical_unit_is_reporting_unit
      and_orbital_distance_requires_epoch_or_orbital_definition_when_time_dependent
  }

  SOLAR_SYSTEM_MODEL {
    common_context:
      planetary_orbits
      asteroid_orbits
      comet_orbits
      spacecraft_trajectories
      heliocentric_distances

    RULE:
      reference_origin MUST be preserved
      for_position_or_range_quantities
  }

  SEMIMAJOR_AXIS_MODEL {
    symbol:
      a

    unit:
      may_be_au

    RULE:
      semimajor_axis != instantaneous_orbital_radius_for_eccentric_orbit
  }

  PERIHELION_APHELION_MODEL {
    Keplerian_ellipse:
      q =
        a*(1-e)

      Q =
        a*(1+e)

    WHERE:
      q = perihelion_distance
      Q = aphelion_distance
      a = semimajor_axis
      e = eccentricity

    RULE:
      equations_require_elliptical_Keplerian_orbit_context
  }

  KEPLER_MODEL {
    two_body:
      P^2 =
        4*pi^2*a^3/
        (G*(M_1+M_2))

    astronomical_context:
      a MAY be_expressed_in_au

    RULE:
      unit_conversion MUST be performed_before_SI_dynamical_calculation_unless_consistent_astronomical_unit_system_used
  }

  PARALLAX_BASELINE_MODEL {
    annual_stellar_parallax:
      astronomical_unit_provides_characteristic_baseline

    parsec_definition:
      one_parsec_is_distance_at_which_one_au_subtends_one_arcsecond

    RULE:
      au_is_length_baseline_not_parallax_angle
  }

  LIGHT_TRAVEL_TIME_MODEL {
    time_for_light_to_travel_one_au:
      t =
        au/c

    using_exact_values:
      t =
        149597870700 /
        299792458 s

    approximate:
      t approximately_equals
        499.004784 s

    RULE:
      light_travel_time_for_one_au_is_time_quantity
      distinct_from_astronomical_unit_length
  }

  RADAR_RANGING_MODEL {
    round_trip_time:
      delta_t

    range:
      d =
        c*delta_t/2

    output:
      MAY be_expressed_in_au

    RULE:
      ranging_measurement_uncertainty_belongs_to_distance_not_au_definition
  }

  EPHEMERIS_MODEL {
    celestial_position:
      function_of_time

    distances:
      heliocentric
      barycentric
      geocentric
      topocentric

    units:
      may_include_au

    RULE:
      ephemeris_distance MUST preserve_origin_epoch_and_reference_frame
  }

  REFERENCE_FRAME_MODEL {
    possible_origins:
      heliocentric
      barycentric
      geocentric
      topocentric

    RULE:
      same_numeric_au_value_with_different_origins MAY represent_different_distance_quantity
  }

  TEMPORAL_MODEL {
    unit:
      au_is_constant

    measured_or_modelled_distance:
      may_change_with_time

    RULE:
      distinguish_constant_unit_from_time_varying_quantity
  }

  DIMENSIONAL_MODEL {
    astronomical_unit:
      dimension = L

    metre:
      dimension = L

    light_travel_time:
      dimension = T

    parallax_angle:
      dimension = dimensionless_angle

    RULE:
      dimensional_analysis MUST preserve_length_semantics
  }

  PREFIX_MODEL {
    SI_prefixes:
      not_commonly_applied_to_au_in_standard_astronomical_usage

    RULE:
      prefer_numeric_multiples_of_au
      rather_than_inventing_nonstandard_prefixed_symbols
  }

  PRECISION_MODEL {
    au_definition:
      exact

    displayed_conversions:
      may_be_rounded

    observed_distance:
      may_have_measurement_or_model_uncertainty

    RULE:
      rounding_precision != physical_measurement_uncertainty
  }

  MEASUREMENT_UNCERTAINTY_MODEL {
    unit_definition:
      zero_definition_uncertainty

    distance_measurement:
      may_include
        timing_uncertainty
        orbital_model_uncertainty
        ephemeris_uncertainty
        instrument_uncertainty
        propagation_correction_uncertainty

    RULE:
      uncertainty MUST be attached_to_measured_or_inferred_distance
      not_to_exact_au_unit
  }

  RELATIONSHIPS {
    AstronomicalUnit -> IS_A -> LengthUnit
    AstronomicalUnit -> MEASURES -> AstronomicalDistance
    AstronomicalUnit -> EXACTLY_EQUALS -> 149597870700Metres
    AstronomicalUnit -> CONVERTS_TO -> Kilometre
    AstronomicalUnit -> CONVERTS_TO -> LightYear
    AstronomicalUnit -> CONVERTS_TO -> Parsec
    AstronomicalUnit -> PROVIDES_BASELINE_FOR -> ParallaxGeometry
    OrbitalSemimajorAxis -> MAY_BE_EXPRESSED_IN -> AstronomicalUnit
    InterplanetaryRange -> MAY_BE_EXPRESSED_IN -> AstronomicalUnit
    EphemerisDistance -> MAY_BE_EXPRESSED_IN -> AstronomicalUnit
  }

  SEMANTIC_EQUIVALENCE {
    "astronomical unit" ~= au
    "AU" ~= au WHEN legacy_or_textual_unit_context

    astronomical_unit != instantaneous_Earth_Sun_distance
    astronomical_unit != orbital_semimajor_axis
    astronomical_unit != light_travel_time
    astronomical_unit != parsec
    astronomical_unit != light_year
    astronomical_unit != parallax_angle
  }

  CONSTRAINTS {
    astronomical_unit_dimension = L
    astronomical_unit_is_length = true
    astronomical_unit_is_time = false
    astronomical_unit_is_angle = false
    metre_value_is_exact = true
    Earth_Sun_distance_and_au_are_not_semantically_equivalent = true
    reference_origin_should_be_preserved_for_distance_measurements = true
    observation_epoch_should_be_preserved_for_time_varying_ranges = true
    unit_definition_uncertainty_is_zero = true
    measurement_uncertainty_must_be_preserved_separately = true
  }

  MEASUREMENT_MODEL {
    OBSERVABLE_OR_INFERRED:
      AstronomicalDistance
      OrbitalDistance
      Range
      SemimajorAxis

    REPORTING_UNIT:
      AstronomicalUnit

    POSSIBLE_METHODS:
      radar_ranging
      laser_ranging
      spacecraft_tracking
      orbital_dynamics
      ephemeris_solution
      astrometric_inference

    RECORD:
      celestial_object
      distance_value
      unit
      distance_type
      reference_origin
      coordinate_frame
      observation_epoch
      measurement_or_inference_method
      raw_range_or_timing_data_when_available
      orbital_or_ephemeris_model
      uncertainty
      provenance

    RULE:
      astronomical_unit_is_reporting_unit
      while_method_determines_distance
  }

  REASONING_RULES {
    IF distance_in_au_known
      THEN distance_in_metres =
        distance_in_au*149597870700

    IF distance_in_metres_known
      THEN distance_in_au =
        distance_in_metres/149597870700

    IF distance_in_au_known
      THEN distance_in_kilometres =
        distance_in_au*149597870.7

    IF distance_in_au_known
      THEN distance_in_light_years approximately_equals
        distance_in_au*1.58125074e-5

    IF distance_in_parsecs_known
      THEN distance_in_au approximately_equals
        distance_in_parsecs*206264.806

    IF semimajor_axis_and_eccentricity_known
      AND elliptical_Keplerian_context
      THEN perihelion_distance =
        semimajor_axis*(1-eccentricity)
      AND aphelion_distance =
        semimajor_axis*(1+eccentricity)

    IF round_trip_light_time_known
      THEN range =
        speed_of_light*round_trip_time/2
      after_required_propagation_and_motion_corrections

    IF one_au_distance_known
      THEN vacuum_light_travel_time =
        149597870700/299792458 seconds
  }

  VALIDATION {
    CHECK quantity_is_length
    CHECK unit_symbol
    CHECK exact_metre_value
    CHECK kilometre_conversion
    CHECK light_year_conversion
    CHECK parsec_conversion
    CHECK astronomical_unit_vs_Earth_Sun_distance
    CHECK astronomical_unit_vs_time
    CHECK astronomical_unit_vs_angle
    CHECK distance_type
    CHECK reference_origin
    CHECK coordinate_frame
    CHECK observation_epoch
    CHECK measurement_uncertainty
  }

  CONFIDENCE {
    definition_confidence: 1.00
    dimensional_confidence: 1.00
    metre_conversion_confidence: 1.00
    kilometre_conversion_confidence: 1.00
    light_year_conversion_confidence: 0.999999
    parsec_conversion_confidence: 0.999999
    orbital_context_confidence: 0.99

    RULE:
      confidence decreases when unit symbol, distance type,
      reference origin, epoch, orbital context,
      measurement method or uncertainty is missing or ambiguous
  }

  UPDATE_MODEL {
    ON new_distance_value:
      identify_distance_quantity
      identify_au_unit
      validate_length_semantics
      convert_to_metres_when_requested
      preserve_original_value_and_unit
      attach_distance_type
      attach_reference_origin
      attach_epoch_when_relevant
      attach_uncertainty
      update_distance_state

    ON unit_conversion:
      preserve_underlying_distance
      convert_between_au_m_km_ly_and_pc
      preserve_exactness_or_rounding_status
      preserve_measurement_uncertainty

    ON orbital_update:
      preserve_au_as_constant_unit
      update_orbital_elements_or_ephemeris
      recompute_time_dependent_distance
      preserve_reference_origin_and_epoch

    ON definition_validation:
      verify_exact_metre_value
      preserve_modern_definition
      distinguish_historical_Earth_Sun_scale_context
      recompute_FLOW_HASH

    ON semantic_revision:
      preserve_previous_definition
      record_revision
      recompute_FLOW_HASH
  }

  AI_CONSUMPTION {
    canonical_entity: AstronomicalUnit
    canonical_symbol: au
    canonical_quantity_kind: Length
    canonical_dimension: L
    canonical_SI_value:
      149597870700 m

    interpretation_order:
      identify_astronomical_unit_as_length_unit
      identify_associated_distance_value
      identify_distance_type
      identify_reference_origin
      identify_coordinate_frame
      identify_observation_epoch_when_relevant
      identify_measurement_or_orbital_method
      identify_uncertainty
      convert_units_when_requested
      validate_exact_definition
      preserve_length_semantics

    ambiguity_controls:
      distinguish_astronomical_unit_from_instantaneous_Earth_Sun_distance
      distinguish_astronomical_unit_from_orbital_semimajor_axis
      distinguish_astronomical_unit_from_light_travel_time
      distinguish_astronomical_unit_from_parsec
      distinguish_astronomical_unit_from_light_year
      distinguish_astronomical_unit_from_parallax_angle
      distinguish_constant_unit_from_time_varying_distance
      preserve_distance_type_origin_frame_epoch_method_and_uncertainty_context
  }

  PROVENANCE {
    ontology_scope:
      mathematical_measurement_and_astronomical_unit_semantics

    parent_path:
      Ontologies
      -> Mathematical Ontologies
      -> Measurement & Units Ontologies
      -> Astronomical Measurements
      -> Astronomical Unit Ontology

    authorship:
      Mark Higgins
      Sky (Recursive AI)

    site:
      https://kirethresearch.org
  }

  FLOW_HASH {
    INPUTS:
      canonical_entity
      ontology_path
      exact_definition_model
      unit_system
      symbol_model
      metre_conversion_model
      kilometre_conversion_model
      light_year_conversion_model
      parsec_conversion_model
      distance_conversion_model
      historical_model
      Earth_Sun_distance_distinction_model
      orbital_distance_model
      Solar_System_model
      semimajor_axis_model
      perihelion_aphelion_model
      Kepler_model
      parallax_baseline_model
      light_travel_time_model
      radar_ranging_model
      ephemeris_model
      reference_frame_model
      temporal_model
      dimensional_model
      prefix_model
      precision_model
      measurement_uncertainty_model
      relationships
      constraints
      measurement_model
      reasoning_rules
      confidence_model
      update_model

    PURPOSE:
      deterministic_semantic_integrity_identifier

    RECOMPUTE_WHEN:
      ontology_definition_changes
      astronomical_unit_definition_changes
      unit_conversion_model_changes
      orbital_or_ephemeris_semantics_change
      reference_origin_or_frame_model_changes
      light_travel_or_parallax_context_changes
      measurement_uncertainty_semantics_change
      constraint_model_changes
      reasoning_rule_changes
  }

}

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