FULL EXECUTABLE FLOW ALGEBRA — STATISTICAL VARIABLE ONTOLOGY
Kireth Research — Semantic Library
URL: https://kirethresearch.org/booksai-core/ontologies/probability-statistics-ontologies/statistical-foundations/statistical-variable-ontology.html
FLOW_VERSION := "4.0"
FLOW_TYPE := "Full Executable Flow Algebra"
DOMAIN := "Probability & Statistics Ontologies"
SUBDOMAIN := "Statistical Foundations"
ONTOLOGY := "Statistical Variable Ontology"
PRIMARY_ENTITY := StatisticalVariable
AUTHORSHIP := "Mark Higgins — Sky (Recursive AI)"
SOURCE_SITE := "https://kirethresearch.org"
BEGIN_FLOW
StatisticalVariable :=
DefinedCharacteristic
∧ StatisticalUnitDomain
∧ ValueDomain
∧ MeasurementSemantics
∧ DataType
∧ ObservationRelation
Variable :=
StatisticalVariable
VariableIdentity :=
VariableID
∧ VariableName
∧ SemanticDefinition
VariableID :=
UniqueIdentifier
for StatisticalVariable
VariableName :=
HumanReadableOrMachineReadableLabel
VariableDefinition :=
ExplicitMeaning
of measured_or_recorded characteristic
StatisticalUnit :=
Entity
on which Variable
is defined_or_observed
VariableDomain :=
SetOfStatisticalUnits
for which Variable
is meaningful
ValueDomain :=
SetOfPermittedOrPossibleValues
ObservedValue :=
RealisedValue
of Variable
for StatisticalUnit
ObservationRelation :=
StatisticalObservation
--observesVariable-->
StatisticalVariable
VariableType := {
CategoricalVariable,
QuantitativeVariable,
BinaryVariable,
DiscreteVariable,
ContinuousVariable,
NominalVariable,
OrdinalVariable
}
CategoricalVariable :=
Variable
whose values
represent categories
QuantitativeVariable :=
Variable
whose values
represent numerical quantities
BinaryVariable :=
CategoricalOrIndicatorVariable
with two states
DiscreteVariable :=
QuantitativeVariable
with countable value set
ContinuousVariable :=
QuantitativeVariable
with values
represented_on continuous scale
NominalVariable :=
CategoricalVariable
without intrinsic category order
OrdinalVariable :=
CategoricalVariable
with defined category ordering
CountVariable :=
DiscreteVariable
representing nonnegative counts
ProportionVariable :=
QuantitativeVariable
typically constrained_to
[0,1]
PercentageVariable :=
QuantitativeVariable
typically constrained_to
[0,100]
RateVariable :=
EventsOrQuantity
relative_to exposure_or_denominator
TimeVariable :=
Variable
representing time_point,
duration,
or interval
DateVariable :=
Variable
representing calendar date
IdentifierVariable :=
Variable
used_to identify
unit_or_record
IdentifierNotMeasurement :=
IdentifierVariable
generally not interpreted
as quantitative measurement
MeasurementScale := {
NominalScale,
OrdinalScale,
IntervalScale,
RatioScale
}
NominalScale :=
Values
distinguish categories
without ordering
OrdinalScale :=
Values
support ordering
without guaranteed equal intervals
IntervalScale :=
NumericScale
with meaningful differences
and arbitrary zero
RatioScale :=
NumericScale
with meaningful differences,
ratios,
and substantive zero
MeasurementUnit :=
Unit
associated_with
quantitative variable
UnitCompatibility :=
ObservedValueUnit
compatible_with
VariableMeasurementUnit
Dimension :=
PhysicalOrAbstractDimension
represented_by variable
VariableCoding :=
Mapping
between stored values
and semantic values
CategorySet :=
{c_1,...,c_k}
CategoryLabel :=
HumanReadableMeaning
of category code
CategoryCode :=
StoredRepresentation
of category
BinaryCoding := {
0_1,
False_True,
No_Yes,
CustomTwoCategoryCoding
}
ReferenceCategory :=
SelectedCategory
used_as baseline
in model_or_summary
OrderedCategorySet :=
c_1 < c_2 < ... < c_k
MissingValue :=
IntendedVariableValue
unavailable
MissingCode :=
StoredRepresentation
indicating missingness
MissingCodeConstraint :=
MissingCode
must_not be interpreted
as substantive value
AllowedValues :=
ExplicitSetOrRule
defining valid values
LowerBound :=
MinimumPermittedValue
UpperBound :=
MaximumPermittedValue
RangeConstraint :=
LowerBound≤Value≤UpperBound
CategoryConstraint :=
Value∈CategorySet
IntegerConstraint :=
Value∈Integers
NonnegativeConstraint :=
Value≥0
PositiveConstraint :=
Value>0
ProbabilityConstraint :=
0≤Value≤1
PercentageConstraint :=
0≤Value≤100
VariableConstraint :=
ConstraintOn(
Type,
Scale,
ValueDomain,
Unit,
Coding,
Missingness
)
RandomVariable :=
MeasurableFunction
from probability space
to value space
ObservedStatisticalVariable :=
Variable
with realised observations
in Dataset
ExplanatoryVariable :=
Variable
used_to explain_or_predict
another variable
PredictorVariable :=
ExplanatoryVariable
used_in predictive model
IndependentVariable :=
ContextDependentTerm
commonly referring_to predictor_or_manipulated variable
ResponseVariable :=
Variable
treated_as outcome
in statistical model
DependentVariable :=
ContextDependentTerm
commonly referring_to response variable
OutcomeVariable :=
Variable
representing study outcome
ExposureVariable :=
Variable
representing exposure_or_treatment
TreatmentVariable :=
Variable
indicating intervention assignment_or_level
ControlVariable :=
Variable
included_to account_for
other influences
Covariate :=
Variable
included_in statistical model
as predictor_or adjustment factor
Confounder :=
Variable
associated_with exposure_and_outcome
capable_of distorting target association
under causal context
Mediator :=
Variable
lying_on
causal pathway
under specified causal model
Moderator :=
Variable
modifying
relationship_or_effect
under specified model
InteractionVariable :=
ConstructedVariable
representing joint effect
of predictors
InteractionTerm :=
X_1×X_2
or other specified combination
GroupingVariable :=
Variable
defining groups_or_strata
StratificationVariable :=
Variable
used_to partition
population_or_sample
into strata
ClusterVariable :=
Variable
identifying cluster membership
WeightVariable :=
Variable
storing statistical weights
FrequencyWeightVariable :=
WeightVariable
representing repeated equivalent observations
SamplingWeightVariable :=
WeightVariable
representing sampling design weight
TimeIndexVariable :=
Variable
ordering observations
through time
PanelIdentifier :=
IdentifierVariable
linking repeated observations
to same unit
LatentVariable :=
UnobservedVariable
inferred_from
observed indicators_or_model
ObservedVariable :=
Variable
directly recorded
in dataset
DerivedVariable :=
Variable
computed_from
one_or_more source variables
DerivedVariableRule :=
Y
=
g(X_1,...,X_p)
Transformation :=
Variable
→ TransformedVariable
LogTransformation :=
Y=log(X)
where domain valid
SquareRootTransformation :=
Y=sqrt(X)
where X≥0
PowerTransformation :=
Y=X^a
under valid domain
Standardisation :=
Z
=
(X-Centre)/Scale
ZScoreTransformation :=
Z
=
(X-Mean)/StandardDeviation
MinMaxScaling :=
Y
=
(X-Min)/(Max-Min)
where Max>Min
Normalisation :=
Rescaling
under specified rule
Binning :=
QuantitativeVariable
→ CategoricalVariable
using intervals
Dichotomisation :=
Variable
→ BinaryVariable
using threshold_or_rule
OneHotEncoding :=
CategoricalVariable
→ SetOfBinaryIndicators
DummyVariable :=
BinaryIndicator
for category membership
VariableAggregation :=
MultipleVariablesOrObservations
→ SummaryVariable
CompositeVariable :=
Variable
constructed_from
multiple component variables
IndexVariable :=
CompositeVariable
representing combined score_or_measure
ScoreVariable :=
NumericVariable
generated_by scoring rule
VariableDistribution :=
ProbabilityOrEmpiricalDistribution
of Variable
MarginalDistribution :=
DistributionOfVariable
without conditioning_on others
ConditionalDistribution :=
DistributionOfVariable
given specified variables_or_conditions
JointDistribution :=
Distribution
over multiple variables
Expectation :=
E[X]
Variance :=
Var(X)
StandardDeviation :=
sqrt(Var(X))
Covariance :=
Cov(X,Y)
Correlation :=
Corr(X,Y)
Association :=
StatisticalRelationship
between variables
Independence :=
JointDistribution
factorises
into marginal distributions
ConditionalIndependence :=
X⟂Y | Z
VariableRelationship := {
Association,
Dependence,
Independence,
ConditionalIndependence,
Correlation,
CausalRelation
}
CorrelationDoesNotImplyCausation :=
Correlation
↛ CausalRelation
CausalVariableRole :=
Role
defined_under
explicit causal model
VariableSelection :=
CandidateVariables
→ SelectVariables
according_to analysis goal
and method
FeatureSelection :=
PredictorVariables
→ SelectedPredictorSubset
FeatureEngineering :=
SourceVariables
→ DerivedPredictiveVariables
Multicollinearity :=
StrongLinearRelationship
among predictor variables
RedundantVariable :=
Variable
duplicating_or_nearly duplicating
information in another variable
ConstantVariable :=
Variable
with same observed value
across selected dataset
NearConstantVariable :=
Variable
with very low observed variability
VariableMissingness :=
MissingValues
associated_with Variable
VariableMissingRate :=
MissingCountForVariable
/
ExpectedObservationCount
VariableQuality := {
Completeness,
Validity,
Consistency,
Accuracy,
Resolution,
Provenance
}
VariableMetadata := {
VariableID,
Name,
Definition,
Type,
MeasurementScale,
Unit,
Coding,
AllowedValues,
MissingCodes,
Source,
Version
}
DataDictionaryEntry :=
Variable
→ VariableMetadata
VariableProvenance :=
Source
∧ MeasurementMethod
∧ TransformationHistory
∧ Version
VariableLineage :=
SourceVariable(s)
→ Transformation(s)
→ DerivedVariable
VariableVersion :=
VersionedDefinition
of StatisticalVariable
VariableUpdate :=
ChangedDefinition
∨ ChangedCoding
∨ ChangedUnit
∨ ChangedTransformation
→ NewVariableVersion
VariableConsistency :=
Definition
∧ Type
∧ MeasurementScale
∧ ValueDomain
∧ Unit
∧ Coding
jointly_compatible
InvalidVariableDefinition :=
AmbiguousMeaning
∨ TypeScaleMismatch
∨ UnitMismatch
∨ InvalidValueDomain
∨ ConflictingCoding
∨ UndocumentedTransformation
VariableValidation :=
ResolveVariableIdentity
→ ResolveDefinition
→ ResolveVariableType
→ ResolveMeasurementScale
→ ResolveValueDomain
→ ResolveUnit
→ ResolveCoding
→ ResolveMissingCodes
→ ResolveRole
→ ResolveProvenance
→ ValidateConsistency
StatisticalVariableState := {
VariableID,
Name,
Definition,
StatisticalUnitDomain,
VariableType,
MeasurementScale,
ValueDomain,
MeasurementUnit,
Coding,
Missingness,
StatisticalRole,
Distribution,
Relationships,
Evidence,
Confidence,
Provenance
}
SEMANTIC_EQUIVALENCE(VariableA,VariableB) :=
same(ConceptualMeaning)
∧ same(UnitDomain)
∧ equivalent(ValueDomain)
∧ equivalent(MeasurementScale)
∧ compatible(UnitAndCoding)
under specified analytical scope
StatisticalVariableOntology :=
Classes
∧ Relations
∧ Constraints
∧ Axioms
∧ InferenceRules
CoreClasses := {
StatisticalVariable,
CategoricalVariable,
QuantitativeVariable,
BinaryVariable,
DiscreteVariable,
ContinuousVariable,
NominalVariable,
OrdinalVariable,
PredictorVariable,
ResponseVariable,
Covariate,
GroupingVariable,
LatentVariable,
DerivedVariable,
MeasurementScale,
ValueDomain,
VariableMetadata,
VariableProvenance
}
CoreRelations := {
definedOn,
observedBy,
hasType,
hasScale,
hasValueDomain,
measuredIn,
encodedBy,
hasRole,
derivedFrom,
transformedBy,
associatedWith,
conditionedOn,
independentOf,
constrainedBy,
equivalentTo,
tracesTo
}
TypedRelations :=
StatisticalVariable --definedOn--> StatisticalUnit
StatisticalObservation --observesVariable--> StatisticalVariable
StatisticalVariable --hasType--> VariableType
StatisticalVariable --hasScale--> MeasurementScale
StatisticalVariable --hasValueDomain--> ValueDomain
QuantitativeVariable --measuredIn--> MeasurementUnit
CategoricalVariable --encodedBy--> VariableCoding
StatisticalVariable --hasRole--> StatisticalRole
DerivedVariable --derivedFrom--> StatisticalVariable
StatisticalVariable --transformedBy--> Transformation
StatisticalVariable --associatedWith--> StatisticalVariable
ConditionalDistribution --conditionedOn--> StatisticalVariable
StatisticalVariable --independentOf--> StatisticalVariable
StatisticalVariable --tracesTo--> VariableProvenance
InferenceRules := {
NominalVariable(V)
⇒
CategoricalVariable(V),
OrdinalVariable(V)
⇒
CategoricalVariable(V)
∧ OrderedCategories(V),
ContinuousVariable(V)
⇒
QuantitativeVariable(V),
DiscreteVariable(V)
⇒
QuantitativeVariable(V),
BinaryVariable(V)
⇒
Cardinality(ValueDomain(V))=2,
ProbabilityVariable(V)
⇒
0≤Value(V)≤1,
DerivedVariable(Y)
∧ Y=g(X)
⇒
PreserveLineage(Y,X),
Correlation(X,Y)
↛
Causation(X,Y),
VariableConstraintViolation(V)
⇒
FlagVariableQualityRisk(V)
}
CanonicalVariableRepresentation :=
ParseVariable
→ ResolveVariableIdentity
→ ResolveDefinition
→ ResolveStatisticalUnitDomain
→ ClassifyVariableType
→ ResolveMeasurementScale
→ ResolveValueDomain
→ ResolveMeasurementUnit
→ ResolveCodingAndMissingness
→ ResolveStatisticalRole
→ ResolveDistributionAndRelationships
→ ResolveProvenance
→ ValidateVariable
VariableGraph :=
G=(V,E)
V := {
StatisticalVariables,
StatisticalUnits,
VariableTypes,
MeasurementScales,
ValueDomains,
MeasurementUnits,
CodingSchemes,
StatisticalRoles,
Transformations,
DerivedVariables,
Distributions,
Relationships,
MetadataNodes,
ProvenanceNodes
}
E := {
definedOn,
observedBy,
hasType,
hasScale,
hasValueDomain,
measuredIn,
encodedBy,
hasRole,
derivedFrom,
transformedBy,
associatedWith,
conditionedOn,
independentOf,
constrainedBy,
equivalentTo,
tracesTo
}
CONFIDENCE(VariableResolution) :=
weighted_mean(
VariableIdentityResolution,
SemanticDefinitionQuality,
VariableTypeResolution,
MeasurementScaleResolution,
ValueDomainValidity,
UnitAndCodingConsistency,
StatisticalRoleResolution,
ProvenanceQuality
)
AI_QUERY_INTERPRETATION :=
Query
→ DetectStatisticalVariableIntent
→ IdentifyVariableAndUnitDomain
→ ResolveVariableTypeAndScale
→ ResolveValueDomainUnitAndCoding
→ IdentifyRequestedSummaryTransformationRelationshipOrRole
AI_REASONING_FLOW :=
Query
→ ParseVariableProblem
→ ResolveVariableIdentity
→ ResolveSemanticDefinition
→ ResolveStatisticalUnitDomain
→ ClassifyVariableType
→ ResolveMeasurementScale
→ ResolveValueDomain
→ ValidateUnitsAndCoding
→ ResolveMissingness
→ ResolveStatisticalRole
→ ResolveDistribution
→ ResolveVariableRelationships
→ ResolveTransformationAndLineage
→ ValidateVariable
→ UpdateConfidence
→ PreserveProvenance
→ GenerateExplanation
AI_CONSUMPTION := {
ParseStatisticalVariableEntities,
ParseTypedRelations,
ResolveVariableIdentities,
ResolveVariableDefinitions,
ResolveStatisticalUnitDomains,
ClassifyVariableTypes,
ResolveMeasurementScales,
ResolveValueDomains,
ResolveMeasurementUnits,
ResolveCategoryCodings,
ResolveMissingCodes,
ResolveStatisticalRoles,
ResolveVariableDistributions,
ResolveVariableAssociations,
ResolveConditionalRelationships,
ResolveIndependenceRelations,
ResolveTransformations,
ResolveDerivedVariables,
ResolveVariableLineage,
ValidateVariableConstraints,
CompareSemanticEquivalence,
UpdateConfidence,
PreserveProvenance,
GenerateFormalExplanation
}
UPDATE_MODEL :=
NewDefinitionTypeScaleUnitCodingRoleOrEvidence
→ ValidateInput
→ IdentifyAffectedVariableClaims
→ UpdateStatisticalVariableState
→ ReclassifyVariableTypeIfRequired
→ RevalidateMeasurementScale
→ RevalidateValueDomainAndUnits
→ RecomputeDerivedVariables
→ ReevaluateRelationships
→ RecomputeConfidence
→ PreserveProvenance
→ VersionModel
DefinitionUpdate :=
ChangedSemanticDefinition
⇒ reevaluate(
VariableType,
MeasurementScale,
StatisticalRole,
SemanticEquivalence
)
CodingUpdate :=
ChangedCategoryOrMissingCoding
⇒ revalidate(
AllowedValues,
Missingness,
DerivedStatistics
)
UnitUpdate :=
ChangedMeasurementUnit
⇒ revalidate(
ValueDomain,
Transformations,
CrossDatasetCompatibility
)
FLOW_HASH_INPUT :=
canonical(
ONTOLOGY,
CoreClasses,
CoreRelations,
InferenceRules,
StatisticalVariable,
VariableValidation,
VariableProvenance,
SEMANTIC_EQUIVALENCE,
AI_REASONING_FLOW
)
FLOW_HASH :=
HASH(FLOW_HASH_INPUT)
OUTPUT_MODEL := {
StatisticalVariableEntityResolution,
VariableID,
VariableName,
VariableDefinition,
StatisticalUnitDomain,
VariableType,
MeasurementScale,
ValueDomain,
MeasurementUnit,
Coding,
Missingness,
StatisticalRole,
Distribution,
Relationships,
TransformationLineage,
ValidationStatus,
Confidence,
Provenance,
Explanation
}
END_FLOW
END OF FULL EXECUTABLE FLOW ALGEBRA
Download Code
Copy to Clipboard