FPCore metadata properties

The metadata properties allow describing additional information
about each benchmark, such as their name, description,
precision, citations, or preconditions.

FPBench 1.0 defines the meaning of the following properties:

:name

A string name for the benchmark. If a name is needed and not
provided, we recommend using the body expression.

:description

A string description for the benchmark and its inputs. We
recommend describing the physical meaning and units of inputs
when applicable.

:cite

A list of symbols that describe the sources of the benchmark.
We recommend making available a BibTeX file which uses the
same symbols as keys.

:precision

Describes the floating point precision used for floating point
values in the expression. It is expected to be a symbol for one of
the IEEE-754 names (such as binary32
and binary64). If no :precision property is
specified, implementations should assume binary64
floating-point values.

:pre

A precondition on inputs to the benchmark. Tools should not use
points that fail the precondition to determine the accuracy of the
benchmark. It is expected to be
an expression that
returns a boolean value.

:math-library

The library used in the source to implement floating-point
operations. It is expected to be a symbol identifying a library
implementation and version, such as gnu-libm-2.34.

Additionally, properties prefixed by the name of a tool (such
as :xxx-foobar) are reserved for definition by that
tool. Only that tool may define the meaning of those properties;
other tools should not depend on the meaning of those
properties, nor must the defining tool keep the meaning constant.