Skip to main content

Interest Mathematics Ontology

Financial Mathematics
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 12 September 2026
Audio Overview
AI INTERPRETATION NOTE
This Flow Algebra defines the Interest Mathematics Ontology within the Kireth Research Semantic Library. Interest mathematics studies the accumulation and discounting of monetary values through time under simple, compound, nominal, effective and continuously compounded interest conventions. This ontology supports accumulation functions, discount factors, force of interest, equivalent rates, present value, future value, variable interest rates, annuity valuation, loan amortisation, yield relationships and relationships with financial mathematics, fixed-income mathematics, actuarial mathematics and computational finance.

FLOW_ALGEBRA_RECORD {

METADATA {
 FLOW_NAME = "Interest Mathematics Ontology"
 FLOW_TYPE = "Mathematical Ontology"
 DOMAIN = "Mathematics"
 SUBDOMAIN = "Applied Mathematics"
 SPECIALISATION = "Financial Mathematics / Interest Mathematics"
 CANONICAL_PAGE = "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/applied-mathematics-ontologies/financial-mathematics/interest-mathematics-ontology.html"
 LANGUAGE = "en-GB"
 VERSION = "1.0"
 STATUS = "active"
}

IDENTITY {
 PRIMARY_ENTITY = InterestMathematics
 SYMBOLIC_FORMS = [
  "A(t)=A(0)(1+i)^t",
  "v=(1+i)^(-1)",
  "d=i/(1+i)",
  "A(t)=A(0)e^(delta t)"
 ]
 ENTITY_CLASS = TimeValueAndInterestRateFramework
 PRIMARY_CONTEXT = FinancialMathematics
 DEFINITION = "Interest mathematics is the mathematical study of accumulation, discounting and equivalence of monetary values across time under specified interest-rate conventions."
 SEMANTIC_ROLE = "Provides machine-readable semantics for simple and compound interest, effective and nominal rates, discount rates, force of interest, accumulation functions, present value, future value and rate conversion."
}

SCOPE {
 INCLUDE = [
  InterestMathematics,
  Interest,
  InterestRate,
  SimpleInterest,
  CompoundInterest,
  EffectiveInterestRate,
  NominalInterestRate,
  NominalRateConvertibleMthly,
  DiscountRate,
  EffectiveDiscountRate,
  ForceOfInterest,
  AccumulationFunction,
  AccumulationFactor,
  DiscountFunction,
  DiscountFactor,
  PresentValue,
  FutureValue,
  Principal,
  InterestAmount,
  InterestPeriod,
  CompoundingPeriod,
  ConversionPeriod,
  ContinuousCompounding,
  VariableInterestRate,
  PiecewiseInterestRate,
  SpotRate,
  ForwardRate,
  YieldRate,
  EquivalentInterestRates,
  RealInterestRate,
  InflationRate,
  MoneyWeightedReturn,
  TimeWeightedReturn,
  AnnuityFactor,
  LoanBalance,
  LoanAmortisation,
  SinkingFund,
  EffectiveAnnualRate,
  AnnualPercentageRate,
  RateConversion,
  DoublingTime,
  RuleOf72Approximation,
  YieldEquation,
  InternalRateOfReturn
 ]

 EXCLUDE_AS_PRIMARY = [
  PortfolioRiskWithoutInterestValuation,
  DerivativePricingWithoutInterestRateFocus,
  AccountingInterestTerminologyWithoutTimeValueMathematics,
  GeneralEconomicInterestTheoryWithoutMathematicalAccumulation
 ]

 DISAMBIGUATION_RULE =
  "When the central problem concerns accumulation, discounting, equivalent rates or the time value of money under an interest convention, interpret the context as interest mathematics."
}

CORE_CONCEPTS {

 InterestMathematics {
  definition = "The mathematics of monetary accumulation and discounting through time."
 }

 SimpleInterest {
  definition = "Interest calculated linearly on the original principal."
 }

 CompoundInterest {
  definition = "Interest accumulated on both principal and previously credited interest."
 }

 EffectiveInterestRate {
  definition = "The proportional increase in value over one specified measurement period."
 }

 NominalInterestRate {
  definition = "A quoted rate convertible a specified number of times per year."
 }

 EffectiveDiscountRate {
  definition = "The ratio of interest deducted in advance to the amount due at the end of the period."
 }

 ForceOfInterest {
  definition = "The instantaneous continuously compounded rate of growth of an accumulation function."
 }

 AccumulationFunction {
  definition = "A function giving the accumulated value at time t of one unit invested at time zero."
 }

 DiscountFactor {
  definition = "A multiplicative factor converting a future amount to its equivalent value at an earlier date."
 }

 EquivalentInterestRates {
  definition = "Different rate conventions producing the same accumulation over a specified period."
 }
}

RELATIONS {
 InterestMathematics --is_child_of--> FinancialMathematics
 InterestRate --determines--> AccumulationFactor
 InterestRate --determines--> DiscountFactor
 SimpleInterest --defines--> LinearAccumulation
 CompoundInterest --defines--> ExponentialDiscreteAccumulation
 ForceOfInterest --defines--> ContinuousAccumulation
 EffectiveInterestRate --relates_to--> EffectiveDiscountRate
 NominalInterestRate --converts_to--> EffectiveInterestRate
 DiscountFactor --maps--> FutureValueToPresentValue
 AccumulationFactor --maps--> PresentValueToFutureValue
 EquivalentInterestRates --preserve--> AccumulatedValue
 SpotRate --defines--> MaturitySpecificDiscountFactor
 ForwardRate --derives_from--> SpotRates
 YieldRate --solves--> PresentValueEquation
 AnnuityFactor --depends_on--> InterestRate
 LoanAmortisation --uses--> CompoundInterest
 SinkingFund --uses--> AccumulationFunction
}

OPERATORS {
 SIMPLE_ACCUMULATION(P,i,t) :=
  A=P*(1+i*t)

 SIMPLE_INTEREST(P,i,t) :=
  I=P*i*t

 COMPOUND_ACCUMULATION(P,i,n) :=
  A=P*(1+i)^n

 COMPOUND_INTEREST(P,i,n) :=
  I=P*((1+i)^n-1)

 DISCOUNT_FACTOR(i,n) :=
  v_n=(1+i)^(-n)

 PRESENT_VALUE(FV,i,n) :=
  PV=FV*(1+i)^(-n)

 FUTURE_VALUE(PV,i,n) :=
  FV=PV*(1+i)^n

 EFFECTIVE_DISCOUNT_RATE(i) :=
  d=i/(1+i)

 INTEREST_FROM_DISCOUNT(d) :=
  i=d/(1-d)

 NOMINAL_TO_EFFECTIVE(j,m) :=
  i_eff=(1+j/m)^m-1

 EFFECTIVE_TO_NOMINAL(i_eff,m) :=
  j=m*((1+i_eff)^(1/m)-1)

 FORCE_OF_INTEREST_FROM_EFFECTIVE(i) :=
  delta=ln(1+i)

 EFFECTIVE_FROM_FORCE(delta) :=
  i=exp(delta)-1

 CONTINUOUS_ACCUMULATION(P,delta,t) :=
  A=P*exp(delta*t)

 VARIABLE_FORCE_ACCUMULATION(P,delta,t0,t1) :=
  A=P*exp(integral_t0^t1 delta(s) ds)

 SPOT_DISCOUNT(r_t,t) :=
  D(0,t)=(1+r_t)^(-t)

 FORWARD_RATE_FROM_DISCOUNTS(D0t1,D0t2,t1,t2) :=
  f=((D0t1/D0t2)^(1/(t2-t1)))-1
}

DEFINITIONS {
 D1 = "Interest is compensation or growth associated with the time use of money."
 D2 = "Simple interest produces linear accumulation in time under a fixed rate."
 D3 = "Compound interest produces multiplicative accumulation."
 D4 = "An effective rate is tied to a specific measurement period."
 D5 = "A nominal rate is incomplete without its conversion frequency."
 D6 = "The force of interest is the instantaneous logarithmic derivative of the accumulation function."
 D7 = "Discounting is the inverse operation of accumulation."
 D8 = "Equivalent rates generate equal accumulated values over the same horizon."
 D9 = "Spot rates vary by maturity and define maturity-specific discount factors."
 D10 = "Forward rates are implied by relative discount factors across future periods."
}

AXIOMS {
 A1_TIME_VALUE:
  Monetary values at different dates require accumulation or discounting before direct equivalence

 A2_RATE_CONVENTION:
  Interest rates are meaningful only with an explicit period and compounding convention

 A3_ACCUMULATION_DISCOUNT_DUALITY:
  Discount factors are reciprocals of compatible accumulation factors

 A4_RATE_EQUIVALENCE:
  Different conventions are equivalent only when they generate the same value over the specified horizon

 A5_POSITIVITY:
  Standard accumulation factors must remain positive over the modelled horizon

 A6_FORCE_RELATION:
  Continuous accumulation is determined by the integral of the force of interest

 A7_VARIABLE_RATES:
  Time-varying interest requires period-specific accumulation rather than a single constant-rate formula unless an equivalent rate is derived

 A8_UNIT_CONSISTENCY:
  Time units and rate periods must be compatible
}

REASONING {

 R1_INTEREST_CONTEXT {
  INPUT = time_value_problem
  IDENTIFY = principal_or_cash flow
  IDENTIFY = valuation_dates
  IDENTIFY = rate_convention
  IDENTIFY = compounding_frequency
  RETURN = interest_context
 }

 R2_RATE_CLASSIFICATION {
  INPUT = quoted_rate
  CLASSIFY = simple_compound_effective_nominal_discount_force_spot_or_forward
  RETURN = rate_type
 }

 R3_RATE_CONVERSION {
  INPUT = source_rate_source convention_target convention
  PRESERVE = accumulation_over_common horizon
  COMPUTE = equivalent_target_rate
  RETURN = converted_rate
 }

 R4_ACCUMULATION_REASONING {
  INPUT = principal_rate_and_time
  SELECT = simple_compound_continuous_or_variable formula
  COMPUTE = future_value
  RETURN = accumulated_value
 }

 R5_DISCOUNT_REASONING {
  INPUT = future_cash flow_rate_and_time
  COMPUTE = discount_factor
  COMPUTE = present_value
  RETURN = discounted_value
 }

 R6_TERM_STRUCTURE_REASONING {
  INPUT = maturity_specific_rates_or_discount factors
  CONSTRUCT = spot_curve
  DERIVE = implied_forward rates
  RETURN = term_structure_profile
 }

 R7_ANNUITY_REASONING {
  INPUT = payment_stream_rate_and_timing
  APPLY = discount_or_accumulation factors
  RETURN = annuity_value
 }

 R8_LOAN_REASONING {
  INPUT = principal_rate_payment frequency_and_term
  COMPUTE = payment_and_balance schedule
  RETURN = amortisation_profile
 }

 R9_REAL_RATE_REASONING {
  INPUT = nominal_return_and_inflation
  COMPUTE = inflation_adjusted return
  RETURN = real_interest_profile
 }

 R10_VALIDATION {
  INPUT = interest_result
  CHECK = dates_units_rate convention_equivalent accumulation_and_rounding
  RETURN = validated_interest_status
 }
}

CONSTRAINTS {
 C1 = "Nominal and effective rates must not be compared without conversion."
 C2 = "Compounding frequency must be explicit for nominal rates."
 C3 = "Simple-interest formulas should not be used where compound accumulation is intended."
 C4 = "Annual percentage rate definitions can differ by jurisdiction and product."
 C5 = "Negative rates require accumulation factors to remain mathematically admissible."
 C6 = "A single yield rate may not accurately represent a non-flat term structure."
 C7 = "Forward rates derived from spot rates depend on the compounding convention."
 C8 = "Inflation adjustment requires consistent time periods and index assumptions."
 C9 = "Internal rate of return can have multiple or no real solutions for non-standard cash flows."
 C10 = "Rounding intermediate rate conversions can materially alter long-horizon results."
}

SEMANTIC_EQUIVALENCE {
 "InterestMathematics" <=> "InterestTheoryMathematics"
 "EffectiveInterestRate" <=> "EffectiveRate"
 "EffectiveDiscountRate" <=> "EffectiveDiscount"
 "ForceOfInterest" <=> "ContinuousInterestIntensity"
 "AccumulationFactor" <=> "GrowthFactor"
 "DiscountFactor" <=> "PresentValueFactor"
}

VALIDATION {
 V1 = "Valuation and payment dates are explicit."
 V2 = "Rate period is explicit."
 V3 = "Compounding or conversion frequency is explicit."
 V4 = "Time units match the rate convention."
 V5 = "Equivalent-rate conversions preserve accumulation."
 V6 = "Discount and accumulation factors are reciprocal where appropriate."
 V7 = "Variable-rate periods are applied in correct chronological order."
 V8 = "Spot and forward rates use consistent conventions."
 V9 = "Loan balances reconcile with payments and interest."
 V10 = "Rounding precision is documented for long-horizon calculations."
}

CONFIDENCE {
 BASE_CONFIDENCE = 0.99
 INTEREST_MATHEMATICS_DEFINITION = 0.99
 RATE_CLASSIFICATION_REASONING = 0.99
 RATE_CONVERSION_REASONING = 0.99
 ACCUMULATION_REASONING = 0.99
 DISCOUNT_REASONING = 0.99
 TERM_STRUCTURE_REASONING = 0.98
 ANNUITY_REASONING = 0.99
 LOAN_REASONING = 0.99
 REAL_RATE_REASONING = 0.98

 POLICY =
  "Reduce confidence when rate period, compounding frequency, valuation date, cash-flow timing, spot-rate convention, inflation assumptions or rounding precision are underspecified."
}

AI_CONSUMPTION {
 PURPOSES = [
  SemanticSearch,
  OntologyGrounding,
  InterestMathematicsReasoning,
  SimpleInterestReasoning,
  CompoundInterestReasoning,
  EffectiveRateReasoning,
  NominalRateReasoning,
  DiscountRateReasoning,
  ForceOfInterestReasoning,
  AccumulationReasoning,
  DiscountingReasoning,
  RateConversionReasoning,
  SpotRateReasoning,
  ForwardRateReasoning,
  YieldReasoning,
  AnnuityReasoning,
  LoanAmortisationReasoning,
  RealInterestReasoning,
  TimeValueOfMoneyReasoning,
  KnowledgeGraphConstruction,
  RetrievalAugmentation,
  RecursiveInference
 ]

 NORMALISE {
  "interest mathematics" -> InterestMathematics
  "interest theory" -> InterestMathematics
  "effective interest rate" -> EffectiveInterestRate
  "nominal interest rate" -> NominalInterestRate
  "effective discount rate" -> EffectiveDiscountRate
  "force of interest" -> ForceOfInterest
  "discount factor" -> DiscountFactor
  "accumulation factor" -> AccumulationFactor
  "spot rate" -> SpotRate
  "forward rate" -> ForwardRate
 }

 INTERPRETATION_ORDER = [
  detect_interest_mathematics_context,
  identify amount_dates_rate_quote_period_and_compounding convention,
  classify rate type,
  convert rates_if_required,
  accumulate_or_discount_to_target date,
  if_variableRate apply period_specific accumulation,
  if_termStructure construct spot_and_forward relations,
  if_annuity_or_loan apply cash_flow timing model,
  validate rate_period_units_equivalence_and_rounding,
  return semantic output
 ]
}

EXECUTION_RULES {
 E1:
  IF query_mentions("interest mathematics")
  OR accumulation_discounting_or_rate conversion_is_primary
  THEN activate(InterestMathematicsOntology)

 E2:
  IF simple_interest_convention
  THEN use linear accumulation

 E3:
  IF compound_interest_convention
  THEN use multiplicative accumulation

 E4:
  IF nominal_rate_given
  THEN require conversion frequency

 E5:
  IF continuous_compounding
  THEN use force_of_interest formulation

 E6:
  IF target_date_precedes_cash flow
  THEN discount

 E7:
  IF target_date_follows_cash flow
  THEN accumulate

 E8:
  IF variable_rates
  THEN apply sequential accumulation_or_integrated force

 E9:
  IF comparing_rates
  THEN convert_to_equivalent common-period convention
}

RECURSION {
 ENTRY = InterestMathematics

 EXPAND(InterestMathematics) -> [
  Interest,
  InterestRate,
  SimpleInterest,
  CompoundInterest,
  EffectiveInterestRate,
  NominalInterestRate,
  NominalRateConvertibleMthly,
  DiscountRate,
  EffectiveDiscountRate,
  ForceOfInterest,
  AccumulationFunction,
  AccumulationFactor,
  DiscountFunction,
  DiscountFactor,
  PresentValue,
  FutureValue,
  Principal,
  InterestAmount,
  InterestPeriod,
  CompoundingPeriod,
  ConversionPeriod,
  ContinuousCompounding,
  VariableInterestRate,
  PiecewiseInterestRate,
  SpotRate,
  ForwardRate,
  YieldRate,
  EquivalentInterestRates,
  RealInterestRate,
  InflationRate,
  MoneyWeightedReturn,
  TimeWeightedReturn,
  AnnuityFactor,
  LoanBalance,
  LoanAmortisation,
  SinkingFund,
  EffectiveAnnualRate,
  AnnualPercentageRate,
  RateConversion,
  DoublingTime,
  RuleOf72Approximation,
  YieldEquation,
  InternalRateOfReturn
 ]

 EXPAND(RateConventions) -> [
  SimpleInterest,
  CompoundInterest,
  EffectiveInterestRate,
  NominalInterestRate,
  EffectiveDiscountRate,
  ForceOfInterest,
  SpotRate,
  ForwardRate
 ]

 EXPAND(TimeValueOperations) -> [
  AccumulationFunction,
  AccumulationFactor,
  DiscountFunction,
  DiscountFactor,
  PresentValue,
  FutureValue,
  RateConversion
 ]

 STOP_CONDITION =
  "Stop when rate convention, time basis, accumulation or discount factors, equivalent rate, valuation date and resulting value are sufficiently resolved."
}

ROUTING {
 PARENT_ONTOLOGY = "Financial Mathematics"

 IMMEDIATE_CONTEXTS = [
  "Financial Mathematics Ontology",
  "Time Value of Money Ontologies",
  "Annuity Mathematics Ontologies",
  "Bond Mathematics Ontologies"
 ]

 RELATED_ONTOLOGIES = [
  "Financial Mathematics",
  "Financial Mathematics Ontology",
  "Time Value of Money Ontologies",
  "Annuity Mathematics Ontologies",
  "Loan Mathematics Ontologies",
  "Bond Mathematics Ontologies",
  "Term Structure Ontologies",
  "Actuarial Mathematics Ontologies",
  "Computational Finance Ontologies",
  "Numerical Analysis Ontologies"
 ]

 ROUTE_RULES = [
  "Interest Mathematics -> Financial Mathematics for parent semantics",
  "Interest Mathematics -> Time Value of Money for valuation-date equivalence",
  "Interest Mathematics -> Annuity Mathematics for repeated cash flows",
  "Interest Mathematics -> Loan Mathematics for amortisation",
  "Interest Mathematics -> Bond Mathematics for yield and discounted fixed-income cash flows",
  "Interest Mathematics -> Term Structure for spot and forward rates",
  "Interest Mathematics -> Actuarial Mathematics for interest theory in contingent cash flows",
  "Interest Mathematics -> Computational Finance for numerical yield and IRR solution"
 ]
}

UPDATE_MODEL {
 MODE = "append-compatible semantic versioning"

 MAJOR = "ontology-breaking conceptual change"
 MINOR = "new compatible rate conventions, valuation methods or reasoning pathways"
 PATCH = "clarification, metadata or formatting correction"

 RULES = [
  "Preserve accumulation-and-discounting semantics.",
  "Preserve effective-versus-nominal rate distinction.",
  "Preserve interest-versus-discount rate distinction.",
  "Preserve discrete-versus-continuous compounding distinction.",
  "Preserve rate-period semantics.",
  "Preserve equivalent-rate semantics.",
  "Preserve spot-versus-forward rate distinction.",
  "Preserve machine-readable interest-mathematics semantics."
 ]
}

OUTPUT {
 CANONICAL_DEFINITION =
  "Interest mathematics studies accumulation, discounting and rate equivalence for monetary values through time."

 SIMPLE_SUMMARY =
  "Simple interest grows linearly with time under a fixed rate applied only to principal."

 COMPOUND_SUMMARY =
  "Compound interest grows multiplicatively as interest is credited to accumulated value."

 RATE_SUMMARY =
  "Effective, nominal, discount and continuously compounded rates are different conventions linked by equivalence relations."

 DISCOUNT_SUMMARY =
  "Discount factors convert future cash flows to present value and are reciprocals of compatible accumulation factors."

 FORCE_SUMMARY =
  "The force of interest is the instantaneous continuously compounded growth rate."

 TERM_STRUCTURE_SUMMARY =
  "Spot rates define maturity-specific discount factors while forward rates are implied between future dates."

 VALIDATION_SUMMARY =
  "Interest calculations should be checked for rate period, compounding convention, dates, units, equivalent accumulation and rounding."
}

FLOW {
 INPUT
 -> detect_interest_mathematics_context
 -> identify principal_or_cash flow_valuation dates_rate_quote_time unit_and_compounding convention
 -> classify simple_compound_effective_nominal_discount_force_spot_forward_or_yield rate
 -> convert_to_required_equivalent convention if necessary
 -> choose accumulation_or_discount direction
 -> compute accumulation_factor_or_discount_factor
 -> derive present_value_future_value_interest amount_or_equivalent rate
 -> if_variable rates apply sequential factors_or_integrated force
 -> if_term structure derive spot_forward_or_discount relationships
 -> if_annuity_loan_or_yield equation route to related cash-flow model
 -> validate dates_rate_period_units_equivalence_and_rounding
 -> route to financial_mathematics time_value annuity loan bond term_structure actuarial_mathematics computational_finance_or_numerical_analysis ontology
 -> recursively_expand_required_dependencies
 -> verify_result
 -> assign_confidence
 -> produce_semantic_output
 -> END
}

SEMANTIC_SUMMARY {
 "The Interest Mathematics Ontology defines mathematical interest and time-value relationships. It supports simple and compound interest, effective and nominal rates, discount rates and effective discount, force of interest, accumulation and discount functions, present and future value, principal and interest amounts, compounding and conversion periods, continuous and variable interest, spot and forward rates, yield rates, equivalent rates, inflation-adjusted real rates, money- and time-weighted returns, annuity factors, loan balances and amortisation, sinking funds, effective annual and quoted annual rates, rate conversion, doubling-time approximations, yield equations and internal rates of return."
}

FLOW_HASH {
 METHOD = "semantic-content-identity"
 ID = "KIRETH-MATH-APPLIED-MATHEMATICS-INTEREST-MATHEMATICS-ONTOLOGY-V1"
}

}

END_FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ