Relations 2 a Relation R on a Set a Is Called Symmetric If (B, A)R Vojislav Kecman Whenever (A, B)R for All A, Ba

Relations 2 a Relation R on a Set a Is Called Symmetric If (B, A)R Vojislav Kecman Whenever (A, B)R for All A, Ba

14/09/2015 Reminder About Basic Properties of Relations Definitions: VCU, Department of Computer Science A relation R on a set A is called reflexive if (a, a)R for every element aA. CMSC 302 Relations 2 A relation R on a set A is called symmetric if (b, a)R Vojislav Kecman whenever (a, b)R for all a, bA. A relation R on a set A is called transitive if whenever (a, b)R and (b, c)R, then (a, c)R for a, b, c A. 14/09/2015 1/57 14/09/2015 2/57 Representing Relations Representing Relations •Example: How can we represent the relation R defined •We already know different ways of representing relations. We will between the set A{1, 2, 3} and set B{1, 2} where now take a closer look at two ways of representation: Zero-one R = {(2, 1), (3, 1), (3, 2)} as a zero-one matrix? matrices and directed graphs (digraphs). •If R is a relation from A = {a1, a2, …, am} to B = •Solution: The matrix MR is given by {b1, b2, …, bn}, then R can be represented by the zero-one matrix MR = [mij] with •mij = 1, if (ai, bj)R, and 00 •mij = 0, if (ai, bj)R. M 10 R •Note that for creating this matrix we first need to list the elements 11 in A and B in a particular, but arbitrary order. 14/09/2015 3/57 14/09/2015 4/57 1 14/09/2015 Representing Relations Representing Relations •What do we know about the matrices representing a relation •What do we know about the matrices representing symmetric on a set (a relation from A to A) ? relations? t •They are square matrices. •These matrices are symmetric, that is, MR = (MR) . •What do we know about matrices representing reflexive relations? 1011 110 0 •All the elements on the diagonal of such matrices Mref must be 1s. 0100 110 0 M R M R 1 1001 110 0 1 1011 110 0 . M ref . •symmetric matrix, •non-symmetric matrix, . symmetric relation. non-symmetric relation. 1 14/09/2015 5/57 14/09/2015 6/57 Representing Relations Zero-One Reflexive, Symmetric •Terms:Reflexive, non-reflexive, irreflexive, symmetric, asymmetric, and antisymmetric. •The Boolean operations join and meet can be used to – These relation characteristics are very easy to determine the matrices representing the union and the recognize by inspection of the zero-one matrix. intersection of two relations, respectively. 1 0 1 0 •To obtain the join of two zero-one matrices, we apply the any- any- Boolean “or” function to all corresponding elements in the a thing thing a n n yt 1 0 yt 0 h matrices. 1 h in 1 in 1 g g 1 0 any- any- •To obtain the meet of two zero-one matrices, we apply the thing 1 thing 0 0 0 Boolean “and” function to all corresponding elements in the matrices. Symmetric: Antisymmetric: Reflexive: Irreflexive: all identical all 1’s are across all 1’s on diagonal all 0’s on diagonal across diagonal from 0’s 14/09/2015 7/57 14/09/2015 8/57 2 14/09/2015 Representing Relations Using Matrices Representing Relations Using Matrices •Example: Let the relations R and S be represented by the matrices -Do you remember the Boolean product of two zero-one 101 101 matrices? M 100 M 011 R S -Let A = [aij] be an mk zero-one matrix and 010 100 B = [bij] be a kn zero-one matrix. •What are the matrices representing RS and RS? -Then the Boolean product of A and B, denoted by AB, is •Solution: These matrices are given by the mn matrix with (i, j)th entry [cij], where -cij = (ai1 b1j) (ai2 b2i) … (aik bkj). 101 101 -cij = 1 if and only if at least one of the terms MMM111 MMMRS R S 000 RS R S (a b ) = 1 for some n; otherwise c = 0. 000 in nj ij 110 14/09/2015 9/57 14/09/2015 10/57 Representing Relations Using Matrices Representing Relations Using Matrices -Let us now assume that the zero-one matrices -This gives us the following rule: MA = [aij], MB = [bij] and MC = [cij] represent relations A, B, and C, respectively. -MBA = MAMB -Remember: For MC = MAMB we have: -In other words, the matrix representing the composite of relations A and B is the Boolean product of the matrices -cij = 1 if and only if at least one of the terms representing A and B. (ain bnj) = 1 for some n; otherwise cij = 0. -In terms of the relations, this means that C contains a pair (x , i -Analogously, we can find matrices representing the powers z ) if and only if there is an element y such that (x , y ) is in j n i n of relations: relation A and [n] (yn, zj) is in relation B. -MRn = MR (n-th Boolean power). -Therefore, C = BA (composite of A and B). 14/09/2015 11/57 14/09/2015 12/57 3 14/09/2015 Representing Relations Using Matrices Representing Relations Using Digraphs •Example: Find the matrix representing R2, where the matrix representing R is given by •Solution: The matrix for R2 is given by 010 •Definition: A directed graph, or digraph, consists of a set V M 011 of vertices (or nodes) together with a set E of ordered pairs of R 011 elements of V called edges (or arcs). 100 [2] MM2 111 R R •The vertex a is called the initial vertex of the edge (a, b), and 010 the vertex b is called the terminal vertex of this edge. How did we get this one? Well, … •We can use arrows to display graphs. 010 010 (00)(10)(01) 1 1 011 011 1 (01)(11)(10) 1 100 100 0 1 (10)(01)(00) 14/09/2015 13/57 14/09/2015 14/57 Representing Relations Using Digraphs Using Directed Graphs •Example: Display the digraph with V = {a, b, c, d}, E = {(a, b), (a, d), (b, b), (b, d), (c, a), (c, b), (d, b)}. •Def.A directed graph or digraph G=(VG,EG) is a set VG of vertices (nodes) with a set EGVG×VG of edges a (arcs,links). Visually represented using dots for nodes, b and arrows for edges. Notice that a relation R:A×B can be represented as a graph GR=(VG=AB, EG=R). Edge set EG Matrix representation MR: Graph representation GR: (blue arrows) Susan Mary Sally Joe Susan d c Joe 1 1 0 Fred Mary Fred 0 1 0 Mark 0 0 1 Mark Sally •An edge of the form (b, b) is called a loop. Node set VG (black dots) 14/09/2015 15/57 14/09/2015 16/57 4 14/09/2015 Digraph Reflexive, Symmetric Representing Relations Using Digraphs • It is extremely easy to recognize the reflexive/irreflexive/ symmetric/antisymmetric •Obviously, we can represent any relation R on a set A by the properties by graph inspection. digraph with A as its vertices and all pairs (a, b)R as its edges. •Vice versa, any digraph with vertices V and edges E can be represented by a relation on V containing all the pairs in E. •This one-to-one correspondence between relations and digraphs means that any statement about relations also applies Reflexive: Irreflexive: Symmetric: Antisymmetric: to digraphs, and vice versa. Every node No node Every link is No link is has a self-loop links to itself bidirectional bidirectional This then means that digraphs are sets, and that all the set These are asymmetric & non-antisymmetric These are non-reflexive & non-irreflexive operations apply. We’ll use it in closures which come next! 14/09/2015 17/57 14/09/2015 18/57 Closures of Relations, or Closures of Relations Relational Closures •Def.For any property X, the “X closure” of a set A is defined as the “smallest” superset of A that has the given property. • Three types we will study The reflexive closure of a relation R on A is obtained by adding (a, a) to R for each aA. i.e.,it is R IA – Reflexive The symmetric closure of R is obtained by adding (b,a) to R •Easy for each (a, b) in R. i.e., it is R RT(note in book is R-1 used) –Symmetric • The transitive closure or connectivity relation of R is obtained by repeatedly adding (a,c) to R for each (a,b),(b,c) in •Easy R., i.e., it is * n 23nn 1 –Transitive R R R RR R R •Hard nZ 14/09/2015 19/57 14/09/2015 20/57 5 14/09/2015 Reflexive closure Reflexive closure • Consider a relation R: • In order to find the reflexive closure of a – Note that it is not reflexive g relation R, we add a loop at each node • We want to add edges to that does not have one make the relation reflexive f c d • By adding those edges, e • The reflexive closure of R is R U we have made a non- b reflexive relation R into –Where = { (a, a) | a R } a reflexive relation • Called the “diagonal relation” a – With matrices, we set the diagonal to all 1’s, • This new relation is called the reflexive closure of R meaning = diag([1 1 1 … 1]) 14/09/2015 21/57 14/09/2015 22/57 Reflexive closure example Reflexive closure example with matrices • Let R be a relation on the set { 0, 1, 2, 3 } containing the • Let R be a relation on the set { 0, 1, 2, 3 } containing the ordered pairs ordered pairs (0,1), (1,1), (1,2), (2,0), (2,2), and (3,0) (0,1), (1,1), (1,2), (2,0), (2,2), and (3,0) • What is the reflexive closure of R? • What is the reflexive closure of R? • We add all pairs of edges (a,a) that do not already exist • We ‘add’ a diagonal matrix with ones, called also identity matrix 0100 10001 100 01 0110 0100 0110 We add edges: R (0,0), (3,3) 1010 0010 1010 1000 0001 1001 32 We add entries: (0,0), (3,3) 14/09/2015 23/57 14/09/2015 24/57 6 14/09/2015 Symmetric closure Symmetric closure • Consider a relation R: • In order to find the symmetric closure of a – Note that it is not symmetric g relation R, we add an edge from a to b, • We want to add edges to where there is already an edge from b to a make the relation symmetric f c d T • By adding those edges, e • The symmetric closure of R is R U R we have made a non- b symmetric relation R into –If R = { (a,b) | … } a symmetric relation – Then RT = { (b,a) | … } a • This new relation is called the symmetric closure of R 14/09/2015 25/57 14/09/2015 26/57 Symmetric closure example Symmetric closure example with matrices • Let R

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    15 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us