Space consumption analysis by abstract interpretation: Reductivity properties
In a previous paper we presented an abstract interpretation-based static analysis for inferring heap and stack memory consumption in a functional language. The language, called Safe, is eager and first-order, and its memory management system is based on heap regions instead of the more conventional...
Gespeichert in:
| Veröffentlicht in: | Science of computer programming Jg. 111; S. 458 - 482 |
|---|---|
| Hauptverfasser: | , , |
| Format: | Journal Article |
| Sprache: | Englisch |
| Veröffentlicht: |
Elsevier B.V
01.11.2015
|
| Schlagworte: | |
| ISSN: | 0167-6423, 1872-7964 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Abstract | In a previous paper we presented an abstract interpretation-based static analysis for inferring heap and stack memory consumption in a functional language. The language, called Safe, is eager and first-order, and its memory management system is based on heap regions instead of the more conventional approach of having a garbage collector.
In this paper we concentrate on an important property of our analysis, namely that the inferred bounds are reductive under certain reasonable conditions. This means that by iterating the analysis using as input the prior inferred bound, we can get tighter and tighter bounds, all of them correct. In some cases, even the exact bound is obtained.
The paper includes several examples and case studies illustrating in detail the reductivity property of the inferred bounds.
•First space analysis for a functional language with regions.•Our bounds go beyond multivariate polynomials.•Our bounds have the property of reductivity, i.e. they improve by iteration.•We have formally proved the correctness of all the results and implemented all the algorithms. |
|---|---|
| AbstractList | In a previous paper we presented an abstract interpretation-based static analysis for inferring heap and stack memory consumption in a functional language. The language, called Safe, is eager and first-order, and its memory management system is based on heap regions instead of the more conventional approach of having a garbage collector.
In this paper we concentrate on an important property of our analysis, namely that the inferred bounds are reductive under certain reasonable conditions. This means that by iterating the analysis using as input the prior inferred bound, we can get tighter and tighter bounds, all of them correct. In some cases, even the exact bound is obtained.
The paper includes several examples and case studies illustrating in detail the reductivity property of the inferred bounds.
•First space analysis for a functional language with regions.•Our bounds go beyond multivariate polynomials.•Our bounds have the property of reductivity, i.e. they improve by iteration.•We have formally proved the correctness of all the results and implemented all the algorithms. |
| Author | Segura, Clara Montenegro, Manuel Peña, Ricardo |
| Author_xml | – sequence: 1 givenname: Manuel surname: Montenegro fullname: Montenegro, Manuel email: montenegro@fdi.ucm.es – sequence: 2 givenname: Ricardo surname: Peña fullname: Peña, Ricardo email: ricardo@sip.ucm.es – sequence: 3 givenname: Clara surname: Segura fullname: Segura, Clara email: csegura@sip.ucm.es |
| BookMark | eNp9kNtKAzEURYMo2Fa_wJf8wIy5NZkKPkjxBhXBy3PIZE4gpU2GJC3M3ztjfRY2nJe1Dps9R-chBkDohpKaEipvt3W23saaESpqMoaKMzSjjWKVWklxjmYjpSopGL9E85y3hBApFJ2ht8_eWMA2hnzY98XHgE0wuyH7jNsBmzaXZGzBPhRIfYJiJuYOf0B3sMUffRlwn2IPqXjIV-jCmV2G67-7QN9Pj1_rl2rz_vy6fthUljNeKmYcaUA4rkBYsYSWS8e465oWgEnVLgWlnDngS2U6s2Jy7LoyBgg0lhJp-QLx01-bYs4JnO6T35s0aEr0tIje6t9F9LSIJmOoGK37kwVjtaOHNDEQLHQ-gS26i_5f_wczE275 |
| Cites_doi | 10.1007/s10817-010-9174-1 10.1016/j.ic.2014.01.003 10.2140/pjm.1955.5.285 |
| ContentType | Journal Article |
| Copyright | 2014 Elsevier B.V. |
| Copyright_xml | – notice: 2014 Elsevier B.V. |
| DBID | 6I. AAFTH AAYXX CITATION |
| DOI | 10.1016/j.scico.2014.04.014 |
| DatabaseName | ScienceDirect Open Access Titles Elsevier:ScienceDirect:Open Access CrossRef |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1872-7964 |
| EndPage | 482 |
| ExternalDocumentID | 10_1016_j_scico_2014_04_014 S0167642314002445 |
| GrantInformation_xml | – fundername: MEC grantid: AP2006-02154 |
| GroupedDBID | --K --M .DC .~1 0R~ 123 1B1 1RT 1~. 1~5 4.4 457 4G. 5VS 6I. 7-5 71M 8P~ 9JN AACTN AAEDW AAFTH AAIAV AAIKJ AAKOC AALRI AAOAW AAQFI AAXUO AAYFN ABBOA ABJNI ABMAC ABVKL ABYKQ ACDAQ ACGFS ACRLP ACZNC ADBBV ADEZE ADHUB AEBSH AEKER AENEX AEXQZ AFKWA AFTJW AGUBO AGYEJ AHHHB AHZHX AIALX AIEXJ AIKHN AITUG AJBFU AJOXV ALMA_UNASSIGNED_HOLDINGS AMFUW AMRAJ AOUOD AXJTR BKOJK BLXMC CS3 DU5 E.L EBS EFJIC EFLBG EJD EO8 EO9 EP2 EP3 FDB FEDTE FIRID FNPLU FYGXN G-Q GBLVA GBOLZ HVGLF IHE IXB J1W KOM LG9 M26 M41 MO0 N9A NCXOZ O-L O9- OAUVE OK1 OZT P-8 P-9 P2P PC. Q38 RIG ROL RPZ SDF SDG SDP SES SPC SPCBC SSV SSZ T5K TN5 XPP ZMT ~G- 9DU AAEDT AAQXK AATTM AAXKI AAYWO AAYXX ABFNM ABWVN ABXDB ACLOT ACNNM ACRPL ACVFH ADCNI ADMUD ADNMO ADVLN AEIPS AEUPX AFFNX AFJKZ AFPUW AGHFR AGQPQ AIGII AIIUN AKBMS AKRWK AKYEP ANKPU APXCP ASPBG AVWKF AZFZN CITATION EFKBS FGOYB G-2 HZ~ R2- SEW WUQ ZY4 ~HD |
| ID | FETCH-LOGICAL-c323t-2af08e4f37e4c45eb36f23fd8bee267b541132fe357ada9266479aae0e8c106c3 |
| ISICitedReferencesCount | 0 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000368556800005&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 0167-6423 |
| IngestDate | Sat Nov 29 03:37:16 EST 2025 Fri Feb 23 02:37:18 EST 2024 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Keywords | Functional languages Resource analysis Abstract interpretation Regions |
| Language | English |
| License | http://www.elsevier.com/open-access/userlicense/1.0 |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-c323t-2af08e4f37e4c45eb36f23fd8bee267b541132fe357ada9266479aae0e8c106c3 |
| OpenAccessLink | https://dx.doi.org/10.1016/j.scico.2014.04.014 |
| PageCount | 25 |
| ParticipantIDs | crossref_primary_10_1016_j_scico_2014_04_014 elsevier_sciencedirect_doi_10_1016_j_scico_2014_04_014 |
| PublicationCentury | 2000 |
| PublicationDate | 2015-11-01 |
| PublicationDateYYYYMMDD | 2015-11-01 |
| PublicationDate_xml | – month: 11 year: 2015 text: 2015-11-01 day: 01 |
| PublicationDecade | 2010 |
| PublicationTitle | Science of computer programming |
| PublicationYear | 2015 |
| Publisher | Elsevier B.V |
| Publisher_xml | – name: Elsevier B.V |
| References | Jost, Hammond, Loidl, Hofmann (br0110) 2010 Hughes, Pareto, Sabry (br0090) 1996 Montenegro, Peña, Segura (br0160) 2014 Albert, Genaim, Masud (br0040) 2011; vol. 6538 Pareto (br0190) 1998 Montenegro, Peña, Segura (br0130) 2010; vol. 6324 Montenegro, Peña, Segura (br0140) 2009; vol. 5979 Jost (br0100) 2010 M. Montenegro, R. Peña, C. Segura, Space consumption analysis by abstract interpretation: reductivity properties. Detailed proofs, 2014, pp. 1–12. Simões, Vasconcelos, Florido, Jost, Hammond (br0200) 2012 Albert, Arenas, Genaim, Puebla (br0010) 2011; 46 Montenegro, Peña, Segura (br0120) 2008 Tarski (br0210) 1955; 5 Albert, Genaim, Gómez-Zamalloa (br0030) 2010 Hoffmann, Hofmann (br0060) 2010; vol. 6012 Hofmann, Jost (br0070) 2003 Albert, Arenas, Genaim, Puebla, Zanardini (br0020) 2007; vol. 4421 Hoffmann, Aehlig, Hofmann (br0050) 2011 Hughes, Pareto (br0080) 1999 Montenegro, Peña, Segura (br0150) 2014; 235 Nielson, Nielson, Hankin (br0180) 1999 Hoffmann (10.1016/j.scico.2014.04.014_br0060) 2010; vol. 6012 Montenegro (10.1016/j.scico.2014.04.014_br0130) 2010; vol. 6324 Montenegro (10.1016/j.scico.2014.04.014_br0150) 2014; 235 Montenegro (10.1016/j.scico.2014.04.014_br0160) 2014 Albert (10.1016/j.scico.2014.04.014_br0010) 2011; 46 Montenegro (10.1016/j.scico.2014.04.014_br0140) 2009; vol. 5979 Hofmann (10.1016/j.scico.2014.04.014_br0070) 2003 10.1016/j.scico.2014.04.014_br0170 Montenegro (10.1016/j.scico.2014.04.014_br0120) 2008 Albert (10.1016/j.scico.2014.04.014_br0020) 2007; vol. 4421 Nielson (10.1016/j.scico.2014.04.014_br0180) 1999 Pareto (10.1016/j.scico.2014.04.014_br0190) 1998 Simões (10.1016/j.scico.2014.04.014_br0200) 2012 Hughes (10.1016/j.scico.2014.04.014_br0080) 1999 Jost (10.1016/j.scico.2014.04.014_br0100) 2010 Tarski (10.1016/j.scico.2014.04.014_br0210) 1955; 5 Albert (10.1016/j.scico.2014.04.014_br0030) 2010 Albert (10.1016/j.scico.2014.04.014_br0040) 2011; vol. 6538 Hughes (10.1016/j.scico.2014.04.014_br0090) 1996 Hoffmann (10.1016/j.scico.2014.04.014_br0050) 2011 Jost (10.1016/j.scico.2014.04.014_br0110) 2010 |
| References_xml | – start-page: 121 year: 2010 end-page: 130 ident: br0030 article-title: Parametric inference of memory requirements for garbage collected languages publication-title: Proceedings of the 2010 International Symposium on Memory Management – start-page: 357 year: 2011 end-page: 370 ident: br0050 article-title: Multivariate amortized resource analysis publication-title: Proceedings of the 38th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages – year: 2010 ident: br0100 article-title: Automated amortised analysis – year: 1998 ident: br0190 article-title: Sized types – volume: vol. 4421 start-page: 157 year: 2007 end-page: 172 ident: br0020 article-title: Cost analysis of Java bytecode publication-title: Proceedings of the 16th European Symposium on Programming – start-page: 223 year: 2010 end-page: 236 ident: br0110 article-title: Static determination of quantitative resource usage for higher-order programs publication-title: Proceedings of the 37th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages – start-page: 152 year: 2008 end-page: 162 ident: br0120 article-title: A type system for safe memory management and its proof of correctness publication-title: Proceedings of the 10th International ACM SIGPLAN Symposium on Principles and Practice of Declarative Programming – start-page: 185 year: 2003 end-page: 197 ident: br0070 article-title: Static prediction of heap space usage for first-order functional programs publication-title: Proceedings of the 30th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages – volume: vol. 6012 start-page: 287 year: 2010 end-page: 306 ident: br0060 article-title: Amortized resource analysis with polynomial potential publication-title: Proceedings of the 19th European Symposium on Programming – volume: vol. 6538 start-page: 38 year: 2011 end-page: 53 ident: br0040 article-title: More precise yet widely applicable cost analysis publication-title: Proceedings of the 12th International Conference on Verification, Model Checking and Abstract Interpretation – volume: 5 start-page: 285 year: 1955 end-page: 309 ident: br0210 article-title: A lattice-theoretical fixpoint theorem and its applications publication-title: Pac. J. Math. – start-page: 410 year: 1996 end-page: 423 ident: br0090 article-title: Proving the correctness of reactive systems using sized types publication-title: Proceedings of the 23rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages – volume: 235 start-page: 3 year: 2014 end-page: 35 ident: br0150 article-title: A resource semantics and abstract machine for Safe: a functional language with regions and explicit deallocation publication-title: Inf. Comput. – start-page: 70 year: 1999 end-page: 81 ident: br0080 article-title: Recursion and dynamic data-structures in bounded space: towards embedded ML programming publication-title: Proceedings of the 4th ACM SIGPLAN International Conference on Functional Programming – year: 1999 ident: br0180 article-title: Principles of Program Analysis – reference: M. Montenegro, R. Peña, C. Segura, Space consumption analysis by abstract interpretation: reductivity properties. Detailed proofs, 2014, pp. 1–12. – year: 2014 ident: br0160 article-title: Space consumption analysis by abstract interpretation – volume: 46 start-page: 161 year: 2011 end-page: 203 ident: br0010 article-title: Closed-form upper bounds in static cost analysis publication-title: J. Autom. Reason. – volume: vol. 6324 start-page: 34 year: 2010 end-page: 50 ident: br0130 article-title: A space consumption analysis by abstract interpretation publication-title: Proceedings of the 1st International Workshop on Foundational and Practical Aspects of Resource Analysis – start-page: 165 year: 2012 end-page: 176 ident: br0200 article-title: Automatic amortised analysis of dynamic memory allocation for lazy functional programs publication-title: International Conference on Functional Programming (ICFP'12) – volume: vol. 5979 start-page: 145 year: 2009 end-page: 161 ident: br0140 article-title: A simple region inference algorithm for a first-order functional language publication-title: Proceedings of the 18th International Workshop on Functional and (Constraint) Logic Programming – year: 2010 ident: 10.1016/j.scico.2014.04.014_br0100 – volume: vol. 5979 start-page: 145 year: 2009 ident: 10.1016/j.scico.2014.04.014_br0140 article-title: A simple region inference algorithm for a first-order functional language – volume: vol. 6538 start-page: 38 year: 2011 ident: 10.1016/j.scico.2014.04.014_br0040 article-title: More precise yet widely applicable cost analysis – volume: 46 start-page: 161 year: 2011 ident: 10.1016/j.scico.2014.04.014_br0010 article-title: Closed-form upper bounds in static cost analysis publication-title: J. Autom. Reason. doi: 10.1007/s10817-010-9174-1 – start-page: 152 year: 2008 ident: 10.1016/j.scico.2014.04.014_br0120 article-title: A type system for safe memory management and its proof of correctness – start-page: 70 year: 1999 ident: 10.1016/j.scico.2014.04.014_br0080 article-title: Recursion and dynamic data-structures in bounded space: towards embedded ML programming – year: 1998 ident: 10.1016/j.scico.2014.04.014_br0190 – ident: 10.1016/j.scico.2014.04.014_br0170 – volume: vol. 4421 start-page: 157 year: 2007 ident: 10.1016/j.scico.2014.04.014_br0020 article-title: Cost analysis of Java bytecode – volume: 235 start-page: 3 year: 2014 ident: 10.1016/j.scico.2014.04.014_br0150 article-title: A resource semantics and abstract machine for Safe: a functional language with regions and explicit deallocation publication-title: Inf. Comput. doi: 10.1016/j.ic.2014.01.003 – start-page: 121 year: 2010 ident: 10.1016/j.scico.2014.04.014_br0030 article-title: Parametric inference of memory requirements for garbage collected languages – start-page: 165 year: 2012 ident: 10.1016/j.scico.2014.04.014_br0200 article-title: Automatic amortised analysis of dynamic memory allocation for lazy functional programs – volume: vol. 6324 start-page: 34 year: 2010 ident: 10.1016/j.scico.2014.04.014_br0130 article-title: A space consumption analysis by abstract interpretation – volume: vol. 6012 start-page: 287 year: 2010 ident: 10.1016/j.scico.2014.04.014_br0060 article-title: Amortized resource analysis with polynomial potential – start-page: 185 year: 2003 ident: 10.1016/j.scico.2014.04.014_br0070 article-title: Static prediction of heap space usage for first-order functional programs – start-page: 410 year: 1996 ident: 10.1016/j.scico.2014.04.014_br0090 article-title: Proving the correctness of reactive systems using sized types – start-page: 357 year: 2011 ident: 10.1016/j.scico.2014.04.014_br0050 article-title: Multivariate amortized resource analysis – year: 2014 ident: 10.1016/j.scico.2014.04.014_br0160 – year: 1999 ident: 10.1016/j.scico.2014.04.014_br0180 – volume: 5 start-page: 285 year: 1955 ident: 10.1016/j.scico.2014.04.014_br0210 article-title: A lattice-theoretical fixpoint theorem and its applications publication-title: Pac. J. Math. doi: 10.2140/pjm.1955.5.285 – start-page: 223 year: 2010 ident: 10.1016/j.scico.2014.04.014_br0110 article-title: Static determination of quantitative resource usage for higher-order programs |
| SSID | ssj0006471 |
| Score | 2.0557702 |
| Snippet | In a previous paper we presented an abstract interpretation-based static analysis for inferring heap and stack memory consumption in a functional language. The... |
| SourceID | crossref elsevier |
| SourceType | Index Database Publisher |
| StartPage | 458 |
| SubjectTerms | Abstract interpretation Functional languages Regions Resource analysis |
| Title | Space consumption analysis by abstract interpretation: Reductivity properties |
| URI | https://dx.doi.org/10.1016/j.scico.2014.04.014 |
| Volume | 111 |
| WOSCitedRecordID | wos000368556800005&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVESC databaseName: ScienceDirect database customDbUrl: eissn: 1872-7964 dateEnd: 20180131 omitProxy: false ssIdentifier: ssj0006471 issn: 0167-6423 databaseCode: AIEXJ dateStart: 19950201 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1Na9tAEF1K0kMv_S5105Y99BiBpN3VSrmlJaUtJBSagm9iV5oNNa1sbDkk_z6zX7KclFAfaoQwAq1kzfPs7OjNPEI-aNZKYWx6qQWdcF3pRIOwtKkyzSvR2pIEJzYhz87K6bT6Hl4XrJycgOy68uqqWvxXU-MxNLYtnd3B3MOgeAC_o9Fxj2bH_T8Z_geugh0FHS_q_YGKjUcw1FTa5jaa3vWJ2LANPS_O9n71YhILm6Nf9pFhGKLX6AgCFd2qQUSC1584BToCr-XFw4UvoTlV3Rp-b1ywfTX_MVOhqh8BOh-yPHCxdrJHVqpzqcYJiUyEyrxRjhJ9Ly5r2JaTDS7Vu0nu27WHGZd7-aE7ztznFWa4zMc_hWXhcdeV1hedbrfOvjWlDUTDyGGb1W6Q2g5Sp7hZ7fP9XIoKPeH-8deT6bdh_i78Mn34GbFXlWMF3rmXv8czoxjl_Cl5HBYX9NiD4hl5AN1z8iQKd9Bgvhfk1GGEjjBCI0aovqYRI3QbI0d0hBC6QchL8vPzyfmnL0nQ1UgalrM-yZVJS-CGSeANF6BZYXJm2lID5IXUgmcZyw0wIVWrKgzhuKyUghTKJkuLhr0ie928g9eEmlbmRWs0F5LxguuyAMW4wU-pMdJvJ-QwPp164dun1PfYZEKK-ATrEAH6yK5GTNx34pvdrnNAHm2Q-5bs9cs1vCMPm8v-12r5PgDiBq6bgX0 |
| linkProvider | Elsevier |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Space+consumption+analysis+by+abstract+interpretation%3A+Reductivity+properties&rft.jtitle=Science+of+computer+programming&rft.au=Montenegro%2C+Manuel&rft.au=Pe%C3%B1a%2C+Ricardo&rft.au=Segura%2C+Clara&rft.date=2015-11-01&rft.issn=0167-6423&rft.volume=111&rft.spage=458&rft.epage=482&rft_id=info:doi/10.1016%2Fj.scico.2014.04.014&rft.externalDBID=n%2Fa&rft.externalDocID=10_1016_j_scico_2014_04_014 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0167-6423&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0167-6423&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0167-6423&client=summon |