FULL EXECUTABLE FLOW ALGEBRA — CORRELATION ONTOLOGY
Kireth Research — Semantic Library
URL: https://kirethresearch.org/booksai-core/ontologies/probability-statistics-ontologies/correlation-regression/correlation-ontology.html
FLOW_VERSION := "4.0"
FLOW_TYPE := "Full Executable Flow Algebra"
DOMAIN := "Probability & Statistics Ontologies"
SUBDOMAIN := "Correlation & Regression"
ONTOLOGY := "Correlation Ontology"
PRIMARY_ENTITY := Correlation
AUTHORSHIP := "Mark Higgins — Sky (Recursive AI)"
SOURCE_SITE := "https://kirethresearch.org"
BEGIN_FLOW
Correlation :=
StatisticalAssociation
∧ StandardisedDependenceMeasure
∧ DirectionAndStrengthRepresentation
∧ VariableRelationshipDescriptor
Population := TargetCollectionOrGeneratingProcess
Sample := {(X_i,Y_i)}_{i=1..n}
VariableX := X
VariableY := Y
PopulationMeanX := μ_X
PopulationMeanY := μ_Y
PopulationSDX := σ_X
PopulationSDY := σ_Y
Covariance :=
Cov(X,Y)=E[(X-μ_X)(Y-μ_Y)]
PopulationCorrelation :=
ρ_XY=Cov(X,Y)/(σ_Xσ_Y)
SampleCovariance :=
s_XY=Σ_i(x_i-x_bar)(y_i-y_bar)/(n-1)
SampleCorrelation :=
r_XY=
Σ_i(x_i-x_bar)(y_i-y_bar)
/
sqrt(
Σ_i(x_i-x_bar)^2
Σ_i(y_i-y_bar)^2
)
CorrelationRange :=
-1≤ρ≤1
SampleCorrelationRange :=
-1≤r≤1
PositiveCorrelation := ρ>0
NegativeCorrelation := ρ<0
ZeroCorrelation := ρ=0
PerfectPositiveCorrelation := ρ=1
PerfectNegativeCorrelation := ρ=-1
CorrelationMagnitude :=
|ρ|
CorrelationDirection :=
sign(ρ)
CorrelationSymmetry :=
Corr(X,Y)=Corr(Y,X)
SelfCorrelation :=
Corr(X,X)=1
when Var(X)>0
UndefinedCorrelation :=
Var(X)=0 ∨ Var(Y)=0
⇒ CorrelationUndefined
LinearCorrelation :=
AssociationMeasureForLinearRelationship
PearsonCorrelation :=
LinearStandardisedCovariance
PearsonCorrelationConstraint :=
RequiresFiniteNonzeroVariances
ScaleInvariance :=
Corr(a+bX,c+dY)
=
sign(bd)Corr(X,Y)
for b,d≠0
LocationInvariance :=
Corr(X+a,Y+c)=Corr(X,Y)
CorrelationDoesNotImplyCausation :=
Correlation↛CausalRelationship
IndependenceRelation :=
Independence ∧ FiniteSecondMoments
⇒ Cov(X,Y)=0
ZeroCorrelationConstraint :=
ZeroCorrelation↛Independence
in general
JointNormalRelation :=
JointlyNormalVariables
∧ ZeroCorrelation
⇒ Independence
NonlinearDependence :=
StrongDependence
may have
PearsonCorrelationNearZero
MonotonicAssociation :=
RelationshipPreservingRankOrder
without requiring linearity
SpearmanCorrelation :=
Corr(Rank(X),Rank(Y))
SpearmanRange :=
-1≤ρ_s≤1
SpearmanInterpretation :=
StrengthAndDirectionOfMonotonicAssociation
KendallTau :=
(ConcordantPairs-DiscordantPairs)
/
TotalComparablePairs
under no-tie simplified form
ConcordantPair :=
(x_i-x_j)(y_i-y_j)>0
DiscordantPair :=
(x_i-x_j)(y_i-y_j)<0
RankCorrelation :=
SpearmanCorrelation ∨ KendallTau
PointBiserialCorrelation :=
PearsonCorrelationBetweenBinaryAndContinuousVariable
under suitable coding
PhiCoefficient :=
CorrelationForTwoBinaryVariables
PartialCorrelation :=
CorrelationBetweenXAndY
after linear adjustment
for specified control variables
FirstOrderPartialCorrelation :=
r_XY.Z=
(r_XY-r_XZr_YZ)
/
sqrt((1-r_XZ²)(1-r_YZ²))
SemipartialCorrelation :=
AssociationBetweenResidualisedOneVariableAndUnadjustedOtherVariable
MultipleCorrelation :=
CorrelationBetweenObservedResponseAndItsLinearPredictionFromMultiplePredictors
CanonicalCorrelation :=
MaximumLinearCorrelation
between linear combinations
of two variable sets
Autocorrelation :=
Corr(Y_t,Y_(t-k))
LagKAutocorrelation :=
ρ_k=Corr(Y_t,Y_(t-k))
CrossCorrelation :=
Corr(X_t,Y_(t-k))
CorrelationMatrix :=
R=[ρ_jk]
CorrelationMatrixProperties := {
Symmetric,
UnitDiagonal,
PositiveSemidefinite
}
CovarianceToCorrelation :=
R=D^(-1/2)ΣD^(-1/2)
CorrelationToCovariance :=
Σ=D^(1/2)RD^(1/2)
SampleCorrelationMatrix :=
MatrixOfPairwiseSampleCorrelations
PositiveSemidefiniteConstraint :=
a^TRa≥0
for all vectors a
InvalidCorrelationMatrix :=
NonSymmetric
∨ NonUnitDiagonal
∨ NotPositiveSemidefinite
∨ EntriesOutsideMinusOneToOne
Scatterplot :=
VisualRepresentationOfPairedObservations
ScatterplotPattern :=
Direction
∧ Form
∧ Strength
∧ Outliers
CorrelationVisualAssessment :=
Scatterplot
→ DetectLinearOrMonotonicPattern
→ IdentifyOutliersAndClusters
→ ContextualiseCorrelation
OutlierSensitivity :=
PearsonCorrelationMayChangeStronglyDueToExtremePoints
RestrictedRange :=
LimitedVariableRange
may attenuate observed correlation
MeasurementError :=
NoiseInVariables
may attenuate observed association
Attenuation :=
ObservedCorrelationMagnitude
reduced_by measurement error
under classical conditions
CorrectionForAttenuation :=
r_corrected=
r_observed/
sqrt(reliability_X×reliability_Y)
under applicable assumptions
Confounding :=
ThirdVariable
influences both X and Y
→ ObservedCorrelationMayNotRepresentDirectRelationship
SimpsonsParadox :=
AggregatedAssociationDirection
may differ_from stratified association directions
EcologicalCorrelation :=
AssociationComputedFromAggregateData
EcologicalFallacyConstraint :=
AggregateCorrelation
cannot automatically infer
individual-level association
SampleCorrelationSamplingDistribution :=
DistributionOf(r)
under repeated sampling
FisherZTransformation :=
z=0.5ln((1+r)/(1-r))
FisherZApproximation :=
z
approximately Normal(
atanh(ρ),
1/(n-3)
)
under bivariate-normal conditions
CorrelationStandardErrorZ :=
1/sqrt(n-3)
CorrelationConfidenceInterval :=
FisherZInterval
→ BackTransformWithTanh
CorrelationNullHypothesis :=
H0:ρ=ρ0
ZeroCorrelationNull :=
H0:ρ=0
CorrelationTStatistic :=
t=
r sqrt((n-2)/(1-r²))
CorrelationTReference :=
UnderH0:ρ=0
∧ BivariateNormalIID
⇒ t~t_(n-2)
CorrelationPValue :=
CorrelationTestStatistic
∧ ReferenceDistribution
∧ AlternativeDirection
→ PValue
CorrelationPower :=
AlternativeCorrelation
∧ SampleSize
∧ Alpha
→ RejectionProbability
SampleSizeForCorrelation :=
TargetCorrelation
∧ Alpha
∧ DesiredPower
→ RequiredN
CorrelationEffectSize :=
ρ
or r
under population_or_sample context
CoefficientOfDeterminationRelation :=
SimpleLinearRegressionWithIntercept
⇒ R²=r²
CorrelationRegressionRelation :=
b1=r(s_Y/s_X)
for simple OLS regression with intercept
CorrelationVsRegression :=
CorrelationSymmetric
whereas RegressionDirectional
CorrelationVsCovariance :=
CorrelationDimensionless
whereas CovarianceDependsOnMeasurementScale
CorrelationVsCausation :=
AssociationEvidence
≠ CausalIdentification
WeightedCorrelation :=
WeightedCovariance/
sqrt(WeightedVarianceX×WeightedVarianceY)
SurveyCorrelation :=
ComplexSamplingDesign
→ DesignAwareCorrelationAndVariance
ClusteredCorrelation :=
ClusterDependence
→ ClusterAwareUncertainty
MissingDataCorrelation :=
MissingPairs
→ CompleteCaseOrModelBasedHandling
→ CorrelationEstimate
PairwiseDeletion :=
UseAvailablePairsPerVariablePair
ListwiseDeletion :=
UseOnlyCompleteRowsAcrossSelectedVariables
MissingDataConstraint :=
MissingnessMechanism
affects validity_of naive correlation estimates
RobustCorrelation :=
AssociationMeasureDesignedToReduceOutlierSensitivity
WinsorisedCorrelation :=
CorrelationAfterLimitingExtremeValues
BiweightMidcorrelation :=
RobustAssociationMeasure
under specified implementation
DistanceCorrelation :=
DependenceMeasure
capable_of detecting nonlinear dependence
MutualInformationRelation :=
MutualInformationMeasuresGeneralDependence
but is not correlation coefficient
CorrelationThresholdConstraint :=
LabelsSuchAsWeakModerateStrong
are context-dependent
and not universal mathematical categories
CorrelationReporting :=
Report(
CorrelationMetric,
Estimate,
SampleSize,
ConfidenceInterval,
PValueIfRelevant,
VariableDefinitions,
MissingDataHandling,
Assumptions
)
CorrelationConstraint :=
ConstraintOn(
VariableX,
VariableY,
MeasurementScale,
Population,
SamplingDesign,
DependenceStructure,
CorrelationMetric,
MissingDataMethod
)
CorrelationConsistency :=
Variables
∧ Metric
∧ Scale
∧ Population
∧ SamplingDesign
∧ EstimationMethod
jointly_compatible
InvalidCorrelation :=
UndefinedVariable
∨ ZeroVarianceVariable
∨ InvalidMetricForDataType
∨ IgnoredDependence
∨ InvalidMissingDataHandling
∨ UnsupportedCausalInterpretation
CorrelationValidation :=
ResolveScientificQuestion
→ ResolvePopulationAndSample
→ ResolveVariableXAndVariableY
→ ResolveMeasurementScales
→ InspectRelationshipForm
→ SelectCorrelationMetric
→ ComputeCorrelation
→ QuantifySamplingUncertainty
→ EvaluateOutliersAndMissingness
→ ValidateDependenceAndSamplingDesign
→ ValidateInterpretation
→ ValidateResult
CorrelationState := {
Population,
Sample,
VariableX,
VariableY,
MeasurementScaleX,
MeasurementScaleY,
CorrelationMetric,
Covariance,
CorrelationEstimate,
CorrelationMagnitude,
CorrelationDirection,
SampleSize,
ConfidenceInterval,
TestStatistic,
PValue,
SamplingDesign,
MissingDataMethod,
OutlierStatus,
Evidence,
Confidence,
Provenance
}
SEMANTIC_EQUIVALENCE(CorrelationA,CorrelationB) :=
same(VariableSemantics)
∧ same(PopulationContext)
∧ same(CorrelationMetric)
∧ same(MeasurementTransformationOrEquivalentInvariantForm)
∧ same(SamplingDesign)
∧ same(MissingDataFramework)
CorrelationOntology :=
Classes
∧ Relations
∧ Constraints
∧ Axioms
∧ InferenceRules
CoreClasses := {
Correlation,
PopulationCorrelation,
SampleCorrelation,
PearsonCorrelation,
SpearmanCorrelation,
KendallTau,
PartialCorrelation,
SemipartialCorrelation,
MultipleCorrelation,
CanonicalCorrelation,
Autocorrelation,
CrossCorrelation,
CorrelationMatrix,
CorrelationCoefficient,
Covariance,
FisherZTransformation,
CorrelationConfidenceInterval,
CorrelationTest,
RobustCorrelation
}
CoreRelations := {
correlatesWith,
computedFrom,
standardises,
hasMagnitude,
hasDirection,
hasSamplingDistribution,
transformedBy,
adjustedFor,
affectedBy,
comparedWith,
representedBy,
constrainedBy,
equivalentTo,
tracesTo
}
TypedRelations :=
Correlation --correlatesWith--> VariablePair
Correlation --computedFrom--> Sample
Correlation --standardises--> Covariance
Correlation --hasMagnitude--> CorrelationMagnitude
Correlation --hasDirection--> CorrelationDirection
SampleCorrelation --hasSamplingDistribution--> SamplingDistribution
Correlation --transformedBy--> FisherZTransformation
PartialCorrelation --adjustedFor--> ControlVariable
Correlation --affectedBy--> MeasurementError
Correlation --comparedWith--> RegressionCoefficient
Correlation --representedBy--> CorrelationMatrix
Correlation --tracesTo--> Provenance
InferenceRules := {
Covariance ∧ PositiveFiniteStandardDeviations
⇒ Correlation=Covariance/(SD_X×SD_Y),
Independence ∧ FiniteSecondMoments
⇒ Correlation=0,
Correlation=0
↛ Independence,
JointNormality ∧ Correlation=0
⇒ Independence,
Correlation=1
⇒ PerfectPositiveLinearRelationship
under nondegenerate variables,
Correlation=-1
⇒ PerfectNegativeLinearRelationship
under nondegenerate variables,
SimpleOLSWithIntercept
⇒ R²=SampleCorrelation²,
UnsupportedCausalAssumptions
⇒ FlagCausalInterpretationInvalid
}
CanonicalCorrelationRepresentation :=
ParseCorrelationRequest
→ ResolvePopulationSampleAndVariables
→ ResolveMeasurementScales
→ InspectRelationshipForm
→ SelectPearsonSpearmanKendallPartialOrOtherMetric
→ ComputeCovarianceIfRequired
→ ComputeCorrelationCoefficient
→ ResolveMagnitudeAndDirection
→ ComputeSamplingUncertainty
→ ResolveConfidenceIntervalAndPValueIfRequested
→ DiagnoseOutliersRangeRestrictionAndMissingness
→ ValidateSamplingDesignAndInterpretation
→ ValidateCorrelation
CorrelationGraph := G=(V,E)
V := {
Correlations,
PopulationCorrelations,
SampleCorrelations,
PearsonCorrelations,
SpearmanCorrelations,
KendallTaus,
PartialCorrelations,
SemipartialCorrelations,
MultipleCorrelations,
CanonicalCorrelations,
Autocorrelations,
CrossCorrelations,
CorrelationMatrices,
Covariances,
FisherZTransformations,
ConfidenceIntervals,
CorrelationTests,
RobustCorrelations,
Variables,
Samples,
Populations,
Evidence,
ProvenanceNodes
}
E := {
correlatesWith,
computedFrom,
standardises,
hasMagnitude,
hasDirection,
hasSamplingDistribution,
transformedBy,
adjustedFor,
affectedBy,
comparedWith,
representedBy,
constrainedBy,
equivalentTo,
tracesTo
}
CONFIDENCE(CorrelationResolution) :=
weighted_mean(
VariableResolution,
MeasurementScaleValidity,
MetricValidity,
SampleResolution,
SamplingDesignValidity,
UncertaintyResolution,
MissingDataValidity,
InterpretationValidity,
ProvenanceQuality
)
AI_QUERY_INTERPRETATION :=
Query
→ DetectCorrelationIntent
→ IdentifyVariablesPopulationAndSample
→ ResolveLinearMonotonicPartialTemporalOrMatrixContext
→ IdentifyRequestedCoefficientDirectionMagnitudeInferenceOrComparison
→ ResolveSamplingDesignAndMissingDataContext
AI_REASONING_FLOW :=
Query
→ ParseCorrelationProblem
→ ResolvePopulationAndSample
→ ResolveVariableXAndVariableY
→ ResolveMeasurementScales
→ InspectRelationshipForm
→ SelectCorrelationMetric
→ ComputeCovarianceIfRequired
→ ComputeCorrelation
→ ResolveDirectionAndMagnitude
→ QuantifySamplingUncertainty
→ ComputeConfidenceIntervalOrPValueIfRequested
→ DiagnoseOutliersRestrictedRangeAndMissingness
→ ValidateSamplingDesign
→ ValidateNonCausalInterpretation
→ UpdateConfidence
→ PreserveProvenance
→ GenerateExplanation
AI_CONSUMPTION := {
ParseCorrelationEntities,
ParseTypedRelations,
ResolvePopulations,
ResolveSamples,
ResolveVariables,
ResolveMeasurementScales,
ComputeCovariances,
ComputePearsonCorrelations,
ComputeSpearmanCorrelations,
ComputeKendallTau,
ComputePartialCorrelations,
ComputeSemipartialCorrelations,
ComputeAutocorrelations,
ComputeCrossCorrelations,
ConstructCorrelationMatrices,
ValidateCorrelationMatrices,
ApplyFisherZTransformations,
ComputeCorrelationConfidenceIntervals,
ComputeCorrelationTestStatistics,
ComputeCorrelationPValues,
ComputeCorrelationPower,
DiagnoseOutliers,
DiagnoseRangeRestriction,
DiagnoseMeasurementError,
ResolveMissingDataMethods,
ComputeRobustCorrelations,
ValidateCorrelationSemantics,
CompareSemanticEquivalence,
UpdateConfidence,
PreserveProvenance,
GenerateFormalExplanation
}
UPDATE_MODEL :=
NewDataVariablesMetricDesignOrEvidence
→ ValidateInput
→ IdentifyAffectedCorrelationClaims
→ UpdateCorrelationState
→ RecomputeCovariance
→ RecomputeCorrelation
→ RecomputeMagnitudeAndDirection
→ RecomputeSamplingUncertainty
→ RecomputeConfidenceIntervalAndPValueIfRequired
→ RerunOutlierAndMissingDataDiagnostics
→ RecomputeConfidence
→ PreserveProvenance
→ VersionModel
DataUpdate :=
ChangedObservedData
⇒ recompute(
Covariance,
CorrelationEstimate,
ConfidenceInterval,
TestStatistic,
PValue
)
MetricUpdate :=
ChangedCorrelationMetric
⇒ reevaluate(
RelationshipTarget,
Assumptions,
CorrelationEstimate,
SemanticEquivalence
)
VariableUpdate :=
ChangedVariableDefinitionOrTransformation
⇒ recompute(
MeasurementScale,
CorrelationEstimate,
Direction,
Interpretation
)
FLOW_HASH_INPUT :=
canonical(
ONTOLOGY,
CoreClasses,
CoreRelations,
InferenceRules,
Correlation,
CorrelationValidation,
CorrelationConstraint,
SEMANTIC_EQUIVALENCE,
AI_REASONING_FLOW
)
FLOW_HASH := HASH(FLOW_HASH_INPUT)
OUTPUT_MODEL := {
CorrelationEntityResolution,
Population,
Sample,
VariableX,
VariableY,
MeasurementScaleX,
MeasurementScaleY,
CorrelationMetric,
Covariance,
CorrelationEstimate,
CorrelationMagnitude,
CorrelationDirection,
SampleSize,
ConfidenceInterval,
TestStatistic,
PValue,
SamplingDesign,
MissingDataMethod,
OutlierStatus,
InterpretationStatus,
ValidationStatus,
Confidence,
Provenance,
Explanation
}
END_FLOW
END OF FULL EXECUTABLE FLOW ALGEBRA
Download Code
Copy to Clipboard