eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingJak to robią w NASA › Re: Jak to robią w NASA
  • X-Received: by 2002:a0c:a5a5:: with SMTP id z34mr15044033qvz.110.1568272901768; Thu,
    12 Sep 2019 00:21:41 -0700 (PDT)
    X-Received: by 2002:a0c:a5a5:: with SMTP id z34mr15044033qvz.110.1568272901768; Thu,
    12 Sep 2019 00:21:41 -0700 (PDT)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net
    !2.eu.feeder.erje.net!news.unit0.net!news.mixmin.net!proxad.net!feeder1-2.proxa
    d.net!209.85.160.216.MISMATCH!o24no10218268qtl.0!news-out.google.com!x7ni73qtf.
    0!nntp.google.com!o24no10218256qtl.0!postnews.google.com!glegroupsg2000goo.goog
    legroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Thu, 12 Sep 2019 00:21:41 -0700 (PDT)
    In-Reply-To: <6...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=165.225.84.80;
    posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
    NNTP-Posting-Host: 165.225.84.80
    References: <1ua4wui506zbf$.dlg@tyczka.com> <qkecqc$c03$1@news.icm.edu.pl>
    <3...@g...com>
    <qkicu0$knb$1@gioia.aioe.org>
    <4...@g...com>
    <qkjqqi$1b59$1@gioia.aioe.org>
    <0...@g...com>
    <r...@t...com>
    <e...@g...com>
    <1...@g...com>
    <1...@g...com>
    <a...@g...com>
    <8...@g...com>
    <4...@g...com>
    <e...@g...com>
    <8...@g...com>
    <f...@g...com>
    <6...@g...com>
    <e...@g...com>
    <9...@g...com>
    <c...@g...com>
    <6...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <b...@g...com>
    Subject: Re: Jak to robią w NASA
    From: Maciej Sobczak <s...@g...com>
    Injection-Date: Thu, 12 Sep 2019 07:21:42 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.comp.programming:214002
    [ ukryj nagłówki ]

    > A konkretnie, co jest na temat a co nie jest i na jaki?

    Pół dyskusji w tym wątku było nie na temat tego wątku.

    > Nie wiem co to
    > jest "verification condition".

    To jest coś, co zakładamy[1], że jest prawdą albo co musi być wykazane[2], że jest
    prawdą, żeby program uznać za poprawny.

    [1] Przykładem takiego założenia jest np. zakres wartości typu int. Tego się nie
    udowadnia, to się przyjmuje i dane z tego założenia są WEjściem dla innych rozważań.
    [2] Przykładem takiego warunku jest np. to, co było pokazane dla funkcji max, albo
    to, że funkcja sortująca faktycznie sortuje albo to, że funkcja abs nigdy nie zwróci
    wartości ujemnej, itd. Takich rzeczy nie wiemy z góry, ale możemy je wykazać (albo im
    zaprzeczyć) wnioskując na podstawie informacji, które już znamy.

    Fachowo, dowiedzenie, że VC (verification condition) jest spełnione nazywa się
    "discharge". Ale po polsku najlepiej powiedzieć, że jest "spełnione", bo
    "rozładowywanie warunków" brzmi głupio. Dowody mogą być automatyczne albo ręczne.

    I teraz ciekawostka: asercja napisana przy użyciu makra "assert" może być traktowana
    jako warunek do wykazania *oraz* jako nowe założenie dla dalszych rozważań. W
    niektórych językach do tego drugiego celu służy konstrukcja "assume" i stosuje się ją
    wtedy, kiedy wiedza na jakiś temat pochodzi z zewnątrz - np. z tego, jak i gdzie dany
    program jest użytkowany.

    --
    Maciej Sobczak * http://www.inspirel.com

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: