A janë të gjitha monadat monoide?
A janë të gjitha monadat monoide?

Video: A janë të gjitha monadat monoide?

Video: A janë të gjitha monadat monoide?
Video: Основные ошибки при шпатлевке стен и потолка. #35 2024, Mund
Anonim

Një përgjigje e thënë mirë, ndoshta më e shkurtër ndonjëherë është: A monada është vetëm një monoid në kategorinë e endofunktorëve. I kënaqur monoid aksiomat (i. & ii.), a monada mund të shihet si një monoid i cili është një endofunktor së bashku me dy transformime natyrore.

Këtu, çfarë është një Endofunctor Monad?

Në teorinë e kategorive, një degë e matematikës, a monada (gjithashtu treshe, treshe, konstruksion standard dhe konstruksion themelor) është një endofunktor (një funksionor që harton një kategori me vetveten), së bashku me dy transformime natyrore që kërkohen për të përmbushur disa kushte koherence.

Më pas, pyetja është, çfarë është një Bifunctor? A dyfunksionale (i njohur gjithashtu si një funksionor binar) është një funksionor domeni i të cilit është një kategori produkti. Mund të shihet si një funksionor në dy argumente. Funktori Hom është një shembull natyror; është kontravariant në një argument, bashkëvariant në tjetrin. Një multifunksional është një përgjithësim i konceptit të funksionorit në n variabla.

Atëherë, çfarë është një Monad në programim?

Nga wikipedia: Në funksional programimit , a monada është një lloj tipi abstrakt i të dhënave që përdoret për të përfaqësuar llogaritjet (në vend të të dhënave në modelin e domenit). Monadat lejojnë programues për të zinxhiruar veprimet së bashku për të ndërtuar një tubacion, në të cilin çdo veprim është zbukuruar me rregulla shtesë të përpunimit të parashikuara nga monada.

Çfarë është një Monad Haskell?

Në Haskell a monada përfaqësohet si një konstruktor tipi (quajeni m), një funksion që ndërton vlera të atij lloji (a -> ma) dhe një funksion që kombinon vlerat e atij lloji me llogaritjet që prodhojnë vlera të atij lloji për të prodhuar një llogaritje të re për vlerat e atij lloji (ma -> (a -> mb) -> mb).

Recommended: