Implementing angelic nondeterminism

We extend correctness and refinement reasoning methods in order to show how angelic nondeterminism can be systematically transformed into demonic nondeterminism or determinism. This kind of transformation is important because angelic nondeterminism assumes that an agent interested in establishing the postcondition will resolve the choices intelligently. When angelic nondeterminism is reduced into demonic nondeterminism or determinism, such intelligent choices are no longer necessary. Reducing angelic nondeterminism is generally not a refinement; however, when context is taken into consideration, it can be a correctness-preserving transformation.

[1]  Ralph-Johan Back,et al.  Reasoning About Interactive Systems , 1999, World Congress on Formal Methods.

[2]  Linas Laibinis,et al.  Context handling in the Refinement Calculus framework , 1997 .

[3]  Ralph-Johan Back,et al.  A calculus of refinements for program derivations , 1988, Acta Informatica.

[4]  Amir Pnueli,et al.  Symbolic Controller Synthesis for Discrete and Timed Systems , 1994, Hybrid Systems.

[5]  C. A. R. HOARE,et al.  An axiomatic basis for computer programming , 1969, CACM.

[6]  Ralph-Johan Back,et al.  Correctness preserving program refinements: Proof theory and applications , 1980 .

[7]  Robert W. Floyd,et al.  Nondeterministic Algorithms , 1967, JACM.

[8]  Carroll Morgan,et al.  Data Refinement of Predicate Transformers , 1991, Theor. Comput. Sci..

[9]  N. Ward A refinement calculus for nondeterministic expressions , 1994 .

[10]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[11]  John Derrick,et al.  Abstract Specification in Object-Z and CSP , 2002, ICFEM.

[12]  Ralph-Johan Back,et al.  Refinement Calculus: A Systematic Introduction , 1998 .

[13]  R. Prim Shortest connection networks and some generalizations , 1957 .

[14]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[15]  Joakim von Wright,et al.  Theorem Prover Support for Precondition and Correctness Calculation , 2002, ICFEM.

[16]  Nigel Ward,et al.  Applications of Angelic Nondeterminism , 1991 .

[17]  Ralph-Johan Back,et al.  Duality in specification languages: a lattice-theoretical approach , 1990, Acta Informatica.

[18]  Dominique Cansell,et al.  Formal Derivation of Spanning Trees Algorithms , 2003, ZB.