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...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Science of computer programming Jg. 111; S. 458 - 482
Hauptverfasser: Montenegro, Manuel, Peña, Ricardo, Segura, Clara
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