Hi zusammen!
Schaut’ Euch mal dieses interessante Projekt an:
http://www.getacoder.com/projects/detect_loop_106243…
Hat jemand Lust, mitzubieten?
Gruß,
Martin
Hi zusammen!
Schaut’ Euch mal dieses interessante Projekt an:
http://www.getacoder.com/projects/detect_loop_106243…
Hat jemand Lust, mitzubieten?
Gruß,
Martin
Hi zusammen!
Schaut’ Euch mal dieses interessante Projekt an:
http://www.getacoder.com/projects/detect_loop_106243…
Mmmh, da will jemand das Halteproblem programmiert haben …
http://de.wikipedia.org/wiki/Halteproblem
… ob er das schafft?
McGee
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]
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
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
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 :smile: )
Knifflig wirds, wenn jetzt die Abfrage "if (i==0) sum=0;" fehlt, dann wird in der Realität, da ja i
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
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 <u>not even Perl</u> can always
parse Perl.
...
Damit ist die Sache erledigt.
Grüße
CMБ
PS.: scnr