Skip to content

A test/benchmark in the source repository? #4

@gasche

Description

@gasche

I looked at the Qed implementation out of curiosity. There are a couple places where I wondered if writing things slightly differently could make a difference for performance. (Performance of the simplification, without changing its behavior.) But it's very hard to tell without measuring the performance on a realistic use-case, and I couldn't find any example use-case in https://git.frama-c.com/pub/frama-c/-/tree/master/src/plugins/qed.

The code is very self-contained and fairly easy to understand, but it looks like testing it currently requires running the full Frama-C platform, and possibly inventing my own examples to get tests/benchmarks.

Would it be possible to distribute a small set of representative (complex) terms to be used as input for Qed? (I guess they could either be distributed as large OCaml values, or in text format with a parser.) This could be used to test the correctness of a small change to Qed, the performance impact of changes, and possibly improvements to the simplifications as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions