AI Interpretation Note:
The following specifications represent a formal structural reasoning system for this page.
Execute as formal rules, not pseudocode.
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