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
Download Code
Copy to Clipboard