Remix.run Logo
oisdk 6 hours ago

Generally speaking, it means that the effect is derived from an algebraic theory (in a specific and structured way). While equations are definitely part of most theories, you can absolutely have a theory without equations, and furthermore you can define an effect with equations that isn't algebraic. The full definition of "algebraic theory" unfortunately doesn't really fit in a comment, but I did want to push back on the idea that "an effect becomes algebraic if you add equations to it".

In the effects literature, you often also see the definition that an operation (of an effect) is "algebraic" if the operation commutes with `>>=`. This definition is actually the same as the one above, just stated in a different way.

nyrikki 4 hours ago | parent [-]

Trying to be helpful here, sorry if it doesn’t map to your field of which I am not familiar.

The _algebra_ you learn in school is elementary algebra, using variables.

In modern math, _algebra_ or _modern_ algebra or _abstract_algebra, is the study of structures over sets with defined operations on the elements of that set.

ADTs are an example of an algebraic structure, specifically called one that converts non-trivial semantic (runtime) properties to trivial ones (T/F).

This post is dealing with the structure in another way.

If you understand magmas, monoids, etc.. that can be helpful.

But the lay description I find useful is the algebra is what _arises_ from that defined set domain and operations.

The key point is studying the structure, which is the algebraic structure, or the algebra. It is basically what pops out, not what you start with, although that is flawed.

Almost all modern math will use that _modern_ meaning of algebra.

iamwil 26 minutes ago | parent [-]

are you address me, or oisdk? I did mean algebra in terms of structure, and I tried to say that in the post.