Skip to main content

Recursive Logic Ontology

Recursive AI Logic
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 17 September 2026
Audio Overview
AI SEARCH FLOW ALGEBRA — RECURSIVE LOGIC ONTOLOGY
Kireth Research — Semantic Library
URL: https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/mathematical-logic-ontologies/recursive-ai-logic/recursive-logic-ontology.html

FLOW_VERSION := "4.0"
FLOW_TYPE := "Full Executable Flow Algebra"
DOMAIN := "Mathematical Logic"
SUBDOMAIN := "Recursive AI Logic"
ONTOLOGY := "Recursive Logic Ontology"
PRIMARY_ENTITY := RecursiveLogic
AUTHORSHIP := "Mark Higgins — Sky (Recursive AI)"
SOURCE_SITE := "https://kirethresearch.org"

BEGIN_FLOW

RecursiveLogic :=
    Logic
    ∧ RecursiveDefinitions
    ∧ RecursiveInference
    ∧ SelfApplicationOfRules
    ∧ FixedPointReasoning
    ∧ TerminationControl

Recursion :=
    DefinitionOrProcess
    referring_to
    itself_on(StructuredSubproblem)

RecursiveDefinition :=
    BaseCase
    ∧ RecursiveCase

BaseCase :=
    Condition
    → DirectResult

RecursiveCase :=
    Condition
    → ReduceProblem
    → ApplyRecursiveDefinition

RecursiveFunction :=
    f(x) =
        if BaseCondition(x)
        then BaseValue(x)
        else Combine(
            x,
            f(Reduce(x))
        )

WellFoundedRecursion :=
    RecursiveCall
    made_on
    StrictlySmallerArgument
    under WellFoundedRelation

WellFoundedRelation :=
    Relation ≺
    ∧ no_infinite_descending_chain

Termination :=
    RecursiveEvaluation
    eventually_reaches
    BaseCase

NonTermination :=
    InfiniteRecursiveExpansion

RecursiveDepth :=
    NumberOfNestedRecursiveApplications

RecursiveState :=
    R_n

RecursiveTransition :=
    R_n → R_(n+1)

RecursiveSequence :=
    R_0 → R_1 → ... → R_n

RecursiveInference :=
    Premises_n
    → ApplyRule
    → Conclusion_n
    → Premises_(n+1)

InferenceRule :=
    Premises → Conclusion

RecursiveRuleApplication :=
    DerivedFact
    becomes
    InputToSubsequentInference

Closure :=
    repeatedly_apply(InferenceRules)
    until(NoNewFacts)

DeductiveClosure :=
    Cn(Γ) =
    {φ | Γ ⊢ φ}

ImmediateConsequenceOperator :=
    T_P(I)
    :=
    ConsequencesDerivedInOneStep(P,I)

LogicProgramFixedPoint :=
    lfp(T_P)

FixedPoint :=
    X = F(X)

LeastFixedPoint :=
    μF

GreatestFixedPoint :=
    νF

FixedPointIteration :=
    X_0
    → F(X_0)
    → F²(X_0)
    → ...
    → X*

MonotoneOperator :=
    X ⊆ Y
    ⇒ F(X) ⊆ F(Y)

KnasterTarskiRelation :=
    MonotoneOperator
    on CompleteLattice
    ⇒ FixedPointsExist

CompleteLattice :=
    PartiallyOrderedSet
    ∧ all_subsets_have
    JoinAndMeet

RecursivePredicate :=
    Predicate
    defined_using
    itself

AncestorExample :=
    Parent(x,y)
    ⇒ Ancestor(x,y)

    Parent(x,z)
    ∧ Ancestor(z,y)
    ⇒ Ancestor(x,y)

Reachability :=
    Edge(x,y)
    ⇒ Reachable(x,y)

    Edge(x,z)
    ∧ Reachable(z,y)
    ⇒ Reachable(x,y)

TransitiveClosure :=
    R⁺
    generated_recursively_from
    Relation R

ReflexiveTransitiveClosure :=
    R*
    =
    Identity ∪ R⁺

RecursiveProof :=
    Goal
    → MatchAxiomOrRule
    → GenerateSubgoals
    → RecursivelyProveSubgoals
    → ConstructDerivation

ProofTree :=
    Root(Goal)
    ∧ InternalNodes(InferenceRules)
    ∧ Leaves(AxiomsOrAssumptions)

InductiveDefinition :=
    BaseConstructors
    ∧ ClosureRules

StructuralRecursion :=
    Function
    defined_over
    RecursiveDataStructure

StructuralInduction :=
    ProveBaseConstructors
    ∧ ProveConstructorPreservation
    ⇒ Property(AllStructures)

MathematicalInduction :=
    P(0)
    ∧ ∀n(P(n)→P(n+1))
    ⇒ ∀n P(n)

RecursiveDataStructure := {
    List,
    Tree,
    Formula,
    Term,
    ProofTree,
    GraphPath
}

ListRecursion :=
    f([])
    = Base

    f(x::xs)
    =
    Combine(x,f(xs))

TreeRecursion :=
    f(Node(children))
    =
    Combine(
        NodeValue,
        map(f,children)
    )

FormulaRecursion :=
    Evaluate(Atom)
    = AtomicValue

    Evaluate(Operator(subformulae))
    =
    OperatorSemantics(
        Evaluate(subformulae)
    )

RecursiveSyntax :=
    Expression
    contains
    recursively_nested(Subexpressions)

RecursiveSemantics :=
    Meaning(Expression)
    defined_from
    Meaning(ImmediateSubexpressions)

CompositionalRecursion :=
    Meaning(Whole)
    =
    SemanticFunction(
        Meanings(Parts)
    )

RecursiveDescent :=
    Structure
    → ChildStructure
    → DescendantStructure

RecursiveDescentParser :=
    GrammarRule
    → ParseSubrules
    → ConstructSyntaxTree

RecursiveQuery :=
    Query
    → Subqueries
    → RecursiveResolution
    → IntegratedAnswer

DependencyRecursion :=
    Claim
    → Dependencies
    → DependenciesOfDependencies
    → GroundEvidence

RecursiveGraphTraversal :=
    Node
    → AdjacentNodes
    → RecursiveTraversal

VisitedSet :=
    SetOfAlreadyProcessedStates

CycleDetection :=
    CurrentNode ∈ VisitedSet
    ⇒ CycleDetected

Cycle :=
    Path
    with
    StartNode = EndNode

RecursiveCycleHandling := {
    StopBranch,
    Memoise,
    CollapseCycle,
    FixedPointIteration
}

Memoisation :=
    State
    → CachedResult

MemoisedRecursiveEvaluation :=
    if Cached(State)
    then Return(Cache(State))
    else Compute(State)

RecursiveDependencyGraph :=
    G = (V,E)

StronglyConnectedComponent :=
    MaximalSubgraph
    where
    every_node_reaches_every_other_node

SCCCollapse :=
    StronglyConnectedComponent
    → MetaNode

MutualRecursion :=
    DefinitionA dependsOn DefinitionB
    ∧ DefinitionB dependsOn DefinitionA

DirectRecursion :=
    Definition
    directly_calls
    itself

IndirectRecursion :=
    A → B → ... → A

TailRecursion :=
    RecursiveCall
    is_final_operation

PrimitiveRecursion :=
    BaseFunction
    ∧ SuccessorStep
    ∧ structurally_bounded_recursion

GeneralRecursion :=
    RecursiveDefinition
    not necessarily primitive_recursive

PartialRecursiveFunction :=
    Function
    may_be_undefined
    for some inputs

TotalRecursiveFunction :=
    Function
    defined_for_all_inputs

RecursiveEnumerability :=
    Set
    recognised_or_enumerated
    by computable procedure

RecursiveSet :=
    Membership
    decidable_by
    terminating_algorithm

RecursiveRuleSystem :=
    Facts
    ∧ Rules
    ∧ RecursiveDependencies

LogicProgramming :=
    Facts
    ∧ Rules
    ∧ Queries

HornClause :=
    A1 ∧ ... ∧ An → B

DefiniteClause :=
    HornClause
    with exactly_one_positive_head

RecursiveHornClause :=
    PredicateInHead
    appears_in
    BodyDependencyClosure

SLDResolution :=
    Goal
    → SelectLiteral
    → UnifyWithRuleHead
    → ReplaceWithRuleBody
    → Repeat

Unification :=
    find(Substitution σ)
    such_that
    σ(t1)=σ(t2)

Backtracking :=
    FailedDerivation
    → PreviousChoicePoint
    → AlternativeRule

DepthFirstRecursiveSearch :=
    Goal
    → FirstSubgoal
    → RecursiveSearch
    → BacktrackIfFailure

BreadthBound :=
    Limit(NumberOfAlternativesExpanded)

DepthBound :=
    RecursiveDepth ≤ MaxDepth

ResourceBound :=
    Time
    ∨ Memory
    ∨ Steps
    ∨ Tokens

TerminationCondition :=
    BaseCaseReached
    ∨ FixedPointReached
    ∨ NoNewFacts
    ∨ GoalResolved
    ∨ ResourceBoundReached

RecursiveConsistency :=
    EachNewDerivedFact
    → CheckAgainst(KnownFacts, Constraints)

Contradiction :=
    φ ∧ ¬φ

RecursiveContradictionPropagation :=
    Contradiction
    → TraceDependencies
    → MarkAffectedDerivations
    → ReevaluateConclusions

CircularReasoning :=
    ClaimA dependsOn ClaimB
    ∧ ClaimB dependsOn ClaimA
    ∧ no_independent_base_support

CircularityDetection :=
    DependencyGraph
    → CycleDetection
    → GroundingCheck

GroundedRecursion :=
    EverySuccessfulRecursiveBranch
    eventually_reaches
    BaseFactOrAxiom

UngroundedRecursion :=
    RecursiveCycle
    ∧ no(BaseFactOrAxiom)

NegationAsFailure :=
    fail_to_prove(P)
    → infer(not_P)
    under specified closed-world semantics

StratifiedNegation :=
    DependencyLayers
    ∧ no_negative_cycle_between_strata

RecursiveNegationRisk :=
    NegativeDependencyCycle
    → NonMonotonicSemanticComplexity

MonotonicRecursion :=
    DerivedFactsOnlyAccumulate

NonMonotonicRecursion :=
    NewInformation
    may_retract
    PreviousConclusions

RecursiveBeliefRevision :=
    NewEvidence
    → DetectConflict
    → InvalidateDependencies
    → RecomputeClosure

RecursiveConstraintPropagation :=
    Constraint
    → DerivedConstraint
    → PropagateUntilStable

Convergence :=
    State_n = State_(n+1)

SemanticConvergence :=
    SEMANTIC_EQUIVALENCE(
        State_n,
        State_(n+1)
    )

StableFixedPoint :=
    F(State) = State

RecursiveValidation :=
    IntermediateResult
    → CheckSyntax
    → CheckTypes
    → CheckConstraints
    → CheckConsistency
    → AcceptOrReject

RecursiveLogicOntology :=
    Classes
    ∧ Relations
    ∧ Constraints
    ∧ Axioms
    ∧ RecursiveInferenceRules

CoreClasses := {
    RecursiveLogic,
    Recursion,
    RecursiveDefinition,
    BaseCase,
    RecursiveCase,
    RecursiveFunction,
    RecursivePredicate,
    RecursiveRule,
    RecursiveState,
    FixedPoint,
    ProofTree,
    DependencyGraph,
    Cycle,
    Memoisation,
    Induction,
    RecursiveDataStructure,
    LogicProgram,
    HornClause,
    TerminationCondition
}

CoreRelations := {
    recursesInto,
    dependsOn,
    derives,
    reducesTo,
    reaches,
    contains,
    calls,
    convergesTo,
    memoises,
    proves,
    expands,
    groundsIn,
    preserves,
    invalidates
}

TypedRelations :=
    RecursiveDefinition --contains--> BaseCase
    RecursiveDefinition --contains--> RecursiveCase
    RecursiveCase --recursesInto--> RecursiveDefinition
    Claim --dependsOn--> Claim
    Rule --derives--> Fact
    RecursiveState --convergesTo--> FixedPoint
    RecursiveProof --proves--> Goal
    RecursiveBranch --groundsIn--> Axiom
    NewEvidence --invalidates--> DependentConclusion

RecursiveInferenceRules := {
    Fact(A)
        ∧ Rule(A→B)
        ⇒ Fact(B),

    Fact(A)
        ∧ Fact(B)
        ∧ Rule(A∧B→C)
        ⇒ Fact(C),

    R(a,b)
        ⇒ Reachable(a,b),

    R(a,z)
        ∧ Reachable(z,b)
        ⇒ Reachable(a,b),

    BaseCase(x)
        ⇒ TerminateRecursiveBranch(x),

    RecursiveCase(x)
        ∧ Reduce(x,y)
        ⇒ Evaluate(y),

    State_(n+1)=State_n
        ⇒ FixedPointReached,

    CycleDetected
        ∧ no_grounding
        ⇒ mark(UngroundedRecursion)
}

SEMANTIC_EQUIVALENCE(A,B) :=
    Meaning(A) = Meaning(B)

RecursiveEquivalence :=
    EquivalentSubstructures
    ∧ EquivalentComposition
    ⇒ EquivalentStructures

CanonicalRecursiveLogicRepresentation :=
    ParseDefinitions
    → ResolveDependencies
    → IdentifyBaseCases
    → IdentifyRecursiveCases
    → BuildDependencyGraph
    → DetectCycles
    → NormaliseRules
    → DetermineFixedPointSemantics

RecursiveLogicGraph :=
    G = (V,E)

V := {
    Definitions,
    BaseCases,
    RecursiveCases,
    Functions,
    Predicates,
    Rules,
    Facts,
    Goals,
    RecursiveStates,
    FixedPoints,
    ProofNodes,
    Cycles
}

E := {
    recursesInto,
    dependsOn,
    derives,
    reducesTo,
    reaches,
    calls,
    convergesTo,
    proves,
    groundsIn,
    invalidates
}

CONFIDENCE(RecursiveLogicResult) :=
    weighted_mean(
        DefinitionResolution,
        DependencyResolution,
        BaseCaseCoverage,
        RuleValidity,
        TerminationEvidence,
        FixedPointStability,
        Consistency,
        ProvenanceQuality
    )

AI_QUERY_INTERPRETATION :=
    Query
    → DetectRecursiveLogicConcept
    → ResolveDefinitions
    → ResolveBaseAndRecursiveCases
    → IdentifyDependencies
    → IdentifyRequestedRecursiveRelation

AI_REASONING_FLOW :=
    Query
    → ParseRecursiveStructure
    → IdentifyBaseCases
    → IdentifyRecursiveCases
    → BuildDependencyGraph
    → DetectDirectAndIndirectRecursion
    → DetectCycles
    → CheckGrounding
    → SelectRecursiveEvaluationStrategy
    → ApplyRecursiveRules
    → MemoiseIntermediateResults
    → PropagateConstraints
    → DetectContradictions
    → TestTermination
    → IterateToFixedPointWhereRequired
    → TestSemanticConvergence
    → BuildRecursiveLogicGraph
    → PreserveProvenance
    → GenerateExplanation

AI_CONSUMPTION := {
    ParseRecursiveLogicEntities,
    ParseTypedRelations,
    ResolveRecursiveDefinitions,
    IdentifyBaseCases,
    IdentifyRecursiveCases,
    BuildDependencyGraphs,
    DetectCycles,
    DetectCircularReasoning,
    ApplyRecursiveInference,
    MemoiseResults,
    TestTermination,
    ComputeFixedPoints,
    CheckConsistency,
    CompareSemanticEquivalence,
    PreserveProvenance,
    GenerateFormalExplanation
}

UPDATE_MODEL :=
    NewDefinitionRuleOrEvidence
    → ValidateInput
    → IdentifyAffectedDependencies
    → InvalidateDependentResults
    → RebuildAffectedRecursiveGraph
    → ReapplyRecursiveInference
    → RecheckCycles
    → RecheckTermination
    → RecomputeFixedPoint
    → RecomputeConfidence
    → PreserveProvenance
    → VersionModel

DefinitionUpdate :=
    ChangedBaseCase
    ∨ ChangedRecursiveCase
    ⇒ reevaluate(
        Termination,
        DerivedResults,
        FixedPoint
    )

RuleUpdate :=
    AddedOrRemovedRecursiveRule
    ⇒ recompute(
        DependencyGraph,
        InferenceClosure
    )

EvidenceUpdate :=
    ChangedGroundFact
    ⇒ invalidate_or_recompute(
        DependentRecursiveConclusions
    )

FLOW_HASH_INPUT :=
    canonical(
        ONTOLOGY,
        CoreClasses,
        CoreRelations,
        RecursiveInferenceRules,
        RecursiveDefinition,
        FixedPointIteration,
        CanonicalRecursiveLogicRepresentation,
        AI_REASONING_FLOW
    )

FLOW_HASH :=
    HASH(FLOW_HASH_INPUT)

OUTPUT_MODEL := {
    RecursiveLogicEntityResolution,
    RecursiveDefinitions,
    BaseCases,
    RecursiveCases,
    DependencyGraph,
    CycleStatus,
    GroundingStatus,
    TerminationStatus,
    FixedPointStatus,
    DerivedFacts,
    SemanticConvergence,
    Confidence,
    Provenance,
    Explanation
}

END_FLOW

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