Articles

15: Regular Equivalence - Mathematics


Regular equivalence is the least restrictive of the three most commonly used definitions of equivalence. This is because the concept of regular equivalence, and the methods used to identify and describe regular equivalence sets correspond quite closely to the sociological concept of a "role". The notion of social roles is a centerpiece of most sociological theorizing.

  • 15.1: Defining Regular Equivalence
    Formally, "Two actors are regularly equivalent if they are equally related to equivalent others." That is, regular equivalence sets are composed of actors who have similar relations to members of other regular equivalence sets. The concept does not refer to specific other actors, or to presence in similar sub-graphs; actors are regularly equivalent if they have similar ties to any members of other sets.
  • 15.2: Uses of the Concept
    The regular equivalence approach is important because it provides a method for identifying "roles" from the patterns of ties present in a network. Rather than relying on attributes of actors to define social roles and to understand how social roles give rise to patterns of interaction, regular equivalence analysis seeks to identify social roles by identifying regularities in the patterns of network ties - whether or not the occupants of the roles have names for their positions.
  • 15.3: Finding Equivalence Sets
    The formal definition of regularly equivalence says that two actors are regularly equivalent if they have similar patterns of ties to equivalent others. Consider two men. Each has children (though they have different numbers of children). Each has a wife (usually different persons). Each wife, in turn, also has children and a husband (that is, they have ties with one or more members of each of those sets). Each child has ties to one or more members of the set of "husbands" and "wives".
  • 15.S: Regular Equivalence (Summary)
    The regular equivalence concept is a very important one for sociologists using social network methods, because it accords well with the notion of a "social role". Two actors are regularly equivalent if they are equally related to equivalent equivalent others. Regular equivalences can be exact or approximate. Unlike the structural and automorphic equivalence definitions, there may be many valid ways of classifying actors into regular equivalence sets for a given graph.

Modern Foundations for Stable Homotopy Theory

A.D. Elmendorf , . J.P. May , in Handbook of Algebraic Topology , 1995

12 The specialization to MU-modules and MU-ring spectra

The classical Thom spectra arise in nature as E ring spectra. In fact, it was inspection of their prespectrum level definition in terms of Grassmannians that first led to the theory of E. ring spectra [19] . Applying the functor S (?), we obtain models for Thom spectra which are commutative S-algebras. Of course, the homotopy groups of MU are concentrated in even degrees, and every nonzero element is a non zero divisor. Thus the results above have the following immediate corollary.

THEOREM 12.1

Let X be a regular sequence in MU*, let I be the ideal generated by X, and let Y be any sequence in MU*. Then there is an MU-ring spectrum (MU/X) [Y −1 ] and a natural map of MU-ring spectra (the unit map)

realizes the natural homomorphism of MU*-algebras

If MU*/I is concentrated in degrees congruent to zero mod 4, then there is a unique canonical product on (MU/X) [Y −1 ], and this product is commutative and associative.

In comparison with earlier constructions of this sort based on the Baas-Sullivan theory of manifolds with singularities or on Landweber's exact functor theorem (where it applies), we have obtained a simpler proof of a substantially stronger result. We emphasize that an MU-ring spectrum is a much richer structure than just a ring spectrum and that commutativity and associativity in the MU-ring spectrum sense are much more stringent conditions than mere commutativity and associativity of the underlying ring spectrum.

We illustrate by explaining how BP appears in this context. Fix a prime p and write (?)p for localization at p. Let BP be the Brown-Peterson spectrum at p. We are thinking of Quillen's idempotent construction [24] , and we have the splitting maps i : BPMUp and e : MUpBP. These are maps of commutative and associative ring spectra such that ei = id. Let I be the kernel of the composite

Then I is generated by a regular sequence X, and our MU/X is a canonical integral version of BP. For the moment, let BP′ = (MU/X)p. Let ξ : BPBP′ be the composite

It is immediate that ξ is an equivalence. In effect, since we have arranged that ηp has the same effect on homotopy groups as e, ξ induces the identity map of (MU*/I)p on homotopy groups. By the splitting of MUp and the fact that self-maps of MUp are determined by their effect on homotopy groups [ 2 , II.9.3], maps MUpBP are determined by their effect on homotopy groups. This implies that ξ ○ e = ηp : MUpBP′. The product on BP is the composite

Since ηp is a map of MU-ring spectra and thus of ring spectra, a trivial diagram chase now shows that the equivalence ξ : BPBP′ is a map of ring spectra.

We conclude that our BP′ is a model for BP that is an MU-ring spectrum, commutative and associative if p > 2. The situation for p = 2 is interesting. We conclude from the equivalence that BP′ is commutative and associative as a ring spectrum, although we do not know that it is commutative or associative as an MU-ring spectrum.

Recall that π*(BP) = ℤ(p)[vi|deg(vi) = 2(p i – 1)], where the generators vi come from π*(MU) (provided that we use the Hazewinkel generators). We list a few of the spectra derived from BP, with their coefficient rings. Let F p denote the field with p elements.

By the method just illustrated, we can construct canonical integral versions of the BPn〉 and E(n). All of these spectra fit into the context of Theorem 11.1 . If p > 2, they all have unique canonical commutative and associative MU-ring spectrum structures. Further study is needed when p = 2. In any case, this theory makes it unnecessary to appeal to Baas–Sullivan theory or to Landweber's exact functor theorem for the construction and analysis of spectra such as these.

With more sophisticated techniques, the second author [14] has proven that BP can be constructed as an commutative S-algebra, and in fact admits uncountably many distinct such structures. There is much other ongoing work on the construction and application of new commutative S-algebras, by Hopkins, Miller, McClure, and others, and we have recently proven that the periodic K-theory spectra KO and KU can be constructed as commutative S-algebras. The enriched multiplicative structures on rings and modules that we have discussed are rapidly becoming a standard tool in the study of periodicity phenomena in stable homotopy theory.


1 Answer 1

Let me rewrite the answer completely.

You wrote three definitions for a regular cardinal, and you made two false claims. First let me write the definitions, so we'll be clear on those.

Let $kappa$ be an infinite initial ordinal (i.e. a cardinal in the context of $sf ZFC$).

  1. $kappa$ is $1$-regular if every unbounded subset of $kappa$ has order type $kappa$.
  2. $kappa$ is $2$-regular if every union of less than $kappa$ subsets of $kappa$, each of cardinality less than $kappa$, is itself of cardinality less than $kappa$.
  3. $kappa$ is $3$-regular if every $Xsubseteqkappa$ such that $|X|<kappa$ has the property that $igcup X<kappa$.

You also claimed that $1$ and $2$ are equivalent if we assume the axiom of choice, and you wanted to show that $3$ is also inequivalent to those without the axiom of choice. But the truth is that the axiom of choice is not needed in order to show that all three are equivalent.

If $kappa$ is $1$-regular, then whenever $Xsubseteqkappa$ and $|X|<kappa$ the order type of $X$ (as a well-ordered set) has to be less than $kappa$, so $igcup X=sup X<kappa$ by the assumption that it is $1$-regular.

If $kappa$ is $3$-regular, let $A$ be an unbounded subset of $kappa$ then $igcup A=sup A=kappa$, then by the definition $3$-regular we have to have that $|A|=kappa$, but since $kappa$ is an initial ordinal it does not have subsets of size $kappa$ whose order type is not $kappa$ itself. Therefore $A$ has order type $kappa$.

This establishes the equivalence between $1$ and $3$. There was absolutely no use of the axiom of choice. $igcup X$ is an ordinal because it is the union of ordinals.

Now to show that these are equivalent to $2$-regularity.

If $kappa$ is $2$-regular, let $Xsubseteqkappa$ such that $|X|<kappa$. Since $kappa$ is an initial ordinal, all the members of $X$ have cardinality strictly less than that of $kappa$. Therefore we take union of less than $kappa$ sets of size less than $kappa$, and by $2$-regularity $|igcup X|<kappa$. But this means that $sup X<kappa$, as wanted.

If $kappa$ is $3$-regular, let $P$ be a set of less than $kappa$ subsets of $kappa$, each of cardinality $kappa$. Then for every $Ain P$ we have that $igcup A=sup A<kappa$ by the definition $3$-regular. Let $X=$, then $|P|leq|X|<kappa$ and therefore $igcup X<kappa$. It follows that $igcup P<kappa$ as well, because there is some $alpha>igcup X$ and that means that $alpha otin A$ for every $Ain P$. Therefore $kappa$ is $2$-regular as wanted. $square$

In the comments you remarked that your teacher challenged with the following task, if $Xsubseteqaleph_$ and $|X|<aleph_$ then you are to find an injection from $igcup X$ into $aleph_alpha imesaleph_alpha$.

But that means that you have to assume that $aleph_$ is regular. Whereas in $sf ZFC$ every successor cardinal is indeed regular, it is consistent with $sf ZF$ that successors are not regular. In fact, assuming very large cardinals are consistent, we can construct a model of $sf ZF$ in which there are no regular cardinals except $aleph_0$.

So in order to find that injection one has to assume that $aleph_$ is regular, which is an assumption we cannot prove without the help of the axiom of choice, and therefore we cannot write an explicit injection from $sup X$ into $aleph_alpha imesaleph_alpha$.


2 Answers 2

EDIT to clarify my answer. The core of the solution is highlighted in yellow.

I introduce the following useful concept, that permits to better reason about regular expressions.

Definition. I write $Rsubset S$ if there exists $T$ such that $R+T=S$ .

Lemma. If $Rsubset S$ , then $R+S=S$ .

Now, back to your problem. We have $ (a+b^*)(b+a^*) = ab + aa^* + b^*b + b^*a^* , $ but $aa^*subset b^*a^*$ and $b^*bsubset b^*a^*$ , so $ (a+b^*)(b+a^*) = ab + b^*a^* . $

You may ask, why is $aa^*subset b^*a^*?$ Well, that's easy 'cause $ b^*a^* = (epsilon+b^*)(epsilon+a)a^* = aa^* + ext. $

For the nitpickers. In the last formula, we used also $b^*=b^*+epsilon$ at the beginning. Since this is not among the given equivalences, a possible derivation is as follows: $R^*+epsilon=RR^*+epsilon+epsilon = RR^*+epsilon=R^*$ .

Otherwise, using our useful subset concept, notice that $epsilonsubset R^*$ , because $R^*=epsilon+RR^*$ but then our lemma says $R^*+epsilon=R^*$ .

To conclude, I urge you to try the same exercise with a more complicate regular expression and see whether this subset thing does indeed simplify the derivations or not.


Equivalence Classes

I am he
as you are he
as you are me
and we are all together.

John Lennon and Paul McCartney, I Am the Walrus

You've actually dealt with modular arithmetic for most of your life: the clock face represents arithmetic with modulus 12. If you've ever served in the military or listened to the BBC World Service, you're familiar with arithmetic modulo 24 as well.

When we deal with time, we feel free to use the symbol />to denote any time that is a multiple of 12 hours away from a particular 1 am or 1 pm. Notice that transitivity means we don't actually care which particular reference 1 am or 1 pm we choose -- but if you're worried about it, we could follow Bishop Ussher and say that our archetypal />is 1 am on Sunday, 23 October 4004 BC. It is very useful to have a symbol for all of the one-o'clocks, a symbol for all of the two-o'clocks, etc., so that we can write things like

Seven hours after is .

The following definition makes this idea precise.

Definition. Let be an equivalence relation on the set , and let . The equivalence class of under the equivalence is the set

of all elements of which are equivalent to .

E.g. Consider the relation on given by if . Then , , etc.

E.g. Consider the equivalence relation on given by if . Then

and it's easy to see that all other equivalence classes will be circles centered at the origin. Note that we have .

Definition. Given an equivalence relation on , the set of all equivalence classes is called the by >. We write

Notice that the quotient of />by an equivalence relation is a set of sets of elements of />.

E.g. Consider the relation on given by if . Then

E.g. If is the equivalence relation on given by if , then is the set of circles centered at the origin.

E.g. has 12 elements:

A convenient way to represent them is , , , etc. Notice that the mathematical convention is to start at 0 and go up to 11, which is different from how clocks are numbered.

Theorem. Let be an equivalence relation on . Let . iff .

Proof. Suppose . Since , we have , so by definition of , we have .

Suppose . We'll show . Let . Then . Since is transitive, we have . Since is symmetric, this means , i.e. .

The proof that is similar. .

Theorem. consists of exactly the elements , , ldots, .

Proof. We are asked to show set equality. It is clear that each for is an equivalence class, so we have one set inclusion.

To get the other set inclusion, suppose is an equivalence class. Then there is some with . We apply the Division Algorithm to write

where . Then is a multiple of , so . Thus , and since , we have shown that is on our list of equivalence classes. .

An important property of equivalence classes is they ``cut up" the underlying set:

Theorem. Let be a set and be an equivalence relation on . Then:

  1. No equivalence class is empty.
  2. The equivalence classes cover that is, .
  3. Equivalence classes do not overlap.

Proof. The first two are fairly straightforward from reflexivity.

  1. Any equivalence class is for some . Since is reflexive, , i.e. . So is nonempty.
  2. Let . We need to show that . That is, we need to find some for which . Using and the observation above, we have .

The third clause is trickier, mostly because we need to understand what it means. Consider the case of , . Then and certainly overlap--they both contain , for example. So if we take ``equivalence classes do not overlap" too literally it cannot be true.

But notice that and not only overlap, but in fact are equal. So we'll amend

equivalence classes do not overlap

distinct equivalence classes do not overlap

Theorem. If then .

Proof. We'll prove the contrapositive: if , then .

Assume is nonempty. Then there is some . So and .

Since is symmetric, .

Since is transitive, . So . .

This theorem shows, for example, that there are in no redundancies on the list , , ldots, of equivalence classes modulo .

An example from arithmetic: rational numbers

Exercise. Consider the relation on given by: if . Show that is an equivalence relation. Do not use fractions in your proof.

What are the equivalence classes under the relation ?

Claim. is the set of all pairs of the form .

Proof. First we show that every . This is equivalent to showing . But by definition of , all we need to show is --which is clear since both sides are .

Now we show that if , then it must be the case that . means that , i.e. that . .

Exercise. Show that is the set of all pairs of the form .

We write for the equivalence class , and we define:

Definition. The set of rational numbers is . That is, a rational number is an equivalence class of pairs of integers.


Equivalence of Automata

To show that there is a corresponding DFA for every NDFA, we will show how to remove nondeterminism from an NDFA, and thereby produce a DFA that accepts the same strings as the NDFA.

The basic technique is referred to as subset construction, because each state in the DFA corresponds to some subset of states of the NDFA.

The idea is this: as we trace the set of possible paths thru an NDFA, we must record all possible states that we could be in as a result of the input seen so far. We create a DFA which encodes the set of states of the NDFA that we could be in within a single state of the DFA.

Subset Construction for NDFA

To create a DFA that accepts the same strings as this NDFA, we create a state to represent all the combinations of states that the NDFA can enter.

From the previous example (of an NDFA to recognize input strings containing the word “main”) of a 5 state NDFA, we can create a corresponding DFA (with up to 2^5 states) whose states correspond to all possible combinations of states in the NDFA:

Note that many of these states won’t be needed in our DFA because there is no way to enter that combination of states in the NDFA. However, in some cases, we might need all of these states in the DFA to capture all possible combinations of states in the NDFA.

Subset Construction for NDFA (cont)

A DFA accepting the same strings as our example NDFA has the following transitions:

The start state is and the final state is , the only one containing a final state of the NDFA.

Limitations of Finite Automata

The defining characteristic of FA is that they have only a finite number of states. Hence, a finite automata can only “count” (that is, maintain a counter, where different states correspond to different values of the counter) a finite number of input scenarios.

There is no finite automaton that recognizes these strings:

  • The set of binary strings consisting of an equal number of 1’s and 0’s
  • The set of strings over ‘(‘ and ‘)’ that have “balanced” parentheses

The ‘pumping lemma’ can be used to prove that no such FA exists for these examples.


Implementing Equivalence Relations in C++

We&rsquove decided the set of values we want to model, the equivalence relation we would like to implement and the interface of the implementation. How do we write it?

Let&rsquos tackle true equality first. Then two objects are equal if and only if their current values are equal. So how do we get from object to value?

When implementing equality operations we&rsquore dealing with compound types, e.g. struct or class . They can have multiple properties, either directly or indirectly. The direct properties are the member variables of the type, the indirect properties are objects that can be reached from pointers which are either direct or indirect properties. Or properties are functions that compute new properties based on the value of other properties.

For example, std::vector<T> has three direct properties: The pointer to the memory, the size and the capacity. And the indirect properties are all objects in the memory it points to. But it could also have three pointers as direct properties and compute size and capacity by subtracting them. However, this is equivalent for the value of the vector.

Not all properties are part of the value of the object. For example, the value of a std::shared_ptr is the pointer it owns, not the control count, and not the indirect property, the pointee. So in order to compare two shared pointers only the pointer needs to be compared.

Of course deciding what the value of std::shared_ptr really is, is a different question. I just assumed it is the pointer it owns and not the value of the object it points to.

On the other hand for std::vector the value is the sequence of elements stored in the vector. So comparing two vector elements compares the elements, the indirect properties. It does not compare the pointer itself, but the objects it points to.

Let&rsquos call the properties that are part of the value salient , and the other properties are non-salient . Two objects are then equal if all their salient properties are equal.

Comparing the properties is usually done with their equality but sometimes it needs to be overridden. This is most notably the case for pointers (or things behaving like pointers). Their equality is just address equality, because that is the value of a pointer. But sometimes equality of the pointees themselves is desired, so we can&rsquot use the provided operator== but need to write custom code.

Rule: Implement equality, i.e. an operator== , by comparing the properties that actually form the value. Those can be direct members or other objects indirectly reachable from pointers.

Once we know how to implement equality, implementing a less strict equivalence relation can be done in terms of that: Just also return true for objects that are equivalent but not equal, again by comparing the properties that make up the value.

In the color case the equivalence relation looks like this:

When you have just an equivalence relation and no equality, you can still do it. The definition of equality is then just inlined into the equivalence implementation.


Rings are commonly studied in terms of their modules, as modules can be viewed as representations of rings. Every ring R has a natural R-module structure on itself where the module action is defined as the multiplication in the ring, so the approach via modules is more general and gives useful information. Because of this, one often studies a ring by studying the category of modules over that ring. Morita equivalence takes this viewpoint to a natural conclusion by defining rings to be Morita equivalent if their module categories are equivalent. This notion is of interest only when dealing with noncommutative rings, since it can be shown that two commutative rings are Morita equivalent if and only if they are isomorphic.

Two rings R and S (associative, with 1) are said to be (Morita) equivalent if there is an equivalence of the category of (left) modules over R, R-Mod, and the category of (left) modules over S, S-Mod. It can be shown that the left module categories R-Mod and S-Mod are equivalent if and only if the right module categories Mod-R and Mod-S are equivalent. Further it can be shown that any functor from R-Mod to S-Mod that yields an equivalence is automatically additive.

Any two isomorphic rings are Morita equivalent.

The ring of n-by-n matrices with elements in R, denoted Mn(R), is Morita-equivalent to R for any n > 0. Notice that this generalizes the classification of simple artinian rings given by Artin–Wedderburn theory. To see the equivalence, notice that if X is a left R-module then X n is an Mn(R)-module where the module structure is given by matrix multiplication on the left of column vectors from X. This allows the definition of a functor from the category of left R-modules to the category of left Mn(R)-modules. The inverse functor is defined by realizing that for any Mn(R)-module there is a left R-module X such that the Mn(R)-module is obtained from X as described above.

More concretely, two rings R and S are Morita equivalent if and only if S ≅ End ⁡ ( P R ) (P_)> for a progenerator module PR, [2] which is the case if and only if

(isomorphism of rings) for some positive integer n and full idempotent e in the matrix ring Mn(R).

It is known that if R is Morita equivalent to S, then the ring C(R) is isomorphic to the ring C(S), where C(-) denotes the center of the ring, and furthermore R/J(R) is Morita equivalent to S/J(S), where J(-) denotes the Jacobson radical.

While isomorphic rings are Morita equivalent, Morita equivalent rings can be nonisomorphic. An easy example is that a division ring D is Morita equivalent to all of its matrix rings Mn(D), but cannot be isomorphic when n > 1. In the special case of commutative rings, Morita equivalent rings are actually isomorphic. This follows immediately from the comment above, for if R is Morita equivalent to S, R = C ⁡ ( R ) ≅ C ⁡ ( S ) = S (R)cong operatorname (S)=S> .

Many properties are preserved by the equivalence functor for the objects in the module category. Generally speaking, any property of modules defined purely in terms of modules and their homomorphisms (and not to their underlying elements or ring) is a categorical property which will be preserved by the equivalence functor. For example, if F(-) is the equivalence functor from R-Mod to S-Mod, then the R module M has any of the following properties if and only if the S module F(M) does: injective, projective, flat, faithful, simple, semisimple, finitely generated, finitely presented, Artinian, and Noetherian. Examples of properties not necessarily preserved include being free, and being cyclic.

Many ring theoretic properties are stated in terms of their modules, and so these properties are preserved between Morita equivalent rings. Properties shared between equivalent rings are called Morita invariant properties. For example, a ring R is semisimple if and only if all of its modules are semisimple, and since semisimple modules are preserved under Morita equivalence, an equivalent ring S must also have all of its modules semisimple, and therefore be a semisimple ring itself.

Sometimes it is not immediately obvious why a property should be preserved. For example, using one standard definition of von Neumann regular ring (for all a in R, there exists x in R such that a = axa) it is not clear that an equivalent ring should also be von Neumann regular. However another formulation is: a ring is von Neumann regular if and only if all of its modules are flat. Since flatness is preserved across Morita equivalence, it is now clear that von Neumann regularity is Morita invariant.

The following properties are Morita invariant:

    , semisimple
  • right (or left) Noetherian, right (or left) Artinian
  • right (or left) self-injective , right (or left) primitive, semiprime, semiprimitive
  • right (or left) (semi-)hereditary
  • right (or left) nonsingular
  • right (or left) coherent , right (or left) perfect, semiperfect

Examples of properties which are not Morita invariant include commutative, local, reduced, domain, right (or left) Goldie, Frobenius, invariant basis number, and Dedekind finite.

There are at least two other tests for determining whether or not a ring property P >> is Morita invariant. An element e in a ring R is a full idempotent when e 2 = e and ReR = R.

Dual to the theory of equivalences is the theory of dualities between the module categories, where the functors used are contravariant rather than covariant. This theory, though similar in form, has significant differences because there is no duality between the categories of modules for any rings, although dualities may exist for subcategories. In other words, because infinite dimensional modules [ clarification needed ] are not generally reflexive, the theory of dualities applies more easily to finitely generated algebras over noetherian rings. Perhaps not surprisingly, the criterion above has an analogue for dualities, where the natural isomorphism is given in terms of the hom functor rather than the tensor functor.

Morita equivalence can also be defined in more structured situations, such as for symplectic groupoids and C*-algebras. In the case of C*-algebras, a stronger type equivalence, called strong Morita equivalence, is needed to obtain results useful in applications, because of the additional structure of C*-algebras (coming from the involutive *-operation) and also because C*-algebras do not necessarily have an identity element.

If two rings are Morita equivalent, there is an induced equivalence of the respective categories of projective modules since the Morita equivalences will preserve exact sequences (and hence projective modules). Since the algebraic K-theory of a ring is defined (in Quillen's approach) in terms of the homotopy groups of (roughly) the classifying space of the nerve of the (small) category of finitely generated projective modules over the ring, Morita equivalent rings must have isomorphic K-groups.


In mathematics, an equivalence relation is a binary relation between two elements of a set which groups them together as being "equivalent" in some way. Let a, b, and c be arbitrary elements of some set X. Then "a

b" or "a ≡ b" denotes that a is equivalent to b.

An equivalence relation "

" is reflexive, symmetric, and transitive.

In other words, = is just an instance of equivalence relation.

Edit: This seemingly simple criteria of being reflexive, symmetric, and transitive are not always trivial. See Bloch's Effective Java 2nd ed p. 35 for example,

The above equals implementation breaks the symmetry because CaseInsensitiveString knows about String class, but the String class doesn't know about CaseInsensitiveString .

I take your question to be about math notation rather than programming. The triple equal sign you refer to can be written &equiv in HTML or equiv in LaTeX.

a &equiv b most commonly means "a is defined to be b" or "let a be equal to b".

Here's a handy equivalence table:

(The other answers about equivalence relations are correct too but I don't think those are as common. There's also a &equiv b (mod m) which is pronounced "a is congruent to b, mod m" and in programmer parlance would be expressed as mod(a,m) == mod(b,m). In other words, a and b are equal after mod'ing by m.)

A lot of languages distinguish between equality of the objects and equality of the values of those objects.

Ruby for example has 3 different ways to test equality. The first, equal?, compares two variables to see if they point to the same instance. This is equivalent in a C-style language of doing a check to see if 2 pointers refer to the same address. The second method, ==, tests value equality. So 3 == 3.0 would be true in this case. The third, eql?, compares both value and class type.

Lisp also has different concepts of equality depending on what you're trying to test.

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:

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).

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:

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

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

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.

Take it outside the realm of programming.

(31) equal -- (having the same quantity, value, or measure as another "on equal terms" "all men are equal before the law")

equivalent, tantamount -- (being essentially equal to something "it was as good as gold" "a wish that was equivalent to a command" "his statement was tantamount to an admission of guilt"

At least in my dictionary, 'equivelance' means its a good-enough subsitute for the original, but not necessarily identical, and likewise 'equality' conveys complete identical.

( Some people use &asymp to represent nonidentical values instead )

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


A User-Friendly Theory

In order to translate infinity categories into objects that could do real mathematical work, Lurie had to prove theorems about them. And to do that, he had to choose a landscape in which to create those proofs, just as someone doing geometry has to choose a coordinate system in which to work. Mathematicians refer to this as choosing a model.

Lurie developed infinity categories in the model of quasi-categories. Other mathematicians had previously developed infinity categories in different models. While those efforts were far less comprehensive than Lurie’s, they’re easier to work with in some situations. “Jacob picked a model and checked that everything worked in that model, but often that’s not the easiest model to work in,” Zakharevich said.

In geometry, mathematicians understand exactly how to move between coordinate systems. They’ve also proved that theorems proved in one setting work in the others.

With infinity categories, there are no such guarantees. Yet when mathematicians write papers using infinity categories, they often move breezily between models, assuming (but not proving) that their results carry over. “People don’t specify what they’re doing, and they switch between all these different models and say, ‘Oh, it’s all the same,’” Haine said. “But that’s not a proof.”

For the past six years, a pair of mathematicians have been trying to make those guarantees. Riehl and Dominic Verity, of Macquarie University in Australia, have been developing a way of describing infinity categories that moves beyond the difficulties created in previous model-specific frameworks. Their work, which builds on previous work by Barwick and others, has proved that many of the theorems in Higher Topos Theory hold regardless of which model you apply them in. They prove this compatibility in a fitting way: “We’re studying infinity categories whose objects are themselves these infinity categories,” Riehl said. “Category theory is kind of eating itself here.”

Riehl and Verity hope to move infinity category theory forward in another way as well. They’re specifying aspects of infinity category theory that work regardless of the model you’re in. This “model-independent” presentation has a plug-and-play quality that they hope will invite mathematicians into the field who might have been staying away while Higher Topos Theory was the only way in.

“There’s a moat you have to get across to get into this world,” Hopkins said, “and they are lowering the drawbridge.”

Riehl and Verity expect to finish their work next year. Meanwhile, Lurie has recently started a project called Kerodon that he intends as a Wikipedia-style textbook for higher category theory. Thirteen years after Higher Topos Theory formalized the mathematics of equivalence, these new initiatives are an attempt to refine and promote the ideas — to make the mathematics of equivalence more universally accessible.

“Genius has an important role in developing mathematics, but actually the knowledge itself is the result of the activity of a community,” Joyal said. “It’s the real goal of knowledge to become the knowledge of the community, not the knowledge of one or two persons.”