Re: [Haskell] [ANN] GenCheck - a generalized property-based testing framework

2012-06-19 Thread Jonas Almström Duregård
HI Jacques,

This looks very similar to the recently released testing-feat library:
http://hackage.haskell.org/package/testing-feat-0.2

I get a build error on the latest platform:

Test\GenCheck\Base\LabelledPartition.lhs:126:3:
The equation(s) for `new' have two arguments,
but its type `[a] -> Map k a' has only one
In the instance declaration for `LabelledPartition (Map k) a'

Regards,
Jonas


On 19 June 2012 17:04, Jacques Carette  wrote:
> Test.GenCheck is a Haskell library for generalized proposition-based
> testing. It simultaneously generalizes QuickCheck and SmallCheck.
>
> Its main novel features are:
>
> introduces a number of testing strategies and strategy combinators
> introduces a variety of test execution methods
> guarantees uniform sampling (at each rank) for the random strategy
> guarantees both uniqueness and coverage of all structures for the exhaustive
> strategy
> introduces an extreme strategy for testing unbalanced structures
> also introduces a uniform strategy which does uniform sampling along an
> enumeration
> allows different strategies to be mixed; for example one can exhaustively
> test all binary trees up to a certain size, filled with random integers.
> complete separation between properties, generators, testing strategies and
> test execution methods
>
> The package is based on a lot of previous research in combinatorics
> (combinatorial enumeration of structures and the theory of Species), as well
> as a number of established concepts in testing (from a software engineering
> perspective). In other words, further to the features already implemented in
> this first release, the package contains an extensible, general framework
> for generators, test case generation and management. It can also be very
> easily generalized to cover many more combinatorial structures unavailable
> as Haskell types.
>
> The package also provides interfaces for different levels of usage. In other
> words, there is a 'simple' interface for dealing with straightforward
> testing, a 'medium' interface for those who want to explore different
> testing strategies, and an 'advanced' interface for access to the full power
> of GenCheck.
>
> See http://hackage.haskell.org/package/gencheck for further details.
>
> In the source repository (https://github.com/JacquesCarette/GenCheck), the
> file tutorial/reverse/TestReverseList.lhs shows the simplest kinds of tests
> (standard and deep for structures, or base for unstructured types) and
> reporting (checking, testing and full report) for the classical list reverse
> function. The files in tutorial/list_zipper show what can be done with the
> medium level interface (this tutorial is currently incomplete). The brave
> user can read the source code of the package for the advanced usage -- but
> we'll write a tutorial for this too, later.
>
> User beware: this is gencheck-0.1, there are still a few rough edges.  We
> plan to add a Template Haskell feature to this which should make deriving
> enumerators automatic for version 0.2.
>
> Jacques and Gordon
>
>
> ___
> Haskell mailing list
> Haskell@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell
>

___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] Haskell Implementors' Workshop 2012, Second CFT

2012-06-19 Thread Johan Tibell
 Call for Talks
   ACM SIGPLAN Haskell Implementors' Workshop

http://haskell.org/haskellwiki/HaskellImplementorsWorkshop/2012
   Copenhagen, Denmark, September 14th, 2012
The workshop will be held in conjunction with ICFP 2012
http://www.icfpconference.org/icfp2012/

Important dates

Proposal Deadline:  10th July  2012
Notification:   27th July  2012
Workshop:   14th September 2012

The Haskell Implementors' Workshop is to be held alongside ICFP 2012
this year in Copenhagen, Denmark. There will be no proceedings; it is an
informal gathering of people involved in the design and development of
Haskell implementations, tools, libraries, and supporting
infrastructure.

This relatively new workshop reflects the growth of the user community:
there is a clear need for a well-supported tool chain for the
development, distribution, deployment, and configuration of Haskell
software. The aim is for this workshop to give the people involved with
building the infrastructure behind this ecosystem an opportunity to bat
around ideas, share experiences, and ask for feedback from fellow
experts.

We intend the workshop to have an informal and interactive feel, with a
flexible timetable and plenty of room for ad-hoc discussion, demos, and
impromptu short talks.


Scope and target audience
-

It is important to distinguish the Haskell Implementors' Workshop from
the Haskell Symposium which is also co-located with ICFP 2012. The
Haskell Symposium is for the publication of Haskell-related research. In
contrast, the Haskell Implementors' Workshop will have no proceedings --
although we will aim to make talk videos, slides and presented data
available with the consent of the speakers.

In the Haskell Implementors' Workshop, we hope to study the underlying
technology. We want to bring together anyone interested in the
nitty-gritty details behind turning plain-text source code into a
deployed product. Having said that, members of the wider Haskell
community are more than welcome to attend the workshop -- we need your
feedback to keep the Haskell ecosystem thriving.

The scope covers any of the following topics. There may be some topics
that people feel we've missed, so by all means submit a proposal even if
it doesn't fit exactly into one of these buckets:

  * Compilation techniques
  * Language features and extensions
  * Type system implementation
  * Concurrency and parallelism: language design and implementation
  * Performance, optimisation and benchmarking
  * Virtual machines and run-time systems
  * Libraries and tools for development or deployment


Talks
-

At this stage we would like to invite proposals from potential speakers
for a relatively short talk. We are aiming for 20 minute talks with 10
minutes for questions and changeovers. We want to hear from people
writing compilers, tools, or libraries, people with cool ideas for
directions in which we should take the platform, proposals for new
features to be implemented, and half-baked crazy ideas. Please submit a
talk title and abstract of no more than 200 words to:
johan.tib...@gmail.com

We will also have a lightning talks session which will be organised on
the day. These talks will be 2-10 minutes, depending on available time.
Suggested topics for lightning talks are to present a single idea, a
work-in-progress project, a problem to intrigue and perplex Haskell
implementors, or simply to ask for feedback and collaborators.


Organisers
--

  * Lennart Augustsson (Standard Chartered Bank)
  * Manuel M T Chakravarty (University of New South Wales)
  * Gregory Collins - co-chair (Google)
  * Simon Marlow   (Microsoft Research)
  * David Terei(Stanford University)
  * Johan Tibell - co-chair(Google)

___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] [ANN] GenCheck - a generalized property-based testing framework

2012-06-19 Thread Jacques Carette
Test.GenCheck is a Haskell library for /generalized proposition-based 
testing/. It simultaneously generalizes *QuickCheck* and *SmallCheck*.


Its main novel features are:

 * introduces a number of /testing strategies/ and /strategy combinators/
 * introduces a variety of test execution methods
 * guarantees uniform sampling (at each rank) for the random strategy
 * guarantees both uniqueness and coverage of all structures for the
   exhaustive strategy
 * introduces an /extreme/ strategy for testing unbalanced structures
 * also introduces a /uniform/ strategy which does uniform sampling
   along an enumeration
 * allows different strategies to be mixed; for example one can
   exhaustively test all binary trees up to a certain size, filled with
   random integers.
 * complete separation between properties, generators, testing
   strategies and test execution methods

The package is based on a lot of previous research in combinatorics 
(combinatorial enumeration of structures and the theory of Species), as 
well as a number of established concepts in testing (from a software 
engineering perspective). In other words, further to the features 
already implemented in this first release, the package contains an 
extensible, general framework for generators, test case generation and 
management. It can also be very easily generalized to cover many more 
combinatorial structures unavailable as Haskell types.


The package also provides interfaces for different levels of usage. In 
other words, there is a 'simple' interface for dealing with 
straightforward testing, a 'medium' interface for those who want to 
explore different testing strategies, and an 'advanced' interface for 
access to the full power of GenCheck.


See http://hackage.haskell.org/package/gencheck for further details.

In the source repository (https://github.com/JacquesCarette/GenCheck), 
the file tutorial/reverse/TestReverseList.lhs shows the simplest kinds 
of tests (standard and deep for structures, or base for unstructured 
types) and reporting (checking, testing and full report) for the 
classical list reverse function. The files in tutorial/list_zipper show 
what can be done with the medium level interface (this tutorial is 
currently incomplete). The brave user can read the source code of the 
package for the advanced usage -- but we'll write a tutorial for this 
too, later.


User beware: this is gencheck-0.1, there are still a few rough edges.  
We plan to add a Template Haskell feature to this which should make 
deriving enumerators automatic for version 0.2.


Jacques and Gordon

___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] Call for Papers: STVR Special Issue on Tests and Proofs

2012-06-19 Thread Achim D. Brucker
Apologies for duplicates.

  CALL FOR PAPERS 
  STVR Special Issue on Tests and Proofs
http://lifc.univ-fcomte.fr/tap2012/stvr/

The Software Testing, Verification & Reliability (STVR) journal
(http://www3.interscience.wiley.com/journal/13635/home) invites 
authors to submit papers to a Special Issue on Tests and Proofs.

Background
==
The increasing use of software and the growing system complexity make
focused software testing a challenging task. Recent years have seen an
increasing industrial and academic interest in the use of static and
dynamic analysis techniques together. Success has been reported
combining different test techniques such as model-based testing,
structural testing, or concolic testing with static techniques such as
program slicing, dependencies analysis, model-checking, abstract
interpretation, predicate abstraction, or verification. This special
issue serves as a platform for researchers and practitioners to
present theory, results, experience and advances in Tests and Proofs
(TAP).

Topics
==
This special issue focuses on all topics relevant to TAP. In
particular, the topics of interest include, but are not limited to:
* Program proving with the aid of testing techniques
* New challenges in automated reasoning emerging from
  specificities of test generation
* Verification and testing techniques combining proofs and tests
* Generation of test data, oracles, or preambles by deductive
  techniques such as: theorem proving, model checking, symbolic
  execution, constraint logic programming, SAT and SMT solving
* Model-based testing and verification
* Automatic bug finding
* Debugging of programs combining static and dynamic analysis
* Transfer of concepts from testing to proving (e.g., coverage
  criteria) and from proving to testing
* Formal frameworks for test and proof
* Tool descriptions, experience reports and evaluation of test and
  proof
* Case studies combining tests and proofs
* Applying combination of test and proof techniques to new
  application domains such as validating security procotols or
  vulnerability detection of programs
* The processes, techniques, and tools that support test and proof

Submission Information
==
The deadline for submissions is 17th December, 2012. Notification of
decisions will be given by April 15th, 2013.

All submissions must contain original unpublished work not being
considered for publication elsewhere. Original extensions to
conference papers - identifing clearly additional contributions - are
also encouraged unless prohibited by copyright. Submissions will be
refereed according to standard procedures for Software Testing,
Verification and Reliability.  Please submit your paper electronically
using the Software Testing, Verification & Reliability manuscript
submission site. Select "Special Issue Paper" and enter "Tests and
Proofs" as title.

Important Dates:

* Paper submission: December 17, 2012
* Notification: April 15, 2013

Guest Editors
=
* Achim D. Brucker, SAP Research, Germany
  http://www.brucker.ch/
* Wolfgang Grieskamp, Google, U.S.A.
  http://www.linkedin.com/in/wgrieskamp
* Jacques Julliand, University of Franche-Comté, France
  http://lifc.univ-fcomte.fr/page_personnelle/accueil/8   

-- 
Dr. Achim D. Brucker, SAP Research, Vincenz-Priessnitz-Str. 1, D-76131 Karlsruhe
 Phone: +49 6227 7-52595, http://www.brucker.ch

___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] *** Early registration extended through June 25 *** CAV 2012: Call for Participation

2012-06-19 Thread CAV 2012 CFP
*** Early registration extended through June 25 ***

== CALL FOR PARTICIPATION
==
24th International Conference on Computer Aided Verification (CAV 2012)
July 7-13, 2012 Berkeley, California, USA

Program Chairs: Madhusudan Parathasarathy and Sanjit A. Seshia
Website: http://cav12.cs.illinois.edu/

*UPDATE* Hotel accommodation is filling up fast. Book your rooms soon!

Aims and Scope


The conference on Computer Aided Verification (CAV), 2012, is the 24th in a
series dedicated to the advancement of the theory and practice of
computer-aided
formal analysis methods for hardware and software systems. CAV considers it
vital to continue spurring advances in hardware and software verification
while
expanding to new domains such as biological systems and computer security.
The
conference covers the spectrum from theoretical results to concrete
applications, with an emphasis on practical verification tools and the
algorithms and techniques that are needed for their implementation. The
proceedings of the conference will be published in the Springer-Verlag
Lecture
Notes in Computer Science series. A selection of papers will be invited to a
special issue of Formal Methods in System Design and the Journal of the ACM.

** NEW in 2012 **

CAV will have *special tracks* in the following four areas:
1. Hardware Verification (track chair: Andreas Kuehlmann)
2. Computer Security  (track chair: Somesh Jha)
3. Embedded Systems (track chair: Stavros Tripakis)
4. SAT and SMT (track chair: Daniel Kroening)


Invited Talks

- Wolfgang Thomas, RWTH Aachen University
  "Synthesis and Some of Its Challenges"

- David Dill, Stanford University
  "Model Checking Cell Biology"

- Alex Haldermann, University of Michigan
  On security of voting machines

Invited Tutorials


- Rastislav Bodik and Emina Torlak, University of California, Berkeley
  "Synthesizing Programs with Constraint Solvers"

- Aaron Bradley, University of Colorado at Boulder
  "IC3 and Beyond: Incremental, Inductive Verification"

- Chris Myers, University of Utah
  "Formal Verification of Genetic Circuits"

- Michał Moskal, Microsoft Research, Seattle
  "From C to infinity and back: Unbounded auto-active verification with VCC"


== CONFERENCE PROGRAM
==

Saturday July 7 - WORKSHOPS


- NSV 2012  5th International Workshop on Numerical Software Verification
  Co-chairs: Swarat Chaudhuri, Sriram Sankaranarayanan

- (EC)^2 2012 Workshop on Exploiting Concurrency Efficiently and Correctly
  Co-chairs: Sebastian Burckhardt, Azadeh Farzan, Ganesh Gopalakrishnan,
 Stephen Siegel, Helmut Veith, Josef Widder

- SYNT 2012 1st Workshop on Synthesis
  Co-chairs: Doron Peled, Sven Schewe

- AMFSB 2012  Applications of Formal Methods in Systems Biology
  Co-chairs: Vincent Danos, Mahesh Viswanathan

- LfSA 2012 Logics for System Analysis
  Co-chairs: André Platzer, Philipp Rümmer

Sunday July 8 - WORKSHOPS


- NSV 2012  5th International Workshop on Numerical Software Verification
  Co-chairs: Swarat Chaudhuri, Sriram Sankaranarayanan

- (EC)^2 2012 Workshop on Exploiting Concurrency Efficiently and Correctly
  Co-chairs: Sebastian Burckhardt, Azadeh Farzan, Ganesh Gopalakrishnan,
 Stephen Siegel, Helmut Veith, Josef Widder

- SYNT 2012 1st Workshop on Synthesis
  Co-chairs: Doron Peled, Sven Schewe

- AMFSB 2012  Applications of Formal Methods in Systems Biology
  Co-chairs: Vincent Danos, Mahesh Viswanathan

- BOOGIE 2012 2nd International Workshop on Intermediate Verification
Languages
  Chair: Zvonimir Rakamaric

- REORDER 2012  First International Workshop on Memory Consistency Models
  Co-chairs: Sela Mador-Haim, Jade Alglave

Monday July 9 - INVITED TUTORIALS


  8:30 - 10:00: "Synthesizing Programs with Constraint Solvers" (Ras Bodik
and Emina Torlak)
 10:00 - 10:30: Break
 10:30 - 12:00: "IC3 and Beyond: Incremental, Inductive Verification"
(Aaron Bradley)
 12:00 -  1:30: Break
  1:30 -  3:00: "Formal Verification of Genetic Circuits" (Chris Myers)
  3:00 -  3:30: Break
  3:30 -  5:00: "From C to infinity and back: Unbounded auto-active
verification with VCC" (Michal Moskal)

Tuesday July 10


  8:30 -  9:00: Welcome
  9:00 - 10:00: "Synthesis and Some of Its Challenges" (Wolfgang Thomas -
Keynote)
 10:00 - 10:30: Break
 10:30 - 12:00: AUTOMATA AND SYNTHESIS

R1  Jan Kretinsky and Javier Esparza
"Deterministic Automata for the (F,G)-fragment of LTL"

R2  To