Skip to content

Instantly share code, notes, and snippets.

@roblafeve
Last active February 7, 2018 15:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save roblafeve/a007d0d875f686c46ef8a82351bf5b30 to your computer and use it in GitHub Desktop.
Save roblafeve/a007d0d875f686c46ef8a82351bf5b30 to your computer and use it in GitHub Desktop.
FP Concepts

Morphism

Morphisms can have any of the following properties.

A morphism f :: a -> b is a:

  • monomorphism (or monic) if f ∘ g1 = f ∘ g2 implies g1 = g2 for all morphisms g1, g2 : x → a.
  • epimorphism (or epic) if g1 ∘ f = g2 ∘ f implies g1 = g2 for all morphisms g1, g2 : b → x.
  • bimorphism if f is both epic and monic.
  • isomorphism if there exists a morphism g : b → a such that f ∘ g = 1b and g ∘ f = 1a.[b]
  • endomorphism a -> a
  • automorphism if f is both an endomorphism and an isomorphism. aut(a) denotes the class of automorphisms of a.
  • retraction if a right inverse of f exists, i.e. if there exists a morphism g : b → a with f ∘ g = 1b.
  • section if a left inverse of f exists, i.e. if there exists a morphism g : b → a with g ∘ f = 1a.

Semigroup

Associative & Identity Value

  • Number under addition with ID value of 0
  • Number under multiplication with ID value of 1
  • Etc.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment