A notion of refinement is defined in the context of coatgebraic specification of classes in object-oriented languages. It tells us when objects in a “concrete” class behave exactly like (or: simulate) objects in an “abstract” class. The definition of refinement involves certain selection functions between procedure-inputs and attribute-outputs, which gives this notion considerable flexibility. The coatgebraic approach allows us to use coinductive proof methods in establishing refinements (via (bi)simulations). This is illustrated in several examples.
CITATION STYLE
Jacobs, B. (1997). Behaviour-refinement of coalgebraic specifications with coinductive correctness proofs. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 1214, pp. 787–802). Springer Verlag. https://doi.org/10.1007/bfb0030641
Mendeley helps you to discover research relevant for your work.