Issue No. 03 - March (1993 vol. 19)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.221138
<p>It is shown that a combination of specification and program refinement may be applied to deriving efficient concurrent rule-based programs. Specification refinement is used to generate an initial rule-based program that is refined into a program which is highly concurrent and efficient. This program derivation strategy is divided into two major tasks. The first task relies on specification refinement. Techniques similar to those employed in the derivation of UNITY programs are used to produce a correct rule-based program having a static knowledge base. The second task involves program refinement and is specific to the development of concurrent rule-based programs. It relies heavily on the availability of a computational model, such as Swarm, that has the ability to dynamically restructure the knowledge base. The ways in which a Swarm program can be translated to OPS5 specifically, given some restrictions, while maintaining the correctness criteria are discussed.</p>
program refinement; efficient concurrent rule-based programs; initial rule-based program; program derivation strategy; specification refinement; UNITY programs; correct rule-based program; static knowledge base; computational model; Swarm; OPS5; correctness criteria; formal specification; knowledge based systems; logic programming; parallel programming
W. Ball, G. Roma and R. Gamble, "Formal Derivation of Rule-Based Programs," in IEEE Transactions on Software Engineering, vol. 19, no. , pp. 277-296, 1993.