Webseiten-Werkzeuge


Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
markow:settheory [2014/12/08 00:40] – angelegt Tscherter, Vincentmarkow:settheory [2024/03/03 22:36] (aktuell) Tscherter, Vincent
Zeile 1: Zeile 1:
 +====== Mengenlehre ======
 +{{gem/mgr}}{{gem/pageinfo}}
  
 +Für alle Elemente ''x'' gilt ''x ∈ U = {A,B,C,D,...,Z}'' und somit ''|U| = 26''. Siehe auch [[wpde>Mengenlehre]]
 +
 +===== -#1 Vereinigung =====
 +
 +{{ http://upload.wikimedia.org/wikipedia/commons/thumb/3/30/Venn0111.svg/330px-Venn0111.svg.png?150}}
 +  ; in
 +  : <code>{B,X,C,D} ∪ {A,B,C}</code>
 +  ; out
 +  : <code>{B,X,C,D,A}</code>  
 +
 + {{gem/plain#df4788fa7e4c8b81}}
 +
 +++++ Lösung | <code>
 +/[^A-Z,]/,/         Alles ausser [A-Z,] entfernen
 +/([A-Z])(.*)\1/$1$2/  Mehrfachelemente entfernen
 +/,,+/,/             Formatierung bereinigen
 +/^,(.*?),?$/{$1}/   Finalisierung</code>
 +
 +Testing: Leere Mengen sind ok++++
 +
 +===== - Schnittmenge =====
 +
 +{{ http://upload.wikimedia.org/wikipedia/commons/thumb/9/99/Venn0001.svg/330px-Venn0001.svg.png?150}}
 +  ; in
 +  : <code>{B,X,C,D} ∩ {A,B,C}</code>
 +  ; out
 +  : <code>{C,B}</code>  
 +
 + {{gem/plain#fc034d8954b628a8}}
 +
 +++++ Lösung | <code>
 +/([A-Z])(.*∩.*)\1(.*)=/$2$3=,$1/ Gemeinsame extrahieren
 +/.*=,?(.*)/{$1}/               Finalisieren
 +/$/=/                            Intitialisierung: = Anfügen</code>
 +
 +Testing: Leere Mengen sind auch ok++++
 +
 +===== - Relatives Komplement =====
 +
 +{{ http://upload.wikimedia.org/wikipedia/commons/thumb/e/e6/Venn0100.svg/330px-Venn0100.svg.png?150}}
 +  ; in
 +  : <code>{A,B,C,D} \ {B,D}</code>
 +  ; out
 +  : <code>{A,C}</code>  
 +
 + {{gem/plain#f55a201fc22b630f}}
 +
 +++++ Lösung | <code>
 +/[^A-Z,]/,/         Alles ausser [A-Z,] entfernen
 +/([A-Z])(.*)\1/$2/    Gemeinsame Elemente entfernen
 +/,,+/,/             Formatierung bereinigen
 +/^,(.*?),?$/{$1}/   Finalisierung</code>
 +
 +Testing: Leere Mengen sind ok. Bei ''X \ Y'' muss ''Y'' eine Teilmenge von ''X'' sein!++++
 +
 +===== - Absolutes Komplement =====
 +
 +  ; in
 +  : <code>U \ {A,B,C,D,X,Y,Z}</code>
 +  ; out
 +  : <code>{E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W}</code>  
 +
 + {{gem/plain#15af0aef9de637af}}
 +
 +++++ Lösung | <code>
 +/^U\s*\\\s*\{/{A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z}/
 +/[^A-Z,]/,/         Alles ausser [A-Z,] entfernen
 +/([A-Z])(.*)\1/$2/    Gemeinsame Elemente entfernen
 +/,,+/,/             Formatierung bereinigen
 +/^,(.*?),?$/{$1}/   Finalisierung</code>
 +
 +Testing: ''U\U = {}'' ist ok++++
 +
 +===== - Symmetrische Differenz =====
 +
 +{{ http://upload.wikimedia.org/wikipedia/commons/thumb/4/46/Venn0110.svg/330px-Venn0110.svg.png?150}}
 +  ; in
 +  : <code>{D,A,B} △ {C,A,B}</code>
 +  ; Out
 +  : <code>{D,C}</code>  
 +
 + {{gem/plain#d54a6e24ce1bcd04}}
 +
 +++++ Lösung | <code>/\s//g
 +/([A-Z])(.*)△(.*)\1/$2△$3/
 +/,,+/,/
 +/\}△\{/,/
 +/,\}/}/
 +/\{,/{/</code>
 +
 +Testing: Geht auch mit leeren Mengen++++
 +
 +===== - Karthesisches Produkt =====
 +
 +  ; in
 +  : <code>{A,B,C} × {E,F}</code>
 +  ; out
 +  : <code>{(CF),(CE),(BF),(BE),(AF),(AE)}</code>  
 +
 + {{gem/plain#63722fa0ebab5d43}}
 +
 +++++ Lösung | 
 +
 +<code>
 +/\{([A-Z])(.*)\{([A-Z])(.*)=/{$1$2$3{$4=,($1$3)/ Paaren (1)
 +/\{[A-Z](.*)×(.*)\{\}/{$1×{$2}/                  Paaren (2)
 +/{}.*=,?/{/                                     Finalisieren
 +/[^A-Z{}×]//       Überflüssiges entfernen
 +/$/=}/               =} hinten anfügen</code>
 +Testing: Leere Mengen ok++++
 +
 +===== - Potenzmenge =====
 +
 +  ; in
 +  : <code>ℙ({A,B,C})</code>
 +  ; out
 +  : <code>{{A,B,C},{A,B},{A,C},{A},{B,C},{B},{C},{}}</code>  
 +
 + {{gem/plain#d232678cd153c25c}}
 +
 +++++ Lösung|
 +
 +<code>
 +/ℙ\(\{\}\)/{}/ !
 +/β(.*)0./β$1/
 +/β(.*)1(.)/β$1,$2/
 +/\{,/{/g
 +/\{β,(.*)/{{$1}/!
 +/^((1.)*)=,/{β$1},/
 +/1(.)α0/α0$10/
 +/0(.)α0/1$10/
 +/(.*)1(.)=/$1α0$2=,{$11$2}/
 +/(.*)0(.)=/$11$2=,{$1}/
 +/ℙ?\(?\{?(\b[A-Z]),?\}?\)?/0$1/g
 +/$/=/
 +</code>
 +
 +Idee: Eine Binärzahl mit sovielen Stellen wie Elemente in der Menge von 0 bis 2<sup>n+1</sup>-1 iteriren.
 +<code>{A,B,C} -> 111,110,101,100,011,010,001,000
 +
 +/^(1*)=,/$1,/!
 +/1α0/α00/
 +/0α0/10/
 +/(.*)1=/$1α0=,$11/
 +/(.*)0=/$11=,$10/
 +/\{?\b([A-Z]),?\}?/0/g
 +/$/=/
 +</code>
 +
 +Entsprechende Buchstaben filtern.
 +<code>
 +{A,B,C}  -> 1A1B1C,1A1B0C,1A0B1C,1A0B0C,0A1B1C,0A1B0C,0A0B1C,0A0B0C
 +
 +/^((1.)*)=,/$1,/!
 +/1(.)α0/α0$10/
 +/0(.)α0/1$10/
 +/(.*)1(.)=/$1α0$2=,$11$2/
 +/(.*)0(.)=/$11$2=,$10$2/
 +/\{?\b([A-Z]),?\}?/0$1/g
 +/$/=/
 +</code>++++
 +
 +===== - Unäre Kardinalität=====
 +
 +  ; in
 +  : <code>|{A,B,C}|</code>
 +  ; out
 +  : <code>111</code>  
 +
 + {{gem/plain#7a852e12c1ec48eb}}
 +
 +++++ Lösung|
 +<code>/[A-Z]/1/g
 +/[^1]//g!
 +</code>++++
 +
 +===== - Binäre Kardinalität=====
 +
 +  ; in
 +  : <code>|{A,B,C,D,E}|</code>
 +  ; out
 +  : <code>101</code>  
 +
 + {{gem/plain#ca194ce6eebbb297}}
 +
 +++++ Lösung|
 +<code>/[A-Z]/1/g
 +/[^10α]//g
 +/^(1+)\1(α|$)/$1α0/
 +/^1(1+)\1(α|$)/$1α1/
 +/^1α/1/!
 +/^$/0/
 +</code>++++