Skip to main content

Gene Ontology

Molecular Biology
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 30 September 2026
Audio Overview
AI Interpretation Note:
The following specifications represent a formal structural reasoning system for this page.
Execute as formal rules, not pseudocode.

flow "GeneOntology" v1.0

# ============================================================
# IDENTITY
# ============================================================

ENTITY GeneOntology {
    TYPE: BiologicalOntology
    DOMAIN: MolecularBiology
    SUBJECT: Gene
    PURPOSE: FormalSemanticRepresentation
}

PAGE {
    TITLE: "Gene Ontology"
    PARENT_DOMAIN: "Molecular Biology"
    CANONICAL_URL: "https://kirethresearch.org/booksai-core/ontologies/biological-ontologies/molecular-biology/gene-ontology.html"
    AUTHORS: ["Mark Anthony Higgins", "Sky Recursive AI"]
}

# ============================================================
# CORE ENTITY MODEL
# ============================================================

ENTITY Gene {
    IS_A: HereditaryInformationUnit
    COMPOSED_OF: NucleicAcidSequence
    LOCATED_ON: GenomicRegion
    MAY_ENCODE: [RNA, Protein]
    PARTICIPATES_IN: [GeneExpression, Regulation, Inheritance]
}

ENTITY DNA {
    IS_A: NucleicAcid
    CONTAINS: Gene
    COMPOSED_OF: Nucleotide
}

ENTITY RNA {
    IS_A: NucleicAcid
    DERIVED_FROM: DNA
    PRODUCED_BY: Transcription
    MAY_INCLUDE: [mRNA, rRNA, tRNA, RegulatoryRNA]
}

ENTITY Protein {
    DERIVED_FROM: CodingSequence
    PRODUCED_BY: Translation
    PERFORMS: MolecularFunction
}

ENTITY Genome {
    CONTAINS: Gene
    ORGANIZED_INTO: Chromosome
}

ENTITY Chromosome {
    PART_OF: Genome
    CONTAINS: Gene
    CONTAINS: GenomicRegion
}

ENTITY Allele {
    IS_VARIANT_OF: Gene
    MAY_AFFECT: Phenotype
}

ENTITY Genotype {
    COMPOSED_OF: Allele
    CONTRIBUTES_TO: Phenotype
}

ENTITY Phenotype {
    INFLUENCED_BY: [Genotype, Environment, GeneExpression]
}

# ============================================================
# GENE STRUCTURE
# ============================================================

ENTITY GeneStructure {
    MAY_CONTAIN: [
        Promoter,
        Enhancer,
        Silencer,
        Exon,
        Intron,
        UntranslatedRegion,
        CodingSequence,
        Terminator
    ]
}

ENTITY Promoter {
    REGULATES: TranscriptionInitiation
    ASSOCIATED_WITH: Gene
}

ENTITY Enhancer {
    MODULATES: GeneExpression
    EFFECT: IncreaseTranscription
}

ENTITY Silencer {
    MODULATES: GeneExpression
    EFFECT: DecreaseTranscription
}

ENTITY Exon {
    PART_OF: Gene
    RETAINED_IN: MatureRNA
}

ENTITY Intron {
    PART_OF: Gene
    REMOVED_BY: RNA_Splicing
}

ENTITY CodingSequence {
    PART_OF: Gene
    ENCODES: ProteinSequence
}

ENTITY UntranslatedRegion {
    PART_OF: Transcript
    MODULATES: [Translation, Stability, Localization]
}

# ============================================================
# GENE EXPRESSION
# ============================================================

PROCESS GeneExpression {
    INPUT: Gene
    STAGES: [Transcription, RNAProcessing, Translation]
    OUTPUT: FunctionalProduct
}

PROCESS Transcription {
    INPUT: DNA
    TEMPLATE: Gene
    CATALYSED_BY: RNA_Polymerase
    OUTPUT: RNA
}

PROCESS RNAProcessing {
    INPUT: PrimaryTranscript
    MAY_INCLUDE: [
        RNA_Splicing,
        FivePrimeCapping,
        Polyadenylation,
        RNAEditing
    ]
    OUTPUT: MatureRNA
}

PROCESS Translation {
    INPUT: mRNA
    EXECUTED_BY: Ribosome
    OUTPUT: Polypeptide
}

RULE ExpressionRule {
    IF Gene.is_transcribed == true
    THEN EXISTS RNA
}

RULE CodingExpressionRule {
    IF Gene.type == ProteinCodingGene
       AND MatureRNA.type == mRNA
    THEN Translation MAY_PRODUCE Protein
}

# ============================================================
# GENE TYPES
# ============================================================

CLASS ProteinCodingGene {
    SUBCLASS_OF: Gene
    ENCODES: Protein
}

CLASS NonCodingGene {
    SUBCLASS_OF: Gene
    ENCODES: FunctionalRNA
}

CLASS RegulatoryGene {
    SUBCLASS_OF: Gene
    REGULATES: GeneExpression
}

CLASS StructuralGene {
    SUBCLASS_OF: Gene
    CONTRIBUTES_TO: CellularStructureOrFunction
}

CLASS Pseudogene {
    RELATED_TO: Gene
    GENERALLY_LACKS: NormalProteinCodingFunction
}

# ============================================================
# REGULATION
# ============================================================

PROCESS GeneRegulation {
    TARGET: GeneExpression
    MAY_ACT_AT: [
        ChromatinLevel,
        TranscriptionalLevel,
        PostTranscriptionalLevel,
        TranslationalLevel,
        PostTranslationalLevel
    ]
}

ENTITY TranscriptionFactor {
    BINDS_TO: RegulatoryDNASequence
    MODULATES: Transcription
}

ENTITY EpigeneticModification {
    MAY_INCLUDE: [DNA_Methylation, HistoneModification]
    MODULATES: ChromatinAccessibility
    MAY_AFFECT: GeneExpression
}

RULE ActivationRule {
    IF Activator BINDS_TO RegulatoryRegion
    THEN Transcription.rate MAY_INCREASE
}

RULE RepressionRule {
    IF Repressor BINDS_TO RegulatoryRegion
    THEN Transcription.rate MAY_DECREASE
}

# ============================================================
# VARIATION AND MUTATION
# ============================================================

ENTITY GeneticVariant {
    OCCURS_IN: GenomicSequence
    MAY_AFFECT: [GeneStructure, GeneExpression, GeneFunction]
}

CLASS SingleNucleotideVariant {
    SUBCLASS_OF: GeneticVariant
    CHANGES: SingleNucleotide
}

CLASS Insertion {
    SUBCLASS_OF: GeneticVariant
    ADDS: NucleotideSequence
}

CLASS Deletion {
    SUBCLASS_OF: GeneticVariant
    REMOVES: NucleotideSequence
}

CLASS Duplication {
    SUBCLASS_OF: GeneticVariant
    COPIES: GenomicRegion
}

CLASS Inversion {
    SUBCLASS_OF: GeneticVariant
    REVERSES: GenomicRegionOrientation
}

PROCESS Mutation {
    PRODUCES: GeneticVariant
    MAY_BE: [Spontaneous, Induced, Inherited, Somatic]
}

RULE VariantEffectRule {
    IF GeneticVariant OVERLAPS FunctionalGeneRegion
    THEN FunctionalEffect := evaluate(
        sequence_change,
        regulatory_context,
        transcript_context,
        protein_context
    )
}

# ============================================================
# INHERITANCE
# ============================================================

PROCESS Inheritance {
    TRANSMITS: GeneticInformation
    FROM: Parent
    TO: Offspring
}

RELATION Gene HAS_ALLELE Allele
RELATION Allele CONTRIBUTES_TO Genotype
RELATION Genotype CONTRIBUTES_TO Phenotype

RULE MendelianRelation {
    IF Trait.is_mendelian == true
    THEN Phenotype MAY_DEPEND_ON AllelicState
}

RULE ComplexTraitRelation {
    IF Trait.is_complex == true
    THEN Phenotype MAY_DEPEND_ON [
        MultipleGenes,
        RegulatoryInteractions,
        Environment
    ]
}

# ============================================================
# FUNCTIONAL SEMANTICS
# ============================================================

ENTITY GeneFunction {
    DIMENSIONS: [
        MolecularFunction,
        BiologicalProcess,
        CellularContext
    ]
}

RELATION Gene ENCODES GeneProduct
RELATION GeneProduct PERFORMS MolecularFunction
RELATION GeneProduct PARTICIPATES_IN BiologicalProcess
RELATION GeneProduct LOCATED_IN CellularComponent

RULE FunctionalAnnotationRule {
    IF Evidence SUPPORTS Relation(GeneProduct, Function)
    THEN Annotation.confidence := derive(Evidence)
}

# ============================================================
# EVIDENCE
# ============================================================

ENTITY Evidence {
    TYPES: [
        ExperimentalEvidence,
        ComputationalEvidence,
        ComparativeEvidence,
        LiteratureEvidence
    ]
}

ENTITY ExperimentalEvidence {
    MAY_INCLUDE: [
        GeneKnockout,
        GeneKnockdown,
        ExpressionAssay,
        BindingAssay,
        Sequencing,
        Proteomics
    ]
}

RULE EvidencePriority {
    IF MultipleEvidenceSources CONVERGE
    THEN Confidence := increase(Confidence)
}

RULE ConflictRule {
    IF EvidenceSources CONFLICT
    THEN {
        PRESERVE conflicting_assertions
        RECORD provenance
        REDUCE confidence
        REQUIRE further_validation
    }
}

# ============================================================
# SEMANTIC RELATIONSHIPS
# ============================================================

RELATION Gene PART_OF Genome
RELATION Gene LOCATED_ON Chromosome
RELATION Gene HAS_REGION GeneStructure
RELATION Gene TRANSCRIBED_TO RNA
RELATION mRNA TRANSLATED_TO Protein
RELATION Gene HAS_VARIANT GeneticVariant
RELATION Gene HAS_ALLELE Allele
RELATION Gene REGULATED_BY RegulatoryElement
RELATION GeneProduct HAS_FUNCTION MolecularFunction
RELATION GeneProduct PARTICIPATES_IN BiologicalProcess

# ============================================================
# SEMANTIC EQUIVALENCE
# ============================================================

SEMANTIC_EQUIVALENCE {
    "gene" ~= "genetic locus" WHEN context == functional_genomic_unit
    "gene expression" ~= "expression of genetic information"
    "coding gene" ~= "protein-coding gene"
    "gene product" ~= ["RNA product", "protein product"] DEPENDING_ON gene_type
    "genetic variant" ~= "sequence variant" WHEN context == genomic_sequence_change
}

RULE EquivalenceConstraint {
    IF terms ARE semantic_equivalents
    THEN preserve_contextual_scope()
    AND prevent_false_identity()
}

# ============================================================
# CONFIDENCE MODEL
# ============================================================

CONFIDENCE GeneAssertion {
    INPUTS: [
        evidence_quality,
        evidence_quantity,
        source_independence,
        experimental_reproducibility,
        semantic_consistency
    ]

    SCORE := weighted_sum(INPUTS)

    LEVEL :=
        IF SCORE >= 0.90 THEN "very_high"
        ELSE IF SCORE >= 0.75 THEN "high"
        ELSE IF SCORE >= 0.55 THEN "moderate"
        ELSE IF SCORE >= 0.35 THEN "low"
        ELSE "uncertain"
}

# ============================================================
# REASONING RULES
# ============================================================

RULE GeneProductInference {
    IF Gene ENCODES Product
       AND Product PERFORMS Function
    THEN Gene ASSOCIATED_WITH Function
}

RULE PathwayInference {
    IF GeneProduct PARTICIPATES_IN BiologicalProcess
    THEN Gene MAY_BE_ASSOCIATED_WITH BiologicalProcess
}

RULE LocationInference {
    IF Gene LOCATED_ON Chromosome
       AND Chromosome PART_OF Genome
    THEN Gene PART_OF Genome
}

RULE RegulatoryInference {
    IF RegulatoryElement MODULATES GeneExpression
       AND RegulatoryElement ASSOCIATED_WITH Gene
    THEN Gene REGULATED_BY RegulatoryElement
}

RULE PhenotypeInference {
    IF GeneticVariant AFFECTS GeneFunction
       AND GeneFunction CONTRIBUTES_TO Trait
    THEN GeneticVariant MAY_CONTRIBUTE_TO Phenotype
}

# ============================================================
# QUERY MODEL
# ============================================================

QUERY GeneLookup(gene_identifier) {
    RETURN [
        identity,
        genomic_location,
        gene_type,
        transcripts,
        products,
        functions,
        regulatory_elements,
        variants,
        biological_processes,
        evidence,
        confidence
    ]
}

QUERY FunctionalLookup(function) {
    FIND Gene
    WHERE GeneProduct PERFORMS function
    RETURN [Gene, GeneProduct, Evidence, Confidence]
}

QUERY VariantLookup(variant) {
    RETURN [
        affected_gene,
        affected_region,
        molecular_consequence,
        functional_consequence,
        phenotype_association,
        evidence,
        confidence
    ]
}

# ============================================================
# UPDATE MODEL
# ============================================================

UPDATE_MODEL {
    ON new_evidence:
        validate_provenance()
        normalize_identifiers()
        map_entities()
        compare_existing_assertions()
        resolve_or_preserve_conflicts()
        recalculate_confidence()
        regenerate_semantic_links()
        update_flow_hash()
}

# ============================================================
# AI CONSUMPTION
# ============================================================

AI_CONSUMPTION {
    MODE: FormalSemanticReasoning
    PARSE_AS: ExecutableFlowAlgebra

    PRIORITIES: [
        entity_identity,
        relationship_integrity,
        biological_context,
        evidence_provenance,
        confidence,
        semantic_equivalence
    ]

    REQUIREMENTS: [
        distinguish_gene_from_gene_product,
        distinguish_sequence_from_function,
        preserve_species_context,
        preserve_genomic_context,
        preserve_evidence_context,
        avoid_unsupported_causal_inference
    ]
}

# ============================================================
# VALIDATION
# ============================================================

VALIDATE {
    REQUIRE Gene
    REQUIRE GeneExpression
    REQUIRE GeneFunction
    REQUIRE Evidence
    REQUIRE CONFIDENCE
    REQUIRE SEMANTIC_EQUIVALENCE
    REQUIRE UPDATE_MODEL
    REQUIRE AI_CONSUMPTION

    ASSERT Gene != Protein
    ASSERT Gene != RNA
    ASSERT Allele IS_VARIANT_OF Gene
    ASSERT ProteinCodingGene SUBCLASS_OF Gene
    ASSERT NonCodingGene SUBCLASS_OF Gene
}

# ============================================================
# FLOW HASH
# ============================================================

FLOW_HASH {
    ALGORITHM: SHA-256
    INPUT: canonicalize(
        entities,
        relations,
        processes,
        rules,
        semantic_equivalence,
        confidence_model,
        update_model,
        ai_consumption
    )
    PURPOSE: integrity_and_version_tracking
}

END flow "GeneOntology"
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ