Возможно в этом и моя проблема. Если, например, есть некоторое множество 

 объектов. То я их воспринимаю как 

 различных объектов, до того момента пока не введено некоторое отношение равенства. Но ведь равенство зависит от рассматриваемых свойств объектов. В некоторых случаях, например, два объекта равны, в других случаях эти же объекты - нет.
 Это формализуется с помощью отношений эквивалентности.
Равенство - это выделенное отношение, оно заранее задано, два объекта равны если это один и тот же объект.
Если мы хотим некоторые свойства объектов объявить неважными и рассматривать какие-то из них как неразличимые ("равные"), то мы вводим на множестве объектов 

 некоторое отношение эквивалентности 

. Оно должно обладать свойствами, похожими на свойства равенства: 

, 

 и 

.
Тогда все множество 

 разбивается на классы эквивалентности - каждому элементу 

 соответствует класс 
![$[a] = \{ x \in M \mid x \equiv a \}$ $[a] = \{ x \in M \mid x \equiv a \}$](https://dxdy-04.korotkov.co.uk/f/b/a/1/ba1edb85f2252cd19a746942740848b682.png)
. И вот уже на этих классах у нас будет честное равенство: 

 тогда и только тогда, когда 
![$[a] = [b]$ $[a] = [b]$](https://dxdy-01.korotkov.co.uk/f/0/e/4/0e44c1112d98cd57a9fa3598e04e789282.png)
, то есть классы эквивалентности 
![$[a]$ $[a]$](https://dxdy-03.korotkov.co.uk/f/e/6/f/e6faf1ef3b2cd6f5098b756495adef3d82.png)
 и 
![$[b]$ $[b]$](https://dxdy-01.korotkov.co.uk/f/c/a/0/ca0177a5ab2f08c0b10765740bead8ce82.png)
 представляют собой одно и то же множество.
Например, вектор определяют как класс эквивалентности направленных отрезков, т.е. множество всех сонаправленных направленных отрезков равной длины.