Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Schorsch

Supermoderator

  • »Schorsch« ist der Autor dieses Themas

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

1

15.10.2014, 17:45

S-Sortige Mengen, Mengenfamilie, Typdefinition, Übersetzerbau

Hey,
ich tu mir grad eine Vorlesung zum Thema Übersetzerbau an. Praktische Erfahrungen mit dem Thema habe ich schon, nur in der Theorie fehlt mir wohl ein wenig mathematisches Grundwissen.
Hier im Skript( http://fldit-[url]www.cs.uni-dortmund.de…/CbauFolien.pdf[/url] ) ist auf Seite 20 die Rede von S-Sortigen Mengen und Mengenfamilien. Mich stört das A in der Definition.
Sei S eine Menge.
§ A = \{ A_s | s \in S \} §
Diese Definition ist mir nicht ganz klar. Wie gesagt das A stört mich irgendwie. Was wäre in so einem §A_s§ drin? A wird danach auf der selben Seite im Skript verwendet um Typen erster Ordnung zu bestimmen bzw um die S-Sortigen Mengen zur Menge der Typen erster Ordnung zu liften. Ich hoffe ich drücke mich hier vernünftig aus ;)

edit:
Mal direkt auf die erste Aufgabe vom aktuellen Übungszettel bezogen. Hier sind mehrere Ausdrücke gegeben, als Beispiel §(s \times \mathbb{N})^\mathbb{Z}§, bei denen geprüft werden soll ob sie in §T(S, BS)§(Keine Ahnung wie ich das passende T texen kann) sind. Dabei ist die Menge von Sorten gegeben durch §S =\{r, s \}§ und die Menge von Basismengen durch §BS = \{ \mathbb{N}, \mathbb{Z}\}§. In diesem Fall müsste laut meinem Verständnis der Ausdruck in §T§ sein, wobei es bei meiner Frage um den Teil oben geht.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »Schorsch« (15.10.2014, 20:44)


Techie

Alter Hase

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

2

15.10.2014, 17:55

Dein Link hat mehrere Fehler, nachdem korrigieren bekomme ich immer noch einen HTTP 404 Error.
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

Schorsch

Supermoderator

  • »Schorsch« ist der Autor dieses Themas

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

3

15.10.2014, 18:05

Die Verlinkung über das Forum macht irgendwie Probleme. Habe den Link als Text hinzugefügt wobei mein Browser das ganze dennoch als Link interpretiert. Jetzt sollte es klappen.

Ist das A überhaupt wichtig oder denke ich da einfach komisch? An sich kenne ich Mengenfamilien so das man beliebige Mengen indiziert und so zusammenfasst. Im Skript wird nun aber auf Seite 20 immer wieder das A benutzt und teilweise auch nicht nur mit einem Index aus S sondern auch mit einem Index aus BS was für mich einfach keinen Sinn ergibt.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Schorsch« (15.10.2014, 18:31)


David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

15.10.2014, 18:55

Beispiel für diese Definition:
Wenn §S = \{ x, y, z \}§, dann ist §A = \{ A_x, A_y, A_z \}§.
Hilft dir das?

Schorsch

Supermoderator

  • »Schorsch« ist der Autor dieses Themas

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

5

15.10.2014, 19:10

Das ist mir klar. Ich glaube ich habe da einfach ziemlich unnötiges Zeug gedacht. Mir ging es darum wie A aussieht. Im Endeffekt indiziert man sich ja eigentlich nur beliebige Mengen und fasst sie zu Mengenfamilie zusammen. Verwirrt hat mich da das Skript der Vorlesung. Das ist an vielen Stellen einfach sehr uneindeutig bzw teilweise haben wir mit dem Prof zusammen schon Fehler gefunden.
Ich denke ich habe es wohl doch verstanden. Die As können an sich beliebige Mengen sein richtig?
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Schorsch

Supermoderator

  • »Schorsch« ist der Autor dieses Themas

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

6

15.10.2014, 20:23

An sich sollte ich das wohl verstanden haben. Kommen aber noch mehr Fragen. Es geht hierbei um eine Aufgabe vom aktuellen Übungszettel. Ich möchte ungern eine Lösung präsentiert kriegen. Bringt mir ja nichts. Also bitte nichts fertiges vorsetzen.
Aufgabe:
Sei §S = \{s, e\}§, §A = \{A_s, A_e\}§ mit §A_s = \{ f | f : \{0\}^* \to 2\}§, §A_e = \{0\}^*§ und §B = \{B_s, B_e\}§ mit §B_s =\mathcal{P}(\mathbb{N})§, §B_e = \mathbb{N}§. Geben Sie eine S-sortige Funktion §h : A \to B§, so dass §h_s§ und §h_e§ injektive Abbildungen sind.

Dabei sei gesagt mit 2 ist hier die zweielementige Menge gemeint. also §{0, 1}§ was man als §{true, false}§ interpretieren kann.

Was ich da tun soll ist mir an sich klar. Ich soll eine Menge von Funktionen §h§ schaffen die von A auf B abbilden, bzw von den jeweiligen A_s auf B_s. Die Definition darunter hilft mir nur absolut nicht weiter. Mir reicht es vielleicht schon wenn jemand eine gute Erklärung hat oder weiß wo ich eine finden kann. Von mir aus ein Beispiel dass das ganze mal zeigt. Der passende Ausschnitt aus dem Skript ist als Dateianhang angefügt. Wie gesagt ich erwarte keine Lösung bzw will die ja gar nicht. Ich will es einfach nur verstehen. Mir fehlen da algebraische Grundlagen was die Definition von solchen Strukturen bzw Typen angeht. Und wie man sieht wird sich hier im Skript ziemlich kurz gefasst. Die Übungszeiten sind dummerweise zu kurz um vernünftig Fragen zu klären. Erklärt warum den Kurs fast niemand belegt. Naja darum gehts ja nicht, wie gesagt jede Art von Hilfe ist mir recht. Vielleicht habt ihr ja einigermaßen gute Skripte von Unis oder Bücher oder irgendwas zu dem Thema. Das würde auch schon weiter helfen.
»Schorsch« hat folgendes Bild angehängt:
  • skript.png
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Schorsch

Supermoderator

  • »Schorsch« ist der Autor dieses Themas

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

7

18.10.2014, 10:04

Sind ein ganzes Stück weiter gekommen.
Wir suchen eine Abbildung §A_s \to B_s§ und eine weitere §A_e \to B_e§.
§h_e : \lambda (n) \to |n|§ Also bestimmt die Funktion die Länge des Arguments. §\{0\}^*§ ist entweder nichts, oder 0 oder 00 oder 000 und so weiter. Falls das nicht klar ist. So ist §h_e§ injektiv und bildet richtig ab, behaupte zumindest ich:)

§h_s : \lambda (f) \to [ {y} | x \leftarrow \{0\}^* \wedge f(x) \wedge y \leftarrow h_e(x)]§ das heißt y ist die Länge von x. Das ganze verpacke ich als Menge. Und meine Rückgabe ist jetzt die Menge dieser Mengen wobei nicht alle enthalten sind sondern nur die für die f(x) wahr ist.
Als Beispiel:
§f : \lambda (x) \to if x >3 \wedge x < 5 then \top else \bot§ dann wäre §h_s(f) = \{ \{ 3 \}, \{ 4 \} \}§. So ist das ganze auch wieder injektiv und bildet meiner Meinung nach richtig ab. Seht ihr das auch so? Oder bin ich da grad total auf dem Holzweg.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Werbeanzeige