Skip to main content

Subscript Ontology

Symbolic Entities
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 13 October 2026
Audio Overview
FLOW ALGEBRA
SUBSCRIPT ONTOLOGY
Kireth Semantic Library | Mathematical Entities > Symbolic Entities
Source: https://kirethresearch.org/booksai-core/entity-graph/mathematical-entities/symbolic-entities/subscript-ontology.html
Authors: Mark Higgins — Sky (Recursive AI)
Status: Mathematical and semantic model; source-page text not independently verified.
Version: 1.0 | Date: 2026-10-13

01. PURPOSE
flow "SubscriptOntology" v1.0
  domain: mathematical_symbolic_entities
  entity: Subscript
  goal: represent lower-positioned notation with typed, context-sensitive semantics
  invariant: typography_alone_does_not_determine_meaning

02. CORE ENTITY
  Subscript := (base: -Expression, marker: -Expression, role: SubscriptRole, context: Context)
  SubscriptRole := INDEX | LABEL | COMPONENT | PARAMETER | SEQUENCE_POSITION | TENSOR_INDEX | CHEMICAL_COUNT | OTHER
  notation: base_{marker}
  distinction: visual_position != mathematical_operation
  constraint: interpretation requires base, marker, scope and domain conventions

03. TYPED RELATIONSHIPS
  has_base(Subscript, Expression)
  has_marker(Subscript, Expression)
  has_role(Subscript, SubscriptRole)
  belongs_to_context(Subscript, Context)
  indexes(Subscript, Collection)?
  selects_component(Subscript, TensorOrVector)?
  labels(Subscript, Entity)?
  binds_index(Binder, IndexVariable)?
  references_dimension(Subscript, Dimension)?

04. SYMBOLIC EXAMPLES
  a_n: nth term of a sequence when n is an index
  x_i: ith component or indexed variable, depending on context
  A_{ij}: matrix entry with row i and column j under a matrix convention
  T_{ij}: tensor components in a chosen basis, subject to index convention
  H_2O: chemical stoichiometric count, not array indexing
  x_0: initial state when zero denotes an initial-condition label
  log_2(x): logarithm with base two, not an indexed logarithm

05. INDEX DOMAIN
  index_domain(i) := finite_set | integer_range | natural_numbers | named_set
  valid_index(A,i) iff i in domain(A)
  access(A,i) defined only when valid_index(A,i)
  index_origin: zero_based | one_based | domain_specific
  invariant: index_origin must be explicit when operationally relevant

06. SEQUENCE AND ARRAY SEMANTICS
  sequence_term((a_n),n) -> a_n
  array_entry(A,i) -> A_i
  matrix_entry(A,i,j) -> A_{ij}
  shape(A) and index_domain(A) determine access validity
  index_order is significant: A_{ij} need not equal A_{ji}

07. TENSOR NOTATION
  lower_index(T,i) may denote covariant component under tensor convention
  upper_index(T,i) may denote contravariant component under tensor convention
  coordinate_change transforms components according to tensor type
  invariant: subscript position alone does not prove tensor status
  invariant: Einstein summation applies only when convention and expression permit it

08. FREE AND BOUND INDICES
  free_index(i,expression) iff i occurs without binding by a declared binder
  bound_index(i,expression) iff i is captured by summation, product, integral or other binder
  alpha_rename(bound_i,bound_j) preserves meaning if j is fresh and capture avoided
  invalid: alpha_rename that captures a free variable

09. SCOPE AND IDENTITY
  symbol_identity := (base, marker, namespace, binding_context, role)
  x_1 and x_2 are generally distinct symbolic references
  x_i may denote a family of variables rather than multiplication x*i
  semantic_equivalence requires matching interpretation, not only matching glyphs

10. OPERATIONS
  substitute_index(a_i,i:=k) -> a_k when k in index_domain(a)
  rename_index(expression,i:=j) allowed only under scope-preserving rules
  expand_sum(sum_{i=m}^{n} a_i) -> a_m + ... + a_n for finite integer bounds m<=n
  compare(A_i,B_i) requires compatible index domains and types

11. VALIDATION RULES
  require(base != null)
  require(marker != null)
  require(role in SubscriptRole)
  if role == INDEX then require(index_domain resolvable or explicitly unknown)
  if role == COMPONENT then require(component_structure declared)
  if role == CHEMICAL_COUNT then require(chemical_notation_context)
  flag(ambiguous_role) when notation admits multiple interpretations
  flag(out_of_range) on invalid indexed access
  flag(index_capture) on unsafe substitution

12. SEMANTIC EQUIVALENCE
  equivalent(a_i, a_{i}) under consistent parse and context
  equivalent(a_{k}, renamed_bound_form) only if binding and scope preserved
  not_equivalent(x_1,x_2) by default
  not_equivalent(log_2(x),log(x)_2) without an explicit matching interpretation
  equivalence_level: lexical | structural | contextual | mathematical

13. KNOWLEDGE GRAPH
  node: SubscriptExpression
  node: BaseSymbol
  node: MarkerSymbol
  node: IndexDomain
  node: NotationConvention
  edge: HAS_BASE
  edge: HAS_MARKER
  edge: HAS_ROLE
  edge: INDEXES
  edge: SELECTS_COMPONENT
  edge: DEFINED_IN
  edge: BOUND_BY
  edge: SEMANTICALLY_EQUIVALENT_TO

14. INFERENCE RULES
  IF role(x_i)=INDEX AND i in domain(x) THEN indexed_access(x,i)=valid
  IF role(x_i)=INDEX AND i not_in domain(x) THEN indexed_access(x,i)=invalid
  IF role(A_ij)=COMPONENT AND shape(A)=(m,n) THEN i in rows(A) AND j in cols(A)
  IF role(H_2)=CHEMICAL_COUNT THEN do_not_infer(array_index(H,2))
  IF index_role_unknown THEN defer_semantic_classification

15. MATHEMATICAL INVARIANTS
  indexing does not imply multiplication
  index domain is part of interpretation
  positional notation is context-sensitive
  bound-index renaming must be capture-avoiding
  equivalent notations preserve denotation under the same interpretation
  tensor index position has meaning only under the relevant convention

16. CONFIDENCE
  CONFIDENCE:
    explicit_definition: 1.00
    declared_notation_convention: 0.95
    context_supported_inference: 0.80
    typography_only_guess: 0.30
  confidence_score := evidence_weighted_interpretation_score
  rule: uncertainty must be retained rather than silently resolved

17. PROVENANCE
  source_url: https://kirethresearch.org/booksai-core/entity-graph/mathematical-entities/symbolic-entities/subscript-ontology.html
  source_verified: false
  mathematical_basis: standard symbolic mathematics, indexing and tensor notation
  authorship: Mark Higgins — Sky (Recursive AI)
  library: Kireth Semantic Library

18. FLOW HASH
  FLOW_HASH:
    method: SHA-256
    canonicalise: UTF-8 + LF + normalised field ordering
    hash_input: canonical ontology payload excluding stored digest
    digest: COMPUTE_ON_PUBLICATION
    rule: recompute on any semantic change

19. UPDATE MODEL
  UPDATE_MODEL:
    revision_policy: semantic_versioning
    change_types: [clarification, new_role, rule_change, correction]
    preserve_previous_versions: true
    revalidate_dependents: true
    track: [timestamp, author, reason, affected_relationships]

20. AI CONSUMPTION
  AI_CONSUMPTION:
    parse_notation: true
    resolve_context: true
    type_check: true
    preserve_scope: true
    distinguish_labels_from_indices: true
    emit_knowledge_graph: true
    report_ambiguity: true
    prevent_unjustified_equivalence: true
    output: typed_semantic_representation

21. TEST CASES
  PASS: a_3 in sequence indexed by natural numbers including 3
  FAIL: a_-1 in sequence indexed only by positive integers
  PASS: A_23 for matrix with at least 2 rows and 3 columns under one-based indexing
  FAIL: A_23 for 2x2 matrix under one-based indexing
  PASS: rename sum_i a_i to sum_j a_j when j is fresh
  FAIL: rename bound i to j if it captures a free j
  PASS: recognise H_2O as chemical formula in chemical context
  PASS: recognise log_2(8)=3 in logarithmic context

22. END FLOW
  assert(typed_semantics)
  assert(context_sensitivity)
  assert(scope_safety)
  assert(validation_before_inference)
end flow
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ