FULL EXECUTABLE FLOW ALGEBRA — COEFFICIENT OF VARIATION ONTOLOGY
Kireth Research — Semantic Library
URL: https://kirethresearch.org/booksai-core/ontologies/probability-statistics-ontologies/descriptive-statistics/coefficient-of-variation-ontology.html
FLOW_VERSION := "4.0"
FLOW_TYPE := "Full Executable Flow Algebra"
DOMAIN := "Probability & Statistics Ontologies"
SUBDOMAIN := "Descriptive Statistics"
ONTOLOGY := "Coefficient of Variation Ontology"
PRIMARY_ENTITY := CoefficientOfVariation
AUTHORSHIP := "Mark Higgins — Sky (Recursive AI)"
SOURCE_SITE := "https://kirethresearch.org"
BEGIN_FLOW
CoefficientOfVariation :=
RelativeDispersionMeasure
∧ RatioOfStandardDeviationToMean
∧ DimensionlessScaleMeasure
RandomVariable := X
PopulationMean := μ=E[X]
PopulationStandardDeviation := σ=sqrt(Var(X))
PopulationCoefficientOfVariation :=
CV=σ/μ
where μ≠0
and ratio interpretation is meaningful
AbsoluteCoefficientOfVariation :=
CV_abs=σ/|μ|
PercentageCoefficientOfVariation :=
CV_percent=100×σ/|μ|
Sample := {x_1,...,x_n}
SampleMean := X_bar=(1/n)Σ_i x_i
SampleStandardDeviation := S=sqrt([1/(n-1)]Σ_i(x_i-X_bar)²)
SampleCoefficientOfVariation :=
CV_sample=S/X_bar
where X_bar≠0
SampleAbsoluteCV :=
S/|X_bar|
SamplePercentageCV :=
100×S/|X_bar|
RelativeStandardDeviation :=
RSD=StandardDeviation/|Mean|
DimensionlessProperty :=
Unit(StandardDeviation)=Unit(Mean)
⇒ Unit(CV)=Dimensionless
ScaleInvariance :=
a>0
⇒ CV(aX)=CV(X)
AbsoluteScaleInvariance :=
a≠0
⇒ AbsoluteCV(aX)=AbsoluteCV(X)
TranslationNonInvariance :=
CV(X+b)
generally ≠ CV(X)
RatioScaleRequirement :=
CV
generally meaningful
for ratio-scale variables
with meaningful zero
IntervalScaleCaution :=
ArbitraryZeroPoint
⇒ FlagCVInterpretationRisk
ZeroMeanConstraint :=
Mean=0
⇒ CVUndefined
NearZeroMeanInstability :=
|Mean|≈0
⇒ CV may become unstable
NegativeMeanCaution :=
Mean<0
⇒ SignedCV may be misleading
unless signed convention intended
CVNonnegativity :=
AbsoluteCV≥0
ZeroCV :=
StandardDeviation=0
∧ Mean≠0
⇒ CV=0
CVInterpretation :=
StandardDeviation
expressed_relative_to
magnitude of Mean
ThresholdConstraint :=
NoUniversalCVThreshold
applies across all domains
CrossScaleComparison :=
CV
may compare relative variability
across differently scaled variables
when ratio-scale semantics are compatible
PrecisionVsAccuracy :=
LowCVOrRSD
may indicate repeatability
but ↛ accuracy
CVVsStandardDeviation :=
StandardDeviation measures absolute dispersion
whereas CV measures relative dispersion
CVVsVariance :=
Variance has squared units
whereas CV is dimensionless
OutlierSensitivity :=
CV
inherits sensitivity
from Mean and StandardDeviation
RobustRelativeDispersion :=
RobustScale/RobustLocation
where denominator semantics valid
QuartileCoefficientOfDispersion :=
(Q3-Q1)/(Q3+Q1)
where denominator valid
LognormalDistribution :=
X~LogNormal(μ_L,σ_L²)
LognormalCV :=
sqrt(exp(σ_L²)-1)
GammaDistribution :=
X~Gamma(α,β)
under shape-rate parameterisation
GammaCV :=
1/sqrt(α)
ExponentialDistribution :=
X~Exponential(λ)
ExponentialCV :=
1
PoissonDistribution :=
X~Poisson(λ)
PoissonCV :=
1/sqrt(λ)
for λ>0
BernoulliDistribution :=
X~Bernoulli(p)
BernoulliCV :=
sqrt((1-p)/p)
for p>0
under ratio-scale coding interpretation
WeibullDistribution :=
X~Weibull(k,λ)
WeibullCV :=
sqrt(
Γ(1+2/k)/Γ(1+1/k)²
-
1
)
WeibullCVScaleIndependence :=
WeibullCV
depends_on shape k
but not scale λ
NormalDistribution :=
X~N(μ,σ²)
NormalCV :=
σ/|μ|
where μ≠0
and ratio-scale interpretation is valid
SampleCVBias :=
SampleCV
may be biased
for PopulationCV
CVSamplingDistribution :=
DistributionOfSampleCV
depends_on parent distribution
and sample size
BootstrapCV :=
ObservedSample
→ BootstrapSamples
→ ComputeCVReplicates
→ ApproximateSamplingDistribution
BootstrapCVStandardError :=
SD(CV*_1,...,CV*_B)
CVConfidenceInterval :=
PopulationCV
→ IntervalEstimate
using model-specific,
asymptotic,
or bootstrap method
WeightedMean :=
X_bar_w=Σ_iw_ix_i/Σ_iw_i
WeightedCV :=
WeightedSD/|WeightedMean|
under explicit weighting definition
MissingDataCV :=
Mean
and StandardDeviation
computed_on same effective observation set
unless explicitly defined otherwise
EmptyDatasetCV :=
Undefined
SingleObservationSampleCV :=
SampleSDUndefined
⇒ SampleCVUndefined
ConstantNonzeroData :=
StandardDeviation=0
∧ Mean≠0
⇒ CV=0
AllZeroData :=
Mean=0
∧ StandardDeviation=0
⇒ CVUndefined
MixedSignData :=
PositiveAndNegativeValues
may yield near-zero mean
⇒ FlagCVInstability
CVConstraint :=
ConstraintOn(
Mean,
StandardDeviation,
MeasurementScale,
ZeroPoint,
DataScope,
Missingness,
Weighting
)
CVConsistency :=
Mean
∧ StandardDeviation
∧ DataScope
∧ MeasurementSemantics
∧ WeightingRule
jointly_compatible
InvalidCoefficientOfVariation :=
MeanEqualsZero
∨ IncompatibleMeasurementScale
∨ ArbitraryZeroPoint
∨ InconsistentDataScope
∨ InvalidStandardDeviation
∨ UndocumentedWeighting
∨ HiddenMissingnessTreatment
CVValidation :=
ResolveVariable
→ ResolveVariableType
→ ResolveMeasurementScale
→ ValidateMeaningfulZero
→ ResolveDataScope
→ ResolveObservations
→ ResolveMissingness
→ ResolveWeights
→ ComputeMean
→ ValidateNonzeroMean
→ ComputeStandardDeviation
→ ComputeCV
→ ValidateInterpretation
CVState := {
Variable,
DataScope,
Observations,
EffectiveCount,
Mean,
StandardDeviation,
CVConvention,
CVValue,
PercentageCV,
MeasurementScale,
MeasurementUnit,
MissingnessRule,
WeightingRule,
Evidence,
Confidence,
Provenance
}
SEMANTIC_EQUIVALENCE(CVA,CVB) :=
same(VariableSemantics)
∧ same(DataScope)
∧ same(CVConvention)
∧ same(StandardDeviationConvention)
∧ same(MissingnessRule)
∧ same(WeightingRule)
CoefficientOfVariationOntology :=
Classes
∧ Relations
∧ Constraints
∧ Axioms
∧ InferenceRules
CoreClasses := {
CoefficientOfVariation,
PopulationCoefficientOfVariation,
SampleCoefficientOfVariation,
RelativeStandardDeviation,
PercentageCoefficientOfVariation,
Mean,
StandardDeviation,
Variance,
RatioScale,
StatisticalVariable,
StatisticalObservation,
Dataset,
Sample,
Population,
CVConstraint
}
CoreRelations := {
computedFrom,
summarises,
ratioOf,
dependsOn,
hasMean,
hasStandardDeviation,
hasConvention,
compares,
transformedBy,
estimatedFrom,
constrainedBy,
equivalentTo,
tracesTo
}
TypedRelations :=
CoefficientOfVariation --computedFrom--> Observations
CoefficientOfVariation --summarises--> StatisticalVariable
CoefficientOfVariation --ratioOf--> StandardDeviation
CoefficientOfVariation --ratioOf--> Mean
CoefficientOfVariation --dependsOn--> MeaningfulZeroPoint
CoefficientOfVariation --compares--> RelativeDispersion
SampleCoefficientOfVariation --estimatedFrom--> Sample
CoefficientOfVariation --tracesTo--> Provenance
InferenceRules := {
Mean≠0
∧ ValidStandardDeviation
⇒
AbsoluteCV=StandardDeviation/|Mean|,
PositiveScaleFactor(a)
⇒
CV(aX)=CV(X),
Translation(b)
⇒
CV(X+b)
generally ≠ CV(X),
Mean=0
⇒
CVUndefined,
StandardDeviation=0
∧ Mean≠0
⇒
CV=0,
RatioScaleVariable
⇒
CVPotentiallyMeaningful,
IntervalScaleWithArbitraryZero
⇒
FlagCVInterpretationRisk,
NearZeroMean
⇒
FlagCVInstability
}
CanonicalCVRepresentation :=
ParseCVRequest
→ ResolveVariable
→ ResolveDatasetSamplePopulationOrDistribution
→ ResolveVariableTypeAndMeasurementScale
→ ValidateMeaningfulZero
→ ResolveObservations
→ ResolveMissingness
→ ResolveWeights
→ ResolveMean
→ ResolveStandardDeviation
→ ResolveSignedAbsoluteOrPercentageConvention
→ ComputeCV
→ ResolveDistributionalOrSamplingRelationsIfRequired
→ ValidateCV
CVGraph :=
G=(V,E)
V := {
CoefficientsOfVariation,
PopulationCVs,
SampleCVs,
RelativeStandardDeviations,
PercentageCVs,
Means,
StandardDeviations,
Variances,
Variables,
Observations,
Datasets,
Samples,
Populations,
MeasurementScales,
Evidence,
ProvenanceNodes
}
E := {
computedFrom,
summarises,
ratioOf,
dependsOn,
hasMean,
hasStandardDeviation,
hasConvention,
compares,
transformedBy,
estimatedFrom,
constrainedBy,
equivalentTo,
tracesTo
}
CONFIDENCE(CVResolution) :=
weighted_mean(
VariableResolution,
DataScopeResolution,
MeasurementScaleValidity,
MeaningfulZeroValidity,
MeanResolution,
StandardDeviationResolution,
ConventionResolution,
ProvenanceQuality
)
AI_QUERY_INTERPRETATION :=
Query
→ DetectCoefficientOfVariationIntent
→ IdentifyVariableAndDataScope
→ ResolveMeasurementScaleAndZeroPoint
→ ResolveMeanAndStandardDeviation
→ IdentifySignedAbsolutePercentageOrRSDConvention
→ IdentifyRequestedComparisonInferenceOrDistributionRelation
AI_REASONING_FLOW :=
Query
→ ParseCVProblem
→ ResolveDatasetSamplePopulationOrDistribution
→ ResolveVariable
→ ResolveVariableTypeAndMeasurementScale
→ ValidateMeaningfulZero
→ ResolveObservations
→ ResolveMissingValues
→ ResolveWeights
→ ComputeOrResolveMean
→ ValidateMeanNotZeroOrNearZero
→ ComputeOrResolveStandardDeviation
→ SelectCVConvention
→ ComputeCoefficientOfVariation
→ ResolveCrossGroupOrDistributionComparisonIfRequested
→ ValidateCVResult
→ UpdateConfidence
→ PreserveProvenance
→ GenerateExplanation
AI_CONSUMPTION := {
ParseCoefficientOfVariationEntities,
ParseTypedRelations,
ResolveVariables,
ResolveObservations,
ResolveDatasets,
ResolveSamples,
ResolvePopulations,
ResolveMeasurementScales,
ValidateMeaningfulZeroPoints,
ResolveMissingness,
ResolveWeights,
ComputeMeans,
ComputeStandardDeviations,
ComputePopulationCVs,
ComputeSampleCVs,
ComputeRelativeStandardDeviations,
ComputePercentageCVs,
ResolveLognormalCVs,
ResolveGammaCVs,
ResolveExponentialCVs,
ResolvePoissonCVs,
ResolveWeibullCVs,
ComputeBootstrapCVDistributions,
ValidateCVSemantics,
CompareSemanticEquivalence,
UpdateConfidence,
PreserveProvenance,
GenerateFormalExplanation
}
UPDATE_MODEL :=
NewObservationScopeMeanSDConventionOrEvidence
→ ValidateInput
→ IdentifyAffectedCVClaims
→ UpdateCVState
→ RecomputeEffectiveObservationSet
→ RecomputeMean
→ RecomputeStandardDeviation
→ RecomputeCoefficientOfVariation
→ ReevaluateInterpretationConstraints
→ RecomputeConfidence
→ PreserveProvenance
→ VersionModel
ObservationUpdate :=
AddedRemovedOrCorrectedObservation
⇒ recompute(
EffectiveCount,
Mean,
StandardDeviation,
CVValue
)
ConventionUpdate :=
ChangedSignedAbsoluteOrPercentageConvention
⇒ recompute(
CVValue,
PercentageCV,
SemanticEquivalence
)
ScaleUpdate :=
ChangedMeasurementScaleOrUnit
⇒ reevaluate(
MeaningfulZero,
CVInterpretability,
CrossDatasetCompatibility
)
FLOW_HASH_INPUT :=
canonical(
ONTOLOGY,
CoreClasses,
CoreRelations,
InferenceRules,
CoefficientOfVariation,
CVValidation,
CVConstraint,
SEMANTIC_EQUIVALENCE,
AI_REASONING_FLOW
)
FLOW_HASH :=
HASH(FLOW_HASH_INPUT)
OUTPUT_MODEL := {
CoefficientOfVariationEntityResolution,
Variable,
DataScope,
VariableType,
MeasurementScale,
MeaningfulZeroStatus,
ObservationCount,
EffectiveObservationCount,
Mean,
StandardDeviation,
CVConvention,
CVValue,
PercentageCV,
RelativeStandardDeviation,
MissingnessRule,
WeightingRule,
DistributionRelation,
ValidationStatus,
Confidence,
Provenance,
Explanation
}
END_FLOW
END OF FULL EXECUTABLE FLOW ALGEBRA
Download Code
Copy to Clipboard