The most abstract description morphic relations and functions. morph-m - called 'morphism map', morphisms are represented as hash-maps, thus they can be partially defined
The most abstract description morphic relations and functions. morph-m - called 'morphism map', morphisms are represented as hash-maps, thus they can be partially defined
(morphic? eq-fn source-composition-fn target-composition-fn morph-m a b)
Decides whether morph-m
is a morphic relation for elements a
and b
.
More descriptive names would be potentially-morphic?, or morphic-so-far?, as
we need a defined incompatibility to refute, partial defaults to morphic.
source-composition-fn
binary composition operation in the source domain
target-composition-fn
same in the target domain
eq-fn
equality test in the target domain (= for homomorphisms,
subset? for relational morphisms)
This abstract function is not meant to be used directly, but for creating
custom tests by pre-filling the arguments by partial.
Decides whether `morph-m` is a morphic relation for elements `a` and `b`. More descriptive names would be potentially-morphic?, or morphic-so-far?, as we need a defined incompatibility to refute, partial defaults to morphic. `source-composition-fn` binary composition operation in the source domain `target-composition-fn` same in the target domain `eq-fn` equality test in the target domain (= for homomorphisms, subset? for relational morphisms) This abstract function is not meant to be used directly, but for creating custom tests by pre-filling the arguments by partial.
(morphism? eq-fn source-composition-fn target-composition-fn morph-m)
Decides whether the (partial) mapping morph-m
from the source domain
to the target domain is a morphism or not.
Target domain does not need to be defined, as elements in the target are
obtained as images of source elements.
It lazily checks all pairs in the source for which the morphism is defined.
Decides whether the (partial) mapping `morph-m` from the source domain to the target domain is a morphism or not. Target domain does not need to be defined, as elements in the target are obtained as images of source elements. It lazily checks all pairs in the source for which the morphism is defined.
cljdoc builds & hosts documentation for Clojure/Script libraries
Ctrl+k | Jump to recent docs |
← | Move to previous article |
→ | Move to next article |
Ctrl+/ | Jump to the search field |