Diese Diskussion wurde archiviert.
Es können keine neuen Kommentare abgegeben werden.
|
|
|
|
|
|
|
|
|
Bin ich ein krimineller?
Auf /. (mittlerweile weit hochmoderiert) hat es auch noch eine erklärung (hat mit eigenheiten von gzip zu tun).
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
Ich spinn jetzt einfach mal ein bisschen rum:
Bestimmt ist diese Möglichkeit nicht nur auf Primzahlen beschränkt, oder? Ich vermute jetzt einfach mal, dass es auch beispielsweise immer eine Quadratzahl gibt, die mit einer gegebenen Zahl anfängt (also z.B. gegebene Zahl: 12, Quadratzahl dazu: 1296, oder 25 -> 256 usw.)
Möglicherweise kann man also auch "illegale" Quadratzahlen, Kubikzahlen, Fibonacci-Zahlen, Pascalsche-Dreieck-Zahlen (haben die einen "vernünftigen" Namen?) etc. finden. Wird bestimmt auch jemand tun, falls es tatsächlich geht.
Weitergesponnen: Vermutlich wird der Suffix, den man an die entsprechende Zahl dranhängen muss, relativ kurz sein verglichen mit der Zahl selber. (muss auch nicht stimmen, aber kann stimmen :-))
Alle diese Zahlen sind auf jeden Fall kürzer darstellbar als explizit. Für n-te Potenzen muss ich nur die entsprechende n-te Wurzel angeben, der Index einer Fibonacci-Zahl ist so gut wie die Zahl selber, im Pascal'schen Dreieck steht immer n über k usw. Sogar bei Primzahlen kann ich im Prinzip angeben, dass es ich um die x-te Primzahl handelt (gut, da spar ich bei weitem nicht so viel, aber immerhin).
Zusammengefasst: kann man da nicht möglicherweise einen zwar abartig rechenintesiven, aber ziemlich coolen Komprimieralgotithmus draus backen?
--
--
Es gibt keine Regel. Ohne Ausnahme.
(Curzon Dax)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Ich spinn jetzt einfach mal ein bisschen rum
nur zu :)
- Bestimmt ist diese Möglichkeit nicht nur auf Primzahlen beschränkt, oder? Ich vermute jetzt einfach mal, dass es auch beispielsweise immer eine Quadratzahl gibt, die mit einer gegebenen Zahl anfängt (also z.B. gegebene Zahl: 12, Quadratzahl dazu: 1296, oder 25 -> 256 usw.) Möglicherweise kann man also auch "illegale" Quadratzahlen, Kubikzahlen, Fibonacci-Zahlen, Pascalsche-Dreieck-Zahlen (haben die einen "vernünftigen" Namen?) etc. finden. Wird bestimmt auch jemand tun, falls es tatsächlich geht.
Iss ja grundsätzlich richtig, aber dann ist erstmal der Pfiff raus. Bei irgendeiner 'normale' Zahl, ggf, aus einer mathematischen Operation entstanden, fehlt die Besonderheit. Waere es z.B. eine Quadratzahl, so hat man, wie du bereits selbst sagst eine weitere Art von Komprimierung, etwas was wiederum nur eine Verschluesselung der Information darstellt (Komprimierung == Verschluesselung). Klar, das das verbieten einer Folge von Zahlen und einer zugehörigen Formel (so in der Srt wie 3x7+12x35/81 = Hello World) auch absurd ist, aber eben nicht absurder als das Verbot der Veroeffentlichung an und für sich. Bei einer Primzahl hingegen ist es nix derart komplexes/schwer verstaendliches, sondern nur eine einzige Zahl - klar, technisch kein Unterschied, aber mach das mal Deiner Mutter begreifbar - Formel verboten, das mag sie ja vieleicht noch verstehen, aber eine Zahl zu verbieten, das haelt jeder fuer absurd.
- Weitergesponnen: Vermutlich wird der Suffix, den man an die entsprechende Zahl dranhängen muss, relativ kurz sein verglichen mit der Zahl selber. (muss auch nicht stimmen, aber kann stimmen :-))
Eher im Gegenteil je groesser das Verhaeltniss zwischen Rauschen (also dem unnützen angehaengten Teil) und Nutzsignal (den benötigten Teil) ist, desdo leichter sollte es werden die Datenfolge zu erzeugen. Ausserdem sind beide groessen eigentlich voneinander unabhaengig - die Laenge des Nutzteils ergibt sich aus der zu transportierenden Information, und die Laenge des 'Nachlaufs' ergibt sich aus dem benoetigten Rauschen.
- Alle diese Zahlen sind auf jeden Fall kürzer darstellbar als explizit. Für n-te Potenzen muss ich nur die entsprechende n-te Wurzel angeben, der Index einer Fibonacci-Zahl ist so gut wie die Zahl selber, im Pascal'schen Dreieck steht immer n über k usw. Sogar bei Primzahlen kann ich im Prinzip angeben, dass es ich um die x-te Primzahl handelt (gut, da spar ich bei weitem nicht so viel, aber immerhin). Zusammengefasst: kann man da nicht möglicherweise einen zwar abartig rechenintesiven, aber ziemlich coolen Komprimieralgotithmus draus backen?
Ich denk mal eher nicht - Selbst mehrfache Indizierung wird zwar viel sparen, aber auch die Anwendbarkeit einschränken. Beide Partner muessen zum Beispiel fuer jede verwendete Primzahl (um bei dem Beispiel zu bleiben) den gleichen Index verwenden - entweder per Festlegung, oder weil sie alle zwischen 1 und der Verwendeten Zahl liegenden Priemzahlen kennen. Auch ist das mit dem gzip im prinzip ueberfluessig. Da die Menge der Zahlen unendlich ist, kann angenommen werden das es zu _jedem_ moeglichen Text eine Zahl gibt, die bei geeigneter Darstellung eben diesen Text ergibt ... wenn ich's mir recht ueberlege sollte es sogar eine Primzahl geben, die dieser Forderung entspricht. Das es eine solche Zahl gibt, ist ja bereits dadurch bewiesen das wir hier Datenverarbeitung per Computer betreiben :)) - Nur das mit der Primzahl wuesste ich jetzt nicht wie ich das beweisen sollte.
Gruss
H.
|
|
|
|
|
|
|
|
|
|
|
|
|
Da ist nicht viel zu komprimieren.
Wenn ich mal unterstelle, jede tausendste Zahl wäre eine Primzahl, spare ich in der Dezimaldarstellung nur drei Stellen, wenn ich statt der Primzahl selbst angebe, die wievielte Primzahl ich meine. Bei ein paar Hundert Stellen ist das nicht viel.
Vorher habe ich Dezimalziffern angefügt, um aus einer nicht-primen Zahl eine Primzahl zu machen. Das dürfte durchschnittlich den genannten Gewinn (z. B. 3 Stellen) wieder aufheben.
Frère
|
|
|
|
|
|
|
|
|
|
|
|
|
[erst mal: gute Idee, das Zitieren mit <ul>. Mach ich jetzt auch.]
- Iss ja grundsätzlich richtig, aber dann ist erstmal der Pfiff raus. Bei irgendeiner 'normale' Zahl, ggf, aus einer mathematischen Operation entstanden, fehlt die Besonderheit.
Mit "normal" meinst Du jetzt eine Zahl, die nicht irgendwie was besonderes ist wie die Zahlentypen, die ich genannt habe, oder?
-
Waere es z.B. eine Quadratzahl, so hat man, wie du bereits selbst sagst eine weitere Art von Komprimierung, etwas was wiederum nur eine Verschluesselung der Information darstellt (Komprimierung == Verschluesselung).
Erstmal ist Komprimierung bestimmt eine Form der Verschlüsselung, aber keineswegs identisch. Beispiel: die "b-Sprache" zur Verschlüsselung des gesprochenen Worts. Geht so: nimm jeden gesprochenen Vokal zweimal und setze ein "b" dazwischen: "Hello World" wird also zu "Hebellobo Woborld!". Komprimiert war das nicht...
Und was ich mit Komprimierung sagen wollte: gzip komprimiert ja schon ganz schön gut. (ok, bzip2 ist besser...) Wenn ich jetzt was gzip-Komprimiertes unwesentlich verlängere, z.B. durch den Suffix, der aus dem gzip-File eine Primzahl macht, dann kann ich unter Umständen das gzip-File nochmal erheblich komprimieren.
- Weitergesponnen: Vermutlich wird der Suffix, den man an die entsprechende Zahl dranhängen muss, relativ kurz sein verglichen mit der Zahl selber. (muss auch nicht stimmen, aber kann stimmen :-))
- Eher im Gegenteil je groesser das Verhaeltniss zwischen Rauschen (also dem unnützen angehaengten Teil) und Nutzsignal (den benötigten Teil) ist, desdo leichter sollte es werden die Datenfolge zu erzeugen.
Leichter ja. Sorry, da hab ich mich undeutlich ausgedrückt: Aufwand ist mir egal, ich will möglichst wenig Rauschen anhängen müssen. - Ausserdem sind beide groessen eigentlich voneinander unabhaengig - die Laenge des Nutzteils ergibt sich aus der zu transportierenden Information, und die Laenge des 'Nachlaufs' ergibt sich aus dem benoetigten Rauschen.
...das von der Art Zahl abhängt, die ich nehme. Bei Primzahlen wird das Rauschen relativ kurz sein, verglichen mit Fibonacci-Zahlen (wenn's mit Fibonaccis überhaupt geht). Im vorliegenden Fall war's so, wie hier beschrieben: (k sind die Nutzdaten, Länge hexadezimal: ca. 1200 Stellen)
k*2562+2083, also ca 4 Stellen mehr
bzw.
k*256211+99, also ca. 422 Stellen mehr.
Hält sich in Grenzen, nicht? Bei Quadratzahlen wird's nur leider erheblich mehr Rauschen sein müssen. Andererseits sind Quadratzahlen "vorhersagbarer" verteilt.
So, weitergesponnen. Gehen wir jetzt einfach mal davon aus, dass - wir uns mit Quadratzahlen befassen
- es zu jedem gegebenen Präfix ein Suffix gibt, so dass das Ganze eine Quadratzahl wird
- dieses Suffix höchstens gleich lang ist wie der Präfix
Ich gebe gerne zu, dass das verdammt viele aus der Luft gegriffene Annahmen sind, aber wir spinnen ja nur rum.
Dann können wir also unsere Nutzdaten nehmen, gzippen (bringt grob 50%), Suffix dranhängen (verdoppelt schlimmstenfalls), Wurzel ziehen (bringt ziemlich genau 50%), nochmal gzippen (bringt potenziell nochmal 50%).
Sprich: wenn das alles so stimmt, können wir unsere Nutzdaten deutlich mehr komprimieren, als wenn wir sie "nur" gzippen. Selbst wenn der Suffix (=Rauschen) immer genauso lang ist wie der Präfix und das zweite gzip gar nichts bringt, haben wir immer noch nichts verloren!
Wenn wir Primzahlen nutzen, können wir logischerweise nicht Wurzelziehen, aber wir können statt der Primzahl selber angeben: die x-te Primzahl (von 2 als "erster Primzahl" an gerechnet). Damit sparen wir zwar viel weniger, aber es scheint, als ob der Rausch-Suffix auch kürzer sein könnte. Und den Index dieser Primzahl können wir ja auch noch mal komprimieren.
Jetzt wüsste ich gerne: ist so ein Vorgehen praktikabel? Gibt es vielleicht einen Komprimieralgorithmus, der solche Effekte nutzt? Wenn nein, liegt das daran, dass es nichts bringt, oder daran, dass heutige Rechner zu langsam sind?
War das wirklich alles mur rumgesponnen, oder ein geniales Voraussehen der Komprimieralgorithmen der Zukunft?
- Das es eine solche Zahl gibt, ist ja bereits dadurch bewiesen das wir hier Datenverarbeitung per Computer betreiben :))
- Nur das mit der Primzahl wuesste ich jetzt nicht wie ich das beweisen sollte.
Das hat Dir Dirichlet mit seinem Theorem bereits abgenommen. Nur über Quadrat- und sonstige Zahlen konnte ich nix finden...
--
Es gibt keine Regel. Ohne Ausnahme.
(Curzon Dax)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Du vergisst das Wurzelziehen. Ich denke nicht, dass irgend ein Zusammenhang zwischen einer Zahl und ihrer Wurzel besteht, aus Sicht eines Komprimierprogramms. Machen wir mal einen kurzen Test:
Angenommen, das Ergebnis beim ersten gzippen sei 60493827148. Elf Stellen, und einigermassen plausibel als gzip-Ergebnis, weil immerhin 9 von 10 Ziffern vorkommen und nur zwei davon doppelt, also hohe Entropie bzw. geringe Redundanz. Eine Quadratzahl, die damit anfängt, wäre 60493827148395061729 (20 Stellen). Sieht aus wie eine mittelprächtig zufällige Zahl, nicht wahnsinnig gut komprimierbar, oder? Ihre Wurzel ist aber 7777777777, und das ist verdammt toll zu komprimieren! (klar, ich hab für das Beispiel mit der 7777777777 angefangen und mir das Drumrum "rückwärts" ausgedacht, aber es ist ein ziemlich beeindruckender "best case", nicht?)
Und was Deinen letzten Satz angeht: wenn ich nicht "um die Ecke" denke, muss ich Dir recht geben. Aber beispielsweise kann ich ein Bild von einem Apfelmännchen sehr viel besser komprimieren als GIF oder JPEG oder Wavelets das können, nicht wahr? Wenn ich also Bilddaten als Darstellung einer komplexen Iteration auffasse, kann ich sie stärker komprimieren, als wenn ich sie "nur" als Bilddaten ansehe. Warum dann nicht auch besondere Eigenschaften spezieller Zahlen ausnutzen, um alles mögliche zu komprimieren?
Ja, ist immer noch rumgesponnen, weil bei den Bildern war's verlustbehaftete Kompression, und das sollte bei Programmcode nicht so sein.
Und die Annahme, dass man nicht erheblich mehr als eine Verdopplung braucht, um eine Quadratzahl zu erzeugen, ist auch nicht bewiesen.
--
Es gibt keine Regel. Ohne Ausnahme.
(Curzon Dax)
|
|
|
|
|
|
|
|
|
|
|
|
|
Warum dann nicht auch besondere Eigenschaften spezieller Zahlen ausnutzen, um alles mögliche zu komprimieren?
Weil Kompressionsverfahren, die nur in Ausnahmefällen klappen, witzlos sind. Was nützt es mir, wenn ich z. B. Kundenadressen komprimieren will, wenn sich eine der Adressen (Dein Ausnahmefall) mit nur 2 Byte darstellen läßt, dafür aber alle anderen Adressen "komprimiert" 1 Byte länger sind, als in purem ASCII?
Nichts desto trotz sind natürlich verschiedene Kompressionsalgorithmen für verschiedene Zwecke besser oder schlechter geeignet. Digitalisierte Fotos lassen sich anders effektiv komprimieren, als Sourcecode oder Musik oder Apfelmännchen.
Nur sind 1000 Algorythmen, mit denen ich jeweils 0,1% z. B. meiner Audiodaten gut komprimieren kann, recht sinnlos: Ich muß jeder Audiodatei die Information anhängen, nach welchem der 1000 Verfahren sie jetzt verschlüsselt ist, und ich muß Decodierer für alle 1000 Verfahren haben. Nur 1000 Verfahren sind wahrscheinlich viel zu wenige, um für alle Audiodaten ein Verfahren mit "best case" zu haben. Usw. usf.
Es bleibt dabei: Ich komme nicht unter die Enthropie.
Trotzdem nette Gedankenspielereien ...
Frère
|
|
|
|
|
|
|
|
|
|
|
|
|
Das ist wirklich ziemlich abgefahren. Das erinnert mich - sehr entfernt - an diese Sache, als ein prompt recht gut verkauftes, nichtsdestoweniger mies geschriebenes Buch die Idee verbreitete, die Bibel enthielte geheime Nachrichten zu aktuellen Weltereignissen. Hat dann natürlich genügend Leute gegeben, die darauf hingewiesen haben, dass man ähnliche "Botschaften" wohl aus jedem beliebigen Buch herauslesen kann, sofern es nur dick genug ist (und man einen Computer für die Drecksarbeit benutzt).
Wie dem auch sei, diese Sache mit PI hat natürlich weit mehr Niveau. Ich finde das jedenfalls sehr faszinierend... --
Always proofread your posts to make sure you didn't any words out.
|
|
|
|
|
| |
|
|
|
|
Von Anonymer Feigling am Tuesday 20. March, 12:42 MET (#6)
|
|
|
|
|
PS geht doch unendlich weiter also 3.14.......
vielleicht findet sich in der 100000000 nachkomastelle der DVD code :-), und alle die PI benutzen sind kriminell. Immerhin rechen Sie den Kreis mit einer geschützten formel aus.
Gruß Markus
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ganz einfach: gzip wird als illegal eingestuft und jeder, der es fortan weiter verwendet ist ein Krimineller. --
Diesen Satz bitte nicht lesen!
|
|
|
|
|
|
|
|
|
|
|
|
|
Jede Datei ist nix anderes als eine Zahl. (In der Hardware meist binär vorliegend.)
Damit gibt's schon x urheberrechtlich geschützte oder illegale Zahlen.
Nix Neues also, aber das Spiel mit der Primzahl war auf jeden Fall 'ne nette Idee, die DeCSS noch mal in die Medien gebracht hat.
Wie ein Zaubertrick: 'n bißchen Abrakadabra drumherum (Primzahl), und der eigentlich triviale Trick (gzip) gerät in Vergessenheit :-)
Frère
|
|
|
|
|
|