caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Robert Fischer" <robert@fischerventure.com>
To: caml-list@inria.fr
Subject: Re: [Caml-list] Programming with correctness guarantees
Date: Thu, 1 Feb 2007 14:35:59 -0600 (CST)	[thread overview]
Message-ID: <54337.151.151.73.165.1170362159.squirrel@webmail.fischerventure.com> (raw)
In-Reply-To: <17858.18833.95585.840472@serveur9-10.lri.fr>

What, exactly, is the difference between a unit test and formal
verification of an application?  I've long been under the opinion that
Design-by-Contract is just a way to write unit tests quickly -- after all,
you write something that looks kinda like code, attach it to something we
arbitrarily define as a "unit", run some framework on that, and the
framework tells you if something violates those rules.  This sounds like
unit testing to me.

Now, I could be wrong, and there could be something obvious I'm missing,
and I'd like to know if there is -- but it just doesn't seem like there's
anything like a clear line between unit tests and program verification.

Given that there isn't, it seems like people writing verified code aren't
really skipping the unit testing phase at all: they're just doing unit
testing in a funny way.

~~ Robert Fischer.
Fischer Venture Management Corporation

On Thu, February 1, 2007 2:12 pm, Jean-Christophe Filliatre wrote:
>
> Joshua D. Guttman writes:
>  > oleg@pobox.com writes:
>  >
>  > >   I remember reading somewhere that after a division of
>  > >   Siemens applied this technique to a high assurance
>  > >   project, they noted an exhilarating feeling of being
>  > >   able to program without unit tests. The code was correct
>  > >   by construction.
>  >
>  > This seems really frightening.
>
> There's a joke around in the formal methods community: ``would you
> prefer to get on a plane whose software has been proved correct or
> has been tested?''
>
> More seriously, I heard a similar remark from a French company which
> formally verified the embedded code of an automatic subway line (using
> the B method). They explained that, after the verification had been
> completed, the unit phase was not suppressed, but greatly reduced.
>
> --
> Jean-Christophe
>
> _______________________________________________
> Caml-list mailing list. Subscription management:
> http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
> Archives: http://caml.inria.fr
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>




  reply	other threads:[~2007-02-01 20:36 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-01  5:04 oleg
2007-02-01  8:45 ` Andrej Bauer
2007-02-01 13:00   ` [Caml-list] " Chris King
2007-02-01 20:39     ` Jean-Christophe Filliatre
2007-02-01 13:07 ` [Caml-list] " Joshua D. Guttman
2007-02-01 20:12   ` Jean-Christophe Filliatre
2007-02-01 20:35     ` Robert Fischer [this message]
2007-02-01 20:57       ` Jean-Christophe Filliatre
2007-02-02  5:47         ` skaller
2007-02-01 20:43     ` Jacques Carette
2007-02-02  0:38       ` Bob Williams
2007-02-02 14:09 ` Jean-Christophe Filliatre
2007-02-03  8:09   ` Tom
2007-02-04 15:47 ` Design-by-contract and Type inference? David MENTRE
2007-02-04 16:04   ` [Caml-list] " Benedikt Grundmann
2007-02-04 16:35   ` Kenn Knowles
2007-02-06  9:29   ` Hendrik Tews
2007-02-06 20:45     ` Oliver Bandel
2007-02-06 21:35       ` Alwyn Goodloe
2007-02-06 21:50         ` Jacques Carette

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54337.151.151.73.165.1170362159.squirrel@webmail.fischerventure.com \
    --to=robert@fischerventure.com \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).