Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
markow:settheory [2014/12/09 15:10] – [Potenzmenge] Tscherter, Vincent | markow:settheory [2024/03/03 22:36] (aktuell) – Tscherter, Vincent |
---|
| ====== 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,]/,/g Alles ausser [A-Z,] entfernen |
| /([A-Z])(.*)\1/$1$2/ Mehrfachelemente entfernen |
| /,,+/,/g 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,]/,/g Alles ausser [A-Z,] entfernen |
| /([A-Z])(.*)\1/$2/ Gemeinsame Elemente entfernen |
| /,,+/,/g 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,]/,/g Alles ausser [A-Z,] entfernen |
| /([A-Z])(.*)\1/$2/ Gemeinsame Elemente entfernen |
| /,,+/,/g 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{}×]//g Ü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>++++ |