메뉴 건너뛰기




Volumn , Issue , 2008, Pages 349-361

Full functional verification of linked data structures

Author keywords

Data structure; Decision procedure; Java; Theorem prover; Verification

Indexed keywords

C (PROGRAMMING LANGUAGE); CODES (SYMBOLS); COMPUTER PROGRAMMING LANGUAGES; COMPUTER SOFTWARE; COMPUTERS; DATA STORAGE EQUIPMENT; FILE ORGANIZATION; FORMAL LOGIC; GRAPH THEORY; JAVA PROGRAMMING LANGUAGE; LINGUISTICS; OPEN SYSTEMS; QUERY LANGUAGES; STRUCTURAL DESIGN; THEOREM PROVING; TREES (MATHEMATICS);

EID: 57349111788     PISSN: None     EISSN: None     Source Type: Conference Proceeding    
DOI: 10.1145/1375581.1375624     Document Type: Conference Paper
Times cited : (112)

References (89)
  • 1
    • 57349135940 scopus 로고    scopus 로고
    • The Jahob project web .last accessed: March 2008
    • The Jahob project web page, http://javaverification.org.last accessed: March 2008.
  • 2
    • 57349110123 scopus 로고    scopus 로고
    • Verisoft project, Last accessed March 2008
    • Verisoft project, http://www.verisoft.de, Last accessed March 2008.
  • 5
    • 23844521011 scopus 로고    scopus 로고
    • Proof general: A generic tool for proof development
    • D. Aspinall. Proof general: A generic tool for proof development. In TACAS, 2000.
    • (2000) TACAS
    • Aspinall, D.1
  • 7
    • 55049132505 scopus 로고    scopus 로고
    • M. Balser, W. Reif, G. Schellhorn, K. Stenzel, and A. Thums. Formal system development with KIV. In FASE, number 1783 in LNCS, 2000.
    • M. Balser, W. Reif, G. Schellhorn, K. Stenzel, and A. Thums. Formal system development with KIV. In FASE, number 1783 in LNCS, 2000.
  • 10
    • 34748825774 scopus 로고    scopus 로고
    • Smallfoot: Modular automatic assertion checking with separation logic
    • J. Berdine, C. Calcagno, and P. W. O'Hearn. Smallfoot: Modular automatic assertion checking with separation logic. In FMCO, 2005.
    • (2005) FMCO
    • Berdine, J.1    Calcagno, C.2    O'Hearn, P.W.3
  • 12
    • 57349116370 scopus 로고    scopus 로고
    • D. Beyer, T. A. Henzinger, and G. Théoduloz. Lazy shape analysis. In CAV, 2006.
    • D. Beyer, T. A. Henzinger, and G. Théoduloz. Lazy shape analysis. In CAV, 2006.
  • 13
    • 0001152506 scopus 로고
    • The integration project for the JACK environment
    • A. Bouali, S. Gnesi, and S. Larosa. The integration project for the JACK environment. Bulletin of the EATCS, (54):207-223, 1994.
    • (1994) Bulletin of the EATCS , vol.54 , pp. 207-223
    • Bouali, A.1    Gnesi, S.2    Larosa, S.3
  • 14
    • 57349190668 scopus 로고    scopus 로고
    • Using first-order theorem provers in a data structure verification system
    • November
    • C. Bouillaguet, V. Kuncak, T. Wies, K. Zee, and M. Rinard. Using first-order theorem provers in a data structure verification system. In VMCAI'07, November 2007.
    • (2007) VMCAI'07
    • Bouillaguet, C.1    Kuncak, V.2    Wies, T.3    Zee, K.4    Rinard, M.5
  • 15
    • 0036980185 scopus 로고    scopus 로고
    • Korat: Automated testing based on Java predicates
    • C. Boyapati, S. Khurshid, and D. Marinov. Korat: Automated testing based on Java predicates. In ISSTA, 2002.
    • (2002) ISSTA
    • Boyapati, C.1    Khurshid, S.2    Marinov, D.3
  • 16
    • 0002457511 scopus 로고
    • Integrating decision procedures into heuristic theorem provers: A case study of linear arithmetic
    • OUP
    • R. S. Boyer and J. S. Moore. Integrating decision procedures into heuristic theorem provers: A case study of linear arithmetic. In Machine Intelligence, volume 11, pages 83-124. OUP, 1988.
    • (1988) Machine Intelligence , vol.11 , pp. 83-124
    • Boyer, R.S.1    Moore, J.S.2
  • 17
    • 57349084829 scopus 로고    scopus 로고
    • Integrating static checking and interactive verification: Supporting multiple theories and provers in verification
    • P. Chalin, C. Hurlin, and J. Kiniry. Integrating static checking and interactive verification: Supporting multiple theories and provers in verification. In VSTTE. 2005.
    • (2005) VSTTE
    • Chalin, P.1    Hurlin, C.2    Kiniry, J.3
  • 18
    • 35248883421 scopus 로고    scopus 로고
    • Static analysis of accessed regions in recursive data structures
    • Proc. 10th SAS, of, Springer
    • S. Chong and R. Rugina. Static analysis of accessed regions in recursive data structures. In Proc. 10th SAS, volume 2694 of LNCS. Springer, 2003.
    • (2003) LNCS , vol.2694
    • Chong, S.1    Rugina, R.2
  • 19
    • 51049095343 scopus 로고    scopus 로고
    • Efficient E-matching for SMT solvers
    • L. de Moura and N. Bjørner. Efficient E-matching for SMT solvers. In CADE, 2007.
    • (2007) CADE
    • de Moura, L.1    Bjørner, N.2
  • 20
    • 34247324377 scopus 로고    scopus 로고
    • Modular verification of code with SAT
    • G. Dennis, F. Chang, and D. Jackson. Modular verification of code with SAT. In ISSTA, 2006.
    • (2006) ISSTA
    • Dennis, G.1    Chang, F.2    Jackson, D.3
  • 21
    • 0004207324 scopus 로고    scopus 로고
    • Extended static checking
    • Technical Report 159, COMPAQ Systems Research Center
    • D. L. Detlefs, K. R. M. Leino, G. Nelson, and J. B. Saxe. Extended static checking. Technical Report 159, COMPAQ Systems Research Center, 1998.
    • (1998)
    • Detlefs, D.L.1    Leino, K.R.M.2    Nelson, G.3    Saxe, J.B.4
  • 23
    • 0038382055 scopus 로고    scopus 로고
    • Verification of non-functional programs using interpretations in type theory
    • J.-C. Filliatre. Verification of non-functional programs using interpretations in type theory. Journal of Functional Programming, 13(4):709-745, 2003.
    • (2003) Journal of Functional Programming , vol.13 , Issue.4 , pp. 709-745
    • Filliatre, J.-C.1
  • 25
    • 33645583216 scopus 로고    scopus 로고
    • Avoiding exponential explosion: Generating compact verification conditions
    • C. Flanagan and J. B. Saxe. Avoiding exponential explosion: Generating compact verification conditions. In Proc. 28th ACM POPL, 2001.
    • (2001) Proc. 28th ACM POPL
    • Flanagan, C.1    Saxe, J.B.2
  • 26
    • 51049115443 scopus 로고    scopus 로고
    • Solving quantified verification conditions using satisfiability modulo theories
    • Y. Ge, C. Barrett, and C. Tinelli. Solving quantified verification conditions using satisfiability modulo theories. In CADE, 2007.
    • (2007) CADE
    • Ge, Y.1    Barrett, C.2    Tinelli, C.3
  • 28
    • 35448950882 scopus 로고    scopus 로고
    • Shape analysis with inductive recursion synthesis
    • B. Guo, N. Vachharajani, and D. I. August. Shape analysis with inductive recursion synthesis. In PLDI, 2007.
    • (2007) PLDI
    • Guo, B.1    Vachharajani, N.2    August, D.I.3
  • 29
    • 37549008791 scopus 로고    scopus 로고
    • D. Haneberg, G. Schellhorn, H. Grandy, and W. Reif. Verification of Mondex electronic purses with KIV: from transactions to a security protocol. Formal Asp. Comput., 20(1):41-59, 2008.
    • D. Haneberg, G. Schellhorn, H. Grandy, and W. Reif. Verification of Mondex electronic purses with KIV: from transactions to a security protocol. Formal Asp. Comput., 20(1):41-59, 2008.
  • 32
    • 19044391741 scopus 로고    scopus 로고
    • Pointer analysis in the presence of dynamic class loading
    • M. Hirzel, A. Diwan, and M. Hind. Pointer analysis in the presence of dynamic class loading. In ECOOP, 2004.
    • (2004) ECOOP
    • Hirzel, M.1    Diwan, A.2    Hind, M.3
  • 33
    • 57349123684 scopus 로고    scopus 로고
    • Java program verification in higher order logic with PVS and Isabelle. PhD thesis, University of Nijmegen
    • M. Huisman. Java program verification in higher order logic with PVS and Isabelle. PhD thesis, University of Nijmegen, 2001.
    • (2001)
    • Huisman, M.1
  • 34
    • 84896693266 scopus 로고    scopus 로고
    • A case study in class library verification: Java's vector class
    • M. Huisman, B. Jacobs, and J. van den Berg. A case study in class library verification: Java's vector class. STTT, 3(3):332-352, 2001.
    • (2001) STTT , vol.3 , Issue.3 , pp. 332-352
    • Huisman, M.1    Jacobs, B.2    van den Berg, J.3
  • 38
    • 4344568509 scopus 로고    scopus 로고
    • Test Era: Specification-based testing of Java programs using SAT
    • S. Khurshid and D. Marinov. Test Era: Specification-based testing of Java programs using SAT. Autom. Softw. Eng., 11(4):403-434, 2004.
    • (2004) Autom. Softw. Eng , vol.11 , Issue.4 , pp. 403-434
    • Khurshid, S.1    Marinov, D.2
  • 40
    • 33947317189 scopus 로고    scopus 로고
    • PhD thesis, EECS Department, Massachusetts Institute of Technology, February
    • V. Kuncak. Modular Data Structure Verification. PhD thesis, EECS Department, Massachusetts Institute of Technology, February 2007.
    • (2007) Modular Data Structure Verification
    • Kuncak, V.1
  • 43
    • 33847105085 scopus 로고    scopus 로고
    • An algorithm for deciding BAPA: Boolean Algebra with Presburger Arithmetic
    • V. Kuncak, H. H. Nguyen, and M. Rinard. An algorithm for deciding BAPA: Boolean Algebra with Presburger Arithmetic. In CADE-20, 2005.
    • (2005) CADE-20
    • Kuncak, V.1    Nguyen, H.H.2    Rinard, M.3
  • 44
    • 33845653235 scopus 로고    scopus 로고
    • Deciding Boolean Algebra with Presburger Arithmetic
    • V. Kuncak, H. H. Nguyen, and M. Rinard. Deciding Boolean Algebra with Presburger Arithmetic. J. of Automated Reasoning, 2006. http://dx.doi.org/10.1007/s10817-006-9042-1.
    • (2006) J. of Automated Reasoning
    • Kuncak, V.1    Nguyen, H.H.2    Rinard, M.3
  • 45
    • 57349176535 scopus 로고    scopus 로고
    • V. Kuncak and M. Rinard. Existential heap abstraction entailment is undecidable. In SAS, 2003.
    • V. Kuncak and M. Rinard. Existential heap abstraction entailment is undecidable. In SAS, 2003.
  • 46
    • 57349129704 scopus 로고    scopus 로고
    • Towards efficient satisfiability checking for Boolean Algebra with Presburger Arithmetic
    • V. Kuncak and M. Rinard. Towards efficient satisfiability checking for Boolean Algebra with Presburger Arithmetic. In CADE-21, 2007.
    • (2007) CADE-21
    • Kuncak, V.1    Rinard, M.2
  • 47
    • 84865662354 scopus 로고    scopus 로고
    • Back to the future: Revisiting precise program verification using smt solvers
    • S. Lahiri and S. Qadeer. Back to the future: revisiting precise program verification using smt solvers. In POPL, 2008.
    • (2008) POPL
    • Lahiri, S.1    Qadeer, S.2
  • 48
    • 33745833414 scopus 로고    scopus 로고
    • Verifying properties of well-founded linked lists
    • S. K. Lahiri and S. Qadeer. Verifying properties of well-founded linked lists. In POPL, 2006.
    • (2006) POPL
    • Lahiri, S.K.1    Qadeer, S.2
  • 50
    • 33745664392 scopus 로고    scopus 로고
    • Automatic verification of pointer programs using grammar-based shape analysis
    • O. Lee, H. Yang, and K. Yi. Automatic verification of pointer programs using grammar-based shape analysis. In ESOP, 2005.
    • (2005) ESOP
    • Lee, O.1    Yang, H.2    Yi, K.3
  • 54
    • 30344433723 scopus 로고    scopus 로고
    • Cooperating theorem provers: A case study combining HOL-Light and CVC Lite
    • Jan
    • S. McLaughlin, C. Barrett, and Y. Ge. Cooperating theorem provers: A case study combining HOL-Light and CVC Lite. In PDPAR, volume 144(2) of ENTCS, pages 43-51, Jan. 2006.
    • (2006) PDPAR, volume 144(2) of ENTCS , pp. 43-51
    • McLaughlin, S.1    Barrett, C.2    Ge, Y.3
  • 55
    • 26444435643 scopus 로고    scopus 로고
    • Data structure specifications via local equality axioms
    • S. McPeak and G. C. Necula. Data structure specifications via local equality axioms. In CAV, pages 476-490, 2005.
    • (2005) CAV , pp. 476-490
    • McPeak, S.1    Necula, G.C.2
  • 56
    • 35048877848 scopus 로고    scopus 로고
    • Proving pointer programs in higher-order logic
    • F. Mehta and T. Nipkow. Proving pointer programs in higher-order logic. In CADE-19, 2003.
    • (2003) CADE-19
    • Mehta, F.1    Nipkow, T.2
  • 60
    • 0004173988 scopus 로고
    • Techniques for program verification
    • Technical report, XEROX Palo Alto Research Center
    • G. Nelson. Techniques for program verification. Technical report, XEROX Palo Alto Research Center, 1981.
    • (1981)
    • Nelson, G.1
  • 61
    • 33745644805 scopus 로고
    • Verifying reachability invariants of linked structures
    • G. Nelson. Verifying reachability invariants of linked structures. In POPL, 1983.
    • (1983) POPL
    • Nelson, G.1
  • 62
    • 40549089429 scopus 로고    scopus 로고
    • Automated verification of shape, size and bag properties via separation logic
    • H. H. Nguyen, C. David, S. Qin, and W.-N. Chin. Automated verification of shape, size and bag properties via separation logic. In VMCAI, 2007.
    • (2007) VMCAI
    • Nguyen, H.H.1    David, C.2    Qin, S.3    Chin, W.-N.4
  • 63
    • 0348126394 scopus 로고    scopus 로고
    • Isabelle/HOL: A Proof Assistant for Higher-Order Logic
    • of, Springer-Verlag
    • T. Nipkow, L. C. Paulson, and M. Wenzel. Isabelle/HOL: A Proof Assistant for Higher-Order Logic, volume 2283 of LNCS. Springer-Verlag, 2002.
    • (2002) LNCS , vol.2283
    • Nipkow, T.1    Paulson, L.C.2    Wenzel, M.3
  • 64
    • 57349190323 scopus 로고    scopus 로고
    • T. Nipkow and C. Pusch. AVL trees. The Archive of Formal Proofs, http://afp.sourceforge.net/, March 2004.
    • T. Nipkow and C. Pusch. AVL trees. The Archive of Formal Proofs, http://afp.sourceforge.net/, March 2004.
  • 65
    • 84944677742 scopus 로고
    • PVS: A prototype verification system
    • D. Kapur, editor, 11th CADE, of, jun
    • S. Owre, J. M. Rushby, and N. Shankar. PVS: A prototype verification system. In D. Kapur, editor, 11th CADE, volume 607 of LNAI, pages 748-752, jun 1992.
    • (1992) LNAI , vol.607 , pp. 748-752
    • Owre, S.1    Rushby, J.M.2    Shankar, N.3
  • 67
    • 57349173129 scopus 로고    scopus 로고
    • S. Ranise and C. Tinelli. The SMT-LIB Standard: Version 1.2. Technical report, Department of Computer Science, The University of Iowa, 2006. Available at
    • S. Ranise and C. Tinelli. The SMT-LIB Standard: Version 1.2. Technical report, Department of Computer Science, The University of Iowa, 2006. Available at www. SMT-LIB. org.
  • 68
    • 36348979210 scopus 로고    scopus 로고
    • Master's thesis, Universität des Saarlandes, Germany, June
    • J. Reineke. Shape analysis of sets. Master's thesis, Universität des Saarlandes, Germany, June 2005.
    • (2005) Shape analysis of sets
    • Reineke, J.1
  • 69
    • 0031274872 scopus 로고    scopus 로고
    • Commutativity analysis: A new analysis technique for parallelizing compilers
    • Nov
    • M. Rinard and P. Diniz. Commutativity analysis: A new analysis technique for parallelizing compilers. TOPLAS, 19(6), Nov. 1997.
    • (1997) TOPLAS , vol.19 , Issue.6
    • Rinard, M.1    Diniz, P.2
  • 70
    • 33748990626 scopus 로고    scopus 로고
    • Checking JML specifications using an extensible software model checking framework
    • Robby, E. Rodriguez, M. B. Dwyer, and J. Hatcliff. Checking JML specifications using an extensible software model checking framework. STTT, 8(3), 2006.
    • (2006) STTT , vol.8 , Issue.3
    • Robby1    Rodriguez, E.2    Dwyer, M.B.3    Hatcliff, J.4
  • 71
    • 18944375288 scopus 로고    scopus 로고
    • Deduktiver Softwareentwurf am Beispiel des Java Collections Frameworks. Diplomarbeit, Fakultät für Informatik, Universität Karlsruhe
    • June
    • A. Roth. Deduktiver Softwareentwurf am Beispiel des Java Collections Frameworks. Diplomarbeit, Fakultät für Informatik, Universität Karlsruhe, June 2002.
    • (2002)
    • Roth, A.1
  • 72
    • 0346271722 scopus 로고    scopus 로고
    • Pointer analysis for structured parallel programs
    • R. Rugina and M. C. Rinard. Pointer analysis for structured parallel programs. ACM Trans. Program. Lang. Syst., 25(1), 2003.
    • (2003) ACM Trans. Program. Lang. Syst , vol.25 , Issue.1
    • Rugina, R.1    Rinard, M.C.2
  • 73
    • 27844444121 scopus 로고    scopus 로고
    • Symbolic bounds analysis of pointers, array indices, and accessed memory regions
    • R. Rugina and M. C. Rinard. Symbolic bounds analysis of pointers, array indices, and accessed memory regions. ACM Trans. Program. Lang. Syst., 27(2), 2005.
    • (2005) ACM Trans. Program. Lang. Syst , vol.27 , Issue.2
    • Rugina, R.1    Rinard, M.C.2
  • 74
    • 0039488517 scopus 로고    scopus 로고
    • Parametric shape analysis via 3-valued logic
    • M. Sagiv, T. Reps, and R. Wilhelm. Parametric shape analysis via 3-valued logic. ACM TOPLAS, 24(3):217-298, 2002.
    • (2002) ACM TOPLAS , vol.24 , Issue.3 , pp. 217-298
    • Sagiv, M.1    Reps, T.2    Wilhelm, R.3
  • 75
    • 0034824488 scopus 로고    scopus 로고
    • Pointer and escape analysis for multithreaded programs
    • A. Salcianu and M. Rinard. Pointer and escape analysis for multithreaded programs. In PPoPP, 2001.
    • (2001) PPoPP
    • Salcianu, A.1    Rinard, M.2
  • 77
    • 32344447459 scopus 로고    scopus 로고
    • Cute: A concolic unit testing engine for c
    • K. Sen, D. Marinov, and G. Agha. Cute: a concolic unit testing engine for c. In ESEC/SIGSOET FSE, pages 263-272, 2005.
    • (2005) ESEC/SIGSOET FSE , pp. 263-272
    • Sen, K.1    Marinov, D.2    Agha, G.3
  • 78
    • 34548769966 scopus 로고    scopus 로고
    • J-Sim: An integrated environment for simulation and model checking of network protocols
    • A. Sobeih, V. Mahesh, D. Marinov, and J. Hou. J-Sim: An integrated environment for simulation and model checking of network protocols. In IPDPS, 2007.
    • (2007) IPDPS
    • Sobeih, A.1    Mahesh, V.2    Marinov, D.3    Hou, J.4
  • 80
    • 0032186666 scopus 로고    scopus 로고
    • The TPTP problem library: CNF release vl.2.1
    • G. Sutcliffe and C. B. Suttner. The TPTP problem library: CNF release vl.2.1. Journal of Automated Reasoning, 21(2): 177-203, 1998.
    • (1998) Journal of Automated Reasoning , vol.21 , Issue.2 , pp. 177-203
    • Sutcliffe, G.1    Suttner, C.B.2
  • 81
    • 37149026256 scopus 로고    scopus 로고
    • Verifying the Mondex case study: The Ke Y approach
    • Technical Report 2007-4, Uni. Karlsruhe, July
    • I. Tonin. Verifying the Mondex case study: The Ke Y approach. Technical Report 2007-4, Uni. Karlsruhe, July 2007.
    • (2007)
    • Tonin, I.1
  • 82
    • 57349185147 scopus 로고    scopus 로고
    • The LOOP compiler for Java and UML
    • Technical Report CSI-R0019, Computing Science Institute, Univ. of Nijmegen, Dec
    • J. van der Berg and B. Jacobs. The LOOP compiler for Java and UML. Technical Report CSI-R0019, Computing Science Institute, Univ. of Nijmegen, Dec. 2000.
    • (2000)
    • van der Berg, J.1    Jacobs, B.2
  • 83
    • 57349117204 scopus 로고    scopus 로고
    • Incrementalized pointer and escape analysis
    • June
    • F. Vivien and M. Rinard. Incrementalized pointer and escape analysis. In Proc. ACM PLDI, June 2001.
    • (2001) Proc. ACM PLDI
    • Vivien, F.1    Rinard, M.2
  • 84
    • 15544363314 scopus 로고    scopus 로고
    • Combining superposition, sorts and splitting
    • A. Robinson and A. Voronkov, editors, chapter 27, Elsevier Science
    • C. Weidenbach. Combining superposition, sorts and splitting. In A. Robinson and A. Voronkov, editors, Handbook of Automated Reasoning, volume II, chapter 27, pages 1965-2013. Elsevier Science, 2001.
    • (2001) Handbook of Automated Reasoning , vol.2 , pp. 1965-2013
    • Weidenbach, C.1
  • 86
    • 0033203864 scopus 로고    scopus 로고
    • Compositional pointer and escape analysis for Java programs
    • Denver, Nov
    • J. Whaley and M. Rinard. Compositional pointer and escape analysis for Java programs. In OOPSLA, Denver, Nov. 1999.
    • (1999) OOPSLA
    • Whaley, J.1    Rinard, M.2
  • 89
    • 33646166707 scopus 로고    scopus 로고
    • Safe programming with pointers through stateful views
    • D. Zhu and H. Xi. Safe programming with pointers through stateful views. In PADL, 2005.
    • (2005) In PADL
    • Zhu, D.1    Xi, H.2


* 이 정보는 Elsevier사의 SCOPUS DB에서 KISTI가 분석하여 추출한 것입니다.