Enumerating all semigroup(oid)s using relational programming. Semigroupoids are represented as composition tables, a vector of vectors.
Enumerating all semigroup(oid)s using relational programming. Semigroupoids are represented as composition tables, a vector of vectors.
(all-composition-tables n)Lazy, brute force enumeration of all n by n composition tables.
It can be filtered by associativity?.
For testing purposes only: n=3 is fine, but n=4 has 5^16 cases.
Lazy, brute force enumeration of all `n` by `n` composition tables. It can be filtered by [[associativity?]]. For testing purposes only: n=3 is fine, but n=4 has 5^16 cases.
(associative-triple? S [a b c])Checks whether the given triple is associative in S.
It works with :n entries, thus compatible with semigroupoids.
Checks whether the given triple is associative in `S`. It works with :n entries, thus compatible with semigroupoids.
(associativity-failures S)(associativity-failures S triples)Returns pairs where associativity fails in a composition table S.
If the triples are not given, then all possible triples are checked.
Compatible with semigroupoids.
Returns pairs where associativity fails in a composition table `S`. If the `triples` are not given, then all possible triples are checked. Compatible with semigroupoids.
(associativity? S)(associativity? S triples)Brute-force checking associativity for a composition table S.
If the triples are not given, then all possible triples are checked.
Compatible with semigroupoids.
Brute-force checking associativity for a composition table `S`. If the `triples` are not given, then all possible triples are checked. Compatible with semigroupoids.
(associativo S [a b c])The goal for associativity for a given triple when using semigroup composition.
The goal for associativity for a given triple when using semigroup composition.
(associativo-diagonal S a)The goal for associativity for a given triple of same elements for typeless semigroup composition.
The goal for associativity for a given triple of same elements for typeless semigroup composition.
(predefined lvs cells)Sudoku-like hints for the composition table. Returns the goals for predefined values.
Sudoku-like hints for the composition table. Returns the goals for predefined values.
(semigroupoids-order-n n)(semigroupoids-order-n n partial-comptab)Enumerating semigroupoids of order n by constructing all n by n composition tables. Constraints: table entries should be in 0..n-1, or n for undefined, and all composable triples should satisfy associativity. The value n stands for nil, and represents undefined composition.
Enumerating semigroupoids of order n by constructing all n by n composition tables. Constraints: table entries should be in 0..n-1, or n for undefined, and all composable triples should satisfy associativity. The value n stands for nil, and represents undefined composition.
(semigroups-order-n n)(semigroups-order-n n comptab)Enumerating semigroups of order n by constructing all n by n composition tables. Logic variables: the entries of S, n^2 of them in total. Constraints: table entries should be in 0..n-1, all triples should satisfy associativity.
Enumerating semigroups of order n by constructing all n by n composition tables. Logic variables: the entries of S, n^2 of them in total. Constraints: table entries should be in 0..n-1, all triples should satisfy associativity.
(sgpoid-associativo S [a b c])The goal for associativity for a given triple in a semigroupoid.
The goal for associativity for a given triple in a semigroupoid.
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 |