{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,6,24]],"date-time":"2024-06-24T07:17:57Z","timestamp":1719213477211},"reference-count":14,"publisher":"Cambridge University Press (CUP)","issue":"4","license":[{"start":{"date-parts":[[2008,11,7]],"date-time":"2008-11-07T00:00:00Z","timestamp":1226016000000},"content-version":"unspecified","delay-in-days":5881,"URL":"https:\/\/www.cambridge.org\/core\/terms"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["J. Funct. Prog."],"published-print":{"date-parts":[[1992,10]]},"abstract":"Abstract<\/jats:title>The essential part of abstract interpretation is to build a machine-representable abstract domain expressing interesting properties about the possible states reached by a program at runtime. Many techniques have been developed which assume that one knows in advance the class of properties that are of interest. There are cases however when there are no a priori<\/jats:italic> indications about the 'best' abstract properties to use. We introduce a new framework that enables non-unique representations of abstract program properties to be used, and expose a method, called dynamic partitioning, that allows the dynamic determination of interesting abstract domains using data structures built over simpler domains. Finally, we show how dynamic partitioning can be used to compute non-trivial approximations of functions over infinite domains and give an application to the computation of minimal function graphs.<\/jats:p>","DOI":"10.1017\/s0956796800000496","type":"journal-article","created":{"date-parts":[[2008,11,7]],"date-time":"2008-11-07T11:14:01Z","timestamp":1226056441000},"page":"407-435","source":"Crossref","is-referenced-by-count":62,"title":["Abstract interpretation by dynamic partitioning"],"prefix":"10.1017","volume":"2","author":[{"given":"Fran\u00e7ois","family":"Bourdoncle","sequence":"first","affiliation":[]}],"member":"56","published-online":{"date-parts":[[2008,11,7]]},"reference":[{"key":"S0956796800000496_ref002","first-page":"238","volume-title":"Proc. 4th ACM Symp. on POPL","author":"Cousot","year":"1977"},{"key":"S0956796800000496_ref001","volume-title":"Proc. International Workshop PLILP'90","volume":"456","author":"Bourdoncle","year":"1990"},{"key":"S0956796800000496_ref007","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-67678-9"},{"key":"S0956796800000496_ref006","first-page":"303","volume-title":"Program Flow Analysis, Theory and Applications","author":"Cousot","year":"1981"},{"key":"S0956796800000496_ref014","volume-title":"Denotational Semantics","author":"Schmidt","year":"1953"},{"key":"S0956796800000496_ref003","first-page":"84","volume-title":"Proc. 5th ACM Symp. on POPL","author":"Cousot","year":"1978"},{"key":"S0956796800000496_ref004","unstructured":"Cousot P. 1978. M\u00e9thodes it\u00e9ratives de construction et d'approximation de points fixes d'op\u00e9rateurs monotones sur un treillis. Analyse s\u00e9mantique de programmes. PhD Thesis, Universit\u00e9 Scientifique et M\u00e9dicale de Grenoble."},{"key":"S0956796800000496_ref008","first-page":"635","volume-title":"Handbook of Theoretical Computer Science","author":"Gunter","year":"1990"},{"key":"S0956796800000496_ref012","unstructured":"Stransky J. 1990. A lattice for abstract interpretation of dynamic (lisp-like) structures. L.I.X. internal report LIX\/RR\/90\/03."},{"key":"S0956796800000496_ref013","first-page":"189","volume-title":"Program Flow Analysis, Theory and Applications","author":"Sharir","year":"1981"},{"key":"S0956796800000496_ref009","volume-title":"Proc. 9th ACM Symp. on POPL","author":"Jones","year":"1982"},{"key":"S0956796800000496_ref010","first-page":"296","volume-title":"Proc. 13th ACM Symp. on POPL","author":"Jones","year":"1986"},{"key":"S0956796800000496_ref011","first-page":"536","volume-title":"Proc. 10th ICALP","volume":"154","author":"Mycroft","year":"1983"},{"key":"S0956796800000496_ref005","first-page":"237","volume-title":"Formal Description of Programming Concepts","author":"Cousot","year":"1978"}],"container-title":["Journal of Functional Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S0956796800000496","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,16]],"date-time":"2019-05-16T16:38:20Z","timestamp":1558024700000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S0956796800000496\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1992,10]]},"references-count":14,"journal-issue":{"issue":"4","published-print":{"date-parts":[[1992,10]]}},"alternative-id":["S0956796800000496"],"URL":"https:\/\/doi.org\/10.1017\/s0956796800000496","relation":{},"ISSN":["0956-7968","1469-7653"],"issn-type":[{"value":"0956-7968","type":"print"},{"value":"1469-7653","type":"electronic"}],"subject":[],"published":{"date-parts":[[1992,10]]}}}