Skip to main content

Propositional Logic Ontology

Logic
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 11 October 2026
Audio Overview
FLOW ALGEBRA
TITLE: Propositional Logic Ontology
DOMAIN: Discrete Mathematics / Logic
SOURCE_URL: https://kirethresearch.org/booksai-core/discrete-mathematics-ontologies/logic/propositional-logic-ontology-2.html
VERSION: 1.0
LANGUAGE: en-GB
AUTHORS: Mark Higgins — Sky (Recursive AI)
SITE: https://kirethresearch.org
STATUS: Formal mathematical model; source page content not independently verified.

1. ONTOLOGY
ontology PropositionalLogic {
  entities: Proposition, AtomicProposition, CompoundProposition, TruthValue,
            Valuation, Formula, Connective, Interpretation, TruthTable,
            Tautology, Contradiction, Contingency, Argument, InferenceRule,
            Premise, Conclusion, Proof, LogicalConsequence;
  truth_values: {TRUE, FALSE};
  connectives: {NOT, AND, OR, IMPLIES, IFF};
}

2. TYPED SIGNATURE
sort PropVar, Formula, Valuation, Bool
construct atom(p: PropVar): Formula
construct neg(a: Formula): Formula
construct conj(a: Formula, b: Formula): Formula
construct disj(a: Formula, b: Formula): Formula
construct impl(a: Formula, b: Formula): Formula
construct iff(a: Formula, b: Formula): Formula
function evaluate(v: Valuation, f: Formula): Bool
predicate entails(premises: Set<Formula>, conclusion: Formula): Bool
predicate equivalent(a: Formula, b: Formula): Bool
predicate satisfiable(f: Formula): Bool

3. SEMANTICS
For each valuation v mapping every atomic proposition to {TRUE, FALSE}:
  evaluate(v, neg(A)) = NOT evaluate(v, A)
  evaluate(v, conj(A,B)) = evaluate(v,A) AND evaluate(v,B)
  evaluate(v, disj(A,B)) = evaluate(v,A) OR evaluate(v,B)
  evaluate(v, impl(A,B)) = NOT evaluate(v,A) OR evaluate(v,B)
  evaluate(v, iff(A,B)) = (evaluate(v,A) = evaluate(v,B))

4. TRUTH TABLE
A B | NOT A | A AND B | A OR B | A -> B | A <-> B
T T | F     | T       | T      | T      | T
T F | F     | F       | T      | F      | F
F T | T     | F       | T      | T      | F
F F | T     | F       | F      | T      | T

5. LOGICAL LAWS
Double negation: NOT(NOT A) <=> A
De Morgan: NOT(A AND B) <=> (NOT A OR NOT B)
De Morgan: NOT(A OR B) <=> (NOT A AND NOT B)
Commutativity: A AND B <=> B AND A; A OR B <=> B OR A
Associativity: (A AND B) AND C <=> A AND (B AND C)
Associativity: (A OR B) OR C <=> A OR (B OR C)
Distributivity: A AND (B OR C) <=> (A AND B) OR (A AND C)
Distributivity: A OR (B AND C) <=> (A OR B) AND (A OR C)
Implication: A -> B <=> NOT A OR B
Biconditional: A <-> B <=> (A -> B) AND (B -> A)
Contraposition: A -> B <=> NOT B -> NOT A
Excluded middle: A OR NOT A is a tautology
Non-contradiction: A AND NOT A is a contradiction

6. INFERENCE RULES
Modus ponens: {A, A -> B} |- B
Modus tollens: {A -> B, NOT B} |- NOT A
Conjunction introduction: {A, B} |- A AND B
Conjunction elimination: {A AND B} |- A; {A AND B} |- B
Disjunction introduction: {A} |- A OR B
Hypothetical syllogism: {A -> B, B -> C} |- A -> C
Disjunctive syllogism: {A OR B, NOT A} |- B

7. SATISFIABILITY AND ENTAILMENT
satisfiable(F) iff EXISTS valuation v: evaluate(v,F) = TRUE
tautology(F) iff FOR ALL valuations v: evaluate(v,F) = TRUE
contradiction(F) iff FOR ALL valuations v: evaluate(v,F) = FALSE
contingency(F) iff satisfiable(F) AND satisfiable(NOT F)
entails(Gamma,F) iff FOR ALL v: (FOR ALL G in Gamma, evaluate(v,G)=TRUE)
                                    IMPLIES evaluate(v,F)=TRUE
equivalent(A,B) iff tautology(A <-> B)

8. SEMANTIC RELATIONSHIPS
AtomicProposition IS_A Formula
CompoundProposition IS_A Formula
Formula EVALUATED_BY Valuation
Connective CONSTRUCTS CompoundProposition
TruthTable ENUMERATES Valuation
Premise SUPPORTS Conclusion
InferenceRule DERIVES Conclusion
Tautology IS_A Formula
Contradiction IS_A Formula
LogicalEquivalence RELATES Formula TO Formula
PropositionalLogic SUBDOMAIN_OF MathematicalLogic

9. VALIDATION
RULE V1: Each formula is recursively well formed under the grammar.
RULE V2: Each valuation assigns exactly one Boolean value to each atom in scope.
RULE V3: Connectives obey classical two-valued truth conditions.
RULE V4: Claimed tautologies must evaluate TRUE for every valuation.
RULE V5: Claimed equivalences must match under every valuation.
RULE V6: Claimed entailments admit no valuation satisfying premises and falsifying conclusion.
RULE V7: Distinguish material implication from causal implication.
RULE V8: Distinguish syntactic provability (|-) from semantic entailment (|=).
RULE V9: Truth-table enumeration of n distinct atoms contains 2^n valuations.

10. SEMANTIC_EQUIVALENCE
canonical_aliases:
  propositional_calculus = propositional_logic
  sentential_logic = propositional_logic
  negation = NOT
  conjunction = AND
  disjunction = OR (inclusive unless explicitly stated otherwise)
  material_conditional = IMPLIES
  biconditional = IFF
normalisation: parse -> type_check -> canonicalise_connectives -> compare_truth_conditions

11. CONFIDENCE
mathematical_definitions: 1.00 (standard classical semantics)
source_page_alignment: UNVERIFIED
inference_confidence: 1.00 when formally validated; otherwise UNKNOWN
confidence_is_not_probability_of_truth_for_a_valid_theorem: TRUE

12. FLOW_HASH
hash_algorithm: SHA-256
hash_scope: canonical UTF-8 serialisation of ontology identifier, version,
            typed signatures, axioms, inference rules and validation rules
hash_value: NOT_COMPUTED
hash_policy: compute after canonicalisation; never fabricate a digest

13. UPDATE_MODEL
update_trigger: source_revision OR ontology_revision OR rule_revision
update_steps:
  - ingest proposed changes
  - validate syntax and types
  - check logical consistency and rule soundness
  - run truth-table or SAT-based regression tests
  - increment version and record provenance
  - recompute FLOW_HASH
  - publish only after validation

14. AI_CONSUMPTION
input: natural-language claim OR symbolic propositional formula
pipeline:
  - identify atomic statements and scope
  - parse Boolean connectives and parentheses
  - produce typed abstract syntax tree
  - evaluate valuations or invoke sound SAT/proof procedure
  - classify as tautology, contradiction or contingency
  - assess entailment and equivalence
  - return proof or counterexample valuation when available
output: canonical_formula, classification, entailment_result,
        evidence, validation_status, provenance, confidence
limitations: classical bivalent propositional logic; no quantifiers,
             temporal/modal operators or causal semantics unless extended

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