The OEIS mourns the passing of Jim Simons and is grateful to the Simons Foundation for its support of research in many branches of science, including the OEIS.
login
The OEIS is supported by the many generous donors to the OEIS Foundation.

 

Logo
Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A361720 Number of nonisomorphic right involutory Płonka magmas with n elements. 5
1, 1, 2, 4, 12, 37, 164, 849, 6081, 56164, 698921 (list; graph; refs; listen; history; text; internal format)
OFFSET
0,3
COMMENTS
Alexandrul Chirvasitu and Gigel Militaru introduced the notion of a right Płonka magma as a magma X that satisfies (xy)z = (xz)y and x(yz) = xy for all x,y,z in X. It is called involutory, if it satisfies the additional property (xy)y = x for all x,y in X.
A right Płonka magma (X,*) is associative if and only if there exists an idempotent self-map f = f^2: X -> X such that x*y = f(x) for all x,y in X (the rows of the corresponding Cayley table must necessarily be constant). Thus the total number of associative right Płonka magmas on a given set of n elements is A000248 with A000041 as the corresponding number of isomorphism classes.
REFERENCES
J. Płonka, "On k-cyclic groupoids", Math. Japon. 30 (3), 371-382 (1985).
LINKS
A. Chirvasitu and G. Militaru, A universal-algebra and combinatorial approach to the set-theoretic Yang-Baxter equation, arXiv:2305.14138 [math.QA], 2023.
Anna Romanowska and Barbara Roszkowska, On Some Groupoid Modes, Demonstratio Mathematica, vol. 20, no. 1-2, 1987, pp. 277-290.
PROG
(Sage)
def right_involutory_plonka(n):
G = Integers(n)
Perm = SymmetricGroup(list(G))
M = [sigma for sigma in Perm if sigma == ~sigma]
def is_compatible(r):
return all([ r[i]*r[j] == r[j]*r[i] and r[r[i](j)] == r[j] for i in range(len(r)) for j in range(len(r)) if ZZ(r[i](j)) < len(r) ])
def possible_extensions(r):
R = []
for m in M:
r_new = r+[m]
if is_compatible(r_new):
R += [r_new]
return R
def extend(R):
R_new = []
for r in R:
R_new += possible_extensions(r)
return R_new
i = 0
R = [[]]
while i < n:
R = extend(R)
i += 1
act = lambda sigma, r: [(~sigma)*r[(~sigma)(i)]*sigma for i in range(len(r))] # In Sage, the composition of permutations is reversed.
orbits = []
while R:
r = R.pop()
orb = []
for sigma in Perm:
orb += [tuple(act(sigma, r))]
try: R.remove(act(sigma, r))
except: pass
orbits += [set(orb)]
return len(orbits)
(Sage)
def right_involutory_plonka(n):
N = range(n)
Perm = SymmetricGroup(N)
M = [sigma for sigma in Perm if sigma == ~sigma]
def is_compatible(r, r_new):
length = len(r)
inds = range(length)
for i in inds:
if not r[i]*r_new == r_new*r[i]:
return [false]
for i in inds:
rni = r_new(i)
if i < rni < length:
if not r[rni] == r[i]:
return [false]
if rni == length:
if not r_new == r[i]:
return [false]
for i in inds:
for j in inds:
if r[i](j) == length:
if not r_new == r[j]:
return [false]
return true, r+[r_new]
def possible_extensions(r):
R = []
for m in M:
r_potential = is_compatible(r, m)
if r_potential[0]:
R += [r_potential[1]]
return R
def extend(R):
R_new = []
for r in R:
R_new += possible_extensions(r)
return R_new
R = [[]]
for i in N:
R = extend(R)
act = lambda sigma, r: [(~sigma)*r[(~sigma)(i)]*sigma for i in range(n)] # In Sage, the composition of permutations is reversed.
orbits = []
while R:
r = R.pop()
orb = []
for sigma in Perm:
r_iso = act(sigma, r)
orb += [tuple(r_iso)]
try: R.remove(r_iso)
except: pass
orbits += [set(orb)]
return len(orbits)
CROSSREFS
A362821 is the labeled version.
Sequence in context: A114500 A148212 A139627 * A149844 A149845 A217616
KEYWORD
nonn,hard,more
AUTHOR
Philip Turecek, Apr 14 2023
EXTENSIONS
a(8)-a(10) from Andrew Howroyd, Apr 17 2023
STATUS
approved

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recents
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified May 21 09:35 EDT 2024. Contains 372733 sequences. (Running on oeis4.)