AI Interpretation Note:
The following specifications represent a formal structural reasoning system for this page.
Execute as formal rules, not pseudocode.
FLOW ALGEBRA
TITLE: Symmetric Relation Ontology
DOMAIN: Discrete Mathematics / Relations
SOURCE_URL: https://kirethresearch.org/booksai-core/discrete-mathematics-ontologies/relations/symmetric-relation-ontology.html
VERSION: 1.0
LANGUAGE: en-GB
AUTHORS: Mark Higgins — Sky (Recursive AI)
SITE: https://kirethresearch.org
STATUS: Formal mathematical model; source page not independently verified
1. ONTOLOGY DEFINITION
A symmetric relation R on a set A is a binary relation R subseteq A x A satisfying:
forall a,b in A: (a,b) in R => (b,a) in R.
Equivalently R = R^{-1}, where R^{-1} is the converse relation.
Symmetry does not imply reflexivity or transitivity.
2. TYPED ENTITIES
Set[A] : carrier set
Element[a:A] : member of A
Pair[(a,b):A x A] : ordered pair
Relation[R:P(A x A)] : binary relation
Converse[R_inv] : {(b,a) | (a,b) in R}
SymmetricRelation[R] : Relation[R] with symmetry invariant
SymmetricClosure[S] : R union R_inv
IdentityRelation[I_A] : {(a,a) | a in A}
EquivalenceRelation[E] : reflexive, symmetric, transitive relation
3. CORE FLOW OPERATIONS
define_relation(A, pairs) -> R
PRE: pairs subseteq A x A
POST: R = pairs
converse(R) -> R_inv
POST: (a,b) in R_inv iff (b,a) in R
is_symmetric(R,A) -> Boolean
PRE: R subseteq A x A
RETURN: forall (a,b) in R, (b,a) in R
symmetric_closure(R) -> S
POST: S = R union converse(R)
GUARANTEE: S is symmetric and R subseteq S
missing_converses(R) -> M
POST: M = converse(R) difference R
4. FORMAL INVARIANTS AND LAWS
SYM-01: Symmetric(R) iff R = R_inv.
SYM-02: Symmetric(R) iff forall a,b, aRb => bRa.
SYM-03: converse(converse(R)) = R.
SYM-04: symmetric_closure(R) = R union R_inv.
SYM-05: symmetric_closure(symmetric_closure(R)) = symmetric_closure(R).
SYM-06: R subseteq symmetric_closure(R).
SYM-07: If R subseteq T and T is symmetric, then symmetric_closure(R) subseteq T.
SYM-08: The union and intersection of any family of symmetric relations on A are symmetric.
SYM-09: The complement (A x A) difference R of a symmetric R is symmetric.
SYM-10: If R is symmetric, R composed with R is symmetric; more generally every positive relational power of R is symmetric.
SYM-11: The identity relation and the empty relation on A are symmetric.
SYM-12: Symmetry alone does not imply reflexivity, transitivity or antisymmetry.
5. INFERENCE RULES
RULE SymmetryIntroduction:
GIVEN: (a,b) in R AND Symmetric(R)
INFER: (b,a) in R
RULE SymmetryViolation:
GIVEN: (a,b) in R AND (b,a) not in R
INFER: NOT Symmetric(R)
RULE ClosureMinimality:
GIVEN: R subseteq T AND Symmetric(T)
INFER: symmetric_closure(R) subseteq T
RULE EquivalenceRecognition:
GIVEN: Reflexive(R) AND Symmetric(R) AND Transitive(R)
INFER: EquivalenceRelation(R)
6. SEMANTIC RELATIONSHIPS
SymmetricRelation --is_a--> BinaryRelation
SymmetricRelation --has_property--> Symmetry
Symmetry --defined_by--> ConverseInvariance
SymmetricClosure --constructed_from--> RelationUnion
SymmetricClosure --uses--> ConverseRelation
EquivalenceRelation --requires--> Symmetry
UndirectedGraphAdjacency --can_be_modelled_as--> SymmetricRelation
RelationPair --has_converse--> RelationPair
7. EXAMPLES AND COUNTEREXAMPLES
A = {1,2,3}
R = {(1,2),(2,1),(3,3)}
RESULT: Symmetric(R) = true.
Q = {(1,2),(3,3)}
RESULT: Symmetric(Q) = false; missing_converses(Q) = {(2,1)}.
symmetric_closure(Q) = {(1,2),(2,1),(3,3)}.
Note: A relation containing only (1,2) and (2,1) is symmetric but not reflexive on A.
8. VALIDATION
CHECK-01: Carrier set and relation are well-typed.
CHECK-02: Each relation pair belongs to A x A.
CHECK-03: Every pair has its converse when symmetry is asserted.
CHECK-04: Closure contains all original pairs.
CHECK-05: Closure adds no pairs beyond required converses.
CHECK-06: Empty-set and self-loop cases are accepted.
CHECK-07: Do not infer reflexivity or transitivity from symmetry alone.
VALIDATION_STATUS: pass iff all applicable checks pass.
9. SEMANTIC_EQUIVALENCE
Symmetric(R) <=> R = converse(R)
Symmetric(R) <=> forall (a,b) in R: (b,a) in R
Symmetric(R) <=> symmetric_closure(R) = R
Equivalences are mathematical identities under the declared carrier and typing.
10. CONFIDENCE
MATHEMATICAL_DEFINITIONS: 1.00 (deductive, under standard set theory)
RULE_CORRECTNESS: 1.00 (subject to stated preconditions)
PAGE_CONTENT_MATCH: unverified
Do not interpret confidence values as measured empirical probabilities.
11. FLOW_HASH
METHOD: SHA-256 of canonical UTF-8 file bytes, computed by consuming system.
VALUE: compute_at_ingestion
NOTE: Do not embed a self-referential hash inside the hashed payload.
12. UPDATE_MODEL
CHANGE_TRIGGER: definition correction | expanded relation taxonomy | new proof | source-page revision
UPDATE_ACTION: validate types; recheck laws; regenerate canonical flow; recompute hash; retain provenance
COMPATIBILITY: preserve mathematical meaning and existing stable entity identifiers
13. AI_CONSUMPTION
INTENT: machine-readable mathematical reasoning and semantic retrieval
INPUT: typed sets, relation pairs, property claims
OUTPUT: symmetry decisions, closure sets, missing converse pairs, proof traces
SAFETY: distinguish mathematical deduction from unverified website-specific statements
TRACE: attach rule IDs, carrier set, source URL and validation result
END FLOW ALGEBRA