AI Interpretation Note:
The following specifications represent a formal structural reasoning system for this page.
Execute as formal rules, not pseudocode.
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