eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingpoprawność algorytmu › Re: poprawność algorytmu
  • X-Received: by 10.140.105.54 with SMTP id b51mr104288qgf.31.1427450958649; Fri, 27
    Mar 2015 03:09:18 -0700 (PDT)
    X-Received: by 10.140.105.54 with SMTP id b51mr104288qgf.31.1427450958649; Fri, 27
    Mar 2015 03:09:18 -0700 (PDT)
    Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
    .pl!news.nask.org.pl!news.unit0.net!news.glorb.com!z20no276610igj.0!news-out.go
    ogle.com!q90ni531qgd.1!nntp.google.com!h3no5138521qgf.1!postnews.google.com!gle
    groupsg2000goo.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Fri, 27 Mar 2015 03:09:18 -0700 (PDT)
    In-Reply-To: <5...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=89.71.169.86;
    posting-account=f7iIKQoAAAAkDKpUafc-4IXhmRAzdB5r
    NNTP-Posting-Host: 89.71.169.86
    References: <4...@g...com>
    <d...@g...com>
    <meti4e$osd$1@srv.chmurka.net>
    <f...@g...com>
    <mevfpd$gpa$1@srv.chmurka.net>
    <e...@g...com>
    <mf1tnf$d48$1@srv.chmurka.net>
    <5...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <4...@g...com>
    Subject: Re: poprawność algorytmu
    From: g...@g...com
    Injection-Date: Fri, 27 Mar 2015 10:09:18 +0000
    Content-Type: text/plain; charset=ISO-8859-2
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.comp.programming:207678
    [ ukryj nagłówki ]

    W dniu piątek, 27 marca 2015 10:06:11 UTC+1 użytkownik Maciej Sobczak napisał:
    >
    > > No to teraz całkowicie bez szydery i na poważnie spytam, jakie są
    > > praktyczne możliwości. Mam powiedzmy program w C++, kilkaset tysięcy
    > > linii kodu, korzysta z boosta, wątków, libc, bazy danych, MOM-a itd. -
    > > co można zrobić żeby udowodnuć jego poprawność i ile to będzie kosztowało?
    >
    > Nie da się. Dla równowagi zauważmy jednak, że przetestować
    > tego też się nie da, zresztą dokładnie z tych samych powodów
    > (uwaga logiczna: z tezy że się nie da konsekwentnie wynika
    > też teza, że się tego nie robi; można co najwyżej udawać że
    > się robi pomijając milcząco tą drobną niedogodność, że się
    > nie da i tak właśnie działa większa część branży, patrz też niżej).

    Tutaj akurat widzę pomylenie pojęć. Testowanie to uruchamianie
    programu z założeniem sprawdzenia, jak się zachowuje w określonych
    okolicznościach. Nie wiem, dlaczego programów napisanych w C++
    miałoby się nie dać uruchomić z zamiarem sprawdzenia, jak się zachowuje
    w określonych okolicznościach.

    > Na poważnie - nie stosuje się metod formalnych a posteriori
    > w odniesieniu do kodu, który nie był pisany z myślą o takich
    > metodach. Problem stopu, Goedel, i podobne teoretyczne przeszkody.
    > Natomiast da się napisać (i to udowodnić) poprawny program,
    > jeśli się go pisze z myślą o takich metodach.
    > Co ciekawe, dotyczy to również testów i to z takich samych powodów.

    To jest ciekawe pytanie: jakie znacie systemy stworzone z myślą
    o dowodzeniu poprawności napisanych w nich programów?

    I przy okazji kilka ciekawostek, które ostatnio przebiegły twittera:

    "What if you could write a test for a problem and have your compiler automatically
    return a correct implementation?":
    http://blogs.teamb.com/craigstuntz/2014/07/07/38818/

    Microsoft (chyba wczoraj) wypuścił źródła systemu Z3 używanego w w/w
    artykule: github.com/Z3Prover/z3

    Dowód sprzeczności w systemie Coq: https://github.com/clarus/falso

    > Ćwiczenie logiczne: jeżeli ktoś twierdzi, że testuje swój program,
    > to ja poproszę o *dowód*, że testowanie jest kompletne.

    Na tym chyba polega istotowa różnica między dowodem a testowaniem,
    że dowód wyczerpuje wszystkie możliwości, a testowanie nie.
    "Kompletne testowanie" byłoby właśnie -- po prostu -- dowodem.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: