This project aims to make use of a mathematical structure, a semiring, in order to provide a system that performs multiple data-ow analyses using the same core theory. Firstly, there is an investigation into the current work in the domain. Current literature and existing soft-ware tools are evaluated, with possible opportunities for development identifed; including the potential to analyse energy costs in code. Following the literature review, the requirements,design and implementation of an adaptable, command-line tool that solves Reachability, LiveVariables and Reaching Defnitions Analysis are presented.The experimental stage of the project looks at possible analyses that can be created in order to statically analyse energy costs within programs. The beginning of a theoretical approachto analysing energy costs, using the adaptable framework provided by the core implementationof the system, is proposed. The solutions to all analyses are described and the project is finally concluded with a reaction on the work produced as well as identifcation of potential futurework within the domain.
|Name||Department of Computer Science Technical Report Series|