What is the difference between equality and equivalence?

后端 未结 9 738
难免孤独
难免孤独 2020-12-13 07:08

I\'ve read a few instances in reading mathematics and computer science that use the equivalence symbol , (basically an \'=\' with three lines)

相关标签:
9条回答
  • 2020-12-13 07:36

    The answers above are right / partially right but they don't explain what the difference is exactly. In theoretical computer science (and probably in other branches of maths) it has to do with quantification over free variables of the logical equation (that is when we use the two notations at once).

    For me the best ways to understand the difference is:

    1. By definition
      A ≡ B
      means
      For all possible values of free variables in A and B, A = B

      or

      A ≡ B <=> [A = B]

    2. By example
      x=2x
      iff (in fact iff is the same as ≡)
      x=0

      x ≡ 2x
      iff (because it is not the case that x = 2x for all possible values of x)
      False

    I hope it helps

    Edit:

    Another thing that came to my head is the definitions of the two.

    A = B is defined as A <= B and A >= B, where <= (smaller equal, not implies) can be any ordering relation

    A ≡ B is defined as A <=> B (iff, if and only if, implies both sides), worth noting that implication is also an ordering relation and so it is possible (but less precise and often confusing) to use = instead of ≡.

    I guess the conclusion is that when you see =, then you have to figure out the authors intention based on the context.

    0 讨论(0)
  • 2020-12-13 07:39

    In languages that I have seen that differentiate between equality and equivalence, equality usually means the type and value are the same while equivalence means that just the values are the same. For example:

    int i = 3;
    double d = 3.0;
    

    i and d would be have an equivalence relationship since they represent the same value but not equality since they have different types. Other languages may have different ideas of equivalence (such as whether two variables represent the same object).

    0 讨论(0)
  • 2020-12-13 07:40

    The difference resides above all in the level at which the two concepts are introduced. '≡' is a symbol of formal logic where, given two propositions a and b, a ≡ b means (a => b AND b => a).

    '=' is instead the typical example of an equivalence relation on a set, and presumes at least a theory of sets. When one defines a particular set, usually he provides it with a suitable notion of equality, which comes in the form of an equivalence relation and uses the symbol '='. For example, when you define the set Q of the rational numbers, you define equality a/b = c/d (where a/b and c/d are rational) if and only if ad = bc (where ad and bc are integers, the notion of equality for integers having already been defined elsewhere).

    Sometimes you will find the informal notation f(x) ≡ g(x), where f and g are functions: It means that f and g have the same domain and that f(x) = g(x) for each x in such domain (this is again an equivalence relation). Finally, sometimes you find ≡ (or ~) as a generic symbol to denote an equivalence relation.

    0 讨论(0)
提交回复
热议问题