Beiträge von Christoph R.

    Damit ich nur noch eine Adresse abrufen muss, habe ich gerade eingestellt dass meine TU-Adressen automatisch zu gmail geforwardet werden. Nachdem ich jezt ungefähr eine Stunde herumprobiert habe weil ich dachte dass es nicht funktioniert, habe ich festgestellt dass Google anscheinend geforwardete E-Mails, die ursprünglich von der eigenen Adresse kommen, automatisch löscht. Eigenartig ist, dass E-Mails, die man direkt an die eigene gmail-Adresse schickt, sehrwohl ankommen. In Bezug auf Filter ist alles bei den Default-Einstellungen.

    Nochmal übersichtlicher:
    1. Ich sende eine E-Mail von gmail and die TU-Adresse. Von dort wird sie zu gmail (zurück) geforwarded. Sie verschwindet im Nirgendwo.
    2. Ich sende eine E-Mail von gmail direkt an meine eigene gmail-Adresse. Sie kommt an.

    Das Problem liegt definitiv bei gmail und nicht bei der TU. Versuchshalber habe ich statt dem Forwardning auch mal eingestellt dass gmail die Mails von der TU-Adresse per POP3 abholt. Wenn ich dann eine Nachricht von gmail an die TU-Adresse schicke, zeigt mir gmail zwar an dass eine Nachricht abgeholt wurde, sie scheint aber nie im Posteingang auf (und auch nicht in irgendeinem anderen Ordner).

    Zwar werde ich selten in eine Situation kommen in der das relevant ist, trotzdem würde ich gerne wissen was hier vor sich geht, damit nicht womöglich auch sinnvolle Nachrichten verloren gehen.

    Hat jemand eine Erklärung?

    Bezüglich Plagiatismus gibt's sicher keine Probleme wenn die Quellen genannt werden. Aber darf man das auch aus urheberrechtlicher Sicht? Ist bei Bachelorarbeiten wahrscheinlich nicht wirklich relevant, weil sie ja meistens ohnehin im Büro des Betreuers auf alle Ewigkeit verschlossen bleiben. Ich bilde mir aber ein dass ich mal gehört habe es gäbe bei Bildern kein Zitierrecht, oder zumindest ist die Rechtslage unklar. Kann mich aber leicht irren.

    Die Zeile

    Code
    scanf("%d", meineKunden[i].id);


    muss richtigerweise so lauten:

    Code
    scanf("%d", [B]&[/B]meineKunden[i].id);

    scanf erwartet als zweiten Parameter die Adresse einer Variablen, wo der eingelesene Wert hingeschrieben wird. Du übergibst stattdessen den Wert der (uninitialisierten) Variablen id selbst. scanf versucht dann an eine Stelle im Speicher zu schreiben, die nicht für dein Programm reserviert ist.

    Die anderen beiden scanf-Zeilen sind übrigens richtig, weil name und vorname Arrays sind, und meineKunden[i].name bzw. meineKunden[i].vorname automatisch die Adresse des ersten Elements bezeichnen (alternativ wäre &meineKunden[i].name[0] und &meineKunden[i].vorname[0] auch möglich).

    Um es für die Nachwelt festzuhalten: mit dem java.nio-Package geht es etwas schneller als mit java.io.File. Beschrieben wird das z.B. hier: http://stackoverflow.com/questions/1052…ively-in-java-7.

    Der Geschwindigkeitsvorteil ist unter allen Betriebssystemen spürbar, jedoch ist Windows+schnelles java.nio immer noch langsamer als Linux+langsames java.io. Anscheinend ist der Dateizugriff im Windows-JDK einfach ineffizient implementiert, aber da kann man halt nichts machen. Ist für mich auch nicht so tragisch.

    Seiten zur Beschleunigung des Netzwerks unter Windows 7 habe ich schon einige gelesen. Davon hat nichts geholfen. Das Netzwerk an sich ist ja auch nicht das Problem, weil das Listen direkt von der Kommandozeile aus ja effizient ist (inzwischen habe ich es auch in C# implementiert und es ist ebenfalls effizient). Es liegt also unmittelbar an der Windows-Implementierung vom JDK. :mad:

    Ich könnte mir vorstellen dass das JDK auf generische Betriebssystemfunktionen zum Dateizugriff zurückgreift, während die Shell und .NET erkennen dass es Samba ist und spezifische System Calls machen. Macht das Sinn?

    Kennt jemand eine andere Implementierungsmöglichkeit zum rekursiven Traversal an Stelle von File.isDirectory() und File.list()?

    Ich habe ein Java-Programm zum Synchronisieren meines Desktop-PCs mit meinem Notebook geschrieben. Das Programm läuft auf dem Desktop-PC, muss aber natürlich auch die über Samba erreichbare Datenpartition meines Notebooks rekursiv durchsuchen.

    Ich habe auf beiden Rechnern sowohl Windows 7 als auch Ubuntu mit derselben Java-Version 7.0. Für folgenden Test habe ich sämtliche Funktionen meines Programms auskommentiert und nur noch das rekursive Durchsuchen meiner Notebook-Partition drin gelassen: Wenn der Desktop-PC mit dem Java-Programm unter Ubuntu läuft, dann ist das Programm wesentlich schneller (~1 Minute) als wenn er unter Windows 7 läuft (~8 Minuten). Welches Betriebssystem auf meinem Notebook gestartet ist (wo also auch der Samba-Server läuft) ist für die Laufzeit egal. Eine schlechte Konfiguration des Samba-Servers, was ja die naheliegendste Ursache wäre, ist damit ausgeschlossen.

    Was das ganze noch eigenartiger macht: ein "dir /s \\notebook\data" (rekursives dir) in der Kommandozeile von Windows 7 ist ebenfalls schnell.

    Langsam ist das Durchsuchen also nur, wenn es
    1. von Java aus
    und
    2. von einem Windows-Rechner aus passiert.

    Testhalber habe ich auch die Rollen von PC und Notebook vertauscht: selbes Ergebnis. Es liegt also anscheinend wirklich am Betriebssystem.

    Hat jemand eine Erklärung für dieses Verhalten? Bzw. weiß jemand was die java.io.File-Klasse da eigenartiges treiben könnte, das die Laufzeit so massiv beeinträchtigt?

    Vorschlag: Du verwirfst die Idee mit dem P vs. NP Problem und stattdessen versuchen wir eine moderne Verschlüsselung zu knacken, da muss man genauso viel logisch denken können und das hat meiner Meinung nach eine viel höhere Erfolgschance und da würde ich sogar mitmachen ;)

    Wobei das dabei wichtige Faktorisierungsproblem in seiner Entscheidungsvariante ebenfalls in NP liegt. ;)

    Diesen Beweis liefere ich dir gerne, er ist nämlich sehr leicht

    Sorry, ich hatte in "Ich sage nur, dass ich für ein Problem, das in NP, aber nicht in P liegt, einen mehr als polynomiell großen Suchraum durchsuchen muss." den Teil "aber nicht in P liegt" überlesen. Diese Aussage stimmt dann natürlich.

    Deswegen kann man P != NP beweisen, indem man zeigt, dass NP-vollständige Probleme in NP, aber nicht in P liegen.

    Diese Aussage stimmt und ist gut bekannt. Würdest du zeigen, dass k-SAT nicht in P liegt, dann würde daraus P != NP folgen.

    Jedoch hast du das bis jetzt nicht gezeigt. Die Lücke im Beweis ist die Behauptung: "Es gibt keine andere Möglichkeit vorzugehen, als einer Variablen einen Wert zuzuweisen und dann zu schauen, wie sich das auf die anderen Variablen auswirkt.". Das hast du nach wie vor nicht bewiesen, ist aber genau der Kern des Problems. Die restlichen Schlussfolgerungen deines Beweises mögen ja durchaus richtig sein, bringen das Problem aber nur in eine leicht andere Form.

    Ich sage nur, dass ich für ein Problem, das in NP, aber nicht in P liegt, einen mehr als polynomiell großen Suchraum durchsuchen muss. (Was zu beweisen wäre, das räume ich ein.)

    Dann liefere diesen Beweis bitte. Genau dieser fehlt nämlich. Und das führt uns zurück zur ursprünglichen Frage ob P != NP.

    Edit: Generell kann ich zu deinen Gedanken sagen, dass dir bei einigen Aussagen sicher viele Informatiker intuitiv zustimmen würden (mich eingeschlossen). Gerade die Aussage "Es gibt keine andere Möglichkeit vorzugehen, als einer Variablen einen Wert zuzuweisen und dann zu schauen, wie sich das auf die anderen Variablen auswirkt (Anm.: im worst case)" schwirrt sicher den meisten Informatikern im Kopf herum, und ist auch der Grund dafür wieso alle Welt glaubt dass P != NP ist. Nur ist leider eine Intuition noch lange kein Beweis, und es geht jetzt genau darum solche High-level-Vermutungen zu formalisieren und im Detail nachzuweisen.

    Edit 2: Ich hab mir einige deiner Mensa-Schriften kurz angeschaut. Es ist auffällig, dass du häufig "meiner Meinung nach" schreibst. Das würde ich zwecks Seriosität vermeiden. Bin zwar ein sehr liberaler Mensch, aber in der Mathematik ist die persönliche Meinung bekanntlich nicht relevant. Entweder es ist wahr oder eben nicht. :)

    Jetzt erkläre mir, warum diese Beispiele in P liegen.

    Weil jede _konkrete_ Instanz (eines beliebigen Problems) in P liegt, ja sogar in konstanter Zeit gelöst werden kann. Beweis: Berechne die Lösung vor, und schreib einen Algorithmus der immer genau diesen Wert zurückgibt.

    Natürlich sind Algorithmen für einzelne Instanzen praktisch sinnlos, ich wollte damit nur zeigen dass deine Aussage (sinngemäß: "die Anzahl der festzulegenden Variablen, bevor der Rest daraus folgt, ist für gleich große Instanzen immer gleich") falsch ist.

    Wie ich erklärt habe, muss man bei Problemen, die in NP, aber nicht in P liegen, einen mehr als polynomiell großen Suchraum durchsuchen. Diese Behauptung ist nicht trivial.

    Richtig. Diese Behauptung ist nämlich genau die die Aussage P != NP.

    Eine zulässige Kritik wäre, dass ich diese Behauptung nicht bewiesen habe.

    Und genau das war die Kritik. Wo genau es hakt, hat Juggl3r inzwischen beschrieben.

    Hier meine sachliche Kritik. Ich finde mindestens drei Behauptungen, die du ohne Beweis aufstellst:

    Der Grund: Es gibt keine andere Möglichkeit vorzugehen, als einer Variablen einen Wert zuzuweisen und dann zu schauen, wie sich das auf die anderen Variablen auswirkt.

    Du nimmst damit implizit bereits an, dass k-SAT in NP ist und du einen mehr als polynomiellen Teil des Suchraums durchsuchen musst. Du zeigst also: NP != P genau dann wenn NP != P.

    Wenn k-SAT in P wäre, dann müsste es in jeder Formel die gleiche Anzahl von Variablen geben, deren Wert man festlegen muss, so dass sich die Werte aller anderen Variablen ergeben.

    Das stimmt nicht einmal für Fragmente von SAT die in P liegen. Z.B. ist eine fixe Input-Instanz trivialerweise in P (sie hat sogar konstante Laufzeit). Trotzdem ist z.B. { {a, b}, {-a, -b} } und { {a, -a}, {b, -b} } die Anzahl der benötigten Assignments, nach denen sich alle anderen ergeben, unterschiedlich (und hängt außerdem noch davon ab welche Werte man den Variablen gibt).

    t ist aber nicht konstant. Vielmehr stellt die Anzahl der Clauses eine obere Schranke für t dar. t kann also unter Umständen so groß sein wie die Anzahl der Clauses. Da die Anzahl der Clauses bei k-SAT aber variabel ist, ist der Suchraum nicht polynomiell.

    Auch hier fehlt die Begründung, und du nimmst implizit bereits NP != P an.

    Muss sie unbedingt kabelgebunden sein? Wenn es dir um das Aufladen geht: Laser-Mäuse halten wesentlich länger durch als die alten Infrarotmäuse. Ich lade meine bei ganztägiger Verwendung ca. einmal alle 3-4 Monate. Da sie weder flach noch leise ist kann ich sie in deinem Fall zwar nicht wirklich empfehlen. Ich wollte dir aber Bescheid geben dass du deine Suche eventuell auf kabellose Mäuse ausdehnen kannst.

    Sei mir nicht böse, aber das klingt für mich schon ein bisschen nach "Ich hab die großartige Idee von warmen Eislutschern, aber um die Details der Realisierung soll sich wer anderer kümmern".

    Es stimmt schon, dass man Entwicklungen in der Zukunft oft im Voraus nicht einmal erahnen kann. Trotzdem gibt es in der Informatik auch bekannte Negativresultate die auch du nicht ändern können wirst. Und dass du Informationen nicht bis ins Unendliche komprimieren kannst, das ist eine Tatsache. Du kannst dich ja einmal näher mit der Informationstheorie auseinander setzen.

    Ein Quantencomputer ist wieder was anderes als mehrwertige Zustände. Da werden mehrere Zustände gewissermaßen übereinander gespeichert und auch gleichzeitig verarbeitet.

    Prinzipiell hast du schon recht damit, dass du bei mehreren Zuständen mit weniger "Bits" auskommst (wobei das dann wohl anders heißen würde, sagen wir "Speichereinheit") um dieselbe Information zu speichern. Nur ist das Speichern selbst dann halt aufwändiger. Der Informationsgehalt einer bestimmten Nachricht ist gegeben und kann nicht beliebig verringert werden ohne Information zu verlieren, da kommst du nicht drum rum. Entweder eine Speichereinheit kann durch mehrere Zustandsmöglichkeiten einen höheren Informationsgehalt tragen, dann kommst du mit weniger Einheiten aus, oder sie trägt einen niedrigeren Informationsgehalt (so wie bei klassischen Bits), dann brauchst du halt eine höhere Anzahl von Einheiten.

    Mit deinem Vorschlag verschiebst du das Problem quasi nur von der informatischen auf die elektrotechnische und physikalische Ebene.

    Edit: Aus meiner HTL-Zeit weiß ich, dass anfangs durchaus mit 3 Zuständen gearbeitet wurde. Das war aber nicht nur elektrotechnisch schwerer zu realisieren (positive Ladung, negative Ladung, keine Ladung), sondern hatte auch bei der Rundung und bei der Fehlerfortpflanzung von Gleitkommazahlen Nachteile. An der TU habe ich das allerdings nie gehört, also keine Ahnung ob es stimmt.

    Grundsätzlich kannst du Zahlen und damit alle Daten mit jeder beliebigen Anzahl von Zuständen (mindestens 2) darstellen. Im Prinzip würde mit mehr Zuständen aus informatischer Sicher alles genauso funktionieren wie üblich (abgesehen von Details, z.B. dass dann Zahlen anders gerundet würden, etc.). Wieso man gerade 2 Zustände gewählt hat, das hat wohl eher elektrotechnische und physikalische Gründe. Zwei Zustände lassen sich leichter unterscheiden als mehrere.

    Aber die Frage ist ein bisschen allgemein. Keine Ahnung ob dir das jetzt weiterhilft.

    Nichts liegt mir ferner als diese erzkonservative Partei zu verteidigen. Dafür, dass alles bleibt wie es ist "weil es immer schon so war", brauche ich keine hochbezahlten Volksvertreter.

    Dennoch sind deine Anschuldigungen ziemlich aus der Luft gegriffen. Die ÖVP stellte seit 1945 - abgesehen von März bis Mai diesen Jahres - die Mehrzahl der Landeshauptleute, hatte über Jahrzehnte knapp 50% und manchmal sogar die absolute Mehrheit. Davon, dass wir deswegen wieder zur Monarchie zurückgekehrt wären, weiß ich nichts. Nun baut die ÖVP seit 2006 kontinuierlich ab und wird dieses mal vermutlich auf gerade mal 25% kommen. Die Gefahr wird also, falls überhaupt jemals eine bestanden hat, eher kleiner.

    Was die CV-Mitgliedschaft betrifft: kann es sein, dass das weniger mit der Mitgliedschaft an sich zu tun hat, sondern einfach damit dass man gewisse Vorteile hat wenn man "wen kennt"? Sprich: Freunderlwirtschaft. Das ist zwar natürlich auch unfair, kommt aber in allen Bereichen und auch in der Privatwirtschaft vor. Wenn sich für den Arbeitgeber völlig fremde Personen um eine Stelle bewerben, dann kann ich mir nicht vorstellen dass sie nach Parteibuch, Taufschein oder ähnliches gefragt werden.


    Haha das geilste Kommentar ist ja:
    "wer 1 und 1 zusammenzählen kann weis das nichts in einen rechner geheim sein kann. Computer arbeiten mit zahlen, jedes kind kennt eine Subtraktion und da ist es klar das man jeden klick am pc sich ausrechnen wird. können."

    Da die meisten anderen Kommentare auch nicht viel besser sind, und zahlreiche Leser ihre Zustimmung kundtun, hoffe ich in solchen Fällen immer dass die User dort nicht repräsentativ für die Gesamtbevölkerung sind.

    Adok, ich denke doch es macht einen Unterschied ob ich Daten freiwillig hergebe (in Form einer Registrierung, eines Kommentars etc.) oder ob eine private E-Mail abgefangen und meine Festplatte durchleuchtet wird.

    Ich gehe ohnehin davon aus, dass alles, das ich ins Internet stelle 1. für jeden und 2. für immer zugänglich ist. Auch auf Facebook, selbst wenn man die Datenschutzrichtlinien restriktiv einstellt. Und dafür muss nicht einmal Facebook selbst korrupt sein (was es aber vermutlich ist): es kann ja auch ein (falscher) Freund theoretisch private Inhalte öffentlich republizieren. Deswegen würde ich z.B. nie auf Facebook über andere lästern oder allzu viel Privates erzählen.

    Bei privaten E-Mails, SMS und dergleichen ist es was anderes. Da erwarten sich die meisten wohl doch Vertraulichkeit. Zu Unrecht, wie wir jetzt wissen.

    Zitat

    Geheimgesetze sind krank und widersprechen meinem Verständnis eines Rechtsstaats (wie soll ich mich an ein Gesetz halten, wenn es doch geheim ist?)

    Ich glaube das widerspricht das Verständnis eines Rechtsstaats von jedem. Aber wo gibt's sowas? Ich mein, dass Geheimdienste nicht alle Informationen öffentlich machen sagt ja schon der Name und ist - wenn es um echte Kriminalitätsbekämpfung geht - ja auch berechtigt. Aber die zugrunde liegenden Gesetze sind ja hoffentlich schon öffentlich zugänglich.

    Zitat

    Und ich hoffe auf gar nichts mehr, alles was nicht öffentlich werden soll wird mit RSA 4096 Bit Keys verschlüsselt

    Na dann hoffen wir, dass nicht die falschen Leute schon längst einen effizienten Faktorisierungsalgorithmus haben. :)

    Michael Spindelegger: "Es ist so, weil es immer schon so war"?

    Man muss jetzt nicht unbedingt ein großer Philosoph sein, um zu erkennen dass das eine ziemlich dumme Begründung ist (völlig unabhängig vom Thema). Hätte ich es nicht selbst gehört, hätte ich nicht geglaubt dass er das wirklich gesagt hat; es klingt ja eher danach als wollte man sich damit über die ÖVP lustig machen.

    Nett zusammengefasst: http://karinkoller.files.wordpress.com/2012/03/affen.jpg (keine Ahnung ob das Experiment wirklich jemand gemacht hat)