Academic literature on the topic 'Heap-manipulating programs'

Create a spot-on reference in APA, MLA, Chicago, Harvard, and other styles

Select a source type:

Consult the lists of relevant articles, books, theses, conference reports, and other scholarly sources on the topic 'Heap-manipulating programs.'

Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.

You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.

Journal articles on the topic "Heap-manipulating programs"

1

Kostyukov, Yu O., K. A. Batoev, D. A. Mordvinov, M. P. Kostitsyn, and A. V. Misonizhnik. "Automatic verification of heap-manipulating programs." Proceedings of the Institute for System Programming of the RAS 31, no. 5 (2019): 37–62. http://dx.doi.org/10.15514/ispras-2019-31(5)-3.

Full text
APA, Harvard, Vancouver, ISO, and other styles
2

Watanabe, Yasunari, Kiran Gopinathan, George Pîrlea, Nadia Polikarpova, and Ilya Sergey. "Certifying the synthesis of heap-manipulating programs." Proceedings of the ACM on Programming Languages 5, ICFP (August 22, 2021): 1–29. http://dx.doi.org/10.1145/3473589.

Full text
Abstract:
Automated deductive program synthesis promises to generate executable programs from concise specifications, along with proofs of correctness that can be independently verified using third-party tools. However, an attempt to exercise this promise using existing proof-certification frameworks reveals significant discrepancies in how proof derivations are structured for two different purposes: program synthesis and program verification. These discrepancies make it difficult to use certified verifiers to validate synthesis results, forcing one to write an ad-hoc translation procedure from synthesis proofs to correctness proofs for each verification backend. In this work, we address this challenge in the context of the synthesis and verification of heap-manipulating programs. We present a technique for principled translation of deductive synthesis derivations (a.k.a. source proofs) into deductive target proofs about the synthesised programs in the logics of interactive program verifiers. We showcase our technique by implementing three different certifiers for programs generated via SuSLik, a Separation Logic-based tool for automated synthesis of programs with pointers, in foundational verification frameworks embedded in Coq: Hoare Type Theory (HTT), Iris, and Verified Software Toolchain (VST), producing concise and efficient machine-checkable proofs for characteristic synthesis benchmarks.
APA, Harvard, Vancouver, ISO, and other styles
3

Polikarpova, Nadia, and Ilya Sergey. "Structuring the synthesis of heap-manipulating programs." Proceedings of the ACM on Programming Languages 3, POPL (January 2, 2019): 1–30. http://dx.doi.org/10.1145/3290385.

Full text
APA, Harvard, Vancouver, ISO, and other styles
4

Magill, Stephen, Ming-Hsien Tsai, Peter Lee, and Yih-Kuen Tsay. "Automatic numeric abstractions for heap-manipulating programs." ACM SIGPLAN Notices 45, no. 1 (January 2, 2010): 211–22. http://dx.doi.org/10.1145/1707801.1706326.

Full text
APA, Harvard, Vancouver, ISO, and other styles
5

Nanevski, Aleksandar, Viktor Vafeiadis, and Josh Berdine. "Structuring the verification of heap-manipulating programs." ACM SIGPLAN Notices 45, no. 1 (January 2, 2010): 261–74. http://dx.doi.org/10.1145/1707801.1706331.

Full text
APA, Harvard, Vancouver, ISO, and other styles
6

Winterstein, Felix, Kermin E. Fleming, Hsin-Jung Yang, and George A. Constantinides. "Custom Multicache Architectures for Heap Manipulating Programs." IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 36, no. 5 (May 2017): 761–74. http://dx.doi.org/10.1109/tcad.2016.2608861.

Full text
APA, Harvard, Vancouver, ISO, and other styles
7

ALBERT, ELVIRA, MARÍA GARCÍA DE LA BANDA, MIGUEL GÓMEZ-ZAMALLOA, JOSÉ MIGUEL ROJAS, and PETER STUCKEY. "A CLP heap solver for test case generation." Theory and Practice of Logic Programming 13, no. 4-5 (July 2013): 721–35. http://dx.doi.org/10.1017/s1471068413000458.

Full text
Abstract:
AbstractOne of the main challenges to software testing today is to efficiently handle heap-manipulating programs. These programs often build complex, dynamically allocated data structures during execution and, to ensure reliability, the testing process needs to consider all possible shapes these data structures can take. This creates scalability issues since high (often exponential) numbers of shapes may be built due to the aliasing of references. This paper presents a novel CLP heap solver for the test case generation of heap-manipulating programs that is more scalable than previous proposals, thanks to the treatment of reference aliasing by means of disjunction, and to the use of advanced back-propagation of heap related constraints. In addition, the heap solver supports the use of heap assumptions to avoid aliasing of data that, though legal, should not be provided as input.
APA, Harvard, Vancouver, ISO, and other styles
8

Qin, Shengchao, Guanhua He, Chenguang Luo, Wei-Ngan Chin, and Hongli Yang. "Automatically refining partial specifications for heap-manipulating programs." Science of Computer Programming 82 (March 2014): 56–76. http://dx.doi.org/10.1016/j.scico.2013.03.004.

Full text
APA, Harvard, Vancouver, ISO, and other styles
9

Yahav, Eran, and Mooly Sagiv. "Verifying safety properties of concurrent heap-manipulating programs." ACM Transactions on Programming Languages and Systems 32, no. 5 (May 2010): 1–50. http://dx.doi.org/10.1145/1745312.1745315.

Full text
APA, Harvard, Vancouver, ISO, and other styles
10

Yorsh, Greta, Alexey Skidanov, Thomas Reps, and Mooly Sagiv. "Automatic Assume/Guarantee Reasoning for Heap-Manipulating Programs." Electronic Notes in Theoretical Computer Science 131 (May 2005): 125–38. http://dx.doi.org/10.1016/j.entcs.2005.01.028.

Full text
APA, Harvard, Vancouver, ISO, and other styles

Dissertations / Theses on the topic "Heap-manipulating programs"

1

Gotsman, Olexiy. "Logics and analyses for concurrent heap-manipulating programs." Thesis, University of Cambridge, 2009. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.611774.

Full text
APA, Harvard, Vancouver, ISO, and other styles
2

Drăgoi, Cezara. "Automated verification of heap-manipulating programs with infinite data." Paris 7, 2011. http://www.theses.fr/2011PA077189.

Full text
Abstract:
Le développement de techniques rigoureuses et automatiques pour la vérification des systèmes logiciels est une tâche importante. Cette thèse porte sur la vérification des propriétés de sûreté pour des programmes avec mémoire dynamique et données infinies. Elle développe un cadre basé sur la logique où les spécifications des programmes sont données par des formules. Premièrement, nous considérons l'automatisation du raisonnement pré/post-condition. Nous définissons une logique, appelée CSL, pour la spécification des structures chaînées ou des tableaux, ainsi que des compositions de ces structures. Les formules CSL décrivent des relations d'accessibilité entre les cellules de mémoire, la taille du tas et les données scalaires. Nous prouvons que le problème de la satisfiabilité pour CSL est décidable et que CSL est fermée par le calcul de la post-condition. Ensuite, nous considérons la synthèse automatique d'assertions pour des programmes avec des listes simplement chaînées. Un cadre basé sur l'interprétation abstraite est défini qui combine une abstraction finie sur la forme du tas avec une abstraction sur des séquences de données. Les abstractions sur les séquences permettent de raisonner sur leurs tailles, les multi-ensembles de leurs éléments, ou les relations entre leurs données à des différentes positions. Nous définissons une analyse inter-procédurale qui calcule l'effet de chaque procédure de façon locale sur la partie du tas accessible à partir de ses paramètres. Ces techniques sont implantées dans un outil qui montre que notre approche est assez puissante pour la génération automatique de résumés de procédure non-triviales et le raisonnement pré/post-condition
In this thesis, we focus on the verification of safety properties for sequential programs manipulating dynamic data structures carrying unbounded data. We develop a logic-based framework where program specifications are given by formulas. First, we address the issue of automatizing pre/post-condition reasoning. We define a logic, called CSL, for the specification of linked structures or arrays, as well as compositions of these structures. The formulas in CSL can describe reachability relations between cells in the heap following some pointer fields, the size of the heap, and the scalar data, We prove that the satisfiability problem of CSL is decidable and that CSL is closed under the computation of the strongest post-condition. Second, we address the issue of automatic synthesis of assertions for programs with singly-linked lists. We define an abstract interpretation based framework which combines a specific finite-range abstraction on the shape of the heap with an abstract domain on sequences of data. Different abstractions on sequences are considered allowing to reason about their sizes, the multisets of their elements, or relations on their data at different positions. We define an interprocedural analysis that computes the effect of each procedure in a local manner, by considering only the part of the heap reachable from its actual parameters. We have implemented our techniques in a tool which shows that our approach is powerful enough for automatic generation of non-trivial procedure summaries and pre/post-condition reasoning
APA, Harvard, Vancouver, ISO, and other styles
3

Magill, Stephen. "Instrumentation Analysis: An Automated Method for Producing Numeric Abstractions of Heap-Manipulating Programs." Research Showcase @ CMU, 2010. http://repository.cmu.edu/dissertations/73.

Full text
Abstract:
A number of questions regarding programs involving heap-based data structures can be phrased as questions about numeric properties of those structures. A data structure traversal might terminate if the length of some path is eventually zero or a function to remove n elements from a collection may only be safe if the collection has size at least n. In this thesis, we develop proof methods for reasoning about the connection between heap-manipulating programs and numeric programs. In addition, we develop an automatic method for producing numeric abstractions of heap-manipulating programs. These numeric abstractions are expressed as simple imperative programs over integer variables and have the feature that if a property holds of the numeric program, then it also holds of the original, heap-manipulating program. This is true for both safety and liveness. The abstraction procedure makes use of a shape analysis based on separation logic and has support for user-defined inductive data structures. We also discuss a number of applications of this technique. Numeric abstractions, once obtained, can be analyzed with a variety of existing verification tools. Termination provers can be used to reason about termination of the numeric abstraction, and thus termination of the original program. Safety checkers can be used to reason about assertion safety. And bound inference tools can be used to obtain bounds on the values of program variables. With small changes to the program source, bounds analysis also allows the computation of symbolic bounds on memory use and computational complexity.
APA, Harvard, Vancouver, ISO, and other styles
4

(5930306), Chenguang Sun. "Demand-Driven Static Analysis of Heap-Manipulating Programs." Thesis, 2019.

Find full text
Abstract:
Modern Java application frameworks present significant challenges for existing static analysis algorithms. Such challenges include large-scale code bases, heap-carried dependency, and asynchronous control flow caused by message passing.
Existing analysis algorithms are not suitable to deal with these challenges. One reason is that analyses are typically designed to operate homogeneously on the whole program. This leads to scalability problems when the analysis algorithms are used on applications built as plug-ins of large frameworks, since the framework code is analyzed together with the application code. Moreover, the asynchronous message passing of the actor model adopted by most modern frameworks leads to control flows which are not modeled by existing analyses.
This thesis presents several techniques for more powerful debugging and program understanding tools based on slicing. In general, slicing-based techniques aim to discover interesting properties of a large program by only reasoning about the relevant part of the program (typically a small amount of code) precisely, abstracting away the behavior of the rest of the program.
The key contribution of this thesis is a demand-driven framework to enable precise and scalable analyses on programs built on large frameworks. A slicing algorithm, which can handle heap-carried dependence, is used to identify the program elements relevant to an analysis query. We instantiated the framework to infer correlations between registration call sites and callback methods, and resolve asynchronous control flows caused by asynchronous message passing.
APA, Harvard, Vancouver, ISO, and other styles
5

Rakamarić, Zvonimir. "A logic and decision procedure for verification of heap-manipulating programs." Thesis, 2006. http://hdl.handle.net/2429/18130.

Full text
Abstract:
Heap-manipulating programs (HMPs), which manipulate unbounded linked data structures via pointers, are a major frontier for formal verification of software. Formal verification is the process of proving (or disproving) the correctness of a system with respect to some kind of formal specification or property. The primary contributions of this thesis are the definition of a simple transitive closure logic tailored for formal verification of HMPs, and an efficient decision procedure for this logic. To assess the effectiveness of the proposed approach, we develop an HMP verification framework, which uses our fast implementation of the decision procedure to verify a number of HMP examples. Experimental examples (including three small container functions from the Linux kernel) demonstrate that the logic is practically useful and expressive enough to prove many interesting heap properties. In addition, the decision procedure provides a substantial time and space advantage over previous approaches.
Science, Faculty of
Computer Science, Department of
Graduate
APA, Harvard, Vancouver, ISO, and other styles

Book chapters on the topic "Heap-manipulating programs"

1

Pham, Long H., Quang Loc Le, Quoc-Sang Phan, and Jun Sun. "Concolic Testing Heap-Manipulating Programs." In Lecture Notes in Computer Science, 442–61. Cham: Springer International Publishing, 2019. http://dx.doi.org/10.1007/978-3-030-30942-8_27.

Full text
APA, Harvard, Vancouver, ISO, and other styles
2

Albert, Elvira, Richard Bubel, Samir Genaim, Reiner Hähnle, and Guillermo Román-Díez. "Verified Resource Guarantees for Heap Manipulating Programs." In Fundamental Approaches to Software Engineering, 130–45. Berlin, Heidelberg: Springer Berlin Heidelberg, 2012. http://dx.doi.org/10.1007/978-3-642-28872-2_10.

Full text
APA, Harvard, Vancouver, ISO, and other styles
3

Roy, Subhajit. "From Concrete Examples to Heap Manipulating Programs." In Static Analysis, 126–49. Berlin, Heidelberg: Springer Berlin Heidelberg, 2013. http://dx.doi.org/10.1007/978-3-642-38856-9_9.

Full text
APA, Harvard, Vancouver, ISO, and other styles
4

Itzhaky, Shachar, Hila Peleg, Nadia Polikarpova, Reuben N. S. Rowe, and Ilya Sergey. "Deductive Synthesis of Programs with Pointers: Techniques, Challenges, Opportunities." In Computer Aided Verification, 110–34. Cham: Springer International Publishing, 2021. http://dx.doi.org/10.1007/978-3-030-81685-8_5.

Full text
Abstract:
Abstract This paper presents the main ideas behind deductive synthesis of heap-manipulating program and outlines present challenges faced by this approach as well as future opportunities for its applications.
APA, Harvard, Vancouver, ISO, and other styles
5

Brain, Martin, Cristina David, Daniel Kroening, and Peter Schrammel. "Model and Proof Generation for Heap-Manipulating Programs." In Programming Languages and Systems, 432–52. Berlin, Heidelberg: Springer Berlin Heidelberg, 2014. http://dx.doi.org/10.1007/978-3-642-54833-8_23.

Full text
APA, Harvard, Vancouver, ISO, and other styles
6

Qin, Shengchao, Chenguang Luo, Guanhua He, Florin Craciun, and Wei-Ngan Chin. "Verifying Heap-Manipulating Programs with Unknown Procedure Calls." In Formal Methods and Software Engineering, 171–87. Berlin, Heidelberg: Springer Berlin Heidelberg, 2010. http://dx.doi.org/10.1007/978-3-642-16901-4_13.

Full text
APA, Harvard, Vancouver, ISO, and other styles
7

Costea, Andreea, Amy Zhu, Nadia Polikarpova, and Ilya Sergey. "Concise Read-Only Specifications for Better Synthesis of Programs with Pointers." In Programming Languages and Systems, 141–68. Cham: Springer International Publishing, 2020. http://dx.doi.org/10.1007/978-3-030-44914-8_6.

Full text
Abstract:
AbstractIn program synthesis there is a well-known trade-off between concise and strong specifications: if a specification is too verbose, it might be harder to write than the program; if it is too weak, the synthesised program might not match the user’s intent. In this work we explore the use of annotations for restricting memory access permissions in program synthesis, and show that they can make specifications much stronger while remaining surprisingly concise. Specifically, we enhance Synthetic Separation Logic (SSL), a framework for synthesis of heap-manipulating programs, with the logical mechanism of read-only borrows.We observe that this minimalistic and conservative SSL extension benefits the synthesis in several ways, making it more (a) expressive (stronger correctness guarantees are achieved with a modest annotation overhead), (b) effective (it produces more concise and easier-to-read programs), (c) efficient (faster synthesis), and (d) robust (synthesis efficiency is less affected by the choice of the search heuristic). We explain the intuition and provide formal treatment for read-only borrows. We substantiate the claims (a)–(d) by describing our quantitative evaluation of the borrowing-aware synthesis implementation on a series of standard benchmark specifications for various heap-manipulating programs.
APA, Harvard, Vancouver, ISO, and other styles
8

Gherghina, Cristian, Cristina David, Shengchao Qin, and Wei-Ngan Chin. "Structured Specifications for Better Verification of Heap-Manipulating Programs." In Lecture Notes in Computer Science, 386–401. Berlin, Heidelberg: Springer Berlin Heidelberg, 2011. http://dx.doi.org/10.1007/978-3-642-21437-0_29.

Full text
APA, Harvard, Vancouver, ISO, and other styles
9

Yang, Hongseok. "Automatic Verification of Heap-Manipulating Programs Using Separation Logic." In Computer Science - Theory and Applications, 25. Berlin, Heidelberg: Springer Berlin Heidelberg, 2009. http://dx.doi.org/10.1007/978-3-642-03351-3_4.

Full text
APA, Harvard, Vancouver, ISO, and other styles
10

Nguyen, Thanh-Toan, Quang-Trung Ta, Ilya Sergey, and Wei-Ngan Chin. "Automated Repair of Heap-Manipulating Programs Using Deductive Synthesis." In Lecture Notes in Computer Science, 376–400. Cham: Springer International Publishing, 2021. http://dx.doi.org/10.1007/978-3-030-67067-2_17.

Full text
APA, Harvard, Vancouver, ISO, and other styles

Conference papers on the topic "Heap-manipulating programs"

1

Magill, Stephen, Ming-Hsien Tsai, Peter Lee, and Yih-Kuen Tsay. "Automatic numeric abstractions for heap-manipulating programs." In the 37th annual ACM SIGPLAN-SIGACT symposium. New York, New York, USA: ACM Press, 2010. http://dx.doi.org/10.1145/1706299.1706326.

Full text
APA, Harvard, Vancouver, ISO, and other styles
2

Nanevski, Aleksandar, Viktor Vafeiadis, and Josh Berdine. "Structuring the verification of heap-manipulating programs." In the 37th annual ACM SIGPLAN-SIGACT symposium. New York, New York, USA: ACM Press, 2010. http://dx.doi.org/10.1145/1706299.1706331.

Full text
APA, Harvard, Vancouver, ISO, and other styles
3

Malik, Viktor, Martin Hruska, Peter Schrammel, and Tomas Vojnar. "Template-Based Verification of Heap-Manipulating Programs." In 2018 Formal Methods in Computer Aided Design (FMCAD). IEEE, 2018. http://dx.doi.org/10.23919/fmcad.2018.8603009.

Full text
APA, Harvard, Vancouver, ISO, and other styles
4

Dong, Longming, Ji Wang, and Liqian Chen. "Modular Heap Abstraction-Based Memory Leak Detection for Heap-Manipulating Programs." In 2012 19th Asia-Pacific Software Engineering Conference (APSEC). IEEE, 2012. http://dx.doi.org/10.1109/apsec.2012.35.

Full text
APA, Harvard, Vancouver, ISO, and other styles
5

Dong, Longming, Ji Wang, and Liqian Chen. "Modular Heap Abstraction-Based Code Clone Detection for Heap-Manipulating Programs." In 2012 12th International Conference on Quality Software (QSIC 2012). IEEE, 2012. http://dx.doi.org/10.1109/qsic.2012.37.

Full text
APA, Harvard, Vancouver, ISO, and other styles
6

Jančík, Pavel, and Jan Kofroň. "Dead variable analysis for multi-threaded heap manipulating programs." In SAC 2016: Symposium on Applied Computing. New York, NY, USA: ACM, 2016. http://dx.doi.org/10.1145/2851613.2851826.

Full text
APA, Harvard, Vancouver, ISO, and other styles
7

Dillig, Isil, Thomas Dillig, Alex Aiken, and Mooly Sagiv. "Precise and compact modular procedure summaries for heap manipulating programs." In the 32nd ACM SIGPLAN conference. New York, New York, USA: ACM Press, 2011. http://dx.doi.org/10.1145/1993498.1993565.

Full text
APA, Harvard, Vancouver, ISO, and other styles
We offer discounts on all premium plans for authors whose works are included in thematic literature selections. Contact us to get a unique promo code!

To the bibliography