English

Program Derivation by Correctness Enhacements

Logic in Computer Science 2016-06-08 v1 Software Engineering

Abstract

Relative correctness is the property of a program to be more-correct than another program with respect to a given specification. Among the many properties of relative correctness, that which we found most intriguing is the property that program P' refines program P if and only if P' is more-correct than P with respect to any specification. This inspires us to reconsider program derivation by successive refinements: each step of this process mandates that we transform a program P into a program P' that refines P, i.e. P' is more-correct than P with respect to any specification. This raises the question: why should we want to make P' more-correct than P with respect to any specification, when we only have to satisfy specification R? In this paper, we discuss a process of program derivation that replaces traditional sequence of refinement-based correctness-preserving transformations starting from specification R by a sequence of relative correctness-based correctness-enhancing transformations starting from abort.

Keywords

Cite

@article{arxiv.1606.02020,
  title  = {Program Derivation by Correctness Enhacements},
  author = {Nafi Diallo and Wided Ghardallou and Jules Desharnais and Ali Mili},
  journal= {arXiv preprint arXiv:1606.02020},
  year   = {2016}
}

Comments

In Proceedings Refine'15, arXiv:1606.01344

R2 v1 2026-06-22T14:19:15.942Z