0% found this document useful (0 votes)
66 views14 pages

Equivalence Relations: A Binary Relation Over A Set S Is Called An

The document discusses equivalence relations and the dynamic equivalence problem. It defines the key properties of an equivalence relation as reflexivity, symmetry, and transitivity. It provides examples of relations that are and aren't equivalence relations. It then describes how an equivalence relation can be viewed as partitioning a set into disjoint equivalence classes. Finally, it introduces the dynamic equivalence problem and how the union/find algorithm can be used to solve it in linear time.

Uploaded by

M NOOR MALIK
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
66 views14 pages

Equivalence Relations: A Binary Relation Over A Set S Is Called An

The document discusses equivalence relations and the dynamic equivalence problem. It defines the key properties of an equivalence relation as reflexivity, symmetry, and transitivity. It provides examples of relations that are and aren't equivalence relations. It then describes how an equivalence relation can be viewed as partitioning a set into disjoint equivalence classes. Finally, it introduces the dynamic equivalence problem and how the union/find algorithm can be used to solve it in linear time.

Uploaded by

M NOOR MALIK
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 14

Equivalence Relations

 A binary relation  over a set S is called an


equivalence relation if it has following properties

1. Reflexivity: for all element xS, x  x


2. Symmetry: for all elements x and y, x  y if and
only if y  x
3. Transitivity: for all elements x, y and z, if x  y and
y  z then x  z
 The relation “is related to” is an equivalence
relation over the set of people
Lecture No.34
Data Structure

Dr. Sohail Aslam


Equivalence Relations

 The  relationship is not an equivalence


relation.
 It is reflexive, since x  x,
 and transitive, since x  y and y  z
implies x  z,
 it is not symmetric since x  y does not
imply y  x.
Equivalence Relations

 Electrical connectivity, where all connections are


by metal wires, is an equivalence relation.
 It is clearly reflexive, since any component is
connected to itself.
 It is symmetric because if component a is
connected to component b then b must be
electrically connected to a.
 It is transitive, since if component a is connected
to component b and b is connected to c then a is
connected to c.
The Disjoint Sets View

 An equivalence relation  over a set S can


be viewed as a partitioning of S into
disjoint sets.
 Each set of the partition is called an
equivalence class of  (all elements that
are related).
The Disjoint Sets View

 Every member of S appears in exactly one


equivalence class.
 To decide if a  b, we need only to check
whether a and b are in the same
equivalence class.
 This provides a strategy to solve the
equivalence problem.
Dynamic Equivalence Problem
 If the relation is stored as a two-dimensional array of
booleans, then, of course, this can be done in constant time.
 The problem is that the relation is usually not explicitly
defined, but, rather, implicitly defined.

Ahmed
Haaris

Qasim
Omar
Asim
Saad
Haaris T T T
Saad T T
Ahmed T
Omar T
Asim T T
Qasim T
Dynamic Equivalence Problem

 As an example, suppose the equivalence


relation is defined over the five-element
set {a1, a2, a3, a4, a5 }.
 There are 25 pairs of elements, each of
which is related or not. (30 pairs – 5 self-
pairs=25).
Dynamic Equivalence Problem

 However, given the information


• a1  a2, a1

• a3  a4, a2 a5

• a5  a1,
a3 a4
• a4  a2,
Implies that all pairs are related.
 We would like to be able to infer this
information quickly.
Dynamic Equivalence Problem

 The input is initially a collection of n sets,


each with one element.
 This initial representation is that all
relations (except reflexive relations) are
false.
 Each set has a different element so that
Si  Sj =  ; this makes the sets disjoint.
Dynamic Equivalence Problem

 There are two permissible operations: find


and union.
 Find returns the name of the set
(equivalence class) that contains a given
element, i.e., Si  find(a)
 Union merges two sets to create a new set
S k = S i  S j.
Dynamic Equivalence Problem

 If we want to add the relation a  b, then


we first see if a and b are already related.
 This is done by performing finds on both a
and b to check whether they are in the
same set.
 If they are not, we apply union which
merges the two sets a and b belong to.
 The algorithm to do this is frequently
known as Union/Find for this reason.
Dynamic Equivalence Problem

 Notice that we do not perform any


operations comparing the relative values
of set elements.
 We merely require knowledge of their
location, i.e., which set an element
belongs to.
 We can thus assume that all elements are
numbered sequentially from 1 to n.
 Thus, initially we have Si = {i} for i = 1
through n.
Dynamic Equivalence Problem

 Our second observation is that the name


of the set returned by find is fairly arbitrary.
 All that really matters is that find(x) =
find(y) if an only if x an y are in the same
set.
 We will now discuss a solution to the
union/find problem that for any sequence
of at most m finds and upto n-1 unions will
require time proportional to (m+n).

You might also like