It is easier to understand it if:
1. You give some examples of such monads
2. Describe how this property arises
3. Tell how whether the law is unique or part of a list of laws applicable

Most of mathematics we do is not entirely disconnected from applications.

If I tell you there is a class of monoids `m` over a set of objects `o` :

class Monoid m => T m o where
  i :: o -> t
  c :: t -> o -> Bool

Such that the following laws are satisfied:

Forall x y z m n.
c (i x) x =True
c mempty x = False
c m y = True => c (m <> n) y = True
c n y = True => c (m <> n) y = True

What does it tell you about the definitions?
Can you tell if this set of laws is correctly stated or exhaustive?
Whether it models what I intend to do?
Without further examples could I claim that it may be universal model for some phenomena f and g?

Or would you rather see some examples or descriptions of i and c operations?


PS you may respond to haskell-cafe, sure. I did not think that my previous question deserved sharing, but this answer certainly does.
--
  Cheers
     Michał

On Wed, Nov 11, 2020, 14:04 Kim-Ee Yeoh <ky3@atamo.com> wrote:
Hi Michal,

How is it hermetic? I think I fully described the property whose name I am opening to discussion.

What is lacking in the definition?

Also, do you mind having this discussion at the cafe itself? You are probably not the only one with this query.

On Wed, Nov 11, 2020 at 7:37 PM Michał J Gajda <mjgajda@gmail.com> wrote:
Hi,
Your post to haskell-cafe is somewhat hermetic if you do not provide additional examples.
What do you use these for?
--
  Cheers
    Michał
--
-- Kim-Ee