1 Algebra - TUM 1 Algebra 1.1 Einfuhrung Einf uhrung 1 UnterAlgebraversteht man den Teilbereich der

download 1 Algebra - TUM 1 Algebra 1.1 Einfuhrung Einf uhrung 1 UnterAlgebraversteht man den Teilbereich der

of 26

  • date post

    21-Oct-2019
  • Category

    Documents

  • view

    0
  • download

    0

Embed Size (px)

Transcript of 1 Algebra - TUM 1 Algebra 1.1 Einfuhrung Einf uhrung 1 UnterAlgebraversteht man den Teilbereich der

  • 1 Algebra

    1.1 Einführung

    Einführung 1

    • Unter Algebra versteht man den Teilbereich der Mathematik, der sich mit dem Studium der Ei- genschaften von (Rechen-)Operationen beschäftigt.

    . Genauer werden verschiedene Klassen von algebraischen Strukturen mittels Axiomen definiert

    – Axiom: nicht zubeweisende Grundannahme/Prämisse/Hypthose, z.B. in PL formuliert

    und deren Eigenschaften (d.h. logische Inferenzen aus den Axiomen) und Beziehungen untereinan- der untersucht.

    . Anwendungen der Algebra in der Informatik:

    – Kryptographie: RSA- und DLP-basierte Kryptosysteme

    – Theoretische Informatik & Programmiersprachen: algebraische Sprachtheorie, formale Seman- tik, statische Analyse, Compilerbau, abstrakte Datentypen

    Algebraische Strukturen 2

    • Eine algebraische Struktur S ist dabei zunächst eine Struktur im Sinne der Prädikatenlogik, die nur Funktionen/Operatoren, jedoch keine Prädikate/Relationen definiert:

    – US ist die Grundmenge/das Universum/der Träger

    – IS interpretiert jedes Funktionssymbol f mit Arität ar(f) als eine konkrete k-stellige Funk-

    tion/Operation IS(f) : U ar(f) S → US auf US ; nullstellige Funktionssymbole mit Konstanten

    gleichgesetzt.

    • Konventionen:

    – Meistens gibt man eine algebraische Struktur als Tupel 〈U, f1, . . . , fk〉 an.

    Je nach Literatur auch mit runden Klammern (U, f1f2, . . . , fk).

    Definiert dann einmalig die Interpretationen/Bedeutungen US und f S i .

    Verwendet dann jedoch U und fi im Sinne von US und f S i .

    . 〈U, f1, . . . , fk〉 (manchmal auch nur 〈f1, . . . , fk〉) wird als Signatur (= ”nichtlogische“ Zei- chen/Symbole) der algebraischen Struktur bezeichnet.

    . Häufig gibt man die Arität als Superskript in der Signatur direkt an, also 〈U, far(f1)1 , . . . , f ar(fk) k 〉.

    Algebraische Strukturen 3

    • Beispiele

    – 〈Q,+2, •2, 00, 10〉 mit Q die rationalen Zahlen und der Interpretation von + bzw. • als die Addition bzw. Multiplikation auf den rationalen Zahlen und 0 bzw. 1 als die rationalen Zahlen Null bzw. Eins.

    – 〈R,+2, •2, 00, 10〉 mit R die reellen Zahlen und der Interpretation von + bzw. • als die Addition bzw. Multiplikation auf den reellen Zahlen und 0 bzw. 1 als die reellen Zahlen Null bzw. Eins.

    – 〈2A,∪2,∩2〉 mit 2A die Potenzmenge der Menge A und der Interpretation von ∪ und ∩ als Vereinigung bzw. Schnitt.

    1

  • – 〈R>0, •2, 10〉 mit R die reellen Zahlen und der Interpretation von • als die Multiplikation auf den reellen Zahlen und 1 als die reelle Zahl Eins.

    – 〈Z,+2, 00〉 mit Z die ganzen Zahlen und der Interpretation von + als die Addition auf den ganzen Zahlen und 0 als die ganze Zahl Eins.

    – 〈AA, ◦2, Id0A〉 mit AA die Menge der Funktionen von A nach A und der Interpretation von ◦ als Funktionskompositionen und IdA als die Identitätsfunktion auf A.

    – 〈Σ∗, •2, ε0〉 mit Σ∗ die Menge der endlichen Wörter über dem Alphabet Σ und der Interpre- tation von • als Konkatenation und ε als das leere Wort.

    Algebraische Strukturen 4

    • Beispiele

    – 〈RR,+2, •2〉mit RR die Menge aller Funktionen von R nach R und der Interpretation von + und • als punktweise Addition bzw. Multiplikation ((f+g)(x) = f(x)+g(x), (f •g)(x) = f(x)•g(x)).

    – 〈 ⋃ k≥0{a, b}k, extend

    2, push1a, push 1 b , pop

    1, ()0〉 mit {a, b}∗ die Menge der endlichen Tupel (Lis- ten) mit Einträgen aus {a, b} und der Interpretation von extend als Konkatenation zweier Listen, pushx als das Anfügen des Elements x an den Anfang der Liste, pop das Entfernen des ersten Eintrags einer nicht leeren Liste und () der leeren Liste.

    – 〈2Σ∗ ,∪2, •2, ∅0, {ε}0〉 mit 2Σ∗ die Menge aller Mengen/Sprachen endlicher Wörter über dem Alphabet Σ und der Interpretation von ∪ als Mengenvereinigung, • als Konkatenation von Sprachen (d.h. L1 •L2 = {uv | u ∈ L1, v ∈ L2}), ∅ als die leere Menge und {ε} als die Menge, die genau das leere Wort enthält.

    – 〈Q[X],+2, •2, 00, 10〉 mit Q[X] die Menge aller univariaten Polynome mit rationalen Koeffizi- enten in einer Variablen X und der Interpretation von + und • als die übliche Addition bzw. Multiplikation von Polynomen und 0 und 1 als die jeweiligen rationalen Zahlen.

    Algebraische Strukturen 5

    • Weitere Bemerkungen/Konventionen:

    – Ein Term/Ausdruck über einer gegebenen Signatur und dessen Syntaxbaum ist analog zur PL definiert, z.B. für 〈N0, f2, g1, a0〉 sind ”f(g(0), 1)“, ”g(f(f(a, g(a)), g(a)))“, ”a“ Terme.

    – Für binäre Operatorsymbole, insbesondere +, •,⊕,� u.ä. wird meistens die Infixnotation statt der Präfixnotation verwendet, z.B. also

    ” (a • b)“ statt

    ” •(a, b)“.

    Insbesondere wird das Symbol ” •“ häufig (wenn keine Missverständnisse entstehen können)

    dann auch einfach weggelassen, z.B. statt ” •(a, b)“ einfach

    ” ab“.

    – Beachte: Die Operatoren müssen stets wieder Elemente aus der Grundmenge zurückgegeben, was als Abgeschlossenheit bezeichnet wird.

    • Algebraische Strukturen werden nach den Axiomen (Eigenschaften), die ihre Operatoren erfüllen, z.B. Assoziativität, Kommutativität, siehe auch semantische Äquivalenzen in AL/PL, klassifiziert.

    Grundlegende algebraische Strukturen (Überblick) 6

    • Def.: Eine Halbgruppe ist eine algebraische Struktur 〈A, •2〉 mit:

    1. • assoziativ ist, d.h. es gilt ∀a, b, c : (a • (b • c)) = ((a • b) • c).

    〈A, •2〉 ist eine kommutative Halbgruppe, falls zusätzlich zu 1 gilt:

    2. • kommutativ ist, d.h. es gilt ∀a, b : (a • b) = (b • a).

    2

  • . Bei assoziativen Operatoren spielt die Reihenfolge der Auswertung eines Terms keine Rolle, so dass auf die Klammern verzichtet werden kann.

    • Def.: Ein (kommutatives) Monoid ist eine alg. Struktur 〈A, •2, 10〉 mit

    1. 〈A, •2〉 eine (kommutative) Halbgruppe und

    2. neutralem Element 10 (bzgl. •), d.h. es gilt ∀a : (a • 1) = a = (1 • a).

    . Beispiele:

    – Monoide:

    〈R,+2, 00〉, 〈R>0, •2, 10〉, 〈Z,+2, 00〉, 〈Σ∗, •2, ε0〉, 〈N0,+2, 00〉, 〈AA, ◦2, Id0A〉

    – Halbgruppen ohne neutrales Element: 〈R>0,+2〉 (bzgl. Addition auf R), 〈N,+2〉 (bzgl. Addi- tion auf N).

    – Keine Halbgruppe: 〈N, pow2〉 mit pow(a, b) = ab z.B. (23)4 6= 2(34).

    Grundlegende algebraische Strukturen (Überblick) 7

    • Def.: Eine (kommutative) Gruppe ist eine alg. Struktur 〈A, •2, 10〉 mit:

    1. 〈A, •2, 10〉 ein (kommutatives) Monoid und

    2. Inversen (bzgl. •), d.h. es gilt ∀a∃b : (a • b) = 1 = (b • a).

    Eine kommutative Gruppe wird auch als abelsche Gruppe bezeichnet.

    . Beispiele:

    – Kommutative Gruppen: 〈R,+2, 00〉, 〈R>0, •2, 10〉, 〈Z,+2, 00〉.

    – Keine Gruppen: 〈Σ∗, •2, ε0〉, 〈N0,+2, 00〉, 〈AA, ◦2, IdA〉

    . Die Bijektionen SA = {f : A → A | f bijektiv } von A nach A bzgl. der Funktionskomposi- tion und der Identität bilden jedoch die sogenannte symmetrische Gruppe, welche i.A. nicht kommutativ ist (später mehr).

    Grundlegende algebraische Strukturen (Überblick) 8

    • Def.: Ein (unitärer) Ring ist eine alg. Struktur 〈A,+2, •2, 00〉 (bzw. 〈A,+2, •2, 00, 10〉) mit:

    1. 〈A, •2〉 eine Halbgruppe (bzw. 〈A, •2, 10〉 ein Monoid) und

    2. 〈A,+2, 00〉 eine kommutative Gruppe und

    3. • distributiert über + von beiden Seiten, d.h. es gilt ∀a, b, c : (a • (b+ c)) = (a • b+ a • c)∧ ((a+ b) • c) = ((a • c) + (b • c)).

    • Def.: Ein Körper ist eine alg. Struktur 〈A,+2, •2, 00, 10〉 mit:

    1. 〈A,+2, •2, 00, 10〉 ein unitärer Ring und

    2. 〈A \ {0}, •2, 10〉 eine kommutative Gruppe.

    . Beachte: In einem Körper hat bis auf 0 jedes Element ein Inverses bzgl. •.

    . Beispiele:

    – unitäre Ringe, keine Körper: 〈Z,+2, •2, 00, 10〉, 〈Q[X],+2, •2, 00, 10〉

    〈2Σ∗ ,∪2, •2, ∅0, {ε}0〉 (nicht kommutativ)

    – Körper: 〈R,+2, •2, 00, 10〉, 〈Q,+2, •2, 00, 10〉

    3

  • Grundlegende algebraische Strukturen (Überblick) 9

    • Def.: Ein Verband ist eine alg. Struktur 〈A,t2,u2〉 mit:

    1. 〈A,t2〉 kommutative Halbgruppe und

    2. 〈A,u2〉 kommutative Halbgruppe und

    3. es gelten die Absorptionsgesetze ∀a, b, c : a u (a t b) = a = a t (a u b).

    Ein Verband ist distributiv, falls zusätzlich noch gilt:

    4. ∀a, b, c : a u (b t c) = (a u b) t (a u c)

    . Beispiele:

    – keine Verbände: 〈R,+2, •2〉, 〈Q,+2, •2〉, 〈N0,+2, •2〉

    – distributive Verbände: 〈2A,∪2,∩2〉, 〈R,min2,max2〉, 〈N, ggT2, kgV2〉,

    〈{0, 1}{0,1}N ,∧2,∨2〉 boolsche Funktionen/Semantik der AL mit

    [F ∧G](β) := min{[F ](β), [G](β)} und

    [F ∨G](β) := max{[F ](β), [G](β)}.

    Grundlegende algebraische Strukturen (Überblick) 10

    • Eine konkrete algebraische Struktur ist dann z.B. eine Gruppe, falls sie ein Modell der Definition einer Gruppe im Sinne der PL ist.

    . Z.B. ist S = 〈U, g2, e0〉 eine Gruppe, falls S im Sinne der PL ein Modell der Formel

    FG := ∀x∀y∀z(g(x, (g(y, z)) = g(g(x, y), z)) ∧ ∀x(g(x, e) = x ∧ g(e, x) = x) ∧ ∀x∃y(g(x, y) = e ∧ g(y, x) = e)

    i