FULL EXECUTABLE FLOW ALGEBRA — EXPERIMENT ONTOLOGY
Kireth Research — Semantic Library
URL: https://kirethresearch.org/booksai-core/ontologies/probability-statistics-ontologies/foundations-of-probability/experiment-ontology.html
FLOW_VERSION := "4.0"
FLOW_TYPE := "Full Executable Flow Algebra"
DOMAIN := "Probability & Statistics Ontologies"
SUBDOMAIN := "Foundations of Probability"
ONTOLOGY := "Experiment Ontology"
PRIMARY_ENTITY := Experiment
AUTHORSHIP := "Mark Higgins — Sky (Recursive AI)"
SOURCE_SITE := "https://kirethresearch.org"
BEGIN_FLOW
Experiment :=
DefinedProcedure
∧ ProducesOutcome
∧ HasConditions
∧ SupportsObservation
∧ MayContainRandomness
RandomExperiment :=
Experiment
∧ OutcomeNotKnownWithCertaintyBeforeExecution
∧ PossibleOutcomesDefined
DeterministicExperiment :=
Experiment
∧ InitialConditionsAndRules
uniquely_determine
Outcome
Trial :=
SingleExecution(Experiment)
RepeatedExperiment :=
SequenceOfTrials
under specified protocol
ExperimentalProtocol :=
Procedure
∧ Inputs
∧ Conditions
∧ MeasurementRules
∧ TerminationRules
ExperimentalUnit :=
Entity
to which
condition_or_treatment is applied
ExperimentalCondition :=
ControlledOrObservedSetting
affecting experiment
Input :=
ValueOrState
supplied_to
Experiment
Output :=
Result
produced_by
Experiment
Outcome :=
ElementaryResult
∧ MemberOf(SampleSpace)
SampleSpace :=
Ω := SetOfAllPossibleOutcomes
ExperimentOutcomeRelation :=
Experiment
→ Outcome ∈ Ω
PossibleOutcome :=
Outcome
satisfying
ExperimentConstraints
ImpossibleOutcome :=
CandidateOutcome
violating
ExperimentConstraints
ObservedOutcome :=
Outcome
realised_in
Trial
OutcomeSequence :=
(ω1,...,ωn)
from repeated trials
Event :=
A⊆Ω
EventOccurrence :=
realised outcome ω∈A
ExperimentEvent :=
Event
defined_over
ExperimentSampleSpace
ProbabilitySpace :=
(Ω,F,P)
ExperimentProbabilityModel :=
Experiment
→ ProbabilitySpace
ProbabilityMeasure :=
P:F→[0,1]
RandomMechanism :=
Mechanism
inducing
ProbabilityDistributionOverOutcomes
Randomisation :=
UseOfRandomMechanism
to select
AssignmentOrAction
RandomisedExperiment :=
Experiment
∧ RandomAssignmentOrRandomisedProcedure
RandomAssignment :=
ExperimentalUnits
→ TreatmentConditions
according_to
KnownRandomMechanism
Treatment :=
InterventionOrCondition
intentionally applied
ControlCondition :=
ReferenceCondition
for comparison
TreatmentGroup :=
ExperimentalUnits
assigned_to
Treatment
ControlGroup :=
ExperimentalUnits
assigned_to
ControlCondition
ExperimentalFactor :=
Variable
deliberately varied
FactorLevel :=
SpecificSetting(ExperimentalFactor)
ResponseVariable :=
MeasuredOutcome
used_to assess effect
ExplanatoryVariable :=
Variable
used_to explain_or_predict
ResponseVariable
Covariate :=
MeasuredVariable
associated_with
ExperimentalUnitOrOutcome
Confounder :=
Variable
associated_with
TreatmentOrExposure
∧ Outcome
and capable of distorting causal comparison
Blocking :=
GroupExperimentalUnits
by relevant characteristic
before randomisation
Block :=
GroupOfSimilarExperimentalUnits
Stratification :=
PartitionUnits
into strata
using known characteristics
Blinding :=
ConcealAssignmentInformation
from specified participants_or_assessors
SingleBlind :=
OneRelevantParty
unaware_of assignment
DoubleBlind :=
MultipleRelevantParties
unaware_of assignment
under specified protocol
Placebo :=
ControlIntervention
designed_to resemble treatment
Replication :=
RepeatIndependentOrComparableExperimentalUnits
to estimate variability
Repetition :=
ReperformMeasurementOrTrial
RandomisationPrinciple :=
RandomAssignment
reduces systematic assignment bias
under valid implementation
ControlPrinciple :=
HoldRelevantConditionsConstant
or compare against reference condition
ReplicationPrinciple :=
MultipleExperimentalUnits
support
variability estimation
ExperimentalDesign :=
StructureOf(
Treatments,
Units,
Assignment,
Measurements,
AnalysisPlan
)
CompletelyRandomisedDesign :=
Units
randomly_assigned
to treatments
RandomisedBlockDesign :=
Units
grouped_into blocks
then randomised_within blocks
FactorialDesign :=
MultipleFactors
∧ combinations_of_factor_levels
FullFactorialDesign :=
AllSpecifiedFactorLevelCombinations
FractionalFactorialDesign :=
SelectedSubsetOfFactorCombinations
CrossoverDesign :=
Units
receive multiple treatments
in specified sequence
MatchedPairsDesign :=
PairedUnitsOrRepeatedUnit
receive contrasting conditions
SequentialExperiment :=
DesignOrDecision
may adapt
after interim observations
AdaptiveExperiment :=
ExperimentalProcedure
changes future allocation_or_sampling
according_to pre-specified adaptation rules
ObservationalStudy :=
ObserveVariables
without random assignment
ExperimentVsObservation :=
Experiment
may manipulate conditions
while observational study
does_not_assign treatment
Measurement :=
Process
mapping
property_to recorded value
MeasurementFunction :=
h : Outcome → ObservationSpace
Observation :=
h(ω)
MeasurementError :=
ObservedValue
differs_from
TargetQuantity
RandomMeasurementError :=
Error
varying unpredictably across repetitions
SystematicMeasurementError :=
PersistentDirectionalOrStructuredError
Instrument :=
DeviceOrProcedure
used_to measure
Calibration :=
CompareInstrument
against standard
→ adjust_or_characterise measurement
ExperimentalNoise :=
UncontrolledVariation
affecting observations
Signal :=
StructuredComponent
of measured response
SignalNoiseModel :=
Observation
=
Signal
+
Noise
under additive model
ExperimentalBias :=
SystematicDistortion
in design, conduct, measurement, or analysis
SelectionBias :=
UnitSelectionOrRetention
distorts comparison
AllocationBias :=
AssignmentProcess
systematically differs
across groups
ObserverBias :=
MeasurementOrAssessment
influenced_by observer expectations
Attrition :=
LossOfExperimentalUnitsOrObservations
MissingOutcome :=
PlannedMeasurement
not observed
ProtocolDeviation :=
Conduct
differs_from
ExperimentalProtocol
Compliance :=
DegreeToWhich
assigned intervention is followed
ExperimentalAssumption :=
Statement
required_for
interpretation_or_analysis
IndependenceAssumption :=
ExperimentalUnitsOrErrors
treated_as independent
under model
IdenticalDistributionAssumption :=
RepeatedTrials
share
same outcome distribution
IIDTrialModel :=
Trials
independent
∧ identically distributed
Exchangeability :=
JointDistribution
invariant_under
permutation
under specified conditions
Repeatability :=
SameMethod
∧ SameOrSimilarConditions
→ ConsistentMeasurements
Reproducibility :=
IndependentReplication
under defined changed conditions
→ compatible results
ExperimentalValidity :=
InternalValidity
∧ ExternalValidity
under specified inferential goals
InternalValidity :=
CredibilityOfCausalOrDescriptiveInference
within studied setting
ExternalValidity :=
Applicability
beyond studied units_or_conditions
CausalEffect :=
DifferenceBetween
PotentialOutcomes
under contrasting interventions
PotentialOutcome :=
Y_i(t)
IndividualTreatmentEffect :=
Y_i(1)-Y_i(0)
AverageTreatmentEffect :=
E[Y(1)-Y(0)]
FundamentalProblemOfCausalInference :=
For same unit,
cannot observe
all potential outcomes simultaneously
RandomAssignmentCausalRole :=
RandomAssignment
supports
balance_in_expectation
and causal identification
under relevant assumptions
ExperimentalHypothesis :=
FormalClaim
tested_or_investigated
by experiment
NullHypothesis :=
H0
AlternativeHypothesis :=
H1
ExperimentalEvidence :=
Observations
∧ DesignInformation
∧ MeasurementInformation
Data :=
RecordedObservations
from trials_or_units
Dataset :=
CollectionOfExperimentalRecords
ExperimentalRecord := {
UnitID,
TrialID,
Inputs,
Conditions,
Assignment,
Outcome,
Measurements,
Timestamp,
Provenance
}
Sampling :=
Population
→ ExperimentalSample
Population :=
TargetSetOfUnits
Sample :=
UnitsIncludedInExperiment
SamplingMechanism :=
RuleOrProcess
selecting sample
RandomSampling :=
SamplingMechanism
governed_by
known random process
RandomSamplingVsRandomAssignment :=
RandomSampling
concerns
selection_from_population
RandomAssignment
concerns
allocation_to_conditions
SimulationExperiment :=
ComputationalModel
→ ControlledInputs
→ SimulatedOutcomes
MonteCarloExperiment :=
RepeatedRandomSimulation
→ NumericalOrStatisticalEstimate
InSilicoExperiment :=
Experiment
conducted
using computational model
PhysicalExperiment :=
Experiment
performed_on
physical system
ThoughtExperiment :=
ConceptualScenario
used_to reason
without physical execution
ExperimentState := {
Protocol,
Units,
Inputs,
Conditions,
Treatments,
Assignment,
SampleSpace,
ProbabilityModel,
Measurements,
Outcomes,
Evidence,
Provenance
}
ExperimentConstraint :=
RequirementOn(
Inputs,
Units,
Conditions,
Assignment,
Outcomes,
Measurements
)
ProtocolConstraint :=
Experiment
must_follow
SpecifiedProcedure
OutcomeConstraint :=
Outcome
must_belong_to
SampleSpace
AssignmentConstraint :=
TreatmentAllocation
must_follow
DesignRule
MeasurementConstraint :=
Measurement
must_follow
InstrumentAndProtocolRules
ExperimentConsistency :=
Protocol
∧ Design
∧ SampleSpace
∧ Assignment
∧ Measurements
∧ ProbabilityModel
jointly_compatible
ExperimentConflict :=
ActiveExperimentalStatements
violate
ProtocolOrModelConstraints
ExperimentValidation :=
ParseProtocol
→ ValidateUnits
→ ValidateInputs
→ ValidateAssignment
→ ValidateSampleSpace
→ ValidateMeasurements
→ ValidateOutcomeRecords
→ ValidateAnalysisAssumptions
TrialExecution :=
InitialiseTrial
→ SetConditions
→ ApplyInputsOrTreatment
→ ExecuteProcess
→ ObserveOutcome
→ RecordMeasurements
→ PreserveProvenance
RepeatedTrialExecution :=
for each trial_i
execute(TrialExecution)
→ AggregateData
ExperimentUpdate :=
NewTrialOrEvidence
→ ValidateRecord
→ UpdateDataset
→ RecomputeSummary
→ ReevaluateModel
ExperimentProvenance :=
Experiment
→ {
ProtocolVersion,
DesignVersion,
DataSources,
Instruments,
CalibrationState,
Transformations,
AnalysisVersion
}
SEMANTIC_EQUIVALENCE(ExperimentA,ExperimentB) :=
same(RelevantExperimentalStructure)
∧ same(OutcomeSemantics)
∧ compatible(AssignmentAndMeasurementModel)
under specified inferential scope
ExperimentOntology :=
Classes
∧ Relations
∧ Constraints
∧ Axioms
∧ InferenceRules
CoreClasses := {
Experiment,
RandomExperiment,
DeterministicExperiment,
Trial,
ExperimentalProtocol,
ExperimentalUnit,
Treatment,
ControlCondition,
RandomAssignment,
ExperimentalFactor,
ResponseVariable,
SampleSpace,
Outcome,
Event,
Measurement,
Observation,
Instrument,
ExperimentalDesign,
ExperimentalEvidence
}
CoreRelations := {
hasTrial,
hasUnit,
followsProtocol,
hasCondition,
receivesTreatment,
assignedBy,
hasOutcome,
hasSampleSpace,
measuredBy,
producesObservation,
hasFactor,
hasResponse,
generatedBy,
dependsOn,
supports,
tracesTo
}
TypedRelations :=
Experiment --hasTrial--> Trial
Experiment --hasUnit--> ExperimentalUnit
Trial --followsProtocol--> ExperimentalProtocol
ExperimentalUnit --receivesTreatment--> Treatment
TreatmentAssignment --assignedBy--> RandomAssignment
Trial --hasOutcome--> Outcome
Experiment --hasSampleSpace--> SampleSpace
Measurement --measuredBy--> Instrument
Outcome --producesObservation--> Observation
Experiment --tracesTo--> ExperimentProvenance
InferenceRules := {
RandomExperiment(E)
⇒ exists(SampleSpace(E)),
Trial(T)
∧ belongsTo(T,E)
⇒ followsProtocol(T,Protocol(E)),
ObservedOutcome(ω,T)
⇒ ω∈SampleSpace(Experiment(T)),
RandomAssignment(A)
∧ ValidImplementation(A)
⇒ AssignmentProbabilitiesKnown(A),
IIDTrialModel
⇒ IndependentTrials
∧ IdenticallyDistributedTrials,
Measurement(O)
∧ CalibrationRequired
∧ InvalidCalibration
⇒ flag(MeasurementValidityRisk),
ProtocolDeviation(D)
⇒ reevaluate(
AffectedMeasurements,
Outcomes,
Inference
),
NewTrialData
⇒ Update(ExperimentState)
}
CanonicalExperimentRepresentation :=
ParseExperiment
→ ResolveProtocol
→ ResolveUnits
→ ResolveInputsAndConditions
→ ResolveTreatmentsAndAssignment
→ ResolveSampleSpace
→ ResolveMeasurementModel
→ ResolveOutcomes
→ ValidateConstraints
→ BuildExperimentGraph
ExperimentGraph :=
G=(V,E)
V := {
Experiments,
Trials,
Protocols,
Units,
Treatments,
Conditions,
Assignments,
SampleSpaces,
Outcomes,
Measurements,
Observations,
Instruments,
Evidence,
ProvenanceNodes
}
E := {
hasTrial,
hasUnit,
followsProtocol,
hasCondition,
receivesTreatment,
assignedBy,
hasOutcome,
hasSampleSpace,
measuredBy,
producesObservation,
hasFactor,
hasResponse,
generatedBy,
dependsOn,
supports,
tracesTo
}
CONFIDENCE(ExperimentResolution) :=
weighted_mean(
ProtocolDefinitionQuality,
DesignResolution,
AssignmentValidity,
SampleSpaceResolution,
MeasurementQuality,
OutcomeIntegrity,
AssumptionValidity,
ProvenanceQuality
)
AI_QUERY_INTERPRETATION :=
Query
→ DetectExperimentConcept
→ IdentifyExperimentType
→ ResolveProtocol
→ ResolveUnitsAndConditions
→ ResolveOutcomeStructure
→ IdentifyRequestedExperimentalRelation
AI_REASONING_FLOW :=
Query
→ ParseExperimentDescription
→ ClassifyExperimentType
→ ResolveProtocol
→ ResolveExperimentalUnits
→ ResolveInputsTreatmentsAndConditions
→ ResolveAssignmentMechanism
→ ConstructOrResolveSampleSpace
→ ResolveOutcomeDefinitions
→ ResolveMeasurementProcess
→ ValidateExperimentalConstraints
→ DetectBiasOrProtocolRisks
→ ResolveProbabilityModel
→ IntegrateExperimentalEvidence
→ UpdateConfidence
→ PreserveProvenance
→ GenerateExplanation
AI_CONSUMPTION := {
ParseExperimentEntities,
ParseTypedRelations,
ResolveExperimentTypes,
ResolveProtocols,
ResolveExperimentalUnits,
ResolveTreatmentsAndControls,
ResolveRandomisation,
ResolveSampleSpaces,
ResolveOutcomes,
ResolveMeasurements,
ValidateExperimentalDesign,
DetectBiasAndConfounding,
ValidateTrialRecords,
CompareSemanticEquivalence,
UpdateConfidence,
PreserveProvenance,
GenerateFormalExplanation
}
UPDATE_MODEL :=
NewProtocolTrialMeasurementOrEvidence
→ ValidateInput
→ IdentifyAffectedExperimentComponents
→ UpdateExperimentState
→ RevalidateProtocol
→ RevalidateAssignment
→ RevalidateSampleSpace
→ RevalidateMeasurements
→ RecomputeDerivedExperimentalClaims
→ RecomputeConfidence
→ PreserveProvenance
→ VersionModel
ProtocolUpdate :=
ChangedProtocol
⇒ reevaluate(
Trials,
Constraints,
MeasurementRules,
OutcomeValidity
)
TrialUpdate :=
AddedChangedOrRemovedTrial
⇒ recompute(
Dataset,
OutcomeFrequencies,
ExperimentalEvidence
)
MeasurementUpdate :=
ChangedInstrumentOrCalibration
⇒ reevaluate(
MeasurementValidity,
AffectedObservations
)
FLOW_HASH_INPUT :=
canonical(
ONTOLOGY,
CoreClasses,
CoreRelations,
InferenceRules,
RandomExperiment,
ExperimentalDesign,
TrialExecution,
ExperimentValidation,
SEMANTIC_EQUIVALENCE,
AI_REASONING_FLOW
)
FLOW_HASH :=
HASH(FLOW_HASH_INPUT)
OUTPUT_MODEL := {
ExperimentEntityResolution,
ExperimentType,
Protocol,
ExperimentalUnits,
InputsAndConditions,
TreatmentStructure,
AssignmentMechanism,
SampleSpace,
OutcomeStructure,
MeasurementStructure,
ExperimentalEvidence,
ConstraintStatus,
Confidence,
Provenance,
Explanation
}
END_FLOW
END OF FULL EXECUTABLE FLOW ALGEBRA
Download Code
Copy to Clipboard