bGSL: An imperative language for specification and refinement of backtracking programs

We present an imperative refinement language for the development of backtracking programs and discuss its semantic foundations. For expressivity, our language includes prospective values and preference—the latter being a variant of Nelson's biased choice that backtracks from infeasibility of a...

Full description

Saved in:
Bibliographic Details
Published inJournal of logical and algebraic methods in programming Vol. 130; p. 100811
Main Authors Dunne, Steve, Ferreira, João F., Mendes, Alexandra, Ritchie, Campbell, Stoddart, Bill, Zeyda, Frank
Format Journal Article
LanguageEnglish
Published Elsevier Inc 01.01.2023
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:We present an imperative refinement language for the development of backtracking programs and discuss its semantic foundations. For expressivity, our language includes prospective values and preference—the latter being a variant of Nelson's biased choice that backtracks from infeasibility of a continuation. Our key contribution is to examine feasibility-preserving refinement as a basis for developing backtracking programs, and several key refinement laws that enable compositional refinement in the presence of non-monotonic program combinators.
ISSN:2352-2208
DOI:10.1016/j.jlamp.2022.100811