FULL EXECUTABLE FLOW ALGEBRA — LINEAR REGRESSION ONTOLOGY
Kireth Research — Semantic Library
URL: https://kirethresearch.org/booksai-core/ontologies/probability-statistics-ontologies/correlation-regression/linear-regression-ontology.html
FLOW_VERSION := "4.0"
FLOW_TYPE := "Full Executable Flow Algebra"
DOMAIN := "Probability & Statistics Ontologies"
SUBDOMAIN := "Correlation & Regression"
ONTOLOGY := "Linear Regression Ontology"
PRIMARY_ENTITY := LinearRegression
AUTHORSHIP := "Mark Higgins — Sky (Recursive AI)"
SOURCE_SITE := "https://kirethresearch.org"
BEGIN_FLOW
LinearRegression := RegressionModel ∧ LinearInParameters ∧ ConditionalMeanModel ∧ ParameterEstimation ∧ Prediction ∧ UncertaintyQuantification
Population := TargetCollectionOrGeneratingProcess
Sample := {(X_i,Y_i)}_{i=1..n}
ResponseVariable := Y
PredictorVector := X
ParameterVector := β
ErrorTerm := ε
LinearModel := Y=Xβ+ε
ConditionalMean := E[Y|X]=Xβ
ZeroConditionalMean := E[ε|X]=0
SimpleLinearRegression := Y=β0+β1X+ε
MultipleLinearRegression := Y=β0+β1X1+...+βpXp+ε
Intercept := β0
Slope := β1
RegressionCoefficient := β_j
DesignMatrix := X
ObservedResponseVector := y
EstimatedCoefficientVector := β_hat
FittedVector := y_hat=Xβ_hat
ResidualVector := e=y-y_hat
OrdinaryLeastSquares := β_hat=argmin_β ||y-Xβ||²
NormalEquations := X^TXβ_hat=X^Ty
FullRankOLS := rank(X)=k ⇒ β_hat=(X^TX)^(-1)X^Ty
GeneralLeastSquaresSolution := β_hat=X^+y
SimpleSlopeEstimator := b1=Σ_i(x_i-x_bar)(y_i-y_bar)/Σ_i(x_i-x_bar)²
SimpleInterceptEstimator := b0=y_bar-b1x_bar
CovarianceSlopeRelation := b1=s_XY/s_X²
CorrelationSlopeRelation := b1=r_XY(s_Y/s_X)
FittedValue := y_hat_i=x_i^Tβ_hat
Residual := e_i=y_i-y_hat_i
ResidualOrthogonality := X^Te=0
HatMatrix := H=X(X^TX)^(-1)X^T
ProjectionRelation := y_hat=Hy
ResidualMaker := M=I-H
ResidualProjection := e=My
HatMatrixProperties := {Symmetric,Idempotent,trace(H)=k}
Leverage := h_ii=H_ii
TSS := Σ_i(y_i-y_bar)²
RSS := Σ_i(y_i-y_hat_i)²
ESS := Σ_i(y_hat_i-y_bar)²
SumSquaresDecomposition := ModelWithIntercept ⇒ TSS=ESS+RSS
R2 := 1-RSS/TSS
AdjustedR2 := 1-(1-R²)(n-1)/(n-k)
SimpleRegressionR2Relation := SimpleLinearRegressionWithIntercept ⇒ R²=r_XY²
ErrorVariance := Var(ε|X)=σ²I
ResidualVarianceEstimator := s²=RSS/(n-k)
OLSExpectation := E[β_hat|X]=β
OLSCovariance := Var(β_hat|X)=σ²(X^TX)^(-1)
EstimatedOLSCovariance := s²(X^TX)^(-1)
CoefficientStandardError := SE(β_hat_j)=sqrt(s²[(X^TX)^(-1)]_jj)
GaussMarkovConditions := {LinearInParameters,FullColumnRank,ZeroConditionalMean,HomoscedasticErrors,UncorrelatedErrors}
GaussMarkovTheorem := GaussMarkovConditions ⇒ OLSIsBLUE
BLUE := BestLinearUnbiasedEstimator
NormalErrorModel := ε|X~N(0,σ²I)
CoefficientNullHypothesis := H0:β_j=β_j0
CoefficientTStatistic := t_j=(β_hat_j-β_j0)/SE(β_hat_j)
CoefficientTReference := NormalErrorModel ∧ H0 ⇒ t_j~t_(n-k)
CoefficientPValue := ObservedTStatistic ∧ AlternativeDirection → StudentTReferenceTailProbability
CoefficientConfidenceInterval := β_hat_j±t_(1-α/2,n-k)SE(β_hat_j)
LinearRestriction := H0:Rβ=r
NestedModelFTest := ((RSS_R-RSS_U)/q)/(RSS_U/(n-k_U))
OverallRegressionFTest := H0:β1=...=βp=0 → CompareExplainedAndResidualVariation
PredictionPoint := x_0
MeanResponsePrediction := y_hat_mean=x_0^Tβ_hat
MeanResponseVariance := σ²x_0^T(X^TX)^(-1)x_0
PredictionVariance := σ²[1+x_0^T(X^TX)^(-1)x_0]
MeanResponseConfidenceInterval := y_hat_mean±CriticalValue×SE_mean
PredictionInterval := y_hat_new±CriticalValue×SE_prediction
Extrapolation := PredictionAtXOutsideObservedPredictorSupport
ExtrapolationRisk := DistanceBeyondObservedDesignRegion → IncreasedModelDependenceAndUncertainty
LinearityAssumption := E[Y|X]LinearInSpecifiedPredictorsAndBasis
Homoscedasticity := Var(ε_i|X)=σ²
Heteroscedasticity := Var(ε_i|X)=σ_i²
IndependentErrors := Cov(ε_i,ε_j|X)=0 for i≠j
NormalityAssumption := NeededForExactClassicalSmallSampleTAndFInference
NoPerfectMulticollinearity := rank(X)=k
Multicollinearity := NearLinearDependenceAmongPredictors
VarianceInflationFactor := VIF_j=1/(1-R_j²)
ConditionNumber := MeasureOfDesignMatrixIllConditioning
ResidualDiagnostics := {ResidualVsFitted,NormalQQ,ScaleLocation,ResidualVsLeverage,AutocorrelationAssessment}
StandardisedResidual := e_i/(s sqrt(1-h_ii))
CookDistance := InfluenceMeasureCombiningResidualAndLeverage
InfluentialObservation := ObservationWithMaterialImpactOnEstimatedModel
HeteroscedasticityRobustCovariance := SandwichCovarianceEstimator
ClusterRobustCovariance := ClusterAggregatedSandwichEstimator
WeightedLeastSquares := β_hat_WLS=(X^TWX)^(-1)X^TWy
GeneralisedLeastSquares := β_hat_GLS=(X^TΩ^(-1)X)^(-1)X^TΩ^(-1)y
PolynomialLinearRegression := Y=β0+β1X+β2X²+...+ε
LinearInParametersConstraint := ModelMayBeNonlinearInPredictorWhileLinearInCoefficients
InteractionModel := Y=β0+β1X1+β2X2+β3X1X2+ε
InteractionInterpretation := MarginalEffectOfX1=β1+β3X2
CategoricalPredictor := IndicatorOrContrastEncodedVariable
ReferenceCategory := BaselineLevelDefiningCoefficientContrasts
CenteredPredictor := X_c=X-c
StandardisedPredictor := Z=(X-MeanX)/SD_X
OmittedVariableBias := OmittedRelevantVariableCorrelatedWithIncludedPredictor → CoefficientBias
Endogeneity := E[X^Tε]≠0
EndogeneityConsequence := OLSMayBeBiasedOrInconsistent
Confounding := CommonCauseOfPredictorAndResponseMayInduceMisleadingCoefficients
LinearRegressionDoesNotImplyCausation := β_hat_j ↛ CausalEffectWithoutIdentificationAssumptions
MeasurementErrorInPredictor := ObservedX=TrueX+Noise
AttenuationBias := ClassicalPredictorMeasurementErrorMayBiasSimpleSlopeTowardZero
MissingData := MissingResponseOrPredictorValues → ExplicitMissingDataProcedure
CompleteCaseOLS := FitLinearModelUsingCompleteRequiredRows
MultipleImputationLinearRegression := ImputeMultipleDatasets → FitOLSPerDataset → PoolInference
SurveyLinearRegression := ComplexSamplingDesign ∧ SurveyWeights ∧ DesignBasedVariance → SurveyAdjustedLinearModel
TimeSeriesLinearRegression := LinearRegressionWithTemporalDependence
AutocorrelatedErrors := Cov(ε_t,ε_(t-k))≠0
SpatialLinearRegression := LinearRegressionWithSpatialDependence
FixedEffectsPanelRegression := UnitOrTimeIndicators → ControlForTimeInvariantGroupHeterogeneity
RandomEffectsLinearModel := FixedEffects ∧ RandomEffects → HierarchicalLinearModel
RegularisedLinearRegression := LinearPredictionLoss+Penalty
RidgeLinearRegression := argmin_β{RSS+λ||β||²_2}
LassoLinearRegression := argmin_β{RSS+λ||β||_1}
ElasticNetLinearRegression := argmin_β{RSS+λ1||β||_1+λ2||β||²_2}
RegularisationRelation := λ↑ → BiasUsually↑ ∧ VarianceUsually↓
CrossValidation := TrainingFolds → FitModel → ValidationFoldPrediction → AggregateLoss
OutOfSampleMSE := Mean[(Y_new-y_hat_new)²]
TrainingMSE := RSS/n
Overfitting := TrainingFitImprovesWhileOutOfSamplePerformanceWorsens
BiasVarianceTradeoff := ModelFlexibilityAndRegularisation → PredictionBiasVarianceBalance
LinearRegressionConstraint := ConstraintOn(Response,Predictors,DesignMatrix,FunctionalForm,ErrorMean,ErrorVariance,DependenceStructure,SamplingDesign,Estimator)
LinearRegressionConsistency := Response ∧ Predictors ∧ DesignMatrix ∧ LinearPredictor ∧ Estimator ∧ ErrorStructure ∧ SamplingDesign jointly_compatible
InvalidLinearRegression := UndefinedResponse ∨ UndefinedPredictors ∨ IncompatibleDimensions ∨ UnresolvedRankDeficiency ∨ InvalidEstimator ∨ IgnoredDependence ∨ UnsupportedCausalInterpretation
LinearRegressionValidation :=
ResolveScientificQuestion → ResolvePopulationSampleResponseAndPredictors
→ ResolveMeasurementScales → SpecifyLinearConditionalTarget → ConstructDesignMatrix
→ ValidateRank → EstimateCoefficients → ComputeFittedValuesAndResiduals
→ ComputeFitMeasures → EstimateCoefficientCovariance → QuantifyUncertainty
→ DiagnoseLinearityVarianceDependenceMulticollinearityAndInfluence
→ EvaluatePrediction → ValidateInterpretation → ValidateResult
LinearRegressionState := {
Population,Sample,Response,Predictors,DesignMatrix,ParameterVector,CoefficientEstimates,
FittedValues,Residuals,RSS,TSS,ESS,R2,AdjustedR2,ErrorVariance,StandardErrors,
ConfidenceIntervals,TestStatistics,PValues,Predictions,PredictionIntervals,
SamplingDesign,DiagnosticStatus,PredictivePerformance,Evidence,Confidence,Provenance
}
SEMANTIC_EQUIVALENCE(LinearModelA,LinearModelB) :=
same(ResponseSemantics) ∧ same(PredictorColumnSpace) ∧ same(ConditionalMeanTarget)
∧ same(EstimatorObjective) ∧ same(SamplingDesign) ∧ same(ErrorAndDependenceStructure)
LinearRegressionOntology := Classes ∧ Relations ∧ Constraints ∧ Axioms ∧ InferenceRules
CoreClasses := {
LinearRegression,SimpleLinearRegression,MultipleLinearRegression,OrdinaryLeastSquares,
RegressionCoefficient,Intercept,Slope,DesignMatrix,FittedValue,Residual,HatMatrix,
Leverage,R2,AdjustedR2,StandardError,ConfidenceInterval,Prediction,PredictionInterval,
WeightedLeastSquares,GeneralisedLeastSquares,RegularisedLinearRegression
}
CoreRelations := {
predicts,models,targets,computedFrom,estimates,hasCoefficient,hasIntercept,hasSlope,
hasResidual,hasFittedValue,hasFitMeasure,hasUncertainty,diagnosedBy,transformedBy,
adjustedFor,regularisedBy,constrainedBy,equivalentTo,tracesTo
}
TypedRelations :=
LinearRegression --predicts--> Response
LinearRegression --models--> ConditionalMean
LinearRegression --targets--> RegressionTarget
LinearRegression --computedFrom--> Sample
OrdinaryLeastSquares --estimates--> CoefficientVector
LinearRegression --hasCoefficient--> RegressionCoefficient
SimpleLinearRegression --hasIntercept--> Intercept
SimpleLinearRegression --hasSlope--> Slope
LinearRegression --hasResidual--> Residual
LinearRegression --hasFittedValue--> FittedValue
LinearRegression --hasFitMeasure--> R2
RegressionCoefficient --hasUncertainty--> ConfidenceInterval
LinearRegression --diagnosedBy--> ResidualDiagnostic
LinearRegression --regularisedBy--> Penalty
LinearRegression --tracesTo--> Provenance
InferenceRules := {
FullColumnRank ⇒ UniqueOLSParameterEstimate,
ZeroConditionalMean ⇒ OLSUnbiased,
GaussMarkovConditions ⇒ OLSIsBLUE,
ModelWithIntercept ⇒ TSS=ESS+RSS,
SimpleLinearRegressionWithIntercept ⇒ R²=PearsonCorrelation²,
Heteroscedasticity ⇒ ClassicalHomoscedasticStandardErrorsMayBeInvalid,
Endogeneity ⇒ OLSUnbiasednessFailsInGeneral,
LinearRegressionAssociation ↛ CausalEffect
}
CanonicalLinearRegressionRepresentation :=
ParseLinearRegressionRequest → ResolvePopulationSampleResponseAndPredictors
→ ResolveConditionalMeanTarget → ConstructDesignMatrix → ValidateRank
→ SelectOLSWeightedOrGeneralisedEstimator → EstimateCoefficients
→ ComputeFittedValuesAndResiduals → ComputeRSSAndR2
→ EstimateVarianceAndCoefficientCovariance → ComputeConfidenceIntervalsAndTests
→ ComputePredictionsAndPredictionIntervals → DiagnoseAssumptionsAndInfluence
→ ValidateLinearRegression
LinearRegressionGraph := G=(V,E)
V := {LinearRegressions,SimpleLinearRegressions,MultipleLinearRegressions,OrdinaryLeastSquaresModels,RegressionCoefficients,Intercepts,Slopes,DesignMatrices,FittedValues,Residuals,HatMatrices,Leverages,R2Measures,AdjustedR2Measures,StandardErrors,ConfidenceIntervals,Predictions,PredictionIntervals,WeightedLeastSquaresModels,GeneralisedLeastSquaresModels,RegularisedLinearRegressions,Diagnostics,Evidence,ProvenanceNodes}
E := {predicts,models,targets,computedFrom,estimates,hasCoefficient,hasIntercept,hasSlope,hasResidual,hasFittedValue,hasFitMeasure,hasUncertainty,diagnosedBy,transformedBy,adjustedFor,regularisedBy,constrainedBy,equivalentTo,tracesTo}
CONFIDENCE(LinearRegressionResolution) :=
weighted_mean(ResponseResolution,PredictorResolution,DesignMatrixValidity,
ConditionalMeanValidity,EstimatorValidity,RankValidity,ErrorStructureValidity,
SamplingDesignValidity,DiagnosticQuality,PredictiveValidation,ProvenanceQuality)
AI_QUERY_INTERPRETATION :=
Query → DetectLinearRegressionIntent → IdentifyPopulationSampleResponseAndPredictors
→ ResolveSimpleMultiplePredictionInferenceOrDiagnosticContext
→ IdentifyRequestedCoefficientsFitTestsIntervalsOrPredictions
→ ResolveSamplingDesignAndErrorStructure
AI_REASONING_FLOW :=
Query → ParseLinearRegressionProblem → ResolvePopulationAndSample
→ ResolveResponseAndPredictors → ResolveConditionalMeanTarget → ConstructDesignMatrix
→ ValidateFullRankOrResolveRankDeficiency → SelectEstimator → EstimateCoefficients
→ ComputeFittedValuesAndResiduals → ComputeFitMeasures
→ EstimateErrorVarianceAndCoefficientCovariance → ComputeStandardErrorsTestsAndConfidenceIntervals
→ ComputePredictionsAndPredictionIntervals
→ DiagnoseLinearityHeteroscedasticityDependenceMulticollinearityAndInfluence
→ EvaluateOutOfSamplePerformance → ValidateAssociationalOrCausalInterpretation
→ UpdateConfidence → PreserveProvenance → GenerateExplanation
AI_CONSUMPTION := {
ParseLinearRegressionEntities,ParseTypedRelations,ResolvePopulations,ResolveSamples,
ResolveResponses,ResolvePredictors,ConstructDesignMatrices,ValidateMatrixRank,
FitOrdinaryLeastSquares,FitWeightedLeastSquares,FitGeneralisedLeastSquares,
ComputeRegressionCoefficients,ComputeFittedValues,ComputeResiduals,ComputeRSS,
ComputeTSS,ComputeESS,ComputeR2,ComputeAdjustedR2,EstimateErrorVariance,
ComputeCoefficientCovariance,ComputeStandardErrors,ComputeTStatistics,ComputeFStatistics,
ComputePValues,ComputeConfidenceIntervals,ComputeMeanResponsePredictions,
ComputePredictionIntervals,DiagnoseLinearity,DiagnoseHeteroscedasticity,
DiagnoseDependence,DiagnoseMulticollinearity,ComputeLeverage,ComputeCookDistance,
FitRidgeLinearRegression,FitLassoLinearRegression,ExecuteCrossValidation,
ValidateLinearRegressionSemantics,CompareSemanticEquivalence,UpdateConfidence,
PreserveProvenance,GenerateFormalExplanation
}
UPDATE_MODEL :=
NewDataPredictorsDesignOrEvidence → ValidateInput → IdentifyAffectedLinearRegressionClaims
→ UpdateLinearRegressionState → ReconstructDesignMatrixIfRequired → RevalidateRank
→ ReestimateCoefficients → RecomputeFittedValuesResidualsAndFitMeasures
→ RecomputeVarianceStandardErrorsAndIntervals → RecomputePredictions
→ RerunDiagnosticsAndPredictiveValidation → RecomputeConfidence
→ PreserveProvenance → VersionModel
DataUpdate := ChangedObservedData ⇒ recompute(CoefficientEstimates,FittedValues,Residuals,RSS,R2,StandardErrors,ConfidenceIntervals,Predictions)
PredictorUpdate := ChangedPredictorSet ⇒ recompute(DesignMatrix,Rank,CoefficientEstimates,VIF,FitMeasures)
ErrorStructureUpdate := ChangedVarianceOrDependenceStructure ⇒ reevaluate(CovarianceEstimator,StandardErrors,TestStatistics,ConfidenceIntervals)
FLOW_HASH_INPUT := canonical(ONTOLOGY,CoreClasses,CoreRelations,InferenceRules,LinearRegression,LinearRegressionValidation,LinearRegressionConstraint,SEMANTIC_EQUIVALENCE,AI_REASONING_FLOW)
FLOW_HASH := HASH(FLOW_HASH_INPUT)
OUTPUT_MODEL := {
LinearRegressionEntityResolution,Population,Sample,Response,Predictors,DesignMatrix,
CoefficientEstimates,FittedValues,Residuals,RSS,TSS,ESS,R2,AdjustedR2,ErrorVariance,
StandardErrors,ConfidenceIntervals,TestStatistics,PValues,Predictions,PredictionIntervals,
SamplingDesign,DiagnosticStatus,PredictivePerformance,InterpretationStatus,
ValidationStatus,Confidence,Provenance,Explanation
}
END_FLOW
END OF FULL EXECUTABLE FLOW ALGEBRA
Download Code
Copy to Clipboard