comp.lang.ada
 help / color / mirror / Atom feed
* Checking Ada against formal specifications.
@ 2009-05-27 12:19 xorquewasp
  2009-05-27 12:26 ` Martin
  2009-05-27 14:20 ` Georg Bauhaus
  0 siblings, 2 replies; 10+ messages in thread
From: xorquewasp @ 2009-05-27 12:19 UTC (permalink / raw)


Hello.

Are there any free tools for checking Ada against external
formal specifications (perhaps written in Z or some other
language) or annotations?

I see there used to be one called Anna but the site hosted
on stanford.edu seems to have vanished.

I'm not counting SPARK as a free tool (regardless, the SPARK
binaries crash on my copy of debian and don't work at all on
my actual development platform (FreeBSD)).



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-05-27 12:19 Checking Ada against formal specifications xorquewasp
@ 2009-05-27 12:26 ` Martin
  2009-05-27 13:47   ` info
  2009-05-27 14:20 ` Georg Bauhaus
  1 sibling, 1 reply; 10+ messages in thread
From: Martin @ 2009-05-27 12:26 UTC (permalink / raw)


On May 27, 1:19 pm, xorquew...@googlemail.com wrote:
> Hello.
>
> Are there any free tools for checking Ada against external
> formal specifications (perhaps written in Z or some other
> language) or annotations?
>
> I see there used to be one called Anna but the site hosted
> on stanford.edu seems to have vanished.
>
> I'm not counting SPARK as a free tool (regardless, the SPARK
> binaries crash on my copy of debian and don't work at all on
> my actual development platform (FreeBSD)).

I haven't heard of such a thing for ages...late 80's.

Napier University in Edinburgh, Scotland had a tool that took Z,
converted that to SML/NJ and then on to Ada83 - don't think it was
ever release into the open though...

I'd be interested in anything that you uncover!

Cheers
-- Martin



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-05-27 12:26 ` Martin
@ 2009-05-27 13:47   ` info
  0 siblings, 0 replies; 10+ messages in thread
From: info @ 2009-05-27 13:47 UTC (permalink / raw)


On May 27, 1:26 pm, Martin <martin.do...@btopenworld.com> wrote:
> On May 27, 1:19 pm, xorquew...@googlemail.com wrote:
>
> > Hello.
>
> > Are there any free tools for checking Ada against external
> > formal specifications (perhaps written in Z or some other
> > language) or annotations?
>
> > I see there used to be one called Anna but the site hosted
> > on stanford.edu seems to have vanished.
>
> > I'm not counting SPARK as a free tool (regardless, the SPARK
> > binaries crash on my copy of debian and don't work at all on
> > my actual development platform (FreeBSD)).
>
> I haven't heard of such a thing for ages...late 80's.
>
> Napier University in Edinburgh, Scotland had a tool that took Z,
> converted that to SML/NJ and then on to Ada83 - don't think it was
> ever release into the open though...
>
> I'd be interested in anything that you uncover!
>
> Cheers
> -- Martin

It really depends what you what the tool to do. If it is total
correctness you are after then, no , no such tool exist for any
programming language.

If you want to check expected properties anywhere in the code then
indeed Spark Ada could help but at the effort involded in not
insignificant.

Otherwise Mika our tool can help if what you want to check can be
expressed in Ada. For example:

...Ada Code
if (your_property)
then Put_line(your_true_message);
else Put_line(your_false_message);
end if;
...Ada Code

Since Mika generates tests for all branches you will get test input
data that makes your_property true (and false) exactly where you want
it.

We will create a better example and put it in http://www.midoan.com/mika.html
...

regards,
Midoan




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-05-27 12:19 Checking Ada against formal specifications xorquewasp
  2009-05-27 12:26 ` Martin
@ 2009-05-27 14:20 ` Georg Bauhaus
  2009-05-27 14:46   ` xorquewasp
  1 sibling, 1 reply; 10+ messages in thread
From: Georg Bauhaus @ 2009-05-27 14:20 UTC (permalink / raw)


xorquewasp@googlemail.com schrieb:
>(regardless, the SPARK
> binaries crash on my copy of debian

Try increasing the stack limit.  Has worked for me.

> and don't work at all on
> my actual development platform (FreeBSD)).




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-05-27 14:20 ` Georg Bauhaus
@ 2009-05-27 14:46   ` xorquewasp
  2009-05-27 17:23     ` Georg Bauhaus
  0 siblings, 1 reply; 10+ messages in thread
From: xorquewasp @ 2009-05-27 14:46 UTC (permalink / raw)


Georg Bauhaus wrote:
> xorquewasp@googlemail.com schrieb:
> >(regardless, the SPARK
> > binaries crash on my copy of debian
>
> Try increasing the stack limit.  Has worked for me.

I'll give it a go, but it's an actual Segmentation Fault
as opposed to a Storage_Error so I'm more suspicious
of some sort of strange binary incompatibility.



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-05-27 14:46   ` xorquewasp
@ 2009-05-27 17:23     ` Georg Bauhaus
  2009-06-04 19:06       ` xorquewasp
  0 siblings, 1 reply; 10+ messages in thread
From: Georg Bauhaus @ 2009-05-27 17:23 UTC (permalink / raw)


xorquewasp@googlemail.com schrieb:
> Georg Bauhaus wrote:
>> xorquewasp@googlemail.com schrieb:
>>> (regardless, the SPARK
>>> binaries crash on my copy of debian
>> Try increasing the stack limit.  Has worked for me.
> 
> I'll give it a go, but it's an actual Segmentation Fault

Yes, likely -fstack-check had not been enabled
when building the SPARK programs (spark, sparksimp, etc.).
There will be a Segmentation Fault then, not Storage_Error
whenever there is a storage error caused by default stack size.

> as opposed to a Storage_Error so I'm more suspicious
> of some sort of strange binary incompatibility.




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-05-27 17:23     ` Georg Bauhaus
@ 2009-06-04 19:06       ` xorquewasp
  2009-06-04 19:22         ` roderick.chapman
  0 siblings, 1 reply; 10+ messages in thread
From: xorquewasp @ 2009-06-04 19:06 UTC (permalink / raw)


http://libre.adacore.com/libre/tools/spark-gpl-edition/

Well, that shut me up.



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-06-04 19:06       ` xorquewasp
@ 2009-06-04 19:22         ` roderick.chapman
  2009-06-04 20:05           ` xorquewasp
  0 siblings, 1 reply; 10+ messages in thread
From: roderick.chapman @ 2009-06-04 19:22 UTC (permalink / raw)


On Jun 4, 8:06 pm, xorquew...@googlemail.com wrote:
> http://libre.adacore.com/libre/tools/spark-gpl-edition/
>
> Well, that shut me up.

Err...yeah...congratulations on being the first person on c.l.a to
spot this... :-)
 - Rod Chapman, SPARK Team



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-06-04 19:22         ` roderick.chapman
@ 2009-06-04 20:05           ` xorquewasp
  2009-06-04 21:07             ` roderick.chapman
  0 siblings, 1 reply; 10+ messages in thread
From: xorquewasp @ 2009-06-04 20:05 UTC (permalink / raw)


roderick.chap...@googlemail.com wrote:
> Err...yeah...congratulations on being the first person on c.l.a to
> spot this... :-)
>  - Rod Chapman, SPARK Team

Thanks for the excellent work, Rod.

I'll be attempting to port this to FreeBSD in due course.



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Checking Ada against formal specifications.
  2009-06-04 20:05           ` xorquewasp
@ 2009-06-04 21:07             ` roderick.chapman
  0 siblings, 0 replies; 10+ messages in thread
From: roderick.chapman @ 2009-06-04 21:07 UTC (permalink / raw)


On Jun 4, 9:05 pm, xorquew...@googlemail.com wrote:
> roderick.chap...@googlemail.com wrote:
> > Err...yeah...congratulations on being the first person on c.l.a to
> > spot this... :-)
> >  - Rod Chapman, SPARK Team
>
> Thanks for the excellent work, Rod.
>
> I'll be attempting to port this to FreeBSD in due course.

The Ada-based tools should be trivial to port - we've worked
really hard to make this work on all platforms straight out of the
box with GNAT GPL 2009 or almost any recent build of GNAT Pro.

The PROLOG-based tools (Simplifier and Checker) could be
more problematical, since we currently use the SICSTUS PROLOG
compiler.  A port to GNU PROLOG would be an interesting little
project to try.

All the best,
 Rod



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2009-06-04 21:07 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-27 12:19 Checking Ada against formal specifications xorquewasp
2009-05-27 12:26 ` Martin
2009-05-27 13:47   ` info
2009-05-27 14:20 ` Georg Bauhaus
2009-05-27 14:46   ` xorquewasp
2009-05-27 17:23     ` Georg Bauhaus
2009-06-04 19:06       ` xorquewasp
2009-06-04 19:22         ` roderick.chapman
2009-06-04 20:05           ` xorquewasp
2009-06-04 21:07             ` roderick.chapman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox