Projects per year
Abstract
Systems with non-functional requirements, such as Energy, Time and Security (ETS), are of increasing importance due to the proliferation of embedded devices with limited resources such as drones, wireless sensors, and tablet computers. Currently, however, there are little to no programmer supported methodologies or frameworks to allow them to reason about ETS properties in their source code. Drive is one such existing framework supporting the developer by lifting non-functional properties to the source-level through the Contract Specification Language (CSL), allowing non-functional properties to be first-class citizens, and supporting programmer-written code-level contracts to guarantee the non-functional specifications of the program are met. In this paper, we extend the Drive system by providing rigorous implementations of the underlying proof-engine, modeling the specification of the annotations and assertions from CSL for a representative subset of C, called Imp. We define both an improved abstract interpretation that automatically derives proofs of assertions, and define inference algorithms for the derivation of both abstract interpretations and the context over which the interpretation is indexed. We use the dependently-typed programming language, Idris, to give a formal definition, and implementation, of our abstract interpretation. Finally, we show our well-formed abstract interpretation over some representative exemplars demonstrating provable assertions of ETS.
Original language | English |
---|---|
Title of host publication | Proceedings of International Symposium on Implementation and Application of Functional Languages (IFL'19) |
Editors | Jurriën Stutterheim, Wei Ngan Chin |
Publisher | ACM |
DOIs | |
Publication status | Accepted/In press - 11 Feb 2020 |
Event | The 31st symposium on Implementation and Application of Functional Languages (IFL 2019) - Singapore, Singapore Duration: 25 Sept 2019 → 27 Sept 2019 Conference number: 31 http://2019.iflconference.org |
Conference
Conference | The 31st symposium on Implementation and Application of Functional Languages (IFL 2019) |
---|---|
Abbreviated title | IFL 2019 |
Country/Territory | Singapore |
City | Singapore |
Period | 25/09/19 → 27/09/19 |
Internet address |
Keywords
- Dependent types
- Idris
- LIghtweight verification
- Non-functional properties
- Abstract interpretation
- Proof-carrying code
- Embedded systems
Fingerprint
Dive into the research topics of 'A trustworthy framework for resource-aware embedded programming'. Together they form a unique fingerprint.Projects
- 2 Finished
-
-
Discovery: Pattern Discovery and Program: Discovery: Pattern Discovery and Program Shaping for Manycore Systems
Thomson, J. D. (PI), Hammond, K. (CoI) & Sarkar, S. (CoI)
1/07/17 → 31/12/20
Project: Standard