Interessantes Jobangebot für Informatiker

Von: , Frage gestellt am Fr, 29. Mai 2009

Hi zusammen!

Schaut' Euch mal dieses interessante Projekt an:
http://www.getacoder.com/projects/detect_loop_106243...

Hat jemand Lust, mitzubieten? ;)

Gruß,
Martin

6 Antworten zu dieser Frage

    • Antwort von nach 20 Stunden 0 hilfreich
      Re^2: Interessantes Jobangebot für Informatiker

      Hallo,

      da sollte man die Abnahmebedingungen sorgfältig studieren - dass ein Programm wie das gewünschte eine reale Testsuite korrekt absolviert, halte ich für machbar. Ein anderweitiger Beweis, dass die gelieferte Software NICHT immer funktioniert, dürfte bei dem Problem ziemlich schwer werden. Und wenn sich der Auftraggeber lediglich darauf beruft, dass die Aufgabe theoretisch garnicht lösbar ist, erstatte ich Anzeige wegen Betrugs.

      Gruss Reinhard [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

      • Antwort von nach 22 Stunden 0 hilfreich
        Re^3: Interessantes Jobangebot für Informatiker

        Moien dass ein Programm wie das gewünschte eine reale Testsuite
        korrekt absolviert, halte ich für machbar.
        Die Testsuite würde ich vorher gerne sehen. Man kann sehr unlistige Sachen basteln und manche Fälle sind erstaunlich schwer zu analysieren. Und die ganz, ganz wichtige Frage: ist Laufzeit der Analyse begrenzt ... ? Ein anderweitiger
        Beweis, dass die gelieferte Software NICHT immer funktioniert,
        dürfte bei dem Problem ziemlich schwer werden. Und wenn sich
        der Auftraggeber lediglich darauf beruft, dass die Aufgabe
        theoretisch garnicht lösbar ist, erstatte ich Anzeige wegen
        Betrugs.
        "Project Creator: fermat"

        Noch Fragen? Das ist ein Scherzkeks.

        cu

      • Antwort von nach einem Tag 0 hilfreich
        Re^3: Interessantes Jobangebot für Informatiker

        da sollte man die Abnahmebedingungen sorgfältig studieren -
        dass ein Programm wie das gewünschte eine reale Testsuite
        korrekt absolviert, halte ich für machbar. Ein anderweitiger
        Beweis, dass die gelieferte Software NICHT immer funktioniert,
        dürfte bei dem Problem ziemlich schwer werden.
        Gruss Reinhard
        Hallo,

        wie wäre es mit folgendem Programm:

        double sum=0;
        unsigned int64 i=0;
        while(sum<=5)
        {
          sum+=f(i);
          i++;
          if (i==0)
            sum=0; //für den Überlauf
        
          sleep(1000 ms);
        }
        

        Wenn man jetzt "f(i)= 0.5 hoch i" einsetzt, läuft das Programm unendlich lang. D.h., die Analyse müßte in der Lage sein, f(i) zu extrahieren und in Maple/Mathematica hineinzufüttern, um den Grenzwert von 2 auszurechnen.
        Aber es gibt immer Funktionen, die analytisch nicht mehr handhabar sind. (hab leider gerade keine zur Hand :-) )

        Knifflig wirds, wenn jetzt die Abfrage "if (i==0) sum=0;" fehlt, dann wird in der Realität, da ja i <= 2 hoch 64 ist, "sum" doch irgendwann nach 3 Überläufen größer als 5 werden. Für eine Analyse würd ich allerdings immer annehmen, dass Variablen beliebig große Zahlen darstellen können (quasi prozessorunabhängig analysieren).

        Viele Grüße
        Thorsten

        • Antwort von nach einem Tag 0 hilfreich
          Re^4: Interessantes Jobangebot für Informatiker

          Moien Aber es gibt immer Funktionen, die analytisch nicht mehr
          handhabar sind. (hab leider gerade keine zur Hand :-) )
          lim x->0 (sin(1/x))? Oder auch immer wieder schön: die Ackerman Funktion. Für eine Analyse würd ich allerdings immer annehmen, dass
          Variablen beliebig große Zahlen darstellen können (quasi
          prozessorunabhängig analysieren).

          unsigned int64 i=1;
          while(i!=0)
          {
             i++;
          }


          Es ist keine unendliche Schleife. Aber der Wertebereich ist wichtig.

          cu

      • Antwort von nach einem Tag 0 hilfreich
        Re^3: Interessantes Jobangebot für Informatiker

        Hallo Reinhard, da sollte man die Abnahmebedingungen sorgfältig studieren -
        dass ein Programm wie das gewünschte eine reale Testsuite
        korrekt absolviert, halte ich für machbar.
        Ich dache zuerst auch - in Perl könnte man das
        machen ;-) Allerdings wurde ich bald ernüchtert:

        http://en.wikipedia.org/wiki/Perl

         ...
         It is often said that "Only perl can parse Perl," meaning 
         that only the Perl interpreter (perl) can parse the Perl 
         language (Perl), but even this is not, in general, true. 
         Because the Perl interpreter can simulate a Turing machine
         during its compile phase, it would need to decide the Halting 
         Problem in order to complete parsing in every case. 
         It's a long-standing result that the Halting Problem is 
         undecidable, and therefore not even Perl can always 
         parse Perl.
         ...
        


        Damit ist die Sache erledigt.

        Grüße

        CMБ



        PS.: scnr ;-)

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!