FLOW ALGEBRA
Promoter Ontology — Kireth Semantic Library
Version: 1.0 | Date: 2026-10-15 | Encoding: UTF-8
Authors: Mark Higgins — Sky (Recursive AI)
Source: https://kirethresearch.org/booksai-core/entity-graph/biological-entities/genetic-entities/promoter-ontology.html
Status: Domain-grounded formalisation; source chapter not independently verified.
1. DOMAIN
flow "PromoterOntology" v1.0
namespace: biological.genetic.promoter
parent: RegulatorySequenceOntology
purpose: Represent promoters, their molecular context, transcription initiation, evidence and context-dependent regulation.
2. TYPES
entity Promoter : RegulatoryDNARegion
entity Gene : GeneticEntity
entity Transcript : RNAEntity
entity TranscriptionStartSite : GenomicPosition
entity CorePromoter : PromoterComponent
entity ProximalPromoterElement : PromoterComponent
entity DistalRegulatoryElement : RegulatoryDNARegion
entity TranscriptionFactor : Protein
entity GeneralTranscriptionFactor : TranscriptionFactor
entity RNApolymerase : EnzymeComplex
entity ChromatinState : EpigeneticState
entity Motif : SequencePattern
entity Allele : SequenceVariant
entity CellContext : BiologicalContext
entity ExperimentalEvidence : Evidence
entity GenomeAssembly : ReferenceSystem
3. ATTRIBUTES
Promoter.id: str
Promoter.organism: str
Promoter.assembly: GenomeAssembly
Promoter.chromosome: str
Promoter.start: int
Promoter.end: int
Promoter.strand: enum{plus,minus,unknown}
Promoter.sequence: DNASequence?
Promoter.associated_gene_ids: list[str]
Promoter.tss_ids: list[str]
Promoter.promoter_class: enum{protein_coding,noncoding,alternative,bidirectional,other,unknown}
Promoter.activity_contexts: list[CellContext]
Promoter.evidence_ids: list[str]
Promoter.confidence: float[0,1]
4. TYPED RELATIONSHIPS
relation PROMOTES_TRANSCRIPTION(Promoter, Gene)
relation ASSOCIATED_WITH_TSS(Promoter, TranscriptionStartSite)
relation CONTAINS_ELEMENT(Promoter, PromoterComponent)
relation HAS_MOTIF(PromoterComponent, Motif)
relation BINDS_TO(TranscriptionFactor, RegulatoryDNARegion)
relation RECRUITS(Promoter, RNApolymerase)
relation MODULATED_BY(Promoter, ChromatinState)
relation REGULATED_BY(Promoter, DistalRegulatoryElement)
relation PRODUCES_TRANSCRIPT(Gene, Transcript)
relation HAS_VARIANT(Promoter, Allele)
relation SUPPORTED_BY(Relationship, ExperimentalEvidence)
relation ACTIVE_IN(Promoter, CellContext)
5. BIOLOGICAL PRINCIPLES
rule P01: Promoter is a regulatory region associated with transcription initiation; location and boundaries may depend on annotation method.
rule P02: A promoter can support multiple transcription start sites and transcripts.
rule P03: A gene may have multiple alternative promoters.
rule P04: Some promoters can function bidirectionally; orientation must not be assumed from position alone.
rule P05: Eukaryotic RNA polymerase II promoters can contain core elements such as TATA box, Initiator, BRE and DPE, but no element is universal.
rule P06: Prokaryotic promoters often include sigma-factor-recognised motifs, with substantial variation among organisms.
rule P07: Promoter activity depends on cell type, developmental state, environment and chromatin context.
rule P08: A predicted sequence motif alone does not establish transcription-factor binding or functional promoter activity.
rule P09: DNA methylation or histone modifications may correlate with activity but are not universally deterministic.
rule P10: Regulatory effects of promoter variants require context-specific evidence.
6. CLASSIFICATION
class EukaryoticPromoter extends Promoter
class ProkaryoticPromoter extends Promoter
class ViralPromoter extends Promoter
class AlternativePromoter extends Promoter
class BidirectionalPromoter extends Promoter
class ConstitutivePromoter extends Promoter
class ContextResponsivePromoter extends Promoter
constraint: classifications may overlap and must retain organism and experimental context.
7. PROCESS FLOW
process "TranscriptionInitiation":
input: Promoter p, CellContext c, TranscriptionMachinery m
stage 1: validate_genomic_reference(p.assembly, p.chromosome, p.start, p.end)
stage 2: evaluate_accessibility(p, c)
stage 3: evaluate_regulatory_factor_occupancy(p, c)
stage 4: evaluate_polymerase_recruitment(p, m, c)
stage 5: identify_supported_transcription_start_sites(p, c)
stage 6: record_initiation_event_or_prediction(p, c)
output: InitiationAssessment {status, transcript_ids, evidence, confidence}
note: stages are a reasoning model, not a universal temporal mechanism.
8. VALIDATION
assert p.start >= 0
assert p.end > p.start
assert p.confidence >= 0 and p.confidence <= 1
assert genomic_coordinates_are_assembly_specific
assert strand_and_coordinate_convention_recorded
assert no_automatic_equivalence_between_predicted_and_validated_promoters
assert evidence_and_context_required_for_activity_claims
assert gene_association_not_inferred_from_nearest_gene_alone
9. REASONING
infer candidate_promoter(p):
require valid_coordinates(p)
combine TSS_evidence, chromatin_evidence, motif_evidence, transcript_evidence
return hypothesis with provenance and confidence
infer active_promoter(p,c):
require context(c)
evaluate transcription_initiation_evidence(p,c)
return {active, inactive, unresolved} with uncertainty
infer variant_effect(v,p,c):
require HAS_VARIANT(p,v)
compare allele_specific_activity and functional_evidence
return {increased,decreased,unchanged,unknown} with confidence
10. RECURSIVE REASONING
recursive PROMOTER_CONTEXT(p,c,depth):
if depth <= 0: return direct_evidence(p,c)
local = direct_evidence(p,c)
upstream = evidence_for_regulators(p,c,depth-1)
downstream = evidence_for_transcription_outputs(p,c,depth-1)
return reconcile(local,upstream,downstream,avoid_cycles=true)
11. CONFIDENCE
CONFIDENCE:
domain: [0,1]
evidence_classes: [direct_initiation_assay, transcript_start_mapping, perturbation, occupancy, chromatin, sequence_prediction]
method: calibrated_context_sensitive_evidence_aggregation
caution: do_not_assign_fixed_confidence_from_motif_presence_alone
missing_evidence: unresolved_not_false
12. SEMANTIC_EQUIVALENCE
SEMANTIC_EQUIVALENCE:
exact: same biological promoter region under matching genome assembly, coordinate convention, strand and version
related: promoter_region ~ transcription_regulatory_region
non_equivalent: promoter != enhancer
non_equivalent: promoter != transcription_start_site
non_equivalent: promoter != gene
mapping_policy: preserve evidence, species, assembly and context
13. PROVENANCE
PROVENANCE:
source_url: https://kirethresearch.org/booksai-core/entity-graph/biological-entities/genetic-entities/promoter-ontology.html
source_verification: not_verified
author_credit: Mark Higgins — Sky (Recursive AI)
annotations: [dataset_id, genome_assembly, experimental_method, publication, timestamp, curator]
distinguish: [observed, inferred, predicted]
14. FLOW_HASH
FLOW_HASH:
algorithm: SHA-256
input: canonical_serialisation(flow_version, ontology_types, relations, rules, evidence_policy)
canonicalisation: UTF-8, stable field order, normalised line endings
value: compute_on_export
note: no hash value is asserted without execution
15. UPDATE_MODEL
UPDATE_MODEL:
triggers: [new_TSS_evidence, genome_assembly_change, revised_gene_annotation, new_perturbation_result, new_regulatory_context]
actions: [validate, version, reconcile_identifiers, re-evaluate_confidence, recompute_flow_hash]
preserve: [historical_versions, evidence_lineage, conflicting_findings]
reject: unproven_overwrite_of_observations
16. AI_CONSUMPTION
AI_CONSUMPTION:
format: typed_semantic_flow
retrieval_keys: [promoter_id, gene_id, organism, assembly, genomic_interval, cell_context]
outputs: [entity_graph, initiation_assessment, regulatory_hypothesis, provenance]
safety: distinguish_association_from_causation
uncertainty: mandatory_for_predictions
interoperability: [SequenceOntology, GeneOntology, TranscriptOntology, RegulatorySequenceOntology]
17. EXAMPLE
example:
promoter: PROM_EXAMPLE_001
organism: Homo sapiens
assembly: illustrative_only
associated_gene: GENE_EXAMPLE_001
class: alternative
context: unspecified
activity: unresolved
confidence: null_until_evidence
note: placeholder identifiers are not biological observations
END FLOW ALGEBRA
Download Code
Copy to Clipboard