In mathematics, two mathematical objects are considered **equal** if they are precisely the same in every way.
This defines a binary predicate, **equality**, denoted "="; *x* = *y* iff *x* and *y* are equal. Equivalence in the general sense is provided by the construction of a equivalence relation between two elements.
A statement that two expressions denote equal quantities is an equation.

Beware that sometimes a statement of the form "A = B" may not be an equality. For example, the statement *T*(*n*) = O(*n*^{2}) means that *T*(*n*) grows at the *order* of *n*^{2}.
It is not an equality, because the sign "=" in the statement is not the equality sign; indeed, it is meaningless to write O(*n*^{2}) = *T*(*n*).
See Big O notation for more on this.

Given a set *A*, the restriction of equality to the set *A* is a binary relation, which is at once reflexive, symmetric, antisymmetric, and transitive.
Indeed it is the only relation on *A* with all these properties.
Dropping the requirement of antisymmetry yields the notion of equivalence relation.
Conversely, given any equivalence relation *R*, we can form the quotient set *A*/*R*, and the equivalence relation will 'descend' to equality in *A*/*R*. Note that it may be impractical to compute with equivalence classes: one solution often used is to look for a distinguished normal form representative of a class.

[[/i>.
Then if *x* and *y** For any real numbers *a*, *b*, and *c*