FLOW_ALGEBRA LogicalInferenceOntology v1.0
TARGET_URL := "https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/mathematical-logic-ontologies/logical-reasoning/logical-inference-ontology.html"
LANGUAGE := "en-GB"
DOMAIN := MathematicalOntologies > MathematicalLogicOntologies > LogicalReasoning > LogicalInferenceOntology
BEGIN_FLOW
ENTITY LogicalInference {
TYPE := FormalReasoningStep
DEFINITION := "A rule-governed transition from one or more premises to a conclusion within a specified logical system."
}
ENTITY Premise { TYPE := PropositionOrFormula }
ENTITY Conclusion { TYPE := PropositionOrFormula }
ENTITY InferenceRule { TYPE := FormalRuleSchema }
RELATIONSHIP LogicalInference --takes_input--> Premise
RELATIONSHIP LogicalInference --produces--> Conclusion
RELATIONSHIP LogicalInference --instantiates--> InferenceRule
RELATIONSHIP LogicalInference --belongs_to--> LogicalSystem
RELATIONSHIP LogicalInference --supports--> Derivation
RELATIONSHIP LogicalInference --supports--> Proof
INFERENCE_SCHEMA {
PREMISES := {P1,...,Pn}
CONCLUSION := C
}
VALID_RULE_APPLICATION {
GIVEN rule R and instantiation σ
IF premises match σ(R.premises)
AND side_conditions_hold
THEN infer σ(R.conclusion)
}
RULE_SIDE_CONDITION {
EXAMPLES := {
FreshVariable,
FreeForSubstitution,
EigenvariableCondition,
TypeCompatibility
}
}
SEMANTIC_SOUNDNESS {
Rule R sound IFF
FOR_ALL models M:
if all premises true then conclusion true
}
SYNTACTIC_INFERENCE {
Γ⊢C := C obtainable from Γ through permitted inference steps
}
SEMANTIC_ENTAILMENT {
Γ⊨C := every model of Γ satisfies C
}
DERIVATION {
TYPE := SequenceOrTreeOfLogicalInferences
}
PROOF_TREE {
LEAVES := {Premises,Assumptions,Axioms}
INTERNAL_NODES := RuleConclusions
ROOT := FinalConclusion
}
MODUS_PONENS {
P
P->Q
----
Q
}
CONJUNCTION_INTRODUCTION {
P
Q
----
P∧Q
}
CONJUNCTION_ELIMINATION {
P∧Q
----
P
}
DISJUNCTION_INTRODUCTION {
P
----
P∨Q
}
IMPLICATION_INTRODUCTION {
[P] ... Q
----
P->Q
REQUIRE discharge_assumption_P
}
NEGATION_INTRODUCTION {
[P] ... contradiction
----
¬P
}
EX_FALSO {
contradiction
----
P
REQUIRE explosive_logic
}
DOUBLE_NEGATION_ELIMINATION {
¬¬P
----
P
REQUIRE classical_or_compatible_logic
}
UNIVERSAL_ELIMINATION {
∀xP(x)
----
P(t)
REQUIRE t_free_for_x
}
UNIVERSAL_INTRODUCTION {
P(x)
----
∀xP(x)
REQUIRE eigenvariable_or_generality_condition
}
EXISTENTIAL_INTRODUCTION {
P(t)
----
∃xP(x)
}
EXISTENTIAL_ELIMINATION {
∃xP(x)
[P(c)] ... Q
----
Q
REQUIRE freshness_conditions
}
RESOLUTION {
P∨A
¬P∨B
----
A∨B
}
FIRST_ORDER_RESOLUTION {
C1∨L
C2∨¬L'
UNIFY L,L' WITH θ
----
(C1∨C2)θ
}
UNIFICATION {
INPUT := expressions E1,E2
OUTPUT := substitution θ
REQUIRE E1θ=E2θ
}
MOST_GENERAL_UNIFIER {
ABBREVIATION := MGU
PROPERTY := every_other_unifier_factors_through_MGU
}
SUBSTITUTION {
θ := mapping_variables_to_terms
}
CAPTURE_AVOIDANCE {
substitution MUST avoid unintended_variable_capture
}
SEQUENT {
FORM := Γ⊢Δ
}
CUT_RULE {
Γ⊢A
A,Π⊢Δ
----
Γ,Π⊢Δ
}
STRUCTURAL_RULES {
MAY_INCLUDE := {Weakening,Contraction,Exchange}
WARNING := not_available_unrestricted_in_every_logic
}
LINEAR_LOGIC_WARNING {
weakening_and_contraction are not generally unrestricted
}
NATURAL_DEDUCTION {
RULE_ORGANISATION := {IntroductionRules,EliminationRules}
}
HILBERT_CALCULUS {
COMPONENTS := {AxiomSchemas,InferenceRules}
}
TABLEAU_INFERENCE {
Formulae -> branch_expansion -> open_or_closed_branches
}
FORWARD_CHAINING {
START := KnownFacts
APPLY rules whose premises hold
ADD conclusions
STOP := fixed_point_or_goal
}
BACKWARD_CHAINING {
START := Goal
SELECT rules concluding goal
REDUCE := Subgoals
RECURSE until facts_or_premises
}
INFERENCE_ENGINE {
COMPONENTS := {
KnowledgeBase,
RuleSet,
MatchingStrategy,
SearchStrategy,
ProofTrace
}
}
RULE_MATCHING {
rule -> match premises -> instantiate -> validate
}
LOOP_DETECTION {
repeated_reasoning_state -> prune_or_memoise
}
HEURISTIC_SEARCH {
MAY improve efficiency
WARNING := failure_to_find_proof_does_not_establish_non_derivability
}
INFERENCE_TRACE {
RECORD := {
RuleName,
PremisesUsed,
Substitution,
SideConditions,
ConclusionDerived
}
}
VERIFY_INFERENCE_STEP(S,L) {
IDENTIFY rule R
VERIFY R belongs_to L
VERIFY premise_match
VERIFY substitution
VERIFY side_conditions
VERIFY conclusion
RETURN valid_or_failure_reason
}
VERIFY_DERIVATION(D,L) {
FOR_EACH step S:
VERIFY_INFERENCE_STEP(S,L)
IF invalid RETURN invalid_derivation
RETURN valid_derivation
}
ADMISSIBLE_RULE {
adding R does_not_enlarge_theorem_set
under standard proof_theoretic_definition
}
DERIVABLE_RULE {
conclusion derivable from premises using existing_rules
}
INVERTIBLE_RULE {
REQUIRE calculus_specific_definition
}
INFERENCE_VS_IMPLICATION {
ObjectLanguage := P->Q
MetaLevel := P⊢Q
MUST_REMAIN_DISTINCT := TRUE
}
INFERENCE_VS_ENTAILMENT {
InferenceStep := syntactic_rule_application
Entailment := semantic_consequence
}
INFERENCE_MODES {
DeductiveInference := truth_preserving
InductiveInference := ampliative_support
AbductiveInference := explanatory_hypothesis_generation
}
NONMONOTONIC_INFERENCE {
new_information MAY retract prior_conclusion
REQUIRE nonmonotonic_calculus
}
PARACONSISTENT_INFERENCE {
contradictions do_not_necessarily_explode
REQUIRE paraconsistent_logic
}
MODAL_INFERENCE {
REQUIRE modal_rules_and_semantics
}
TEMPORAL_INFERENCE {
REQUIRE temporal_rules_and_semantics
}
FUZZY_INFERENCE {
activation := graded
REQUIRE fuzzy_inference_semantics
}
PROOF_GRAPH {
NODES := FormulaOccurrences
EDGES := InferenceDependencies
}
DEPENDENCY_TRACKING {
DerivedFormula -> exact_premises_and_assumptions
}
ASSUMPTION_DISCHARGE {
temporary_assumption removed according_to proof_rule
}
SCOPE_VALIDATION {
assumptions MUST NOT escape scope unless properly_discharged
}
APPLICATION_RELATIONSHIPS {
LogicalInference --supports--> DeductiveReasoning
LogicalInference --supports--> FormalProof
LogicalInference --supports--> AutomatedTheoremProving
LogicalInference --supports--> LogicProgramming
LogicalInference --supports--> ArtificialIntelligence
LogicalInference --supports--> KnowledgeRepresentation
LogicalInference --supports--> FormalVerification
LogicalInference --supports--> ProofTheory
}
ONTOLOGY_LINKS {
PARENT := LogicalReasoningOntology
RELATED := {
DeductiveReasoningOntology,
InductiveReasoningOntology,
AbductiveReasoningOntology,
PropositionalLogicOntology,
PredicateLogicOntology,
NaturalDeductionOntology,
SequentCalculusOntology,
ResolutionOntology,
UnificationOntology,
ProofTheoryOntology,
EntailmentOntology
}
}
SEMANTIC_EQUIVALENCE {
LogicalInference ≈ FormalInference
InferenceRule ≈ RuleOfInference
RuleApplication ≈ InferenceStep
Derivation ≈ SequenceOrTreeOfInferenceSteps
}
CONSTRAINTS {
C1 := every inference MUST identify its logical system when rule validity depends on it
C2 := rule premises MUST match selected rule schema
C3 := all side conditions MUST be satisfied
C4 := substitution MUST avoid capture and respect typing/sorts
C5 := syntactic inference MUST NOT be conflated with semantic entailment
C6 := object-language implication MUST NOT be conflated with meta-level inference
C7 := structural rules MUST NOT be assumed where restricted
C8 := failed heuristic search MUST NOT establish non-derivability
C9 := assumption scopes and discharge MUST be preserved
C10 := nonclassical inference MUST use declared semantics
C11 := proof traces MUST record actual dependencies
C12 := derived formulae MUST remain well-formed
}
REASONING_CHAIN Query Q {
IDENTIFY logical_system L
IDENTIFY premises Γ
IDENTIFY target C
IDENTIFY available_rules
PARSE formulae
CHECK well_formedness
FOR_EACH candidate_rule {
MATCH premises
COMPUTE substitution_if_needed
CHECK side_conditions
DERIVE conclusion_if_valid
RECORD inference_trace
}
IF forward_chaining
THEN iterate_until_goal_or_fixed_point
IF backward_chaining
THEN decompose_goal_into_subgoals
IF resolution_context
THEN unify_and_resolve
IF natural_deduction_context
THEN manage_assumptions_and_discharge
IF sequent_context
THEN apply_allowed_sequent_rules
IF nonclassical_context
THEN enforce_logic_specific_rules
IF target_derived
THEN VERIFY_DERIVATION
VALIDATE constraints
RETURN inference_result WITH proof_trace
}
CONFIDENCE {
LOGICAL_INFERENCE_DEFINITION := 1.00
RULE_APPLICATION_PATTERN := 1.00
NATURAL_DEDUCTION_RULES := 1.00
RESOLUTION_RULE := 1.00
QUANTIFIER_SIDE_CONDITIONS := 0.99
SYNTACTIC_SEMANTIC_DISTINCTION := 1.00
SPECIFIC_INFERENCE :=
IF logic_rules_premises_and_side_conditions_complete THEN 1.00
ELSE REQUIRE missing_information
}
UPDATE_MODEL {
IMMUTABLE_CORE := {
PremiseConclusionStructure,
RuleSchema,
RuleInstantiation,
SideConditionValidation,
DerivationDependency
}
EXTENSIBLE := {
InferenceRules,
ProofCalculi,
SearchStrategies,
UnificationMethods,
NonmonotonicRules,
ModalTemporalRules,
AutomatedReasoningMethods,
ApplicationDomains,
RelatedOntologies
}
ON_NEW_KNOWLEDGE {
IDENTIFY logical_calculus
VALIDATE rule_schema
VALIDATE substitutions
CHECK side_conditions
CHECK assumption_scopes
CHECK semantic_consistency
ADD relationship IF non_contradictory
UPDATE confidence
}
}
AI_CONSUMPTION {
MACHINE_READABLE := TRUE
HUMAN_INTERPRETABLE := TRUE
RECURSIVE_REASONING := TRUE
ENTITY_RESOLUTION := TRUE
FORMULA_RESOLUTION := TRUE
RULE_RESOLUTION := TRUE
RULE_MATCHING := TRUE
SUBSTITUTION_REASONING := TRUE
SIDE_CONDITION_VALIDATION := TRUE
FORWARD_CHAINING := TRUE
BACKWARD_CHAINING := TRUE
RESOLUTION_REASONING := TRUE
ASSUMPTION_SCOPE_REASONING := TRUE
PROOF_TRACE_GENERATION := TRUE
DERIVATION_VALIDATION := TRUE
}
FLOW_HASH {
TARGET := TARGET_URL
SUBJECT := "Logical Inference Ontology"
VERSION := "1.0"
CANONICAL_SIGNATURE := HASH(TARGET + SUBJECT + DOMAIN + VERSION)
}
OUTPUT {
PRIMARY_ENTITY := LogicalInference
INTERPRETATION := "Logical inference is a formal transition from premises to a conclusion by an explicitly defined rule. Valid inference requires correct rule matching, substitution, side-condition handling and assumption scope, while complete derivations compose these individual steps into proof structures."
}
END_FLOW
Download Code
Copy to Clipboard