{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T23:10:14Z","timestamp":1759101014984,"version":"3.44.0"},"reference-count":30,"publisher":"Elsevier BV","issue":"1-3","license":[{"start":{"date-parts":[[2000,8,1]],"date-time":"2000-08-01T00:00:00Z","timestamp":965088000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"},{"start":{"date-parts":[[2000,8,1]],"date-time":"2000-08-01T00:00:00Z","timestamp":965088000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/legal\/tdmrep-license"},{"start":{"date-parts":[[2013,7,17]],"date-time":"2013-07-17T00:00:00Z","timestamp":1374019200000},"content-version":"vor","delay-in-days":4733,"URL":"http:\/\/www.elsevier.com\/open-access\/userlicense\/1.0\/"}],"funder":[{"DOI":"10.13039\/501100000038","name":"Natural Sciences and Engineering Research Council of Canada","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100000038","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["elsevier.com","sciencedirect.com"],"crossmark-restriction":true},"short-container-title":["Science of Computer Programming"],"published-print":{"date-parts":[[2000,8]]},"DOI":"10.1016\/s0167-6423(99)00046-5","type":"journal-article","created":{"date-parts":[[2002,10,31]],"date-time":"2002-10-31T16:12:04Z","timestamp":1036080724000},"page":"73-123","update-policy":"https:\/\/doi.org\/10.1016\/elsevier_cm_policy","source":"Crossref","is-referenced-by-count":4,"title":["A calculus of program adaptation and its applications"],"prefix":"10.1016","volume":"38","author":[{"given":"Rahma Ben","family":"Ayed","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jules","family":"Desharnais","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Marc","family":"Frappier","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Ali","family":"Mili","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"78","reference":[{"year":"1998","series-title":"Refinement Calculus","author":"Back","key":"10.1016\/S0167-6423(99)00046-5_BIB1"},{"issue":"4","key":"10.1016\/S0167-6423(99)00046-5_BIB2","first-page":"417","article-title":"van der Woude, Demonic operators and monotype factors","volume":"3","author":"Backhouse","year":"1993","journal-title":"MSCS"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB3","series-title":"Proc. XXXVIII Banach Center Semester on Algebraic Methods in Logic and their Computer Science Applications, Banach, Vol. 28","first-page":"167","article-title":"Relational specifications","author":"Berghammer","year":"1993"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB4","doi-asserted-by":"crossref","first-page":"123","DOI":"10.1016\/0304-3975(86)90172-6","article-title":"Relational algebraic semantics of deterministic and nondeterministic programs","volume":"43","author":"Berghammer","year":"1986","journal-title":"Theoret. Compu. Sci."},{"issue":"5","key":"10.1016\/S0167-6423(99)00046-5_BIB5","doi-asserted-by":"crossref","first-page":"436","DOI":"10.1109\/32.232011","article-title":"Using transformations in specification-based prototyping","volume":"SE-19","author":"Berzinis","year":"1993","journal-title":"IEEE Trans. Software Eng."},{"issue":"1","key":"10.1016\/S0167-6423(99)00046-5_BIB6","doi-asserted-by":"crossref","first-page":"3","DOI":"10.1145\/201055.201056","article-title":"Program integration for languages with procedure calls","volume":"4","author":"Binkley","year":"1995","journal-title":"ACM Trans. Software Eng. Methodol."},{"key":"10.1016\/S0167-6423(99)00046-5_BIB7","doi-asserted-by":"crossref","first-page":"544","DOI":"10.1007\/BF01211474","article-title":"The lattice of specifications","volume":"4","author":"Boudriga","year":"1992","journal-title":"Formal Aspects Comput."},{"key":"10.1016\/S0167-6423(99)00046-5_BIB8","doi-asserted-by":"crossref","first-page":"247","DOI":"10.1016\/0304-3975(93)90074-4","article-title":"A relational division operator","volume":"114","author":"Desharnais","year":"1993","journal-title":"Theoret. Comput. Sci."},{"key":"10.1016\/S0167-6423(99)00046-5_BIB9","doi-asserted-by":"crossref","first-page":"333","DOI":"10.1016\/0304-3975(94)00271-J","article-title":"Embedding a demonic semilattice in a relation algebra","volume":"149","author":"Desharnais","year":"1995","journal-title":"Theoret. Comput. Sci."},{"year":"1976","series-title":"A Discipline of Programming","author":"Dijkstra","key":"10.1016\/S0167-6423(99)00046-5_BIB10"},{"year":"1995","series-title":"A relational basis for program construction by parts","author":"Frappier","key":"10.1016\/S0167-6423(99)00046-5_BIB11"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB12","doi-asserted-by":"crossref","first-page":"237","DOI":"10.1016\/0167-6423(95)00028-3","article-title":"A calculus of program construction by parts","volume":"6","author":"Frappier","year":"1996","journal-title":"Sci. Comput. Programming"},{"issue":"2","key":"10.1016\/S0167-6423(99)00046-5_BIB13","first-page":"317","article-title":"Unifying program construction and modification","volume":"6","author":"Frappier","year":"1998","journal-title":"Logic J. Internat. Interest Group Pure Appl. Logics"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB14","doi-asserted-by":"crossref","first-page":"143","DOI":"10.1016\/0304-3975(91)90029-2","article-title":"Data refinement of predicate transformers","volume":"87","author":"Gardiner","year":"1991","journal-title":"Theoret. Comput. Sci."},{"year":"1981","series-title":"The Science of Programming","author":"Gries","key":"10.1016\/S0167-6423(99)00046-5_BIB15"},{"year":"1993","series-title":"A Practical Theory of Programming","author":"Hehner","key":"10.1016\/S0167-6423(99)00046-5_BIB16"},{"issue":"1522","key":"10.1016\/S0167-6423(99)00046-5_BIB17","doi-asserted-by":"crossref","first-page":"475","DOI":"10.1098\/rsta.1984.0071","article-title":"Programs are predicates","volume":"312","author":"Hoare","year":"1984","journal-title":"Philos. Trans. Roy. Soc. London \u2013 Ser. A"},{"issue":"8","key":"10.1016\/S0167-6423(99)00046-5_BIB18","doi-asserted-by":"crossref","first-page":"672","DOI":"10.1145\/27651.27653","article-title":"Laws of programming","volume":"30","author":"Hoare","year":"1987","journal-title":"Comm. ACM"},{"issue":"3","key":"10.1016\/S0167-6423(99)00046-5_BIB19","doi-asserted-by":"crossref","first-page":"345","DOI":"10.1145\/65979.65980","article-title":"Integrating non-interfering versions of programs","volume":"11","author":"Horwitz","year":"1989","journal-title":"ACM Trans. Programming Languages Systems"},{"year":"1974","series-title":"A Mathematical Theory of Computation","author":"Manna","key":"10.1016\/S0167-6423(99)00046-5_BIB20"},{"year":"1994","series-title":"Computer Program Construction","author":"Mili","key":"10.1016\/S0167-6423(99)00046-5_BIB21"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB22","doi-asserted-by":"crossref","unstructured":"A. Mili, R. Mili, R. Mittermeir, Storing and retrieving software component: a refinement based approach, Proc. Internat. Conf. on Software Engineering, Sorrento, Italy, May 1994, pp. 91\u2013100.","DOI":"10.1109\/ICSE.1994.296769"},{"year":"1998","series-title":"Programming from Specifications","author":"Morgan","key":"10.1016\/S0167-6423(99)00046-5_BIB23"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB24","series-title":"Software Merging and Slicing","first-page":"90","article-title":"A theory of program modifications","author":"Ramalingam","year":"1996"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB25","doi-asserted-by":"crossref","first-page":"139","DOI":"10.1016\/0167-6423(91)90039-Z","article-title":"Algebraic properties of program integration","volume":"17","author":"Reps","year":"1991","journal-title":"Sci. Comput. Programming"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB26","doi-asserted-by":"crossref","unstructured":"E. Sekerinski, A calculus for predicative programming, in: R.S. Bird, C.C. Morgan, J.C.P. Woodcock (Eds.), Mathematics of Program Construction: Second International Conference, Lecture Notes in Computer Science, Vol. 669, Oxford, UK, Springer, Berlin, 1992.","DOI":"10.1007\/3-540-56625-2_20"},{"key":"10.1016\/S0167-6423(99)00046-5_BIB27","unstructured":"D.R. Skuce, A. Mili, Behavioral specifications in object-oriented programming, J. Object-Oriented Programming (1995) 41\u201349."},{"issue":"4","key":"10.1016\/S0167-6423(99)00046-5_BIB28","doi-asserted-by":"crossref","first-page":"352","DOI":"10.1109\/TSE.1984.5010248","article-title":"Program slicing","volume":"SE-10","author":"Weiser","year":"1984","journal-title":"IEEE Trans. Software Engineering"},{"year":"1990","series-title":"A lattice theoretical basis for program refinement","author":"Von Wright","key":"10.1016\/S0167-6423(99)00046-5_BIB29"},{"issue":"3","key":"10.1016\/S0167-6423(99)00046-5_BIB30","doi-asserted-by":"crossref","first-page":"310","DOI":"10.1145\/131736.131756","article-title":"A program integration algorithm that accomodates semantics-preserving transformations","volume":"1","author":"Yang","year":"1992","journal-title":"ACM Trans. Software Eng. Methodol."}],"container-title":["Science of Computer Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0167642399000465?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0167642399000465?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T22:45:31Z","timestamp":1759099531000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/S0167642399000465"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2000,8]]},"references-count":30,"journal-issue":{"issue":"1-3","published-print":{"date-parts":[[2000,8]]}},"alternative-id":["S0167642399000465"],"URL":"https:\/\/doi.org\/10.1016\/s0167-6423(99)00046-5","relation":{},"ISSN":["0167-6423"],"issn-type":[{"type":"print","value":"0167-6423"}],"subject":[],"published":{"date-parts":[[2000,8]]},"assertion":[{"value":"Elsevier","name":"publisher","label":"This article is maintained by"},{"value":"A calculus of program adaptation and its applications","name":"articletitle","label":"Article Title"},{"value":"Science of Computer Programming","name":"journaltitle","label":"Journal Title"},{"value":"https:\/\/doi.org\/10.1016\/S0167-6423(99)00046-5","name":"articlelink","label":"CrossRef DOI link to publisher maintained version"},{"value":"converted-article","name":"content_type","label":"Content Type"},{"value":"Copyright \u00a9 2000 Elsevier Science B.V. All rights reserved.","name":"copyright","label":"Copyright"}]}}