This is a tool to learn Piecewise Affine Models (piecewise linear function) from Input-Output Data. Given a set of input-output data points, it constructs a function that closely approximates all data points. It ensures that the error on each point is bounded by a given error bound δ. Technical details of the tool can be found in the following paper.

- R. Alur, N. Singhania,
**Precise Piecewise Affine Models from Input-Output Data**,*EMSOFT 2014*. [pdf] [slides] [poster] [code]

Mosaic automatically constructs similar models from input-output data. Like a mosaic, it first fits some linear pieces (affine functions) on the data points. Then it uses convex polygon pieces (conjuction of affine inequalities) to construct the input partition of each linear piece. As an illustration, the mosaic letter

Mosaic has been implemented in MATLAB. Code and benchmarks can be found here: [code]

For further queries or comments, please contact Nimit Singhania.