Re: [isabelle] Quickcheck ML
On 06/27/2012 11:34 AM, Thomas Genet wrote:
Hi to you all.
Le 27/06/12 10:20, Jasmin Blanchette a écrit :
Am 27.06.2012 um 09:03 schrieb Moa Johansson:
I'd like to know what the last argument of type (term * term list)
list is representing? Which list is the list of terms I want to
counter-example check, and what does the first term in the pair
Looking at the code, it would seem that the first component is _the_
term to check and the second component is a list of terms that are
additionally evaluated. For example, if you pass ("rev xs = xs",
["rev xs"]), Quickcheck will find a counterexample and print the
value of "rev xs" (in addition to that of "xs"). In your use
scenario, you would probably pass an empty list for the second
By the way, it seems that this nice feature of Quickcheck (the "eval"
parameter) does not always work with the narrowing tester. This is not
fully surprising since the narrowing-driven testing may send back
partially instanciated values, like _# for instance.
However, if it is the case it may be a good idea to mention this in
the isar manual.
Thanks for this suggestion. I mentioned it in the NEWS file
- Added "eval" option to evaluate terms for the found counterexample
(currently only supported by the default (exhaustive) tester).
but left it out of the Isar reference. A remark has now been added.
It is another technical challenge to enable the eval feature also for
the narrowing tester, and cannot just be dealt with by reusing the
source code for the exhaustive testing infrastructure. Maybe I find time
to add it, maybe not--it's on my TODO list.
This archive was generated by a fusion of
Pipermail (Mailman edition) and