Thread Modul für Semiringe gesucht (21 answers)
Opened by pktm at 2008-10-12 22:14

LanX-
 2008-10-13 18:03
#115466 #115466
User since
2008-07-15
1000 Artikel
BenutzerIn

user image
pktm+2008-10-13 15:02:58--
Das mit dem Latexcode als Konstanteninhalt gefällt mir. Dadurch könnte man Visualisierungen einfacher gestalten.

Btw, ich bin Sprachwissenschaftler, kein Informatiker. Wir benutzen Semiringe z.B. zum gewichten endlicher Automaten, die dann ein Sprachmodell beinhalten (vgl. T9 bei Handys).


Missverständnis ich meinte den Unicode für die "liegende 8" belegen zu können( im folgenden \inf genannt)

Ich kenne den Umfang deiner Seminararbeit nicht, aber möchte dich darauf hinweisen dass der allereinfachste Zugang wäre, vier Funktionen zu definieren, wobei die Konstanten inlines wären.

add($$)
mult($$)
null()
eins()

Alles weitere ist syntaktischer Zucker, z.B. mit Overloading kannst du halt dank Operatorenprezedenz auf Klammern verzichten.

Wie man die Werte eines Tropischen Rings abbildet kannst du ja im use definieren,
also ob 1 die 1 im \RR sei oder das Einselement=\inf , das hängt ja auch von eurer Anwendung ab.

Wenn ihr sagt ihr wollt allgemeine Rechnungen in Semiringen (SRs) durchführen, die unabhängig von der konkreten SR-Definition sind (d.h. die halt im use geändert werden) dann solltest du Abstand von \inf nehmen und EINS schreiben!!!

Denn \inf hat z.B. in Booleschen Algebren erstmal keine Bedeutung, sonst müsstest du später immer ein \inf=EINS voranstellen wenn du die Algebra wechselst.

Umgekehrt dürftest du im Booleschen nie 1 statt EINS schreiben, weil 1 als Reelle Zahl kein neutrales Element im Tropischen wäre!

Für Nichtmathematiker natürlich hat die 1 eine Sonderbedeutung bei der Multiplikation im Reellen, der Tropische SR kennt aber per se keine Multiplikation, sondern nur die OPerationen min() und + , der Gag ist halt das in jedem SR per Definition die Absorbtion

NULL OP2 beliebiger_wert == NULL [*] gelten muss. Konkret: Boolesch: 1 AND $x == 1 Tropisch: \inf + $x == \inf Langer Rede kurzer Sinn: Du musst abwägen wieviel syntaktischen Zucker du implementieren willlst und welche Notationsnorm du damit supporten willst. Mathematiker behelfen sich dann oft mit gekringelten + und * (auch dafür gibts unicodes) und unterstreichen 0 und 1 um jede Verwechslung auszuschließen. [*] EDIT: korrigiert! NULL statt EINS ! das Neutrale Element der ersten Operation Absorbiert bei der 2. Operation. Man vergleiche z.B. bei Zahlenkörpern 0 * x = 0 für alle x.

View full thread Modul für Semiringe gesucht