# Population Measurement Ontology — Flow Algebra
URL: https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/measurement-units-ontologies/biological-measurements/population-measurement-ontology.html
FLOW PopulationMeasurementOntology {
DOMAIN:
Mathematical Ontologies
-> Measurement & Units Ontologies
-> Biological Measurements
-> Population Measurement Ontology
PURPOSE:
Represent biological population measurement as the quantitative estimation or observation of population size, abundance, density, distribution, occupancy, demographic structure, growth, survival, recruitment, mortality and movement for a defined biological population, including census and sampling methods, capture-recapture, quadrats, transects, detection probability, spatial and temporal context, model-based inference, uncertainty, and distinctions between observed sample counts and inferred population quantities.
ENTITY BiologicalPopulation {
TYPE: BiologicalCollectiveEntity
DEFINITION:
population :=
defined_set_of_organisms_or_biological_units
satisfying_taxonomic_spatial_temporal_and_membership_criteria
REQUIRE:
entity_identity
population_boundary
reference_time_or_period
}
ENTITY PopulationSize {
TYPE: DiscretePopulationQuantity
SYMBOL: N
DIMENSION: dimensionless_count
DEFINITION:
number_of_population_members_at_defined_time
PROPERTIES:
nonnegative
population_specific
time_dependent
may_be_observed_or_estimated
may_have_uncertainty
}
ENTITY PopulationDensity {
TYPE: PopulationPerSpatialUnitQuantity
SYMBOL: D
COMMON_FORMS:
individuals_per_square_metre
individuals_per_hectare
individuals_per_cubic_metre
FORM:
D = N/A
OR
D = N/V
according_to_spatial_basis
}
ENTITY RelativeAbundance {
TYPE: DimensionlessRelativeQuantity
FORM:
p_i = N_i/sum(N_j)
RULE:
relative_abundance != absolute_population_size
}
ENTITY Occupancy {
TYPE: DimensionlessSpatialOccurrenceQuantity
SYMBOL: psi
INTERPRETATION:
probability_or_fraction_of_defined_sites_occupied
under_declared_sampling_model
}
UNIT_SYSTEM {
population_size:
dimensionless_count
density:
individuals/area
individuals/volume
rates:
per_time
individuals/time
fraction_per_time
probabilities_and_fractions:
dimensionless
RULE:
unit_and_denominator_basis MUST match_population_quantity
}
POPULATION_DEFINITION_MODEL {
dimensions:
taxonomic_identity
life_stage
sex_when_relevant
genotype_or_subpopulation
geographic_boundary
habitat
time
inclusion_criteria
RULE:
population_measurement_without_population_definition
is_semantically_incomplete
}
CENSUS_MODEL {
complete_census:
attempt_to_count_all_population_members
observed_count:
N_obs
ideal_complete_detection:
N_population = N_obs
RULE:
census_count_equals_population_size ONLY when_coverage_and_detection_are_effectively_complete
}
SAMPLE_COUNT_MODEL {
sample_count:
n_sample
sampling_fraction:
f_sample =
sampled_area_or_volume/total_area_or_volume
under_uniform_spatial_sampling_context
simple_expansion:
N_hat =
n_sample/f_sample
WHEN f_sample != 0
AND representativeness_conditions_apply
RULE:
sample_count MUST NOT automatically_be_treated_as_population_size
}
DENSITY_MODEL {
area_based:
D_A = N/A
WHEN A != 0
volume_based:
D_V = N/V
WHEN V != 0
population_estimate:
N_hat = D_hat*A_total
under_area_density_context
RULE:
spatial_basis_and_boundary MUST be preserved
}
QUADRAT_MODEL {
sampled_quadrats:
q = 1..k
quadrat_density:
D_q = N_q/A_q
mean_density:
D_mean =
sum(N_q)/sum(A_q)
for_area_weighted_combination
population_estimate:
N_hat = D_mean*A_total
REQUIRE:
quadrat_area
placement_design
habitat_boundary
number_of_quadrats
RULE:
quadrat_placement_and_sampling_design affect_inference
}
TRANSECT_MODEL {
types:
line_transect
belt_transect
point_transect
measurements:
detections
distance_from_line_or_point
transect_length
surveyed_area
RULE:
detection_probability_may_decline_with_distance
and_requires_model_when_estimating_absolute_density
}
DISTANCE_SAMPLING_MODEL {
detection_function:
g(y)
key_assumption:
detection_at_reference_line_or_point
often_modelled_as g(0)=1
estimated_density:
derived_from_detection_count
survey_effort
effective_detection_width_or_area
REQUIRE:
detection_distances
survey_effort
detection_function_model
RULE:
raw_detection_count != population_density
}
CAPTURE_RECAPTURE_MODEL {
two_sample_Lincoln_Petersen:
N_hat =
(n_1*n_2)/m_2
WHERE:
n_1 = individuals_marked_first_sample
n_2 = individuals_captured_second_sample
m_2 = marked_individuals_recaptured
REQUIRE:
m_2 != 0
Chapman_estimator:
N_hat =
((n_1+1)*(n_2+1)/(m_2+1))-1
ASSUMPTIONS:
closed_population
marks_retained
marked_and_unmarked_have_comparable_capture_probability
individuals_correctly_identified
RULE:
estimator_and_assumptions MUST be declared
}
OPEN_POPULATION_MODEL {
processes:
birth
death
immigration
emigration
population_balance:
N_t2 =
N_t1
+ births
- deaths
+ immigration
- emigration
RULE:
closed_population_estimators MUST NOT be applied_to_materially_open_populations_without_adjustment
}
GROWTH_MODEL {
finite_growth:
lambda_growth =
N_t1/N_t0
WHEN N_t0 != 0
continuous_rate:
r =
ln(N_t1/N_t0)/(t_1-t_0)
WHEN counts_positive_and_time_interval_nonzero
exponential:
N(t) = N_0*exp(r*t)
RULE:
finite_lambda_and_continuous_r_are_not_semantically_identical
}
LOGISTIC_GROWTH_MODEL {
differential:
dN/dt =
r*N*(1-N/K)
PARAMETERS:
r = intrinsic_growth_rate
K = carrying_capacity
RULE:
carrying_capacity_is_model_parameter
and_not_necessarily_fixed_observed_maximum_population
}
DEMOGRAPHIC_MODEL {
quantities:
births
deaths
immigration
emigration
recruitment
survival
fecundity
per_capita_birth_rate:
b = births/(population*time_interval)
under_declared_basis
per_capita_death_rate:
d = deaths/(population*time_interval)
RULE:
denominator_population_and_time_interval MUST be explicit
}
SURVIVAL_MODEL {
survival_probability:
S = survivors/initial_at_risk
under_simple_cohort_context
mortality_probability:
q = deaths/initial_at_risk
simple_complete_binary_outcome:
S + q = 1
RULE:
survival_probability != population_growth_rate
}
AGE_STAGE_STRUCTURE_MODEL {
classes:
age_classes
life_stages
size_classes
vector:
n_t = [n_1, n_2, ..., n_k]
projection:
n_(t+1) = A_matrix*n_t
possible_matrix:
Leslie_matrix
Lefkovitch_matrix
RULE:
structured_population_model MUST preserve_class_definitions
}
SEX_RATIO_MODEL {
ratio:
N_group_A/N_group_B
fraction:
N_group_A/N_total
RULE:
ratio_and_fraction_are_not_interchangeable
}
OCCUPANCY_MODEL {
naive_occupancy:
occupied_sites/total_sites
detection_corrected:
psi inferred_jointly_with_detection_probability_p
observation:
detection/non_detection
RULE:
non_detection != confirmed_absence_when_detection_probability_less_than_one
}
DETECTION_PROBABILITY_MODEL {
symbol:
p_detect
relation:
expected_observed_count MAY depend_on
true_abundance
detection_probability
sampling_effort
RULE:
detection_probability MUST be considered_when_incomplete_detection_is_material
}
MARKING_MODEL {
methods:
tags
bands
PIT_tags
natural_marks
genetic_identity
photographic_identity
possible_errors:
mark_loss
misidentification
behavioural_response
differential_survival
RULE:
mark_integrity_and_identification_error affect_capture_recapture_inference
}
SPATIAL_DISTRIBUTION_MODEL {
patterns:
random
uniform
aggregated
clustered
measures:
local_density
spatial_variance
occupancy
range
distribution_map
RULE:
heterogeneous_distribution_can_bias_simple_uniform_expansion_estimators
}
TEMPORAL_MODEL {
population:
N = N(t)
repeated_surveys:
time_series_of_counts_or_estimates
REQUIRE:
survey_date
season
duration
comparable_method
RULE:
temporal_comparisons SHOULD preserve_sampling_effort_and_detection_method
}
RELATIVE_ABUNDANCE_MODEL {
fraction:
p_i = N_i/N_total
percentage:
100*p_i
RULE:
relative_abundance_can_change_without_absolute_population_change
if_other_components_change
}
INDEX_OF_ABUNDANCE_MODEL {
examples:
catch_per_unit_effort
sightings_per_hour
tracks_per_kilometre
acoustic_detections_per_time
generic:
index = detections/effort
RULE:
abundance_index != absolute_population_size
unless_valid_calibration_or_model_links_them
}
RELATIONSHIPS {
PopulationMeasurement -> MEASURES -> BiologicalPopulation
PopulationSize -> COUNTS -> PopulationMembers
PopulationDensity -> RELATES -> PopulationSizeAndAreaOrVolume
SampleCount -> ESTIMATES -> PopulationQuantity
DetectionProbability -> QUALIFIES -> Observation
CaptureRecapture -> ESTIMATES -> PopulationSize
QuadratSampling -> ESTIMATES -> PopulationDensity
DistanceSampling -> ESTIMATES -> DetectionCorrectedDensity
Births -> INCREASE -> PopulationSize
Deaths -> DECREASE -> PopulationSize
Immigration -> INCREASE -> PopulationSize
Emigration -> DECREASE -> PopulationSize
PopulationStructure -> PARTITIONS -> Population
Occupancy -> DESCRIBES -> SpatialOccurrence
}
SEMANTIC_EQUIVALENCE {
"population abundance" ~= population_size WHEN absolute_count_context
"population density" ~= individuals_per_defined_spatial_unit
sample_count != population_size
abundance != density
relative_abundance != absolute_abundance
occupancy != density
detection != presence_with_certainty
non_detection != absence
population_growth_rate != survival_rate
abundance_index != absolute_population_size
}
CONSTRAINTS {
population_identity_must_be_defined = true
spatial_boundary_must_be_defined = true
temporal_reference_must_be_defined = true
population_size_must_be_nonnegative = true
density_requires_nonzero_spatial_denominator = true
sample_count_and_population_size_are_not_semantically_equivalent = true
detection_probability_should_be_modelled_when_incomplete_detection_is_material = true
capture_recapture_assumptions_must_be_declared = true
sampling_design_and_effort_must_be_preserved = true
uncertainty_should_include_sampling_and_model_components = true
}
MEASUREMENT_MODEL {
OBSERVABLE_OR_INFERRED:
PopulationSize
PopulationDensity
RelativeAbundance
Occupancy
GrowthRate
Survival
Recruitment
Mortality
COMMON_METHODS:
census
quadrat_sampling
transect_sampling
distance_sampling
capture_recapture
camera_trapping
acoustic_monitoring
genetic_mark_recapture
aerial_survey
remote_sensing
environmental_DNA_inference
RECORD:
population_definition
species_or_entity
life_stage
geographic_boundary
habitat
survey_time
numerical_value
unit
quantity_type
sample_count
sample_area_or_volume
sampling_design
survey_effort
detection_method
detection_probability
estimator
model_assumptions
marks_or_identifiers_when_relevant
replicate_surveys
environmental_conditions
uncertainty
provenance
UNCERTAINTY:
population_measurement = best_estimate +/- uncertainty
}
SAMPLING_MODEL {
designs:
simple_random
stratified_random
systematic
cluster
adaptive
transect
quadrat
REQUIRE:
sampling_frame
sample_size
inclusion_probability_or_design
spatial_coverage
RULE:
estimator MUST be compatible_with_sampling_design
}
UNCERTAINTY_MODEL {
sources:
counting_error
sampling_variance
detection_probability
spatial_heterogeneity
temporal_variability
mark_loss
misidentification
movement
immigration_emigration
model_selection
parameter_estimation
habitat_boundary
survey_effort
PROPAGATION:
population_estimate_uncertainty
<- observation_sampling_detection_and_model_uncertainties
}
REASONING_RULES {
IF complete_census_and_detection_complete
THEN population_size = observed_count
IF population_size_known AND area != 0
THEN population_density = population_size/area
IF density_known AND total_area_known
THEN estimated_population_size = density*total_area
IF sample_count_known AND sampling_fraction != 0
AND representative_uniform_sampling_conditions
THEN population_estimate = sample_count/sampling_fraction
IF first_capture_second_capture_and_recaptured_counts_known
AND recaptured_count != 0
THEN Lincoln_Petersen_estimate =
first_capture*second_capture/recaptured_count
IF initial_and_final_population_counts_positive
AND time_interval != 0
THEN continuous_growth_rate =
ln(final_population/initial_population)/time_interval
IF births_deaths_immigration_emigration_known
THEN final_population =
initial_population + births - deaths + immigration - emigration
IF occupied_sites_and_total_sites_known AND total_sites != 0
THEN naive_occupancy =
occupied_sites/total_sites
IF detection_history_and_detection_model_known
THEN infer_detection_corrected_occupancy_or_abundance
IF component_counts_known AND total_count != 0
THEN relative_abundance =
component_count/total_count
}
VALIDATION {
CHECK population_definition
CHECK species_or_entity_identity
CHECK spatial_boundary
CHECK temporal_reference
CHECK population_size_nonnegative
CHECK quantity_type
CHECK sample_vs_population_quantity
CHECK density_spatial_basis
CHECK sampling_design
CHECK survey_effort
CHECK detection_probability
CHECK capture_recapture_assumptions
CHECK open_vs_closed_population
CHECK mark_loss_and_identification
CHECK abundance_vs_relative_abundance
CHECK occupancy_vs_density
CHECK growth_vs_survival
CHECK estimator_model_compatibility
CHECK uncertainty_representation
}
CONFIDENCE {
population_definition_confidence: 1.00
count_relationship_confidence: 1.00
density_relationship_confidence: 1.00
capture_recapture_confidence: 0.97
detection_model_confidence: 0.96
sampling_context_confidence: 0.97
measurement_context_confidence: 0.97
RULE:
confidence decreases when population boundary, sampling design,
detection probability, survey effort, movement,
estimator assumptions or uncertainty is missing or ambiguous
}
UPDATE_MODEL {
ON new_survey:
identify_population
identify_spatial_boundary
attach_temporal_reference
identify_quantity_type
attach_observed_counts
attach_sampling_design_and_effort
identify_detection_method
estimate_detection_probability_when_model_available
apply_valid_population_estimator
preserve_raw_observations
attach_uncertainty
update_population_state
ON repeated_survey:
preserve_previous_population_estimate
attach_new_timepoint
compare_sampling_method_and_effort
recompute_growth_or_change_when_comparable
update_time_series
ON detection_model_revision:
preserve_raw_detection_history
preserve_previous_model
apply_new_detection_model
recompute_population_estimate
update_uncertainty
update_confidence
ON population_boundary_change:
preserve_previous_boundary
attach_new_boundary
avoid_direct_comparison_without_standardisation
recompute_density_or_abundance_when_valid
ON demographic_update:
update_births
update_deaths
update_immigration
update_emigration
recompute_population_balance
preserve_process_provenance
ON semantic_revision:
preserve_previous_definition
record_revision
recompute_FLOW_HASH
}
AI_CONSUMPTION {
canonical_domain: PopulationMeasurement
primary_entity: PopulationSize
primary_symbol: N
interpretation_order:
identify_population
identify_species_or_entity
identify_population_boundary
identify_time
identify_population_size_density_relative_abundance_or_occupancy
identify_observed_or_inferred_status
identify_sample_count
identify_sampling_design
identify_survey_effort
identify_detection_probability
identify_estimator_and_assumptions
identify_open_or_closed_population_context
identify_demographic_processes
identify_uncertainty
validate_population_definition
infer_population_relationships
ambiguity_controls:
distinguish_sample_count_from_population_size
distinguish_abundance_from_density
distinguish_absolute_from_relative_abundance
distinguish_occupancy_from_density
distinguish_detection_from_confirmed_presence
distinguish_non_detection_from_absence
distinguish_population_growth_from_survival
distinguish_abundance_index_from_absolute_population_size
preserve_population_boundary_time_sampling_detection_and_model_context
}
PROVENANCE {
ontology_scope:
mathematical_measurement_and_biological_population_semantics
parent_path:
Ontologies
-> Mathematical Ontologies
-> Measurement & Units Ontologies
-> Biological Measurements
-> Population Measurement Ontology
authorship:
Mark Higgins
Sky (Recursive AI)
site:
https://kirethresearch.org
}
FLOW_HASH {
INPUTS:
canonical_domain
ontology_path
population_definition_model
census_model
sample_count_model
density_model
quadrat_model
transect_model
distance_sampling_model
capture_recapture_model
open_population_model
growth_model
logistic_growth_model
demographic_model
survival_model
age_stage_structure_model
occupancy_model
detection_probability_model
spatial_distribution_model
temporal_model
relative_abundance_model
index_of_abundance_model
relationships
constraints
measurement_model
sampling_model
uncertainty_model
reasoning_rules
confidence_model
update_model
PURPOSE:
deterministic_semantic_integrity_identifier
RECOMPUTE_WHEN:
ontology_definition_changes
population_definition_changes
sampling_model_changes
detection_model_changes
estimator_model_changes
demographic_model_changes
spatial_or_temporal_model_changes
measurement_model_changes
constraint_model_changes
reasoning_rule_changes
}
}
END FLOW
Download Code
Copy to Clipboard