Auf Klassen reihenfolgenlose Anordnungen

Neue Frage »

Finn_ Auf diesen Beitrag antworten »
Auf Klassen reihenfolgenlose Anordnungen
Die Zahl ist bekanntlich die Anzahl der injektiven Abbildungen mit und
Dies ist die Anzahl der Anordnungen von Elementen aus Man bezeichnet eine solche Anordnung üblicherweise als Variation.

Spielt die Reihenfolge der Elemente von dabei keine Rolle, ergeben sich stattdessen Möglichkeiten.

Sei nun eine Zerlegung in paarweise disjunkte mit gegeben. Wie groß ist die Anzahl der injektiven Abbildungen wobei die Reihenfolge der Elemente nicht mehr auf ganz , sondern nur noch auf der jeweiligen Klasse keine Rolle spielt?
HAL 9000 Auf diesen Beitrag antworten »

@Finn

Du weißt schon, dass du besser in einem der drei Threads

Mathe-Marathon Schule
Übergangs-Marathon Mathematik
Mathe-Marathon Uni

posten solltest, wenn du auf eine dir interessant vorkommende Problemstellung stößt, deren Lösung du aber bereits kennst?
Finn_ Auf diesen Beitrag antworten »

Es handelt sich eigentlich nicht um eine als Herausforderung gestellte Aufgabe, sondern um eine allgemeine Erwägung zur Schaffung von mehr Klarheit. Dann möchte ich nun voranschreiten und meine Ausführungen in den kühleren Abendstunden darlegen. Der Ansatz meiner Methodik ist derselbe wie der in 10 Buchstaben aus doppeltem Alphabet beschriebene.

Das Vergessen der Reihenfolge auf der jeweiligen Klasse geschieht, indem man zwei Injektionen identifiziert, wenn die eine durch Permutation der Elemente der Klasse aus der anderen hervorgeht. Die Ansammlung aller auf eingeschränkten Permutationen konstituiert die symmetrische Gruppe Sind sämtliche Elemente außerhalb von Fixpunkte, bildet in diesem Sinne eine Untergruppe der symmetrischen Gruppe des gesamten Definitionsbereichs Bildet man nun das Erzeugnis also die Menge der Verkettungen frei gewählter Permutationen, entsteht abermals eine Untergruppe

Weil eine Permutation auf der jeweiligen Klasse unabhängig von der Außenwelt festlegbar ist, findet sich für die Größe der Untergruppe die Faktorisierung



Die Identifizierung ist ferner eine Äquivalenzrelation



Die Bahnen sind die Äquivalenzklassen dieser Relation. Die Fixgruppe ist hier trivial, denn aus folgt da als Injektion linkskürzbar ist. Es gilt für jedes die Bahnformel Wir haben also womit jede Bahn die gleiche Größe besitzt. Ergo findet sich die Faktorisierung



wobei die Quotientenmenge zur Relation, also der Bahnenraum ist. Die gesuchte Anzahl ist demzufolge



Sind die Klassen als Urbilder vermöge einer Surjektion gegeben, nimmt die gefundene Formel die Gestalt



an.

Zur Zählung am Computer betrachten wir ein Beispiel:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
X  = {0, 1, 2}
X1 = {0}
X2 = {1, 2}
Y  = {a, b, c, d}

Hier hat man beispielsweise die beiden miteinander identifizierten Injektionen:

{0} {1, 2}    {0} {2, 1}
 |   |  |      |   |  |
 a   b  c      a   b  c

Die beiden Tupel (a, b, c) und (a, c, b) ersetzen wir daher durch
({a}, {b, c}).

Das Programm dazu:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
from math import prod, factorial
from itertools import islice, permutations

def ff(n, k):
    return factorial(n)//factorial(n - k)

def count1(n, kvec):
    return ff(n, sum(kvec))//prod(factorial(ki) for ki in kvec)

def split_into_sets(t, kvec):
    it = iter(t)
    return tuple(frozenset(islice(it, i)) for i in kvec)

def count2(n, kvec):
    perm = permutations(range(n), sum(kvec))
    return len(set(split_into_sets(t, kvec) for t in perm))

n = 4
kvec = [1, 2]
print(count1(n, kvec))
print(count2(n, kvec))

Es folgt ein kurzes Testprogramm. Die Funktion partitions hab ich mir kurzerhand auf Stackoverflow aus Elegant Python code for Integer Partitioning stibitzt.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
def partitions(n, I=1):
    yield [n]
    for i in range(I, n//2 + 1):
        for p in partitions(n - i, i):
            yield [i] + p

for n in range(7):
    for k in range(1, n + 1):
        for kvec in partitions(k):
            assert count1(n, kvec) == count2(n, kvec)
HAL 9000 Auf diesen Beitrag antworten »

Da fasse ich mich eher kurz:

Für mich sind das einfach Permutationen mit Wiederholung von Elementen, von denen je gleich sind, das ergibt direkt .
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »