Repository logo
 

Learning units-of-measure from scientific code

Accepted version
Peer-reviewed

Type

Conference Object

Change log

Authors

Allamanis, M 
Brockschmidt, M 
Orchard, D 

Abstract

CamFort is our multi-purpose tool for lightweight analysis and verification of scientific Fortran code. One core feature provides units-of-measure verification (dimensional analysis) of programs, where users partially annotate programs with units-of-measure from which our tool checks consistency and infers any missing specifications. However, many users find it onerous to provide units-of-measure information for existing code, even in part. We have noted however that there are often many common patterns and clues about the intended units-of-measure contained within variable names, comments, and surrounding code context. In this work-in-progress paper, we describe how we are adapting our approach, leveraging machine-learning techniques to reconstruct units-of-measure information automatically thus saving programmer effort and increasing the likelihood of adoption.

Description

Keywords

units-of-measure, verification, machine learning

Journal Title

Proceedings - 2019 IEEE/ACM 14th International Workshop on Software Engineering for Science, SE4Science 2019

Conference Name

2019 IEEE/ACM 14th International Workshop on Software Engineering for Science (SE4Science)

Journal ISSN

Volume Title

Publisher

IEEE / ACM
Sponsorship
Engineering and Physical Sciences Research Council (EP/M026124/1)