Skip to content

codenet/wl-no-sleep

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wl-no-sleep

This is a project for course CS 56500 at Purdue University. This project proves that applying reaching definition based bug detection for no-sleep bugs is sound.

Description of the files

  • SfLib.v - Software foundations Library that defines basics like lists, nat, and proves theorems on them.
  • WLImp.v - Defines semantics of a simple imperative language that just contains wakelocks.
  • WLHoare.v - Defines Assertions and hoare_triple.
  • WLDup.v - Proves that the "wakelock state" can never have duplicate wakelocks in it.
  • WLBug.v - Formally defines "correct program" (a program that does not have no-sleep bugs). Definies the reaching definition based analysis. Finally proves that the analysis is sound for finding no-sleep bugs.
  • WLUtil.v - Utility theorems related to wakelocks
  • Util.v - Other utility theorems

Compilation

The project requires coq to compile. Run make to compile.

About

Proof that no-sleep bug detection has no false negatives

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages