"Manhattan"-Relationen - richtiger Name gesucht

28 views
Skip to first unread message

Rainer Rosenthal

unread,
Jul 4, 2021, 10:01:27 AMJul 4
to
Wie nennt man eine Relation R zwischen Mengen A und B, die folgende
Eigenschaft hat:

a1 R b1 und a2 R b2 ===> a1 R b2 und a2 R b1

Der Name "Manhattan"-Relation ist ein Arbeitstitel, weil mich diese
Eigenschaft an so etwas erinnert:

#
# b1 Av. b2 Av.
# | |
# | |
# | |
# a1 Av. ----- A ------- x -------
# | |
# | |
# | |
# a2 Av. ----- x ------- B -------
# | |
# | |
# __________________________________
# In den Straßen von Manhattan:
# Wer A und B sehen kann, ist
# mit A und B im gleichen Club.
#

Gruß,
Rainer Rosenthal
r.ros...@web.de

Detlef Müller

unread,
Jul 4, 2021, 1:56:54 PMJul 4
to
Hallo, Rainer,

Am 04.07.21 um 16:01 schrieb Rainer Rosenthal:
> Wie nennt man eine Relation R zwischen Mengen A und B, die folgende
> Eigenschaft hat:
>
> a1 R b1 und a2 R b2 ===> a1 R b2 und a2 R b1

Wenn das für alle a_1, a_2 aus A und b_1, b_2 aus B gilt, folgt doch,
dass mit

D:={a aus A mit a R b für ein b aus B}

und

W:={b aus B mit a R b für ein a aus A}

die Relation R gerade D x W ist.

Denn ist a beliebig aus D, haben wir a R v für ein v aus B und
ist b aus W ebenfalls beliebig, so haben wir ein u aus A mit u R b.

Mit obiger Eigenschaft folgt dann:

a R v und u R b ===> a R b und u R v, also insbesondere
gilt a R b.

Das heißt bei https://de.wikipedia.org/wiki/Relation_(Mathematik)
dann "Allrelation (auch Universalrelation)" zwischen dem Urbild D
und dem Bild W von R.

Mh, komme gerade nicht darauf, wie man Teilmengen eines kartesischen
Produkts A x B nennt, die wieder von der Gestalt U x V sind, wobei
U eine Teilmenge von A und V eine Teilmenge von B ist.
Vielleicht "verallgemeinerte Rechtecke"? ...

Gruß,
Detlef

Rainer Rosenthal

unread,
Jul 4, 2021, 3:53:00 PMJul 4
to
Am 04.07.2021 um 19:56 schrieb Detlef Müller:
>
> Mh, komme gerade nicht darauf, wie man Teilmengen eines kartesischen
> Produkts A x B nennt, die wieder von der Gestalt U x V sind, wobei
> U eine Teilmenge von A und V eine Teilmenge von B ist.
> Vielleicht "verallgemeinerte Rechtecke"? ...
>
Hallo Detlef,

prima mitgedacht. Meine Fragestellung kommt nämlich von den
"verallgemeinerten Rechtecken", für die ich keinen schönen Namen
gefunden habe.

Als ich feststellte, dass ich die von mir gesuchten Teilmengen eines
kartesischen Produkts in Relationen-Form beschreiben konnte, habe ich
das hier getan.

Liebe Grüße,
Rainer

Rainer Rosenthal

unread,
Jul 5, 2021, 12:28:31 PMJul 5
to
Am 04.07.2021 um 16:01 schrieb Rainer Rosenthal:

> #       In den Straßen von Manhattan:
> #       Wer A und B sehen kann, ist
> #       mit A und B im gleichen Club.

Dazu hatte ich ein Koordinatensystem gezeichnet mit A = (a1,b1) und B =
(a2,b2), und mit "sehen" meinte ich "gleiche erste Koordinate oder
gleiche zweite Koordinate", weil man dann sozusagen der Straße entlang
blickt. Die gezeigten Punkte (a1,b2) und (a2,b1) erfüllen diese
Bedingung, d.h. sie "sehen" A und B.

In der Zeichnung war allerdings a1 ungleich a2 und b1 ungleich b2.
Und nur dann ist die flapsige Aussage richtig.

Ist aber a1 = a2 = a, dann "sieht" zwar jedes (a1,b) sowohl A als auch
B, es darf aber nicht gefolgert werden(*), dass a1 R b für alle b gilt,
weil die Regel ja so lautet:

a1 R b1 und a2 R b2 ===> a1 R b2 und a2 R b1

Für den gerade betrachteten Spezialfall a1 = a2 wird das zu

a1 R b1 und a1 R b2 ===> a1 R b2 und a1 R b1

d.h. es folgt nichts für a1 R b für andere b als b1 und b2.

Gruß,
RR

(*) Leute, die Transitivität und Assoziativität verwechseln und ohnehin
alles können, werden mir da aus Prinzip widersprechen :-)


Martin Vaeth

unread,
Jul 5, 2021, 3:25:15 PMJul 5
to
Rainer Rosenthal <r.ros...@web.de> schrieb:
> Wie nennt man eine Relation R zwischen Mengen A und B, die folgende
> Eigenschaft hat:
>
> a1 R b1 und a2 R b2 ===> a1 R b2 und a2 R b1

Für diese Eigenschaft ist offensichtlich notwendig
(und aus Symmetriegründen auch hinreichend, aber das zeige ich
sowieso gleich):

(a,b),(c,d) in R ==> (a,d) in R.

(ich schreibe (a,b) in R statt a R b, weil das hier bequemer ist).

Erinnerung:
dom(R) = { a : Es gibt ein b mit (a,b) in R }
rng(R) = { d : Es gibt ein c mit (c,d) in R }

Dann bedeutet die obige Implikation:
Für jedes a in dom(R) und d in rng(R) ist (a,d) in rng(R).

Die Relation ist also einfach das Kreuzprodukt

dom(R) x rng(R) = { (a,d): a in dom(R), d in rng(R) }

(Damit folgt dann nochmals dass trivialerweise, dass die obige
Implikatoin die für die geforderte Eigenschaft hinreichend ist).

Natürlich gilt auch umgekehrt sind A_0 und B_0 irgendwelche Teilmengen
von A und B, so ist R = A_0 x B_0 eine Relation mit der gewünschten
Eigenschaft und A_0 = dom(R), B_0 = rng(R).

Der übliche Name der Relation lautet also: Kreuzprodukt. :)

Rainer Rosenthal

unread,
Jul 5, 2021, 5:42:08 PMJul 5
to
Am 05.07.2021 um 21:25 schrieb Martin Vaeth:
> Rainer Rosenthal <r.ros...@web.de> schrieb:
>> Wie nennt man eine Relation R zwischen Mengen A und B, die folgende
>> Eigenschaft hat:
>>
>> a1 R b1 und a2 R b2 ===> a1 R b2 und a2 R b1
>
>
> Der übliche Name der Relation lautet also: Kreuzprodukt. :)
>
Auch Detlef hatte das ja bereits geschrieben, und er hat damit die
Entstehung meiner Fragestellung korrekt erspürt.

Ich suche allerdings so etwas wie

a R b <===> a ist Bruder von b

und ich kann ja schlecht sagen

a R b <===> a ist Kreuzprodukt von b

"Kreuzprodukt" entspricht dem "Club" in meiner flapsigen Beschreibung:
"Wer A und B sehen kann, ist mit A und B im gleichen Club."

"Kreuzprodukt von U und V" ist auch keine passende Antwort auf Detlefs
Frage:
"Mh, komme gerade nicht darauf, wie man Teilmengen eines kartesischen
Produkts A x B nennt, die wieder von der Gestalt U x V sind, wobei
U eine Teilmenge von A und V eine Teilmenge von B ist.
Vielleicht "verallgemeinerte Rechtecke"? ... "
Denn dass U x V das Kreuzprodukt von U und V ist, ist ja klar. Es fehlt
auch hier ein knackiger Begriff.

Unter Umständen können Leute, die viel mit Matrizen zu tun haben, hier
weiterhelfen. Haben solche Teilstrukturen dort einen Namen? Beispiel:
#
# Mit Festbreitenschrift zu betrachten:
#
# / 1 5 3 8 4 \
# | 2 0 0 3 0 |
# | 7 6 4 1 6 |
# | 3 0 0 5 0 |
# \ 9 3 5 7 8 /
#
# _________________________________
# Nullen auf den Plätzen aus dem
# Kreuzprodukt {Z1,Z3} x {S2,S3,S5)
#

Freue mich auf weitere Antworten.
Gruß,
RR

Rainer Rosenthal

unread,
Jul 5, 2021, 5:59:04 PMJul 5
to
Am 05.07.2021 um 23:42 schrieb Rainer Rosenthal:
> {Z1,Z3} x {S2,S3,S5)

Sollte natürlich heißen {Z2,Z4} x {S2,S3,S5}, d.h. die Nullen stehen auf
den Zeilen 2 und 4 und auf den Spalten 2, 3 und 5.

Gruß,
RR

Jens Kallup

unread,
Jul 6, 2021, 2:18:08 PMJul 6
to
Am 05.07.2021 um 23:42 schrieb Rainer Rosenthal:

> Freue mich auf weitere Antworten.

kenne das nur aus der Programmierungs-Ecke:
Klasse B erbt von A.

Also, Du hast 2 Klassen

Klasse B { verbunden (ref_prev) mit C }
Klasse C { verbunden (ref_prev) mit B }

wie man schon sehen kann, entsteht eine Symmetrie, oder
Kreisel-Verbundenheit genannt.

Dem kann man entgehen, wenn man eine 2. Eigenschaft, vom
selben Typus der Klasse hinzufügt - oben in Klammern, das
ref_prev.

Dann würden die beiden Klassen aus, eine gemeinsame Oberklasse
bestehen, die gleiche Eigenschaften haben, aber jeweils mit
einer anderen Referenz ausgestattet sind.
Diese Referenzen unterscheiden sich dann nochmal im Speicher -
aber das erstmal nur so als flappsige Nebenbemerkung.

Die Struktur:

// dies ist die Oberklasse:
Klasse Gesamt {
Gesamt ref_prev
Gesamt ref_next
}

Jetzt geht man her, und initialisiert "Gesamt" mit einer globalen
Variable - ich nenne diese mal "Root", und setzt "ref_prev" auf
Null - logisch, hat ja am Anfang keinen Vorfahren.
Gleiches macht man "ref_next".

Jetzt erweitert man die globale Variable "Root" um 1 Element mit der
"Gesamt" Klasse (Gesamt ist hier nur als Vorlage zu betrachten, da
sowohl:

"Root (0)" := erstes Element, und das erstellte
"Root (1)" := zweite Element von der gleichen Klasse "Gesamt" erben.

Root (1) wird nach dem initialisieren mit einen Zeiger auf "ref_prev"
(also dem Vorgänger) versehen, während der Nachfolger "ref_next"
wieder mit Null belegt wird - da ja kein Nachfolger in diesem Moment
existiert.

Schaubild von Root (0):
+-----------------+
| Root (0) / self | // Selbstreferenz
+-----------------+
| NULL | // Nichts zugeordnet, um <=> zu vermeiden
+-----------------+

Schaubild von Root (1):
+-------------+
| Root (1) | // Selbstreferenz (Nachfolger)
+-------------+
| Root (0) | // Vorgänger
+-------------+


Beide zusammen:

+-----------------+
| Root (0) / self | <------------+
+-----------------+ |
| NULL | |
+-----------------+ |
|
+-------------+ |
| Root (1) | <----( )---+
+-------------+ | |
| Root (0) | >-----+ |
+-------------+ |
... |
+-------------+ |
| Root (n+1) | |
+-------------+ |
| Root (n) | >----------+
+-------------+

Durch geschickte Programmierung kann man den Level,
also die Tiefe (die Spanne der Entfernung) ablesen.

Es ist weiter möglich, wenn beide Elemente die gleichen
Level haben, also durch keine andere Eigenschaften wie
Baum, Schild, Auto, etc.. behindert werden, zu Entscheiden:
"Okay, A und B stehen auf den Dächern der Towers, und können
sich dadurch sehen.".

Das macht jede einfach gehaltene GrafikEngine mittels View.
Man kann das auch einen Schüler programmieren lassen, der
mittels Turbo Pascal unter DOS mit den BGI Treiber grafische
Objekte zeichnen kann - im zweidimensionalen Raum - mit ein
wenig Pythagoras lassen sich dann auch einfach 3D Bewegungen
simulieren.
Hat vielleicht den Nachteil, das die Darstellung der Linien
und/oder Flächen sich gegenseitig "bemalen", aber ich Denke,
für eine kleine Herausforderung wäre das nicht von schlechter
Form.

Also dann, Jens

P.S.: Achja, hab ich ja noch vergessen zu schreiben:
Wer nach dem Begriff sucht, dem empfehle ich "linked-lists"
mal näher unter die Lupe zu nehmen.
Reply all
Reply to author
Forward
0 new messages