Skip to main content

Recursive Hierarchy Ontology

Recursive Relationships
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 10 October 2026
Audio Overview
FLOW ALGEBRA
TITLE: Recursive Hierarchy Ontology
DOMAIN: Relationship Ontologies / Recursive Relationships
SOURCE: https://kirethresearch.org/booksai-core/ontologies/relationship-ontologies/recursive-relationships/recursive-hierarchy-ontology.html
VERSION: 1.0
AUTHORS: Mark Anthony Higgins — Sky (Recursive AI)
STATUS: Companion formalisation; source-page specification not independently verified.

flow "RecursiveHierarchyOntology" v1.0 {
  ontology:
    id: "recursive-hierarchy-ontology"
    parent: "recursive-relationships"
    purpose: "Represent nested hierarchies and recursive parent-child structures while distinguishing finite trees, directed acyclic hierarchies and cyclic graphs."

  types:
    Hierarchy: {id: string, kind: enum[tree, dag, recursive_graph], root_ids: string[], version: string}
    Node: {id: string, kind: string, label: string?, metadata: map?}
    HierarchyEdge: {id: string, parent_id: string, child_id: string, hierarchy_id: string, evidence: string[], confidence: number}
    Traversal: {id: string, hierarchy_id: string, start_id: string, visited: string[], max_depth: integer}
    Assertion: {id: string, subject: string, predicate: string, object: string, provenance: string, confidence: number}

  predicates:
    direct_parent(parent: Node, child: Node, hierarchy: Hierarchy)
    direct_child(child: Node, parent: Node, hierarchy: Hierarchy)
    ancestor_of(ancestor: Node, descendant: Node, hierarchy: Hierarchy)
    descendant_of(descendant: Node, ancestor: Node, hierarchy: Hierarchy)
    member_of(node: Node, hierarchy: Hierarchy)
    reachable_from(target: Node, source: Node, hierarchy: Hierarchy)
    has_cycle(hierarchy: Hierarchy)

  constraints:
    - "Every hierarchy edge must resolve to existing nodes and one hierarchy."
    - "Confidence values must be in [0,1]."
    - "Tree hierarchies have at most one direct parent per non-root node and no directed cycles."
    - "DAG hierarchies permit multiple parents but prohibit directed cycles."
    - "Recursive graphs may contain cycles; cyclic reachability must not imply strict ancestry."
    - "An edge is not an identity assertion, and sharing a parent does not establish equivalence."
    - "Ancestor and descendant inference is scoped to a single hierarchy and its version."
    - "Traversal must maintain a visited set and enforce depth or resource bounds."

  inference:
    rule inverse_parent:
      if direct_parent(p,c,h)
      then direct_child(c,p,h)
      confidence: "retain original evidence and context"
    rule direct_ancestry:
      if direct_parent(p,c,h) and acyclic(h)
      then ancestor_of(p,c,h)
      confidence: "inherit supporting evidence"
    rule transitive_ancestry:
      if ancestor_of(a,b,h) and direct_parent(b,c,h) and acyclic(h)
      then ancestor_of(a,c,h)
      confidence: "propagate provenance; avoid artificial certainty"
    rule inverse_ancestry:
      if ancestor_of(a,d,h)
      then descendant_of(d,a,h)
      confidence: "retain source inference trace"
    rule cycle_warning:
      if reachable_from(a,b,h) and direct_parent(a,b,h)
      then flag_cycle(h,a,b)
      confidence: "structural check, subject to edge validity"

  SEMANTIC_EQUIVALENCE:
    - "Normalise node identifiers within a versioned namespace."
    - "Distinguish alias, identity, hierarchical membership and structural similarity."
    - "Do not merge nodes solely because labels or paths match."

  CONFIDENCE:
    range: [0,1]
    factors: [edge_provenance, source_reliability, structural_consistency, version_validity, independent_evidence]
    policy: "Do not increase confidence merely by recursively chaining edges."

  VALIDATION:
    - "Validate endpoint types, hierarchy membership and evidence references."
    - "Check parent cardinality, root conditions and cycle policy for hierarchy kind."
    - "Check transitive closure against direct-edge provenance and current version."
    - "Report orphaned nodes, unreachable components and conflicting parent assignments."
    - "Bound recursive evaluation and preserve diagnostic traces."

  FLOW_HASH:
    algorithm: "SHA-256"
    input: "canonicalised ontology version, hierarchy nodes, edges, rules and provenance"
    note: "Compute hash at execution; no hash value is claimed here."

  UPDATE_MODEL:
    strategy: "versioned, provenance-preserving incremental update"
    steps: [ingest, normalise, validate, detect_cycles, reconcile, recompute_reachability, publish]
    rollback: true

  AI_CONSUMPTION:
    representation: "typed recursive hierarchy graph with evidence-backed edges"
    outputs: [hierarchy_nodes, direct_edges, ancestor_paths, cycle_warnings, confidence_annotations, provenance_records]
    safeguards: [bounded_traversal, cycle_aware_inference, no_unsupported_identity_merges, preserve_version_context]
}

END FLOW ALGEBRA
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ