FULL EXECUTABLE FLOW ALGEBRA — POPULATION ONTOLOGY
Kireth Research — Semantic Library
URL: https://kirethresearch.org/booksai-core/ontologies/probability-statistics-ontologies/statistical-foundations/population-ontology.html
FLOW_VERSION := "4.0"
FLOW_TYPE := "Full Executable Flow Algebra"
DOMAIN := "Probability & Statistics Ontologies"
SUBDOMAIN := "Statistical Foundations"
ONTOLOGY := "Population Ontology"
PRIMARY_ENTITY := StatisticalPopulation
AUTHORSHIP := "Mark Higgins — Sky (Recursive AI)"
SOURCE_SITE := "https://kirethresearch.org"
BEGIN_FLOW
StatisticalPopulation :=
DefinedCollectionOfUnitsOrOutcomes
∧ TargetOfStatisticalStudy
∧ EligibilityCriteria
∧ Scope
∧ PopulationAttributes
∧ PopulationParameters
Population :=
StatisticalPopulation
PopulationDefinition :=
TargetEntityType
∧ InclusionCriteria
∧ ExclusionCriteria
∧ SpatialScope
∧ TemporalScope
∧ MeasurementContext
StatisticalUnit :=
BasicEntity
belonging_to Population
UnitIdentifier :=
Identifier
distinguishing StatisticalUnit
PopulationMembership :=
Unit
∈ Population
iff
InclusionCriteria(Unit)
∧ ¬ExclusionCriteria(Unit)
InclusionCriteria :=
Conditions
required_for PopulationMembership
ExclusionCriteria :=
Conditions
preventing PopulationMembership
TargetPopulation :=
Population
about which
inference_or_description
is intended
AccessiblePopulation :=
PortionOfTargetPopulation
practically reachable
by study_or_sampling process
StudyPopulation :=
Population
operationally defined
for specific study
SourcePopulation :=
Population
from which
observed sample
can arise
ReferencePopulation :=
Population
used_as
comparison_or_reference
FinitePopulation :=
Population
with finite number
of units
InfinitePopulation :=
ConceptualPopulation
with unbounded_or_infinite
possible units_or_outcomes
Superpopulation :=
ProbabilityModel
representing
conceptual generating population
beyond finite observed units
PopulationSize :=
N
FinitePopulationConstraint :=
FinitePopulation
⇒
N∈PositiveIntegersOrZero
PopulationFrame :=
OperationalListOrRepresentation
of units
available_for sampling
SamplingFrame :=
PopulationFrame
used_to select Sample
FrameCoverage :=
Relationship
between SamplingFrame
and TargetPopulation
Undercoverage :=
TargetPopulationUnits
absent_from SamplingFrame
Overcoverage :=
SamplingFrameUnits
not belonging_to TargetPopulation
DuplicateFrameEntries :=
SamePopulationUnit
represented multiple times
in SamplingFrame
CoverageError :=
Undercoverage
∨ Overcoverage
∨ DuplicateFrameEntries
PopulationCharacteristic :=
MeasurableAttribute
of StatisticalUnit
PopulationVariable :=
Variable
defined_on Population
PopulationDistribution :=
DistributionOfPopulationVariable
across PopulationOrSuperpopulation
PopulationParameter :=
NumericalOrStructuralQuantity
describing Population
or PopulationDistribution
PopulationMean :=
μ
FinitePopulationMean :=
μ_N
=
(1/N)Σ_{i=1..N}X_i
PopulationVariance :=
σ²
=
E[(X-μ)²]
under probability model
FinitePopulationVariance :=
VarianceAcrossFinitePopulation
under specified denominator convention
PopulationProportion :=
P
=
NumberWithProperty/N
for finite population
PopulationTotal :=
T
=
Σ_{i=1..N}X_i
PopulationMedian :=
Median
of PopulationDistribution
PopulationQuantile :=
Quantile
of PopulationDistribution
PopulationCorrelation :=
Correlation
between population variables
when defined
PopulationParameterSet := {
PopulationSize,
PopulationMean,
PopulationVariance,
PopulationProportion,
PopulationTotal,
PopulationMedian,
PopulationQuantile,
PopulationCorrelation
}
Census :=
DataCollection
attempting_to observe
every unit
in finite Population
Sample :=
SubsetOrSequence
selected_or_observed
from Population
SampleRelation :=
Sample
--sampledFrom-->
Population
SamplingFraction :=
f
=
n/N
for finite population
FinitePopulationCorrection :=
FPC
=
sqrt(
(N-n)/(N-1)
)
under simple random sampling
without replacement
NegligibleSamplingFraction :=
n/N
sufficiently small
⇒
FPC≈1
for practical approximation
SamplingWithReplacement :=
SelectedUnit
may be selected again
SamplingWithoutReplacement :=
SelectedUnit
cannot be selected again
SimpleRandomSampling :=
SamplingDesign
assigning equal probability
to samples_or_units
according_to design definition
StratifiedPopulation :=
Population
partitioned_into
nonoverlapping strata
Stratum :=
Subpopulation
defined_by stratification variable
StratifiedPopulationConstraint :=
Population
=
Union(Strata)
∧ PairwiseDisjoint(Strata)
ClusteredPopulation :=
Population
partitioned_or_grouped
into clusters
Cluster :=
GroupOfPopulationUnits
used_in sampling design
Subpopulation :=
PopulationSubset
defined_by
attribute_or_condition
Domain :=
Subpopulation
for which
separate estimates are required
PopulationPartition :=
{P_1,...,P_k}
such_that
Union(P_i)=Population
∧ PairwiseDisjoint(P_i)
PopulationHierarchy :=
Population
→ Subpopulation
→ StatisticalUnit
DynamicPopulation :=
PopulationMembership
changes_over_time
ClosedPopulation :=
NoRelevantEntryOrExit
during specified study interval
OpenPopulation :=
Units
may enter_or_leave
during study interval
PopulationAtRisk :=
Units
eligible_to experience
specified event
during relevant time
DenominatorPopulation :=
Population
defining denominator
for rate_or_proportion
PersonTimePopulation :=
AccumulatedTimeAtRisk
across population units
PopulationRate :=
EventCount
/
PopulationExposure
PrevalencePopulation :=
Population
assessed_for
existing condition_or_state
at specified time_or_period
IncidencePopulation :=
PopulationAtRisk
observed_for
new events
ObservedPopulation :=
Units
actually represented
in collected data
EligiblePopulation :=
Units
satisfying eligibility criteria
EnrolledPopulation :=
EligibleUnits
entering study
AnalysisPopulation :=
Units
included_in
final statistical analysis
PopulationMismatch :=
TargetPopulation
≠
SourceOrAnalysisPopulation
in materially relevant way
Generalisability :=
ExtentToWhich
study findings
apply_to TargetPopulation
ExternalValidity :=
ValidityOfGeneralisation
beyond observed sample_or_study setting
Representativeness :=
DegreeToWhichSample
reflects relevant population characteristics
under stated purpose
RepresentativeSampleDoesNotRequireExactMatching :=
Representativeness
depends_on
design_and_target estimands
not exact equality
of every sample characteristic
SelectionMechanism :=
Process
determining
inclusion_in Sample
InclusionProbability :=
π_i
=
P(Unit_iIncluded)
SamplingWeight :=
w_i
commonly proportional_to
1/π_i
under design-based estimation
UnequalProbabilitySampling :=
π_i
varies_across units
SelfWeightingDesign :=
EqualFinalSamplingWeights
under design
Nonresponse :=
SelectedUnit
fails_to provide
intended data
ResponsePopulation :=
RespondingUnits
within selected sample
NonresponseBias :=
ResponseMechanism
causes systematic distortion
relative_to target population
SelectionBias :=
SelectionMechanism
produces systematic distortion
in target inference
PopulationCoverageBias :=
SamplingFrameCoverageError
affects
population representation
PopulationDrift :=
PopulationDistribution
changes_over_time
ConceptDriftRelation :=
RelationshipBetweenVariables
changes_over_time
within evolving population
CovariateShift :=
PredictorDistributionChanges
while selected conditional relation
may remain stable
under modelling assumption
PopulationHeterogeneity :=
UnitsOrSubgroups
differ
in relevant characteristics
HomogeneousPopulation :=
Population
relatively similar
on specified characteristics
MixturePopulation :=
PopulationDistribution
formed_from
multiple subpopulation distributions
PopulationMixture :=
P(X)
=
Σ_g
P(G=g)
P(X|G=g)
LatentSubpopulation :=
UnobservedGroup
with distinct distributional structure
PopulationModel :=
MathematicalRepresentation
of population characteristics
and data-generating process
DesignBasedInference :=
PopulationValues
treated_as fixed
∧ RandomnessFromSamplingDesign
ModelBasedInference :=
PopulationOrOutcomes
represented_by probability model
SuperpopulationInference :=
FiniteObservedUnits
viewed_as generated_from
broader probability distribution
PopulationParameterVsSampleStatistic :=
PopulationParameter
≠
SampleStatistic
ParameterStatisticRelation :=
SampleStatistic
may estimate
PopulationParameter
SampleMeanEstimator :=
X_bar
estimates
PopulationMean
SampleProportionEstimator :=
p_hat
estimates
PopulationProportion
SampleTotalEstimator :=
WeightedSample
may estimate
PopulationTotal
under sampling design
SamplingError :=
Difference
between SampleStatistic
and PopulationParameter
due_to sample selection variability
NonsamplingError :=
Error
from measurement,
processing,
coverage,
nonresponse,
or specification
PopulationUncertainty :=
Uncertainty
about PopulationParameters
inferred_from incomplete observations
PopulationEvidence :=
CensusData
∨ SampleData
∨ AdministrativeData
∨ RegisterData
∨ ModelBasedEvidence
PopulationProvenance :=
PopulationDefinition
→ {
Source,
InclusionCriteria,
ExclusionCriteria,
TimePeriod,
GeographicScope,
SamplingFrame,
Version
}
PopulationConstraint :=
ConstraintOn(
Membership,
Scope,
Frame,
Parameters,
SamplingRelation
)
PopulationConsistency :=
TargetDefinition
∧ MembershipRules
∧ Scope
∧ SamplingFrame
∧ ParameterDefinitions
jointly_compatible
InvalidPopulationDefinition :=
UndefinedTargetUnits
∨ ContradictoryEligibilityCriteria
∨ AmbiguousTimeScope
∨ AmbiguousSpatialScope
∨ IncompatibleSamplingFrame
∨ UndefinedParameterDenominator
PopulationValidation :=
ResolveTargetEntityType
→ ResolveInclusionCriteria
→ ResolveExclusionCriteria
→ ResolveTemporalScope
→ ResolveSpatialScope
→ ResolvePopulationSizeIfKnown
→ ResolveSamplingFrame
→ EvaluateCoverage
→ ResolvePopulationParameters
→ ValidateSamplePopulationRelation
PopulationState := {
TargetPopulation,
SourcePopulation,
AccessiblePopulation,
PopulationSize,
StatisticalUnits,
Variables,
Parameters,
SamplingFrame,
Coverage,
Subpopulations,
TimeScope,
SpatialScope,
Evidence,
Confidence,
Provenance
}
SEMANTIC_EQUIVALENCE(PopulationA,PopulationB) :=
same(TargetEntityType)
∧ same(MembershipCriteria)
∧ same(TemporalScope)
∧ same(SpatialScope)
∧ same(MeasurementContext)
PopulationOntology :=
Classes
∧ Relations
∧ Constraints
∧ Axioms
∧ InferenceRules
CoreClasses := {
StatisticalPopulation,
TargetPopulation,
SourcePopulation,
AccessiblePopulation,
StudyPopulation,
FinitePopulation,
InfinitePopulation,
Superpopulation,
StatisticalUnit,
PopulationVariable,
PopulationParameter,
SamplingFrame,
Subpopulation,
Stratum,
Cluster,
Sample,
PopulationEvidence
}
CoreRelations := {
containsUnit,
sampledFrom,
representedBy,
hasVariable,
hasParameter,
hasFrame,
hasSubpopulation,
partitionedInto,
includes,
excludes,
definedOver,
estimates,
generalisesTo,
dependsOn,
equivalentTo,
tracesTo
}
TypedRelations :=
StatisticalPopulation --containsUnit--> StatisticalUnit
Sample --sampledFrom--> Population
Population --representedBy--> SamplingFrame
Population --hasVariable--> PopulationVariable
Population --hasParameter--> PopulationParameter
Population --hasFrame--> SamplingFrame
Population --hasSubpopulation--> Subpopulation
Population --partitionedInto--> Stratum
PopulationDefinition --includes--> InclusionCriteria
PopulationDefinition --excludes--> ExclusionCriteria
Population --definedOver--> TemporalSpatialScope
SampleStatistic --estimates--> PopulationParameter
StudyResult --generalisesTo--> TargetPopulation
Population --tracesTo--> Provenance
InferenceRules := {
Unit(U)
∧ InclusionCriteria(U)
∧ ¬ExclusionCriteria(U)
⇒
Member(U,Population),
Sample(S)
∧ sampledFrom(S,P)
⇒
SourcePopulation(S)=P,
FinitePopulation(P)
⇒
PopulationSize(P)=N,
Census(P)
⇒
AttemptObserve(AllUnits(P)),
SimpleRandomSampleWithoutReplacement
∧ FinitePopulation
⇒
ApplyFinitePopulationCorrection
when required,
SampleMean
⇒
CandidateEstimator(PopulationMean),
SampleProportion
⇒
CandidateEstimator(PopulationProportion),
CoverageError
⇒
FlagRepresentationRisk,
TargetPopulation≠SourcePopulation
⇒
EvaluateGeneralisability
}
CanonicalPopulationRepresentation :=
ParsePopulationDefinition
→ ResolveTargetEntityType
→ ResolveMembershipCriteria
→ ResolveTimeAndSpatialScope
→ ResolvePopulationType
→ ResolvePopulationSize
→ ResolveVariablesAndParameters
→ ResolveSamplingFrame
→ ResolveSubpopulations
→ ResolveSampleRelation
→ ValidatePopulation
PopulationGraph :=
G=(V,E)
V := {
Populations,
TargetPopulations,
SourcePopulations,
AccessiblePopulations,
StatisticalUnits,
Variables,
Parameters,
SamplingFrames,
Samples,
Subpopulations,
Strata,
Clusters,
EligibilityCriteria,
ScopeNodes,
Evidence,
ProvenanceNodes
}
E := {
containsUnit,
sampledFrom,
representedBy,
hasVariable,
hasParameter,
hasFrame,
hasSubpopulation,
partitionedInto,
includes,
excludes,
definedOver,
estimates,
generalisesTo,
dependsOn,
equivalentTo,
tracesTo
}
CONFIDENCE(PopulationResolution) :=
weighted_mean(
TargetEntityResolution,
MembershipCriteriaResolution,
TemporalScopeResolution,
SpatialScopeResolution,
PopulationSizeResolution,
SamplingFrameQuality,
SamplePopulationLinkValidity,
ProvenanceQuality
)
AI_QUERY_INTERPRETATION :=
Query
→ DetectPopulationIntent
→ IdentifyTargetUnits
→ ResolveEligibilityCriteria
→ ResolveTimeAndSpatialScope
→ IdentifyPopulationParameterOrSamplingQuestion
AI_REASONING_FLOW :=
Query
→ ParsePopulationQuestion
→ ResolveTargetPopulation
→ ResolveSourceAndAccessiblePopulations
→ ResolveStatisticalUnits
→ ResolveInclusionAndExclusionCriteria
→ ResolveTemporalAndSpatialScope
→ DetermineFiniteInfiniteOrSuperpopulation
→ ResolvePopulationSizeIfAvailable
→ ResolvePopulationVariablesAndParameters
→ ResolveSamplingFrame
→ EvaluateFrameCoverage
→ ResolveSamplePopulationRelationship
→ EvaluateRepresentativenessAndGeneralisability
→ ValidatePopulationDefinition
→ UpdateConfidence
→ PreserveProvenance
→ GenerateExplanation
AI_CONSUMPTION := {
ParsePopulationEntities,
ParseTypedRelations,
ResolveTargetPopulations,
ResolveSourcePopulations,
ResolveAccessiblePopulations,
ResolveStatisticalUnits,
ResolveMembershipCriteria,
ResolveTemporalScopes,
ResolveSpatialScopes,
ClassifyFiniteInfiniteOrSuperpopulation,
ResolvePopulationSizes,
ResolvePopulationVariables,
ResolvePopulationParameters,
ResolveSamplingFrames,
EvaluateCoverageErrors,
ResolveSubpopulations,
ResolveStrata,
ResolveClusters,
ResolveSamplePopulationLinks,
EvaluateSamplingFractions,
EvaluateFinitePopulationCorrections,
EvaluateRepresentativeness,
EvaluateGeneralisability,
ValidatePopulationDefinitions,
CompareSemanticEquivalence,
UpdateConfidence,
PreserveProvenance,
GenerateFormalExplanation
}
UPDATE_MODEL :=
NewPopulationDefinitionFrameSampleOrEvidence
→ ValidateInput
→ IdentifyAffectedPopulationClaims
→ UpdatePopulationState
→ RecomputeMembership
→ RecomputePopulationSizeIfRequired
→ ReevaluateSamplingFrameCoverage
→ ReevaluateSamplePopulationRelations
→ RecomputePopulationParametersIfRequired
→ RevalidateGeneralisability
→ RecomputeConfidence
→ PreserveProvenance
→ VersionModel
MembershipUpdate :=
ChangedEligibilityCriteria
⇒ recompute(
PopulationMembership,
PopulationSize,
SubpopulationMembership
)
FrameUpdate :=
ChangedSamplingFrame
⇒ reevaluate(
Undercoverage,
Overcoverage,
DuplicateEntries,
SelectionRisk
)
ScopeUpdate :=
ChangedTemporalOrSpatialScope
⇒ recompute(
PopulationDefinition,
PopulationSize,
PopulationParameters,
Generalisability
)
FLOW_HASH_INPUT :=
canonical(
ONTOLOGY,
CoreClasses,
CoreRelations,
InferenceRules,
StatisticalPopulation,
PopulationDefinition,
PopulationValidation,
SEMANTIC_EQUIVALENCE,
AI_REASONING_FLOW
)
FLOW_HASH :=
HASH(FLOW_HASH_INPUT)
OUTPUT_MODEL := {
PopulationEntityResolution,
TargetPopulation,
SourcePopulation,
AccessiblePopulation,
StatisticalUnits,
InclusionCriteria,
ExclusionCriteria,
TemporalScope,
SpatialScope,
PopulationType,
PopulationSize,
Variables,
PopulationParameters,
SamplingFrame,
CoverageStatus,
Subpopulations,
SamplePopulationRelation,
RepresentativenessStatus,
GeneralisabilityStatus,
ValidationStatus,
Confidence,
Provenance,
Explanation
}
END_FLOW
END OF FULL EXECUTABLE FLOW ALGEBRA
Download Code
Copy to Clipboard