Spreadsheet applications (such as Microsoft Excel + VBA) are heavily used in a wide range of fields including engineering, finance, management, statistics and health. However, they do not ensure robustness properties, thus spreadsheet errors are hard to avoid, common and potentially very costly. According to estimates, the annual cost of spreadsheet errors is around 7 billion dollars. For instance, in 2013, a series of basic spreadsheet errors at JPMorgan incurred 6 billion dollars trading losses. To avoid such problems, spreadsheet users need better support from rigorous tools, since the development of industrial spreadsheets typically involves multiple tabs, formulas, macros and data read from external sources (e.g. the internet). However, as of today, spreadsheet environment offer almost no verification support, and third party tools do not allow to reason correctly over macros, and future uses of existing formulas. The MemCAD ERC StG project opened the way to novel formal analysis techniques for spreadsheet applications. Indeed, the MemCAD project led to the design of powerful abstraction techniques to reason over complex data-structures such as tables as found in spreadsheets. During this project, we have implemented AiXL, a prototype that was able to analyze large public benchmarks. It uncovered defects that are beyond the scope of other approaches. We propose to leverage these results into a toolbox able to safely verify, optimize and maintain spreadsheets, so as to reduce the likelihood of errors. The envisioned toolbox relies on automatic and conservative semantic static analysis, so that it will report all occurrences of certain classes of errors. It will have an open architecture with plugins, and will easily extend to user specific properties. This works will take place in a partnership with MatrixLEAD, a startup created based on the results of the ERC MemCAD project. MatrixLEAD will provide industrial use-cases and commercialization plans.
Call for proposal
See other projects for this call