Mathematik und Logik Mathematik und Logik 2009W 2009W Was ist Logik? Was ist Logik? Elementare Zahlentheorie Elementare Zahlentheorie Mathematik und Logik Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Teilerfremde Zahlen 2009W Primzahlen Logik Institut für Algebra Johannes Kepler Universität Linz Aussagenlogik Logische Konjunktion, ∧ Vorlesung im 2009W http://www.algebra.uni-linz.ac.at/Students/Win/ml Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Modulare Arithmetik Primzahlen Aussagenlogik Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra Abstrakte Algebra Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen Inhalt Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Das ist doch logisch! Curry-Howard-Isomorphismus Listen I Dieser Stein fällt zu Boden. Lineare Algebra I Ist das wirklich logisch? Abstrakte Algebra I N E I N ! I Um dies zu erkennen, ist ein Experiment notwendig. I Bedeutung der Begriffe: „Dieser Stein“, „fällt“, „zu Boden“? RSA-Verschlüsselung Mathematik und Logik 2009W Was ist Logik? Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra Abstrakte Algebra Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Was ist Logik? I Elementare Zahlentheorie Wir nehmen an: I Natürliche Zahlen I Teilbarkeit Jeder Körper fällt zu Boden. Dieser Stein ist ein Körper. I Dann gilt: I Dieser Stein fällt zu Boden. I Das ist LOGISCH. Logik I Dafür ist kein Experiment notwendig. Aussagenlogik I Die Bedeutung der Begriffe „Dieser Stein“, „fällt“, „zu Boden“, „Körper“ ist dabei irrelevant. Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus I I Ebenfalls irrelevant: Wahrheitsgehalt der Annahmen. Dieselbe logische Schlußregel kann auf gänzlich andere Situationen angewandt werden, z.B.: I I I Jeder Mensch ist sterblich. Aristoteles ist ein Mensch. Also: Aristoteles ist sterblich. 0, S0, S(S0), S(S(S0)), . . . , S(S(S(S(S(S(S(S(S(S(S(S(S(S0))))))))))))), . . . oder einfacher: ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| Logische Implikation, ⇒ Logische Implikation, ⇒ Logisches Schließen Beispiel Existenzquantor, ∃ Logische Äquivalenz, ⇐⇒ 2009W Zwei natürliche Zahlen sind genau dann gleich, wenn sie gleich konstruiert wurden. Allquantor, ∀ Aussagenlogik Curry-HowardIsomorphismus Alle natürlichen Zahlen lassen sich auf diese Weise konstruieren I Datentypen Logische Konjunktion, ∧ Existenzquantor, ∃ Zu jeder natürlichen Zahl n gibt es einen Nachfolger Sn; I Logik Logik Datentypen 0 ist eine natürliche Zahl; I RSA-Verschlüsselung Logische Implikation, ⇒ Logische Disjunktion, ∨ I Primzahlen Aussagenlogik Allquantor, ∀ Definition Natürliche Zahlen RSA-Verschlüsselung Prädikatenlogik Definierende Eigenschaften Elementare Zahlentheorie Logik Mathematik und Logik Bedeutung der Begriffe: „Dieser Stein“, „fällt“, „zu Boden“? Logik Logische Implikation, ⇒ Natürliche Zahlen Um dies zu erkennen, ist ein Experiment notwendig. I Existenzquantor, ∃ Existenzquantor, ∃ Datentypen Elementare Zahlentheorie NEIN! I Allquantor, ∀ Allquantor, ∀ Was ist Logik? Ist das wirklich logisch? I Logische Implikation, ⇒ Logische Implikation, ⇒ 2009W Dieser Stein fällt zu Boden. I RSA-Verschlüsselung RSA-Verschlüsselung Mathematik und Logik I Natürliche Zahlen Diophantische Gleichungen Modulare Arithmetik Das ist doch logisch! Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Eukidsche Division Wir gruppieren: ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | | | | | | | | | | | | m =q·b+r und Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra | | | r < b. Diese Idee läßt sich wiederholen: ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | | | | | | | | | | | | | | | | | | | | | | = 3 · 52 + 4 · 5 + 2 = (342)5 (Stellenwertsystem zur Basis 5). Stellenwertsystem Satz Seien m und b natürliche Zahlen, mit b 6= 0. Dann gibt es eine eindeutig bestimmte Liste von natürlichen Zahlen r0 , r1 , . . . , rn−1 , sodaß I rk < b, für alle k { 1, . . . , n − 1 } I rn−1 6= 0. und I m = rn−1 · bn−1 + . . . + r1 · b + r0 = n−1 X rk · bk . k=0 Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ | Seien m und b natürliche Zahlen und b 6= 0. Dann gibt es eindeutig bestimmte natürliche Zahl q, r, sodaß Logische Konjunktion, ∧ Prädikatenlogik | Satz (Euklidsche Division) Beispiel Dezimalsystem Basis 10, in den meisten Kulturen üblich; Sexagesimalsystem Basis 60, altbabylonisch; Dualsystem Basis 2, verwenden die meisten Digitalcomputer; Oktalsystem Basis 8, Variante des Dualsystems, da 8 = 23 ; 2 Hexadezimalsystem Basis 16 = 22 , heute gängigere Variante. Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Beweis für b-adische Darstellung Mathematik und Logik 2009W Beweis. Was ist Logik? Ist m = 0, so erfüllt die leere Liste (und nur diese) die gewünschten Eigenschaften. Ansonsten bestimmen wir mittels Euklidscher Division natürliche Zahlen q und r, sodaß m = q · b + r und r < b. Wir nehmen an, daß q die eindeutige Darstellung Elementare Zahlentheorie Natürliche Zahlen Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung RSA-Verschlüsselung q= Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Existenzquantor, ∃ rk · b k ·b+r = = Logische Implikation, ⇒ Logische Disjunktion, ∨ Lineare Algebra Logische Äquivalenz, ⇐⇒ rk · b k+1 Logische Disjunktion, ∨ +r Prädikatenlogik n X Allquantor, ∀ Existenzquantor, ∃ k 0 rk−1 · b + r · b . k=1 Logische Konjunktion, ∧ Listen n−1 X k=0 Datentypen Curry-HowardIsomorphismus Aussagenlogik Logische Implikation, ⇒ k=0 Allquantor, ∀ Logik Logische Konjunktion, ∧ n−1 X m= Prädikatenlogik rk · bk k=0 besitzt. Dann gilt Logische Äquivalenz, ⇐⇒ n−1 X 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Implikation, ⇒ Logische Disjunktion, ∨ Abstrakte Algebra Mathematik und Logik Datentypen Logische Konjunktion, ∧ Damit haben wir eine passende Darstellung gefunden. Es bleibt noch zu zeigen, daß diese eindeutig ist. (Übung!) Teilbarkeit Axiom (Introduktionsregel für Teilbarkeit) Bemerkung Wenn d, n, q ganze Zahlen sind, sodaß q · d = n, Dann gilt: d teilt n. Example Weil 6 · 2 = 12, gilt: 2 teilt 12. Example Wenn wir die Aussage „4 teilt 20"beweisen möchten, so reicht es, eine ganze Zahl q zu konstuieren, sodaß q · 4 = 20. Elementare Zahlentheorie Natürliche Zahlen Diophantische Gleichungen Teilerfremde Zahlen beweisen möchten, so reicht es, dazu eine ganze Zahl q zu konstuieren (abhängig von d und n), sodaß q · d = n. Axiom (Eliminationsregel für Teilbarkeit) Seien d und n ganze Zahlen,sodaß gilt: d teilt n. Dann gibt es eine ganze Zahl q, sodaß q · d = n. Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Lineare Algebra Abstrakte Algebra Gemeinsame Teiler Teilbarkeit Mathematik und Logik 2009W Definition Z Z Z Eine Zahl d heißt ein Teiler von n , wenn es ein q gibt, sodaß n = q · d. Man sagt dann auch, d teilt n, und schreibt d | n. Es gilt also Diophantische Gleichungen Modulare Arithmetik Primzahlen ∃ n = q · d. q Z Logische Implikation, ⇒ Logische Konjunktion, ∧ Teilbarkeit ist transitiv, d.h. für alle a, b, c : Z gilt a | b ∧ b | c =⇒ a | c Prädikatenlogik Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Gemeinsame Teiler Teilerfremde Zahlen Modulare Arithmetik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Logische Implikation, ⇒ Teilbarkeit Logik Satz Logische Disjunktion, ∨ Existenzquantor, ∃ Natürliche Zahlen RSA-Verschlüsselung Logische Äquivalenz, ⇐⇒ Datentypen Elementare Zahlentheorie Primzahlen RSA-Verschlüsselung Aussagenlogik Was ist Logik? Diophantische Gleichungen d | n ⇐⇒ Teilerfremde Zahlen Logik Allquantor, ∀ Existenzquantor, ∃ Beweis. Datentypen Seien a | b und b | c. Dann gibt es x, y , sodaß b = x · a und c = y · b. Einsetzen ergibt c = y · (x · a) = (y · x) · a, d.h. a | c. Z Logische Implikation, ⇒ Logische Konjunktion, ∧ Abstrakte Algebra Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Satz Seien a, b : Satz Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Z gilt: Transitivität: a | b ∧ b | c =⇒ a | c; „Fast“-Antisymmetrie: a | b ∧ b | a ⇐⇒ |a| = |b|. Für alle a Z gilt: I I a | 0; I 0 | a ⇐⇒ a = 0. Somit ist 1 die kleinste und 0 die größte Zahl (bezüglich Teilbarkeit). Z Man nennt d einen gemeinsamen Teiler von n, m , wenn d | n und d | m gilt. Satz Jeder Teiler eines gemeinsamen Teilers ist wieder ein gemeinsamer Teiler. Beweis. Dies folgt direkt aus der Transitivität der Teilbarkeitsrelaion. Definition N Ein gemeinsamer Teiler d heißt ein größter gemeinsamer Teiler, wenn jeder weitere gemeinsame Teiler ein Teiler von d ist. Lemma Gibt es zu zwei Zahlen einen größten gemeinsamen Teiler, so ist dieser eindeutig bestimmt. Berechnung des größten gemeinsamen Teilers Theorem (Euklidscher Algorithmus) Z Seien m, n . Dann gibt es genau einen größten gemeinsamen Teiler d von m und n. N Beweis. Wir beweisen mit Induktion nach |n|. Ist n = 0, so ist |m| ein größter gemeinsamer Teiler von m und n. Ist |n| > 0, dann gibt es Zahlen q, r mit m = qn + r und 0 ≤ r < |n|. Laut Induktionsvoraussetzung haben n und r einen größten gemeinsamen Teiler d. Da die gemeinsamen Teiler von m und n dieselben sind wie die gemeinsamen Teiler von n und r, ist d auch der größte gemeinsame Teiler von m und n. Definition Den größten gemeinsamen Teiler von m und n bezeichnen wir mit ggT(m, n). Laut obigem Beweis erfüllt dieser die beiden Gleichunen: ggT(m, 0) = |m| , ggT(m, n) = ggT(n, r), Elementare Zahlentheorie für m = q · n + r. Gleichungen über den ganzen Zahlen Problem Z Es seien m, n, d . Wir suchen nach ganzzahligen Lösungen der Gleichung Teilbarkeit Gemeinsame Teiler x · m + y · n = d. Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Bemerkung I Jeder gemeinsame Teiler von m und n teilt auch d; insbesondere ggT(m, n) | d. I Falls x1 · m + y1 · n = d gilt, dann erhalten wir daraus für jedes q : , q · x1 · m + q · y1 · n = q · d, und somit auch eine Lösung von x · m + y · n = q · d. I Es ist daher von Interesse, ob diese Gleichung stets lösbar ist, wenn d = ggT(m, n). I Die Differenz zweier Lösungen dieses Systems ist eine Lösung von x · m + y · n = 0 (die zugehörige homogene Gleichung). Logische Implikation, ⇒ 1 | a; a | 1 ⇐⇒ |a| = 1; I 2009W Was ist Logik? ⇐⇒ |a| | |b| Reflexivität: a | a; Satz Mathematik und Logik Natürliche Zahlen Für alle a, b, c Allquantor, ∀ Existenzquantor, ∃ Z. Dann gilt: a | b Definition Listen Abstrakte Algebra Ordnungseigenschaften der Teilbarkeit Gemeinsame Teiler Curry-HowardIsomorphismus Lineare Algebra 2009W Annahmen: d | n, m = qn + r. Wir haben zu zeigen, daß d | m ⇐⇒ d | r. Aus d | n erhalten wir sofort d | qn. Wenn d | m, dann gilt auch d | (m − qn), und somit d | r. Wenn d | r, dann gilt auch d | (qn + r), und somit d | m. Somit gilt d | m ⇐⇒ d | r. Logische Disjunktion, ∨ Lineare Algebra Mathematik und Logik Beweis. Listen Abstrakte Algebra Teilbarkeit Z Teilbarkeit Gemeinsame Teiler d teilt n Lineare Algebra Natürliche Zahlen Z Lineare Algebra Was ist Logik? Seien d, n beliebige ganze Zahlen. Wenn wir eine Aussage der Form Listen Elementare Zahlentheorie Z Seien m, n und m = qn + r, mit q, r , und d ein Teiler von n. Dann ist d genau dann ein Teiler von m, wenn es ein Teiler von r ist. Curry-HowardIsomorphismus 2009W Curry-HowardIsomorphismus Was ist Logik? Lemma Listen Mathematik und Logik Logische Disjunktion, ∨ 2009W Z Seien d, n, m, z und d | n, d | m. Dann gelten auch d | n + m, d | n − m, und d | z · n. Abstrakte Algebra Logische Konjunktion, ∧ Mathematik und Logik Satz Teilbarkeit Primzahlen Logik Teilbarkeit und Grundrechnungsarten Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Z Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Lösung Diophantischer Gleichungen Theorem (Erweiterter Euklidscher Algorithmus) Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Was ist Logik? Z Z Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler d = xm + yn. Diophantische Gleichungen Modulare Arithmetik 2009W Seien m, n , und d = ggT(m, n). Dann gibt es x, y , sodaß Gemeinsame Teiler Teilerfremde Zahlen Mathematik und Logik Diophantische Gleichungen Teilerfremde Zahlen Beweis. Modulare Arithmetik Wir beweisen mit Induktion nach |n|. Ist n = 0, so ist d = |m|. Aus d = sgn m · m + 0n ergibt sich die passende Lösung. Ist |n| > 0, dann gibt es Zahlen q, r mit m = qn + r und 0 ≤ r < |n|. Es gilt dann d = ggT(n, r) und laut Induktionsvoraussetzung gibt es x, y , sodaß d = xn + yr. Wegen r = m − qn ergibt sich somit d = xn + yr = xn + y(m − qn) = ym + (x − yq)n. Damit haben wir eine passende Lösung gefunden. Z Bemerkung Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ xggT(m, 0) = (sgn m, 0), xggT(m, n) = (y, x − yq), wobei m = qn + r und (x, y) = xggT(n, r). Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Teilerfremde Zahlen Definition Zwei Zahlen m, n Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Z heißen teilerfremd, wenn ggT(m, n) = 1. Satz Was ist Logik? Elementare Zahlentheorie Teilbarkeit Teilt eine Zahl ein Produkt und ist zu einem der beiden Faktoren teilerfremd, dann teilt sie den anderen Faktor. Genauer: Für alle a, b, d : gilt: Z d | ab ∧ ggT(d, a) = 1 =⇒ d | b. Aussagenlogik Logische Konjunktion, ∧ 2009W Natürliche Zahlen Logik Logische Implikation, ⇒ Mathematik und Logik Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Beweis. Logische Konjunktion, ∧ Z Wegen ggT(d, a) = 1 gibt es x, y , sodaß dx + ay = 1. Dann ist b = 1b = (dx + ay)b = dxb + aby. Da d | ab teilt d auch diese Summe, somit d | b. Existenzquantor, ∃ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Datentypen Logische Implikation, ⇒ Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Kongruenz modulo m Definition N Mathematik und Logik 2009W Z Sei m ; dann heißen ganze Zahlen a, b kongruent modulo m falls m ein Teiler von deren Differenz a − b ist: Teilbarkeit Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Reflexivität: a ≡m a; RSA-Verschlüsselung Logik Aussagenlogik Symmetrie: a ≡m b =⇒ b ≡m a; Logische Implikation, ⇒ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Satz Prädikatenlogik Die Kongruenz modulo m ist mit der Addition, der Subtraktion und der Multiplikation verträglich, d.h. sind a ≡m b und c ≡m d, so gelten auch Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ a + c ≡m b + d a − c ≡m b − d a · c ≡m b · d. Curry-HowardIsomorphismus Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Restklassenring Logische Konjunktion, ∧ I I Logische Disjunktion, ∨ I Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Z I Folgerung Die Gleichung a · x ≡m b ist genau dann lösbar wenn ggT(a, m) | b. Satz a ist modulo m invertierbar (d.h. es gibt eine Lösung von a · x ≡m 1), wenn ggT(a, m) = 1. Eulersche ϕ-Funktion Definition Die Menge der invertierbaren Elemente von bezeichnet. Z Z Z Zm sei mit Z∗m Satz Z∗m ist gegenüber Multiplikation abgeschlossen. Beweis. Ist a · a −1 ≡m 1 und b · b−1 ≡m 1, dann ist wegen der Vertäglichkeit auch (a · a −1 ) · (b · b−1 ) ≡m 1, bzw. (a · b) · (a −1 · b−1 ) ≡m 1. Somit ist auch a · b invertierbar und (a · b)−1 = a −1 · b−1 . Bemerkung Z Man nennt daher m auch eine Gruppe, weil Multiplikation und Invertieren nicht aus der Menge hinaus führen und die üblichen Rechenregeln gelten. Definition N Z Sein m . Dann bezeichnet ϕ(m) die Anzahl der Elemente von m (bzw die Anzahl der Zahlen k , k < m, welche zu m teilerfremd sind). Die Funktion ϕ heißt die Eulersche ϕ-Funktion. N Potenziern mit der ϕ-Funktion N und a Z∗m (d.h. ggT(a, m) = 1) gilt a ϕ(m) ≡ 1 (mod m). Beweis. Später. Folgerung Z Sei a ∗m und e ≡ϕ(m) f . Dann gilt a e ≡m a f . Natürliche Zahlen Folgerung Z Sei a m ∗ und e · d ≡ϕ(m) 1. Dann gilt (a e )d ≡m a. Bemerkung Wir können also im Restklassenring auch Wurzelziehen, sofern wir ϕ(m) kennen. Sukzessives Quadrieren Satz N In m kann es vorkommen, daß das Produkt zweier von Null verschiedener Zahlen gleich Null ist (Nullteiler). Beispiel: 2 · 3 ≡6 0, obwohl 2 6≡6 0 und 3 6≡6 0. Z Die Berechnung von a n m ist durch sukzessives Quadrieren (und sofortiges Reduzierem modulo m) effizient möglich. Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Beweis. Wir verwenden die Gleichungen; Primzahlen Weil die Kongruenz modulo m eine Äquivalenzrelation ist, kommt sie als Gleichheitsbegriff in Frage. Die Tatsache, daß die Kongruenz modulo m mit Addition, Subtraktion und Multiplikation verträglich ist, garantiert, daß diese Operationen auch in m wohldefiniert sind. Zu jedem n gibt es genau ein r , sodaß n ≡m r und r < m. D.h. die Menge m besteht aus m Elementen. Z Elementare Zahlentheorie Modulare Arithmetik Bemerkung Prädikatenlogik Existenzquantor, ∃ Was ist Logik? N Logische Äquivalenz, ⇐⇒ Allquantor, ∀ 2009W Sei m . Wir betrachten jetzt ganze Zahlen bereits als gleich, wenn sie modulo m gleich sind. Dadurch entsteht eine neue Menge, die Faktormenge /≡m . Sie heißt der Restklassenring modulo m und wird mit m bezeichnet. Aussagenlogik Logische Implikation, ⇒ Mathematik und Logik Definition Z Z Z Logische Konjunktion, ∧ Transitivität: a ≡m b ∧ b ≡m c =⇒ a ≡m c. Listen Was ist Logik? Z Seien a, b : . Dann gibt es genau dann ein x : , sodaß a · x ≡m b, wenn es x, y : gibt, sodaß a · x + m · y = b. Für m Primzahlen Z gibt, sodaß Bemerkung Natürliche Zahlen Modulare Arithmetik Die Kongruenz modulo m ist eine Äquivalenzrelation, d.h sie erfüllt: Curry-HowardIsomorphismus 2009W Z Seien a, b : . Dann gilt a ≡m b genau dann wenn es ein y : a + m · y = b. Satz (Euler) Teilerfremde Zahlen Satz Logische Disjunktion, ∨ Mathematik und Logik Bemerkung Elementare Zahlentheorie Diophantische Gleichungen Logische Disjunktion, ∨ Prädikatenlogik Wir versuchen eine lineare Gleichung modulo m zu lösen, d.h. wir suchen eine Lösung von a · x ≡m b. Was ist Logik? Gemeinsame Teiler a ≡m b : ⇐⇒ m | (a − b) Diophantische Gleichungen Modulare Arithmetik Problem Teilbarkeit Gemeinsame Teiler Teilerfremde Zahlen Dividieren modulo m a 0 = 1; a 2n = (a n )2 ; RSA-Verschlüsselung Logik Aussagenlogik a 2n+1 = a(a n )2 . Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Bemerkung Für ganze Zahlen bringt das nichts, weil sie bei jedem Quadrieren doppelt so lange werden. Wenn wir aber in jedem Schritt modulo m reduzieren können, bleiben alle Zwischenergebnisse durch m beschränkt. Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Simultane Kongruenzen Z Primzahlen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra ⇔ x ≡q b Modulare Arithmetik a ≡d b, x ≡v s · 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Sei p ein Primzahl, a Natürliche Zahlen Teilbarkeit ·a+r · p d Teilerfremde Zahlen · b. Modulare Arithmetik Primzahlen RSA-Verschlüsselung Beweis. Z x ≡p a gilt genau dann wenn x = a + k · p, für ein k . Einsetzen in die 2. Kongruenz: a + k · p ≡q b. Umformen ergibt: k · p ≡q b − a. Dies gilt genau dann wenn d | (b − a) und und k ≡q r · a−b d . Einsetzen in die 1. Kongruenz und Vereinfachen ergibt dann die gewünschte Form. Zur Eindeutigkeit: Sei y eine zweite Lösung. Wegen x ≡p a und y ≡p a gilt x − y ≡p 0, d.h. p | (x − y). Analog ist q | (x − y). Und somit v | (x − y). Logik Aussagenlogik Primzahlen Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra 2009W Was ist Logik? Ein natürliche Zahl n > 1 heißt Primzahl wenn sie keine echten Teiler hat (also nur 1 und n selbst. 1 ist per Definition keine Primzahl. Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Lemma Teilerfremde Zahlen Eine natürliche Zahl p > 1 ist genau dann eine Primzahl, wenn gilt: p | n · m =⇒ p | n ∨ p | m . ∀ n,m N Primzahlen Aussagenlogik Logische Implikation, ⇒ Logische Äquivalenz, ⇐⇒ Existenzquantor, ∃ Logische Implikation, ⇒ Logische Konjunktion, ∧ Beweis. Logische Disjunktion, ∨ Sei n = q · p + r. Falls r = 0, dann gilt p | n. Falls 0 < r < p, dann ist ggT(n, p) = ggT(p, r) = 1. Gemäß einem Satz über teilerfremde Zahlen, muß somit p | m gelten. Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Eindeutige Zerlegung in Primfaktoren Mathematik und Logik 2009W Theorem (Fundamentalsatz der Arithmetik) Jede natürliche Zahl n > 0 hat eine eindeutige Zerlegung in Primfaktoren km n = p1k1 . . . pm , Gemeinsame Teiler Diophantische Gleichungen Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ I Prädikatenlogik I Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra 1 Existenz: Wenn n eine Primzahl ist, dann ist n = n bereits die gewünschte Zerlegung. Ansonsten gibt es eine nicht-triviale Faktorisierung n = a · b. Die eindeutigen Zerlegungen von a und b müssen dann nur noch kombiniert werden. k10 0 km 0 0 Eindeutigkeit: Sei n = p10 . . . pm eine zweite derartige 0 0 k0 0 km 0 Zerleung. Dann muß gelten: p1 | p10 1 . . . pm . Da p1 eine 0 Primzahl ist, muß sie einen der Faktoren teilen. Sei pi0 dieser Faktor, d.h. p1 | pi0 . Weil beide Primzahlen sind, folgt daraus p1 = pi0 . Wir dividieren beide Seiten durch diesen Faktor und fahren in der selben Weise fort. Berechnung der ϕ-Funktion Satz Elementare Zahlentheorie I Sei p eine Primzahl. Dann ist ϕ(p) = p − 1. I Ist weiters k > 1, dann ist ϕ(pk ) = k · pk−1 . I Sind n und m teilerfremd, dann ist ϕ(n · m) = ϕ(n) · ϕ(m). Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Primzahlen Aussagenlogik Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Existenzquantor, ∃ Datentypen Problem Man finde die Primfaktorzerlegung für eine gegebene Zahl n Satz Sei p der kleinste nicht-triviale Teiler einer Zahl n I n = p, und somit n eine Primzahl, oder I p2 < n. Curry-HowardIsomorphismus N, dann ist I Um den kleinsten Teiler √ von n zu finden, muß man maximal alle Primzahlen bis n testen. I Ist n ≈ 2k , dann ca O(2k/2 ) Teilbarkeitstests. I Grundrechnungsarten: ca O(k). I Es ist keine deutlich bessere allgemeine Methode bekannt. I Faktorisieren viel schwieriger als Multiplizieren. I Die Korrektheit einer Faktorisierung läßt sich leicht überprüfen. I Ein Quantencomputer mit mindestens k Qubits könnte das Problem effizient lösen. Primzahltests Problem Man entscheide, ob eine gegebene Zahl p Satz Für jede Primzahl p und jedes a N eine Primzahl ist. N, a > 0, gilt: ap−1 ≡p 1. Bemerkung I Wenn a p−1 6≡p 1, dann muß p eine zusammengesetzte Zahl sein. I Diese Tatsache gibt jedoch keinen Hinweis darauf, wie eine Faktorisierung aussehen könnte. I Dieser Test läßt sich beliebig oft wiederholen. I Wenn a p−1 ≡p 1, für viele verschiedene a, dann ist das ein deutlicher Hinweis, daß p eine Primzahl sein könnte. I Durch eine Verfeinerung dieses Verfahres kann man die Fehlerwahrscheinlichkeit beliebig klein machen. I Es gibt inzwischen auch ein halbwegs effizientes Verfahren, welches gegebenenfalls einen Beweis liefert, daß p eine Primzahl ist. Logische Konjunktion, ∧ Logische Disjunktion, ∨ N. Bemerkung Logische Implikation, ⇒ Listen Lineare Algebra Mathematik und Logik 2009W Satz (Euklid) Elementare Zahlentheorie Es gibt unendlich viele Primzahlen. Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Bemerkung Die ϕ-Funktion kann damit leicht berechent werden, wenn die Primfaktorzerlegung bekannt ist. Unendlich viele Primzahlen Was ist Logik? Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Berechnung der Primfaktorzerlegung Existenzquantor, ∃ Logische Äquivalenz, ⇐⇒ Datentypen Z Allquantor, ∀ Logische Konjunktion, ∧ Allquantor, ∀ a n ≡m a. Wir zeigen zuerst, daß a n ≡p a. Wenn a ≡p 0, dann trivial. Wenn a 6≡p 0, dann ist a ∗p (weil p prim). Sei n = 1 + k · ϕ(m). Somit k·ϕ(q) a n = a 1+k·ϕ(m) = a 1+k·ϕ(p)·ϕ(q) = a · (a ϕ(p) ) ≡p a · 1ϕ(q) ≡p a. Analog ist a n ≡q a. Der Chinesische Restsatz (Eindeutigkeitsteil) liefert die Kongruenz modulo dem Produkt p · q. Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Prädikatenlogik Beweis. Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Z Abstrakte Algebra Was ist Logik? Natürliche Zahlen Modulare Arithmetik Logik Abstrakte Algebra 2009W Teilbarkeit RSA-Verschlüsselung Beweis. Logische Disjunktion, ∨ Mathematik und Logik Natürliche Zahlen Diophantische Gleichungen wobei alle pi Primzahlen sind, mit pi < pi+1 , und ki > 0. Logische Äquivalenz, ⇐⇒ Existenzquantor, ∃ Elementare Zahlentheorie Teilerfremde Zahlen Logische Konjunktion, ∧ Allquantor, ∀ Was ist Logik? Gemeinsame Teiler Teilerfremde Zahlen Modulare Arithmetik Seien p und q verschiedene Primzahlen, m = p · q, und n ≡ϕ(m) 1. Dann gilt für beliebige a RSA-Verschlüsselung Logik Logische Äquivalenz, ⇐⇒ Datentypen Satz Modulare Arithmetik Logische Konjunktion, ∧ Logische Disjunktion, ∨ Seien p, q teilerfremd. Dann gilt: x ≡p y ∧ x ≡q y =⇒ x ≡p·q y. Logische Konjunktion, ∧ Logische Konjunktion, ∧ Allquantor, ∀ Folgerung (von Chinesischem Restsatz) Logische Implikation, ⇒ Mathematik und Logik Definition Logische Implikation, ⇒ Prädikatenlogik Z beliebig. Dann gilt ap ≡p a. Abstrakte Algebra Abstrakte Algebra Mathematik und Logik Satz (Fermat) Elementare Zahlentheorie Diophantische Gleichungen q d Potenzieren modulo Primzahlen Was ist Logik? Gemeinsame Teiler x ≡p a, Teilerfremde Zahlen Aussagenlogik N Seien p, q , d = ggT(p, q) = r · p + s · q, v = kgV(p, q), und a, b . Dann gilt Diophantische Gleichungen RSA-Verschlüsselung 2009W Satz (Chinesischer Restsatz) Gemeinsame Teiler Logik Mathematik und Logik Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Beweis. Zu jeder endlichen Mengen von Primzahlen konstruieren wir eine weitere Primzahl, die nicht darin vorkommt: Es seien p1 , . . . , pn Primzahlen. Wir bilden das Produkt m = p1 · . . . · pn + 1. Wegen dem Fundamentalsatz der Arithmetik gibt es eine Primzahl, die m teilt. Aber m ≡pi 1, für alle i = 1, . . . , n. Es muß also mindestens eine weitere Primzahl geben. Bemerkung I Mit etwas mehr Theorie gelangt man zu wesentlich besseren Schranken. I Der durchschnittliche Abstand zwischen zwei n-stelligen Primzahlen betägt ungefähr 2n. Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Verschlüsselung I I I I I I I I I I I Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ I Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra I I Mathematik und Logik Man wähle zwei große Primzahlen p und q. Sei m = p · q. Es gilt: ϕ(m) = (p − 1)(q − 1). Wähle e ∗ϕ(m) . Sei a m , die Nachricht, Klartext. Berechne: b ≡m a e . (Verschlüsselung) (m, e) ist der öffentliche Schlüssel. b ist das Kryptogramm (Geheimtext). Sei d das Inverse von e (mod ϕ(m)). Dann gilt bd ≡m a. (Entschlüsselung) (m, d) ist der geheime Schlüssel. Um aus aus dem öffentlichen Schlüssel (m, e) das d für den geheimen Schlüssel zu bestimmen, brauchen wir ϕ(m), und dazu brauchen wir die Faktorisierung von m. Diese Methode (das RSA-Verfahren) funktioniert, weil das Problem der Faktorisierung schwierig ist. Das Verfahren gilt als sicher, wenn m ≈ 21024 ≈ 10308 . . . und noch ein paar zusätzliche Nebenbedingungnen gelten. Z Z Abstrakte Algebra Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Aussagen Primzahlen RSA-Verschlüsselung Logik Logische Disjunktion, ∨ Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra Was ist Logik? Elementare Zahlentheorie I Ein Beweis stellt sicher, daß eine Aussage wahr ist. Primzahlen I Definition: Eine Aussage ist eine Konstruktion, durch welche festgelegt wird, wie ihre Beweise zu konstruieren sind. I Eine Aussage, die wir nicht beweisen können, muß nicht unbedingt falsch sein. Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Modulare Arithmetik RSA-Verschlüsselung Logik Logische Disjunktion, ∨ Allquantor, ∀ Existenzquantor, ∃ Datentypen Curry-HowardIsomorphismus Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Definition der Implikation, ⇒ 2009W Was ist Logik? Sind P und Q Aussagen, dann bezeichnet P ⇒ Q ebenfalls eine Aussage, die Implikation von P und Q. Introduktion Hat man einen Beweis von P ⇒ Q, so reicht ein Beweis von P, um auch Q zu beweisen. Schlußregeln Q Logische Disjunktion, ∨ P⇒Q Gemeinsame Teiler Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Prädikatenlogik Allquantor, ∀ P Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Definition der Konjuktion, ∧ Existenzquantor, ∃ 2009W Was ist Logik? Formation Sind P und Q Aussagen, dann bezeichnet P ∧ Q ebenfalls eine Aussage, die Konjunktion von P und Q. Logische Implikation, ⇒ Natürliche Zahlen Teilbarkeit Gemeinsame Teiler P ∨I0 P ∨ Q Q ∨I1 P ∨ Q P⇒R Q⇒R ∨E P ∨ Q R Allquantor, ∀ I Sei X ein Datentyp, und P[x] für jedes x X eine Aussage. Dann bezeichnet ∀x X P[x] eine All-Aussage. I Die All-Aussage drückt eine universelle Quantifizierung aus. Ein Beweis von ∀x X P[x] konstruiert für jedes beliebige x X einen Beweis von P[x]. I Teilerfremde Zahlen Um P ∧ Q zu beweisen, muß man sowohl P als auch Q beweisen. Modulare Arithmetik Primzahlen RSA-Verschlüsselung Elimination I Praktisch: Es sei ∀x X P[x] zu beweisen. Vorgangsweise: Annahme x X ; beweise P[x]. I Hängt P[x] nicht von x ab, dann liegt eine normale Implikation vor: ∀x X P ist dasselbe wie X → P. Logik Hat man einen Beweis von P ∧ Q so auch einen Beweis von P, und auch einen Beweis von Q. Schlußregeln Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ P ∧ Q ∧E0 P P ∧ Q ∧E1 Q Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Schlußregeln Elementare Zahlentheorie Diophantische Gleichungen Introduktion P Q ∧I P ∧ Q Folgt irgendeine Aussage R sowohl aus P als auch aus Q, dann folgt sie auch aus P ∨ Q (Beweis durch Fallunterscheidung). Curry-HowardIsomorphismus Mathematik und Logik Allquantor, ∀ Datentypen Elimination Listen RSA-Verschlüsselung Logik Um P ∨ Q zu beweisen, genügt es, P zu beweisen, oder Q zu beweisen. Logische Disjunktion, ∨ ⇒E Abstrakte Algebra Elementare Zahlentheorie Introduktion Logische Konjunktion, ∧ P⇒Q Q ⇒I Lineare Algebra Was ist Logik? Sind P und Q Aussagen, dann bezeichnet P ∨ Q ebenfalls eine Aussage, die Disjunktion von P und Q. Logische Implikation, ⇒ Abstrakte Algebra 2009W Formation Datentypen Lineare Algebra Mathematik und Logik Definition der Disjunktion, ∨ Existenzquantor, ∃ .. . Logische Konjunktion, ∧ Teilbarkeit Logische Disjunktion, ∨ P Logische Implikation, ⇒ Natürliche Zahlen Logik Elimination Datentypen Elementare Zahlentheorie Diophantische Gleichungen Um P ⇒ Q zu beweisen, muß man Q beweisen, wobei man einen Beweis von P voraussetzen darf. Existenzquantor, ∃ Listen Mathematik und Logik Formation Allquantor, ∀ Curry-HowardIsomorphismus Zwei Aussagen sind äquivalent wenn sie vom logischen Standpunkt aus betrachtet gleichwertig sind. Logische Äquivalenz, ⇐⇒ Listen Logik Bemerkung Logische Konjunktion, ∧ Listen RSA-Verschlüsselung Die logische Äquivalenz wird mit P ⇐⇒ Q bezeichnet und ist lediglich eine Abkürzung für (P ⇒ Q) ∧ (Q ⇒ P). Logische Implikation, ⇒ Logische Disjunktion, ∨ Primzahlen Notation Aussagenlogik Logische Konjunktion, ∧ Modulare Arithmetik Definition der Äquivalenz, ⇐⇒ Prädikatenlogik Curry-HowardIsomorphismus Teilerfremde Zahlen ⇒I Logische Implikation, ⇒ Logische Implikation, ⇒ Diophantische Gleichungen A ∧ B⇒B ∧ A Datentypen Logische Disjunktion, ∨ Gemeinsame Teiler A ∧ B A ∧ B ∧E1 ∧E0 B A ∧I B ∧ A Logische Äquivalenz, ⇐⇒ Logische Konjunktion, ∧ Teilbarkeit A ∧ B Logische Konjunktion, ∧ Logische Implikation, ⇒ Natürliche Zahlen Beweis. Logische Implikation, ⇒ Teilerfremde Zahlen Existenzquantor, ∃ Elementare Zahlentheorie ist allgemeingültig. Aussagenlogik Problem: Wie definiert man wahr und falsch? Datentypen Was ist Logik? A ∧ B⇒B ∧ A Diophantische Gleichungen I Allquantor, ∀ 2009W Die logische Konjunktion ist kommutativ, d.h. die Aussage Gemeinsame Teiler 2009W Prädikatenlogik Mathematik und Logik Satz Teilbarkeit Populäre Definition: Eine Aussage ist ein Satz, der entweder falsch oder wahr ist. Logische Implikation, ⇒ Logische Äquivalenz, ⇐⇒ Natürliche Zahlen Natürliche Zahlen I Aussagenlogik Logische Konjunktion, ∧ Elementare Zahlentheorie Mathematik und Logik Die mathematische Logik verwendet mathematische Methoden, um das logische Denken formal zu beschreiben. Diophantische Gleichungen Modulare Arithmetik Was ist Logik? Kommutativität der Konjunktion Abstrakte Algebra Gemeinsame Teiler Teilerfremde Zahlen 2009W Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Mathematik und Logik 2009W Was ist Logik? Allquantor, Introduktion und Elimination I Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit I Um ∀x X P[x] zu beweisen, muß man P[x] für ein beliebiges x X beweisen. ∀-Introduktion: Teilerfremde Zahlen Modulare Arithmetik Primzahlen Logische Implikation, ⇒ Logische Konjunktion, ∧ I Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Diophantische Gleichungen Teilerfremde Zahlen Primzahlen I RSA-Verschlüsselung ∀I ∀-Elimination: Aussagenlogik ∀x X P[x] a X ∀E P[a] Existenzquantor, ∃ Logische Implikation, ⇒ Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Allquantor, Beispiel Mathematik und Logik 2009W Was ist Logik? Was ist Logik? Elementare Zahlentheorie Elementare Zahlentheorie ∀x X A[x] ∨ ∀y Y B[y] Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Teilerfremde Zahlen Modulare Arithmetik RSA-Verschlüsselung Aussagenlogik Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ ∀y Y Logische Disjunktion, ∨ Modulare Arithmetik Primzahlen Existenzquantor, ∃ Datentypen Logik Aussagenlogik Logische Implikation, ⇒ ∀I (A[x] ∨ B[y]) Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ ∀I Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Allquantor: Beispiel (Fortsetzung) x X, Annahmen: ∀x X A[x] ∨ ∀y Y B[y], Zu beweisen: Mathematik und Logik 2009W y Y Natürliche Zahlen ∀y Y B[y] .. . .. . A[x] ∨ B[y] A[x] ∨ B[y] Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung ∀x X A[x] ∨ ∀y Y B[y] ⇒ A[x] ∨ B[y] Logik Aussagenlogik ∀x X A[x] x X ∀E A[x] ∨I0 A[x] ∨ B[y] Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Was ist Logik? Diophantische Gleichungen ∨E z P ∧ Q ∧E1 snd z Q Ein Beweis der Konjunktion P ∧ Q ist ein Paar, dessen Komponenten die Typen P bzw. Q haben. Logik I Aussagenlogik I Verbunddatentyp (Direktes Produkt): P × Q. Konstruktor: (, ) P → Q → P × Q; I Selektoren: fst P × Q → P, RSA-Verschlüsselung Logische Implikation, ⇒ Logische Konjunktion, ∧ ∀y Y B[y] y Y ∀E B[y] ∨I1 A[x] ∨ B[y] Introduktion und Elimination z P ∧ Q x P y Q ∧E0 ∧I fst z P (x, y) P ∧ Q I Primzahlen Logische Äquivalenz, ⇐⇒ snd P × Q → Q. Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Existenzquantor, ∃ I Elementare Zahlentheorie I Gemeinsame Teiler Diophantische Gleichungen I Primzahlen RSA-Verschlüsselung I Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ I Sei X ein Datentyp, und P[x] für jedes x X eine Aussage. Dann bezeichnet ∃x X P[x] eine Existenz-Aussage. Die Existenzaussage drückt eine existenzielle Quantifizierung aus. Ein Beweis von ∃x X P[x] konstruiert ein a X und einen Beweis von P[a]. Praktisch: Es sei ∃x X P[x] zu beweisen. Vorgangsweise: Man wählt ein passendes a X , und versucht damit P[a] zu beweisen. Hängt P[x] nicht von x ab, dann liegt eine normale Konjunktion vor: ∃x X P ist dasselbe wie X ∧ P. Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Kommutativität der Konjunktion Satz A ∧ B ⇒ B ∧ A. Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen I Teilerfremde Zahlen Beweis: cA ∧ B Modulare Arithmetik Primzahlen cA ∧ B cA ∧ B ∧E1 ∧E0 snd c B fst c A ∧I (snd c, fst c) B ∧ A RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ c 7→ (snd c, fst c) A ∧ B ⇒ B ∧ A Logische Äquivalenz, ⇐⇒ ⇒I Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Allquantor, ∀ Existenzquantor, ∃ Existenzquantor, ∃ Datentypen I Modulare Arithmetik Logische Disjunktion, ∨ Prädikatenlogik Logische Konjunktion, ∧ I Teilerfremde Zahlen Logische Konjunktion, ∧ Logische Disjunktion, ∨ Selektor: Funktionsanwendung: apply. Elementare Zahlentheorie Logische Implikation, ⇒ Logische Äquivalenz, ⇐⇒ Konstruktor: Abstraktion: (7→); I Gemeinsame Teiler Datentypen Logik Funktionsdatentyp: Schreibweise: P → Q oder Q P . I Teilbarkeit Die beiden Fälle: Logische Äquivalenz, ⇐⇒ Modulare Arithmetik der für jeden Input vom Typ P einen Output vom Typ Q liefert. I Natürliche Zahlen ∀x X A[x] Teilbarkeit Teilerfremde Zahlen Der Beweis einer Implikation ist ein Algorithmus, I Curry-HowardIsomorphismus Listen Teilbarkeit f P ⇒ Q x P ⇒E fx Q ⇒I I Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Natürliche Zahlen x 7→ t[x] P ⇒ Q RSA-Verschlüsselung ⇒I ∀x X A[x] ∨ ∀y Y B[y] ⇒ ∀x X ∀y Y (A[x] ∨ B[y]) Allquantor, ∀ .. . t[x] Q Teilerfremde Zahlen ∀x X ∀y Y (A[x] ∨ B[y]) Prädikatenlogik x P Diophantische Gleichungen A[x] ∨ B[y] Logische Implikation, ⇒ Schlußregeln: Gemeinsame Teiler .. . Logik I Teilbarkeit y Y Primzahlen Was ist Logik? ∃E Implikation, ⇒ Natürliche Zahlen x X Diophantische Gleichungen 2009W Q Curry-HowardIsomorphismus Listen Mathematik und Logik Q ∃x X P[x] Logische Disjunktion, ∨ Curry-HowardIsomorphismus Logische Konjunktion, ∧ P[y] .. . Existenzquantor, ∃ Logische Disjunktion, ∨ Logische Implikation, ⇒ y X Allquantor, ∀ Listen Elementare Zahlentheorie ∃-Elimination: Datentypen Logische Konjunktion, ∧ Was ist Logik? I Logische Disjunktion, ∨ Logische Konjunktion, ∧ 2009W Wurde ∃x X P[x] bewiesen, so kann man für’s weitere annehmen, daß es ein soches Objekt gibt. Logische Äquivalenz, ⇐⇒ Logische Implikation, ⇒ Mathematik und Logik I Logische Konjunktion, ∧ Logische Implikation, ⇒ 2009W Um ∃x X P[x] zu beweisen, muß man ein a X finden und damit P[a] beweisen. a X P[a] ∃-Introduktion: ∃I ∃x X P[x] Prädikatenlogik Datentypen Mathematik und Logik I Logik Wurde ∀x X P[x] bewiesen, und ist a X , dann hat man einen Beweis von P[a]. Allquantor, ∀ I Modulare Arithmetik ∀x X P[x] Aussagenlogik Elementare Zahlentheorie Gemeinsame Teiler P[x] RSA-Verschlüsselung Logik Was ist Logik? Existenzquantor: Introduktion und Elimination Teilbarkeit .. . Diophantische Gleichungen 2009W Natürliche Zahlen x X Gemeinsame Teiler Mathematik und Logik Datentypen Logische Implikation, ⇒ Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra I commute A × B → B × A, c 7→ (snd c, fst c), I Intuitiver: (a, b) 7→ (b, a). I Äquivalenz: c 7→ (snd c, fst c), c 7→ (snd c, fst c) A ∧ B ⇔ B ∧ A. Mathematik und Logik 2009W Was ist Logik? Logische Disjunktion, ∨ I Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Mathematik und Logik 2009W Introduktion und Elimination x P ∨I0 Left x P ∨ Q Diophantische Gleichungen Was ist Logik? y Q ∨I1 Right y P ∨ Q f P ⇒ R g Q ⇒ R ∨E either f g P ∨ Q ⇒ R Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung I Ein Beweis der Disjunktion P ∨ Q ist einer von P oder von Q, und als solcher gekennzeichnet. I Disjunkte Vereinigung (Direkte Summe): P + Q. Konstruktoren: Left P → P + Q, Right Q → P + Q; Selektor: either (P → R) → (Q → R) → (P + Q → R). Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Elementare Zahlentheorie I I Datentypen Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Mathematik und Logik 2009W Beispiel: A ∨ (B ∧ C ) ⇒ A ∨ B y B ∧ C a A Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik a A ∨I0 Left a A ∨ B y B ∧ C ∧E1 fst y B ∨I1 Right(fst y) A ∨ B ⇒I ⇒I a 7→ Left a A ⇒ A ∨ B y 7→ Right(fst y) B ∧ C ⇒ A ∨ B ∨E either(a 7→ Left a) (y 7→ Right(fst y)) A ∨ (B ∧ C ) ⇒ A ∨ B Primzahlen Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung RSA-Verschlüsselung Mit Logik Logik Aussagenlogik f A ∨ (B ∧ C ) ⇒ A ∨ B g A ∨ (B ∧ C ) ⇒ A ∨ C Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ erhalten wir auch: Prädikatenlogik Allquantor, ∀ Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ (f , g) A ∨ (B ∧ C ) ⇒ (A ∨ B) ∧ (A ∨ C ) Datentypen Logische Implikation, ⇒ Es gibt auch: h (A ∨ B) ∧ (A ∨ C ) ⇒ A ∨ (B ∧ C ) Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra Mathematik und Logik 2009W Was ist Logik? Elementare Zahlentheorie Curry-Howard-Isomorphismus Eine Aussage legt den Datentyp ihrer Beweise fest. I Ein Datentyp entspricht der Aussage, daß es ein Objekt dieses Typs gibt. I Jeder Algorithmus, der ein Objekt eines bestimmten Datentyps konstruiert, ist ein Beweis, daß es ein solches gibt. I Aussagen entsprechen Programmspezifikationen. I Beweise entsprechen Programmen. Logik I Man kann Aussagen beweisen, indem man ein Objekt vom passenden Typ konstruiert. Aussagenlogik I Aus mathematischen Beweisen lassen sich verifizierte Programme extrahieren. Teilbarkeit Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logik Aussagenlogik Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen 2009W I Natürliche Zahlen Gemeinsame Teiler Mathematik und Logik I Fehlerfreie Software beliebiger Komplexität ist möglich. Was ist Logik? Elementare Zahlentheorie Natürliche Zahlen Teilbarkeit Gemeinsame Teiler Diophantische Gleichungen Teilerfremde Zahlen Modulare Arithmetik Primzahlen RSA-Verschlüsselung Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Äquivalenz, ⇐⇒ Logische Disjunktion, ∨ Prädikatenlogik Allquantor, ∀ Existenzquantor, ∃ Datentypen Logische Implikation, ⇒ Logische Implikation, ⇒ Logische Konjunktion, ∧ Logische Konjunktion, ∧ Logische Disjunktion, ∨ Logische Disjunktion, ∨ Curry-HowardIsomorphismus Curry-HowardIsomorphismus Listen Listen Lineare Algebra Lineare Algebra Abstrakte Algebra Abstrakte Algebra { ab | a < x } |X | |x| , ∅, ∞ { ab | a < x } |X | |x| { aεb, a b, a ∈ b, a ⊆ b, a ⊇ b, a \ b, a ≤ b, {X }. a ∈ b 3 a, a ∈ / b 63 a α a, |X |. a | b, b - a.