Shape analysis through predicate abstraction and model check(12)

时间:2025-04-10

Abstract. We propose a new framework, based on predicate abstraction and model checking, for shape analysis of programs. Shape analysis is used to statically collect information — such as possible reachability and sharing — about program stores. Rather t

satis abilityquestionsoverpredicateformulae,andthuswemightbene therefromworkondecidablelogicstoreasonaboutheapsorarrays[4,19,21,31].ModelcheckingNext,weinstructthetooltoproducethecorrespondingab-stractedlistreversalprograminbothS/RandPromelaformats,andusetheCOSPANandSPINmodelcheckerstoindependentlyverifytheoriginalcyclic-ityproperty.Inbothcases,thecheckingisdoneintheorderofhundredthsofasecond,withinminimalamountsofmemory(0.1MBwithSPINandlesswithCOSPAN4).ThePromelaversionhas34reachablestates,each48bytesinsize.FortheS/Rversion,32statesarereached5andtheconstructedBDD’shave2454nodes.Bothveri cationscon rmthatthepropertyholds.Removingthepreconditionthatxisacyclicresultsinfailure,showingthatitisnecessary.Incaseofthelist-insertionexamplefromtheIntroduction,thetoolconvergesafter4iterationswithouttheneedforanyapproximations.Sointhiscasetheabstractionisfullyautomatic.TheresultingS/RandPromelamodelshave12and7reachablestatesresp.,andveri cationisagaindoneinafractionofasecondwithminimalamountsofmemoryinbothcases.

6RelatedWorkandConclusions

Asynthesisandgeneralizationofseveralexistingalgorithmsforshapeanalysisispresentedin[29].Theiralgorithmconstructsashapegraphinvariant,expressedin3-valuedlogic,byanabstractinterpretationofprogramactions.Theinvariantisbasedontwocorepredicates:x(v)(thenodeforvariablex)andn(v1,v2)(alinkfromv1tov2via eldn).Toimproveprecision,user-suppliedinstrumenta-tionpredicateshavetobeused,includingshapepredicatesandalsonon-shapepredicatessuchas≤.Precisioncanalsobeimprovedbyafocusoperationthatturnsunde nedvaluesintonon-determinism,orbymaterializingnewelements(e.g.,todistinguishbetweenreachabilityin0,1,ormoresteps).Acoerceopera-tioneliminatesinconsistentpartsofaninvariant.Theimplementation(TVLA)

[24]includesabluroperation,whichweakensaninvariant.

Althoughtheexactrelationshipbetweenouralgorithmsis—asyet—unclear,somegeneralcommentscanbemade.First,theabstractioncomputedbyoural-gorithmcanbeusedtoconstructshapegraphinvariants—thisisdoneimplicitlybythemodelcheckingprocedure—butalsotochecknon-invarianceproperties.Secondly,operationssimilartofocus,coerce,andblur,allofwhichhavetodowiththeprecisionofthereachabilitycomputation,areimplementedinmodelcheckers.Determininghowwellthesegenerictechniquesworkfortheparticularproblemofshapeanalysisisanintriguingquestionforfutureworkbut,intheexampleswehaveconsidered,themodelcheckingwasnotanissue.

Oneofthechiefdi erencesisthebackward,goal-directednatureofourab-stractionmethod,andthecorrespondinglackofdistinctionbetweencoreandinstrumentationpredicates.Infact,theiteratedwpcalculations,startingwith4

5SPINalwaysseemstotakeatleast0.1MBduetooverheadorabuilt-inlowerbound.Thedi erenceinthenumberofreachablestatesisduetodi erentwaysofmodeling.

…… 此处隐藏:967字,全部文档内容请下载后查看。喜欢就下载吧 ……
Shape analysis through predicate abstraction and model check(12).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219