You searched for subject:(Program repair)
.
Showing records 1 – 30 of
42 total matches.
◁ [1] [2] ▶

University of Texas – Austin
1.
Malik, Muhammad Zubair.
Combining data structure repair and program repair.
Degree: PhD, Electrical and Computer Engineering, 2014, University of Texas – Austin
URL: http://hdl.handle.net/2152/26034
► Bugs in code continue to pose a fundamental problem for software reliability and cause expensive failures. The process of removing known bugs is termed debugging,…
(more)
▼ Bugs in code continue to pose a fundamental problem for software reliability and cause expensive failures. The process of removing known bugs is termed debugging, which is a classic methodology commonly performed before code is deployed. Traditionally, debugging is tedious, often requiring much manual effort. A more recent technique that complements debugging is data structure
repair, which handles bugs that make it to deployed systems and lead to erroneous behavior at runtime by modifying erroneous
program states to recover from errors. While data structure
repair presents a promising basis for dealing with bugs at runtime, it remains computationally expensive. Our thesis is that debugging and data structure
repair can be integrated to provide the basis of an effective approach for removing bugs before code is deployed and handling them after it is deployed. We present a bi-directional integration where ideas at the basis of data structure
repair assist in automating debugging and vice versa. Our key insight is two-fold: (1)a
repair action performed to mutate an erroneous object field value to
repair it can be abstracted into a
program statement that performs that update correctly; and (2)
repair actions that are performed repeatedly to fix the same error can be memoized and re-used. We design, develop, and evaluate two techniques that embody our insight. One, we present an automated debugging technique that leverages a systematic constraint-based data structure
repair technique developed in previous work and provides suggestions on how to fix a faulty
program. Two, we present
repair abstractions that are based on the same central ideas as in our automated debugging technique and memoize how an erroneous state was repaired, which enables prioritizing and re-using
repair actions when the same error occurs again. The focus of our work is programs that operate on structurally complex data, e.g., heap-allocated data structures that have complex structural integrity constraints, such as acyclicity. Checking such constraints plays a central role in the techniques that lay at the foundation of our work. These techniques require the user to provide the constraints, which poses a burden on the user. To facilitate the use of constraint-based techniques, we present a third technique to check constraint violations at runtime using graph spectra, which have been studied extensively by mathematicians to capture properties of graphs. We view the heap of an object-oriented
program as an edge-labeled graph, which allows us to apply results from graph spectra theory. Experimental results show the effectiveness of using graph spectra as a basis of capturing structural properties of a class of commonly used data structures.
Advisors/Committee Members: Khurshid, Sarfraz (advisor).
Subjects/Keywords: Program repair; Data Structure repair; Graph spectra
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Malik, M. Z. (2014). Combining data structure repair and program repair. (Doctoral Dissertation). University of Texas – Austin. Retrieved from http://hdl.handle.net/2152/26034
Chicago Manual of Style (16th Edition):
Malik, Muhammad Zubair. “Combining data structure repair and program repair.” 2014. Doctoral Dissertation, University of Texas – Austin. Accessed January 22, 2021.
http://hdl.handle.net/2152/26034.
MLA Handbook (7th Edition):
Malik, Muhammad Zubair. “Combining data structure repair and program repair.” 2014. Web. 22 Jan 2021.
Vancouver:
Malik MZ. Combining data structure repair and program repair. [Internet] [Doctoral dissertation]. University of Texas – Austin; 2014. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/2152/26034.
Council of Science Editors:
Malik MZ. Combining data structure repair and program repair. [Doctoral Dissertation]. University of Texas – Austin; 2014. Available from: http://hdl.handle.net/2152/26034

University of Waterloo
2.
Zhikhartsev, Alexey.
Filtering overfitted automatically-generated patches by using automated test generation.
Degree: 2018, University of Waterloo
URL: http://hdl.handle.net/10012/12874
► "Generate-and-Validate'' (G&V) approaches to automatic program repair first generate candidate patches and then validate the patches against a test suite. Current G&V tools accept the…
(more)
▼ "Generate-and-Validate'' (G&V) approaches to automatic program repair first generate candidate patches and then validate the patches against a test suite. Current G&V tools accept the first patch that passes all the test cases and are at risk of making a mistake: they can choose an ultimately buggy patch while leaving a correct patch unfound. These mistakes are often due to developer test suites being insufficient to correctly validate a patch.
In our approach, we aim to improve existing test suites with automatic test generation. To circumvent the oracle problem, we compare the behavior of the buggy program with the behavior of the newly patched program, and if the patched program fails more, then the patch is considered to be overfitted and it is filtered. We evaluate our approach on 441 patches (both overfitted and correct) from three automatic repair systems and show that 67% (279/417) of overfitted patches are filtered. In addition, by further exploring the search space of patches for one of the defects, our approach filters overfitted patches until the correct patch is found and accepted.
We also conduct a post-mortem relevance analysis of automatically-generated test cases to evaluate (1) how many of the test cases should aid the developer in manual debugging, (2) how many of the test cases should filter out more overfitted patches if better oracles are used, and (3) how many of the test cases are relevant to filtering overfitted patches (i.e., how many of them execute lines of code patched by SPR – one of the automatic repair systems in our study). The analysis shows that up to 40% of the automatically-generated test cases per bug can help developers conduct manual debugging and can filter out more overfitted patches if automatic repair systems are empowered with better oracles.
Subjects/Keywords: Software engineering; Automated program repair; Software testing
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Zhikhartsev, A. (2018). Filtering overfitted automatically-generated patches by using automated test generation. (Thesis). University of Waterloo. Retrieved from http://hdl.handle.net/10012/12874
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Chicago Manual of Style (16th Edition):
Zhikhartsev, Alexey. “Filtering overfitted automatically-generated patches by using automated test generation.” 2018. Thesis, University of Waterloo. Accessed January 22, 2021.
http://hdl.handle.net/10012/12874.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
MLA Handbook (7th Edition):
Zhikhartsev, Alexey. “Filtering overfitted automatically-generated patches by using automated test generation.” 2018. Web. 22 Jan 2021.
Vancouver:
Zhikhartsev A. Filtering overfitted automatically-generated patches by using automated test generation. [Internet] [Thesis]. University of Waterloo; 2018. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/10012/12874.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Council of Science Editors:
Zhikhartsev A. Filtering overfitted automatically-generated patches by using automated test generation. [Thesis]. University of Waterloo; 2018. Available from: http://hdl.handle.net/10012/12874
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation

Indian Institute of Science
3.
Kaleeswaran, Shalini.
Program Repair by Automated Generation of Hints.
Degree: PhD, Engineering, 2018, Indian Institute of Science
URL: http://etd.iisc.ac.in/handle/2005/4048
► Programming has become an important skill in today's technology-driven world. It is a complex activity because of which programmers make mistakes in their software. Student…
(more)
▼ Programming has become an important skill in today's technology-driven world. It is a complex activity because of which programmers make mistakes in their software. Student programmers make mistakes in their programs due to lack of programming experience and also due to lack of understanding of the algorithmic concepts being used. An experienced programmer in the industry, on the other hand, makes mistakes in the software he develops because of the mere complexity of an industry-grade software. Debugging one's programs, i.e.finding and fixing faults is one of the challenging activities for a programmer. This necessitates the need to develop automated techniques that are effective in assisting programmers
repair faults in their programs.
In this thesis, we present new computer-assisted approaches to help programmers
repair their programs. Finding
repair for a fault in the
program is essentially a search over the space of all possible repairs. Traditional
repair techniques attempt to output a complete repaired
program that eliminates the fault in the original
program. This ambitious goal of finding a complete
repair is often unachievable because the search space becomes too large to navigate efficiently. The key insight of our work is that programmers only need guidelines that help them understand the faults they made and suggestions on how to x them, as opposed to a complete
repair. Therefore, this thesis proposes a novel perspective of solving the
program repair problem, where we generate textual hints that direct the programmer on how to x the fault. A hint specifies which part of the
program needs modification as well as suggests how to modify it. The programmer uses them as guidance to arrive at a complete
repair. For student programmers, our hints help them reflect on the mistakes they made and improve their understanding of the problem being solved in the
program. For experienced programmers, ou hints help them easily identify the cause of fault and guide them to a
repair. Our approaches use novel combinations of syntactic, symbolic and statistical reasoning techniques to achieve this goal of semi-automated
program repair.
Our first contribution is an algorithmic technique for automated synthesis of
repair hints. Our technique takes as input a faulty
program and a set of test cases and outputs a ranked list of
repair hints that suggest how to rectify a faulty statement in the
program. In this technique, we leverage symbolic execution and statistical correlation analysis to identify expressions that are likely to occur in the repaired code. Then we use syntactic pattern matching to combine these expressions algorithmically and generate
repair hints. Since we restrict ourselves to binding \building blocks" of
repair, our hints are very effeective in guiding the programmer to the final
repair, even in scenarios where a complete
repair cannot be obtained. We implemented this technique to develop a tool called \MintHint", that performs automated synthesis of
repair hints for C programs. We evaluated the…
Advisors/Committee Members: Kanade, Aditya (advisor).
Subjects/Keywords: Debugging; CodeChef; Microtribomoter; Programmers Repair; Repair Specification; Repair Hints; Program Repair; MintHint; Semi-automated Program Repair; Semi-supervised Feedback Generation Methodology; CoderAssist; Computer Science
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Kaleeswaran, S. (2018). Program Repair by Automated Generation of Hints. (Doctoral Dissertation). Indian Institute of Science. Retrieved from http://etd.iisc.ac.in/handle/2005/4048
Chicago Manual of Style (16th Edition):
Kaleeswaran, Shalini. “Program Repair by Automated Generation of Hints.” 2018. Doctoral Dissertation, Indian Institute of Science. Accessed January 22, 2021.
http://etd.iisc.ac.in/handle/2005/4048.
MLA Handbook (7th Edition):
Kaleeswaran, Shalini. “Program Repair by Automated Generation of Hints.” 2018. Web. 22 Jan 2021.
Vancouver:
Kaleeswaran S. Program Repair by Automated Generation of Hints. [Internet] [Doctoral dissertation]. Indian Institute of Science; 2018. [cited 2021 Jan 22].
Available from: http://etd.iisc.ac.in/handle/2005/4048.
Council of Science Editors:
Kaleeswaran S. Program Repair by Automated Generation of Hints. [Doctoral Dissertation]. Indian Institute of Science; 2018. Available from: http://etd.iisc.ac.in/handle/2005/4048

Rice University
4.
Surendran, Rishi.
Debugging, Repair, and Synthesis of Task-Parallel Programs.
Degree: PhD, Engineering, 2017, Rice University
URL: http://hdl.handle.net/1911/96003
► Parallelizing sequential programs to effectively utilize modern multicore architectures is a key challenge facing application developers and domain experts. Therefore, it is a need of…
(more)
▼ Parallelizing sequential programs to effectively utilize modern multicore architectures is a key challenge facing application developers and domain experts. Therefore, it is a need of the hour to create tools that aid programmers in developing correct and efficient parallel programs. In this thesis, we present algorithms for debugging, repairing, and synthesizing task-parallel programs that can provide a foundation for creating such tools. Our work focuses on task-parallel programs with both imperative async-finish parallelism and functional-style parallelism using futures.
First, we address the problem of detecting races in parallel programs with async, finish and future constructs. Existing dynamic determinacy race detectors for task-parallel programs are limited to programs with strict computation graphs in which a task can only wait for some subset of its descendant tasks to complete. In this thesis, we present the first known determinacy race detector for non-strict computation graphs generated using futures. The space and time complexity of our algorithm degenerate to those of the classical SP-bags algorithm when using only structured parallel constructs such as spawn-sync and async-finish. In the presence of point-to-point synchronization using futures, the complexity of the algorithm increases by a factor determined by the number of future task creation and get operations as well as the number of non-tree edges in the computation graph.
Next, we introduce a hybrid static+dynamic test-driven approach to repairing data races in task-parallel programs. Past solutions to the problem of repairing parallel programs have used static-only or dynamic-only approaches, both of which incur significant limitations in practice. Static approaches can guarantee soundness in many cases but are limited in precision when analyzing medium or large-scale software with accesses to pointer-based data structures in multiple procedures. Dynamic approaches are more precise, but their proposed repairs are limited to a single input and are not reflected back in the original source
program. Our approach includes a novel coupling between static and dynamic analyses. First, we execute the
program on a concrete test input and determine the set of data races for this input dynamically. Next, we compute a set of static "finish" placements that repairs these races and also respects the static scoping rules of the
program while maximizing parallelism.
Finally, we introduce a novel approach to automatically synthesize task-parallel programs with futures from sequential programs through identification of pure method calls. Our approach is built on three new techniques to address the challenge of automatic parallelization via future synthesis: candidate future synthesis, parallelism benefit analysis, and threshold expression synthesis. In candidate future synthesis, our system annotates pure method calls as async expressions and synthesizes a parallel
program with future objects and their type declarations that are more precise than…
Advisors/Committee Members: Sarkar, Vivek (advisor).
Subjects/Keywords: Debugging; Program repair; Program synthesis; Futures; Async; Finish; Task Parallelism
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Surendran, R. (2017). Debugging, Repair, and Synthesis of Task-Parallel Programs. (Doctoral Dissertation). Rice University. Retrieved from http://hdl.handle.net/1911/96003
Chicago Manual of Style (16th Edition):
Surendran, Rishi. “Debugging, Repair, and Synthesis of Task-Parallel Programs.” 2017. Doctoral Dissertation, Rice University. Accessed January 22, 2021.
http://hdl.handle.net/1911/96003.
MLA Handbook (7th Edition):
Surendran, Rishi. “Debugging, Repair, and Synthesis of Task-Parallel Programs.” 2017. Web. 22 Jan 2021.
Vancouver:
Surendran R. Debugging, Repair, and Synthesis of Task-Parallel Programs. [Internet] [Doctoral dissertation]. Rice University; 2017. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/1911/96003.
Council of Science Editors:
Surendran R. Debugging, Repair, and Synthesis of Task-Parallel Programs. [Doctoral Dissertation]. Rice University; 2017. Available from: http://hdl.handle.net/1911/96003

University of Minnesota
5.
Sharma, Vaibhav.
Adapter Synthesis: Synthesizing And Repairing Programs Using Scalable Symbolic Execution.
Degree: PhD, Computer Science, 2020, University of Minnesota
URL: http://hdl.handle.net/11299/213126
► Independently developed codebases typically contain many segments of code that perform the same or closely related operations (semantic clones). Finding functionally equivalent segments enables applications…
(more)
▼ Independently developed codebases typically contain many segments of code that perform the same or closely related operations (semantic clones). Finding functionally equivalent segments enables applications like replacing a segment by a more efficient or more secure alternative. Such related segments often have different interfaces, so some glue code (an adapter) is needed to replace one with the other. We present an algorithm that searches for replaceable code segments by attempting to synthesize an adapter between them from some finite family of adapters; it terminates if it finds no possible adapter. The use of symbolic execution during adapter search implicitly relies on being able to summarize the entire adapter into a single formula. Merging related execution paths is a powerful technique for reducing path explosion in symbolic execution. One approach, introduced and dubbed “veritesting” by Avgerinos et al., works by statically translating a bounded control flow region into a single formula. Java’s typed memory structure is very different from a binary, but we present an extension of previous path-merging approaches for symbolic execution of Java. Bugs in commercial software and third-party components are an undesirable and expensive phenomenon. Such software is usually released to users only in binary form. The lack of source code renders users of such software dependent on their software vendors for repairs of bugs. Such dependence is even more harmful if the bugs introduce new vulnerabilities in the software. Being able to automatically repair security bugs breaks this dependence and increases software robustness. In the third part of this dissertation, we present an automated program repair approach for binary code.
Subjects/Keywords: adapter synthesis; binary analysis; cegis; program repair; program synthesis; symbolic execution
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Sharma, V. (2020). Adapter Synthesis: Synthesizing And Repairing Programs Using Scalable Symbolic Execution. (Doctoral Dissertation). University of Minnesota. Retrieved from http://hdl.handle.net/11299/213126
Chicago Manual of Style (16th Edition):
Sharma, Vaibhav. “Adapter Synthesis: Synthesizing And Repairing Programs Using Scalable Symbolic Execution.” 2020. Doctoral Dissertation, University of Minnesota. Accessed January 22, 2021.
http://hdl.handle.net/11299/213126.
MLA Handbook (7th Edition):
Sharma, Vaibhav. “Adapter Synthesis: Synthesizing And Repairing Programs Using Scalable Symbolic Execution.” 2020. Web. 22 Jan 2021.
Vancouver:
Sharma V. Adapter Synthesis: Synthesizing And Repairing Programs Using Scalable Symbolic Execution. [Internet] [Doctoral dissertation]. University of Minnesota; 2020. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/11299/213126.
Council of Science Editors:
Sharma V. Adapter Synthesis: Synthesizing And Repairing Programs Using Scalable Symbolic Execution. [Doctoral Dissertation]. University of Minnesota; 2020. Available from: http://hdl.handle.net/11299/213126

University of Texas – Austin
6.
-4094-6303.
Unifying program repair and program synthesis.
Degree: PhD, Electrical and Computer Engineering, 2018, University of Texas – Austin
URL: http://hdl.handle.net/2152/68477
► The last few years have seen much progress in two related but traditionally disjoint areas of research: program repair and program synthesis. Program repair is…
(more)
▼ The last few years have seen much progress in two related but traditionally disjoint areas of research:
program repair and
program synthesis.
Program repair is the problem of locating and removing faults in a given faulty
program.
Program synthesis is the problem of generating programs automatically from high-level specifications. While innovation in each of these two research areas has been impressive, the techniques developed within one area have largely been confined to that area. Our insight is that the unification of
program repair and
program synthesis holds a key to developing well-founded, systematic, and scalable tools for repairing complex defects. The contribution of this dissertation is three-fold: a synthesis-based approach SketchRep for
program repair based on propositional satisfiability solving, an execution-driven synthesis engine EdSketch for Java, and a
program repair approach SketchFix to
repair defects at the AST node-level with execution-driven sketching.
SketchRep is a debugging approach that reduces the problem of
program repair to a sub-problem of
program synthesis, namely
program sketching, in which the user writes a sketch, i.e., an incomplete
program that has holes, and automated tools complete the sketch with respect to the given specification or reference implementation. Our
program repair approach translates the given faulty
program to a sketch and leverages an off-the-shelf inductive synthesizer to fill in the holes of the incomplete
program with respect to the given test suite.
EdSketch is an execution-driven synthesis engine for Java. Traditional solutions to the sketching problem perform a translation to SAT formulas. While effective for a range of programs, when applied to real applications, such translation-based approaches may lead to impractical problems to translate all relevant libraries to SAT. Instead of transforming the
program to logic formulas for SAT solvers, EdSketch explores the actual
program behaviors in presence of libraries and provides a practical solution to sketching small parts of real-world applications.
SketchFix is a
repair technique that generates candidate fixes on demand during the test execution. It translates faulty programs to sketches, compiles each sketch once which may represent a large number of concrete candidates, and lazily initializes the candidates of the sketches while validating them against the test execution.
The dissertation describes each technique and presents experimental results that demonstrate its efficacy.
Advisors/Committee Members: Khurshid, Sarfraz (advisor), Garg, Vijay (committee member), Julien, Christine (committee member), Perry, Dewayne (committee member), Prasad, Mukul (committee member).
Subjects/Keywords: Program repair; Program synthesis; Execution-driven; On-demand candidate generation
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
-4094-6303. (2018). Unifying program repair and program synthesis. (Doctoral Dissertation). University of Texas – Austin. Retrieved from http://hdl.handle.net/2152/68477
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Chicago Manual of Style (16th Edition):
-4094-6303. “Unifying program repair and program synthesis.” 2018. Doctoral Dissertation, University of Texas – Austin. Accessed January 22, 2021.
http://hdl.handle.net/2152/68477.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
MLA Handbook (7th Edition):
-4094-6303. “Unifying program repair and program synthesis.” 2018. Web. 22 Jan 2021.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Vancouver:
-4094-6303. Unifying program repair and program synthesis. [Internet] [Doctoral dissertation]. University of Texas – Austin; 2018. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/2152/68477.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Council of Science Editors:
-4094-6303. Unifying program repair and program synthesis. [Doctoral Dissertation]. University of Texas – Austin; 2018. Available from: http://hdl.handle.net/2152/68477
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
7.
-5365-808X.
An experimental evaluation and possible extensions of SyPet.
Degree: MSin Engineering, Electrical and Computer Engineering, 2017, University of Texas – Austin
URL: http://hdl.handle.net/2152/62665
► Program synthesis is an automated programming technique that automatically constructs a program which satisfies given specifications. SyPet is a recently published novel component-based synthesis tool…
(more)
▼ Program synthesis is an automated programming technique that automatically constructs a
program which satisfies given specifications. SyPet is a recently published novel component-based synthesis tool that assembles a straight-line Java method body that invokes a sequence of methods from a given set of libraries to implement desired functionality that is defined by a given test suite. In this report, we experimentally evaluate the correctness and performance of the publicly available SyPet implementation, at the black-box level, focusing on the size of test suites. We then demonstrate how SyPet can be extended to support some other applications, such as synthesizing non-straight-line methods and
program repair. Finally, we conjecture an alternative technique that is conceptually simpler for synthesizing straight-line methods and present a few initial experimental results.
Advisors/Committee Members: Khurshid, Sarfraz (advisor), Dillig, Isil (committee member).
Subjects/Keywords: Program synthesis; Program repair
…18
Figure 16: Test file for program repair experiment… …program repair [8, 9, 10]. We show that SyPet can be used
to fix errors in a program… …can reduce the program repair problem into a
component-based synthesis problem, where n is… …applications
like non-straight line synthesis and program repair (Chapter 3). Finally, we… …algorithms.
II. PROGRAM REPAIR
Program repair is another important research area in Software…
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
-5365-808X. (2017). An experimental evaluation and possible extensions of SyPet. (Masters Thesis). University of Texas – Austin. Retrieved from http://hdl.handle.net/2152/62665
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Chicago Manual of Style (16th Edition):
-5365-808X. “An experimental evaluation and possible extensions of SyPet.” 2017. Masters Thesis, University of Texas – Austin. Accessed January 22, 2021.
http://hdl.handle.net/2152/62665.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
MLA Handbook (7th Edition):
-5365-808X. “An experimental evaluation and possible extensions of SyPet.” 2017. Web. 22 Jan 2021.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Vancouver:
-5365-808X. An experimental evaluation and possible extensions of SyPet. [Internet] [Masters thesis]. University of Texas – Austin; 2017. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/2152/62665.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Council of Science Editors:
-5365-808X. An experimental evaluation and possible extensions of SyPet. [Masters Thesis]. University of Texas – Austin; 2017. Available from: http://hdl.handle.net/2152/62665
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete

University of Waterloo
8.
Liu, Taiyue.
Anti-Patterns for Automatic Program Repairs.
Degree: 2016, University of Waterloo
URL: http://hdl.handle.net/10012/10893
► Automated program repair has been a heated topic in software engineering. In recent years, we have witnessed many successful applications such as Genprog, SPR, RSRepair,…
(more)
▼ Automated program repair has been a heated topic in software engineering. In recent years, we have witnessed many successful applications such as Genprog, SPR, RSRepair, etc. Given a bug and its test suite, which includes both passed test cases and failed test cases, these tools aim to automatically generate a patch that fixes the bug without developers' efforts. All these tools adopt a "Generate-and-Validate" approach, which assumes a tool-generated patch to be correct as long as it passes all its test cases. However, if test suites are of poor quality that cannot cover all the situations, incorrect tool-generated patches might pass all their test cases and be regarded as correct patches. We call such
patches that are incorrect but can pass whose test suites as overfitted patches.
In order to investigate the reasons why overfitted patches are generated and to reduce overfitted patches, we perform a deep analysis on the patches composed by developers, and the patches (i.e., the correct and the overfitted patches) that are generated by Genprog and SPR. In this thesis, we propose two orthogonal approaches to filter out overfitted patches: 1) To preserve correct tool-generated patches and filter out only overfitted patches, we propose some patterns, named anti-patterns, that can efficiently distinguish correct patches against overfitted patches. We select nine bugs from the Genprog benchmark data set to evaluate the anti-patterns. By embedding the anti-patterns into SPR and filtering out overfitted patches, on average, developers can review 44.7% less tool-generated patches to reach correct patches. Meanwhile, by filtering out overfitted patches at runtime, the anti-patterns speed up SPR's efficiency by 1.34 times on average. 2) We leverage machine learning techniques with meaningful features to predict the correctness of tool-generated patches. Our results show that the machine learning approach cannot preserve correct patches well. In other words, machine learning techniques would mis-classify correct patches as overfitted patches and filter them out. Thus, we believe the machine learning approach requires significant future work, e.g., more representative features and effective classification algorithms, to be useful in practice. These two orthogonal approaches provide automatic program repair tools with valuable guidance on how to avoid generating overfitted patches.
Subjects/Keywords: Automated Program Repair; Anti-Patterns; Staged Program Repair; Machine Learning; Software Engineering; Overfitted Patches; Generate-and-Validate
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Liu, T. (2016). Anti-Patterns for Automatic Program Repairs. (Thesis). University of Waterloo. Retrieved from http://hdl.handle.net/10012/10893
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Chicago Manual of Style (16th Edition):
Liu, Taiyue. “Anti-Patterns for Automatic Program Repairs.” 2016. Thesis, University of Waterloo. Accessed January 22, 2021.
http://hdl.handle.net/10012/10893.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
MLA Handbook (7th Edition):
Liu, Taiyue. “Anti-Patterns for Automatic Program Repairs.” 2016. Web. 22 Jan 2021.
Vancouver:
Liu T. Anti-Patterns for Automatic Program Repairs. [Internet] [Thesis]. University of Waterloo; 2016. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/10012/10893.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Council of Science Editors:
Liu T. Anti-Patterns for Automatic Program Repairs. [Thesis]. University of Waterloo; 2016. Available from: http://hdl.handle.net/10012/10893
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation

University of Waterloo
9.
Wei, Moshi.
Abstraction Mechanism on Neural Machine Translation Models for Automated Program Repair.
Degree: 2019, University of Waterloo
URL: http://hdl.handle.net/10012/15119
► Bug fixing is a time-consuming task in software development. Automated bug repair tools are created to fix programs with little or no human effort. There…
(more)
▼ Bug fixing is a time-consuming task in software development. Automated bug repair tools are created to fix programs with little or no human effort. There are many existing tools based on the generate-and-validate (G&V) approach, which is an automated program repair technique that generates a list of repair candidates then selects the correct candidates as output. Another approach is learning the repair process with machine learning models and then generating the candidates. One machine learning-based approach is the end-to-end approach. This approach passes the input source code directly to the machine learning model and generates the repair candidates in source code as output. There are several challenges in this approach such as the large size of vocabulary, high rate of out-of-vocabulary(OOV) tokens and difficulties on embedding learning.
We propose an abstraction-and-reconstruction technique on top of end-to-end approaches that convert the training source code to templates to alleviate the problems in the traditional end-to-end approach. We train the machine learning model with abstracted bug-fix pairs from open source projects. The abstraction process converts the source code to templates before passing it to the model. After the training is complete, we use the trained model to predict the fix templates of new bugs. The output of the model is passed to the reconstruction layer to get the source code patch candidates.
We train the machine learning model with 470,085 bug-fix pairs collected from 1000 top python projects from Github. We use the QuixBugs dataset as the test set to evaluate the result. The fix of the bug in the QuixBugs is verified by the test cases provided by the QuixBugs dataset. We choose the traditional end-to-end approach as the baseline and comparing it with the
abstraction model. The accuracy of generating correct bug fixes increase from 25% to 57.5% while the training time reduces from 5.7 hours to 1.63 hours. The overhead introduced by the reconstruction model is 218 milliseconds on average or 23.32%, which is negligible comparing to the time saved in the training, which is 4.07 hours or 71.4%. We performed a deep analysis of the result and identified three reasons that may explain why the abstraction model outperforms the baseline. Compared to existing works, our approach has the complete reconstruction process which converts templates to the source code. It shows that adding a layer of abstractions increase the accuracy and reduces the training time of machine-learning-based automated bug repair tool.
Subjects/Keywords: deep learning; automated program repair; neural machine translation; seq2seq model
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Wei, M. (2019). Abstraction Mechanism on Neural Machine Translation Models for Automated Program Repair. (Thesis). University of Waterloo. Retrieved from http://hdl.handle.net/10012/15119
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Chicago Manual of Style (16th Edition):
Wei, Moshi. “Abstraction Mechanism on Neural Machine Translation Models for Automated Program Repair.” 2019. Thesis, University of Waterloo. Accessed January 22, 2021.
http://hdl.handle.net/10012/15119.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
MLA Handbook (7th Edition):
Wei, Moshi. “Abstraction Mechanism on Neural Machine Translation Models for Automated Program Repair.” 2019. Web. 22 Jan 2021.
Vancouver:
Wei M. Abstraction Mechanism on Neural Machine Translation Models for Automated Program Repair. [Internet] [Thesis]. University of Waterloo; 2019. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/10012/15119.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Council of Science Editors:
Wei M. Abstraction Mechanism on Neural Machine Translation Models for Automated Program Repair. [Thesis]. University of Waterloo; 2019. Available from: http://hdl.handle.net/10012/15119
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation

Iowa State University
10.
Ke, Yalin.
An automated approach to program repair with semantic code search.
Degree: 2015, Iowa State University
URL: https://lib.dr.iastate.edu/etd/14813
► Every year software companies dedicate numerous developer hours to debugging and fixing defects. Automated program repair has the potential to greatly decrease the costs of…
(more)
▼ Every year software companies dedicate numerous developer hours to debugging and fixing defects. Automated program repair has the potential to greatly decrease the costs of debugging. Existing automated repair techniques, such as Genprog, TSPRepair, and AE, show great promise but are not able to repair all bugs. We propose a new automated program repair technique, SearchRepair, which is a complementary program repair technique. We take advantage of existing open source code to find potential fixes based on the assumption that there are correct implementations in open source project code for some defects. The key challenges lie in efficiently finding code semantically similar (but not identical) to defective code and then appropriately integrating that code into the buggy program. The technique we present, SearchRepair, addresses these challenges by (1) encoding a large database of human-written code fragments as SMT constraints on input-output behavior, (2) localizing a given defect to likely-buggy program fragments, (3) dynamically analyzing those buggy fragments to derive input-output pairs that describe likely buggy behavior and that can be encoded as SMT constraints, (4) using state-of-the-art constraint solvers to find fragments in the code database that satisfy those constraints, and (5) validating patches that repair the bug against program test suites. We evaluate our technique, SearchRepair, on a program repair benchmark set IntroClass, which provides 998 buggy programs written by novice students, two test suites for each program, and repair results for existing program repair technique, Genprog, TSPRepair and AE. The two test suites, of which one is written by a human and the other one is automatically generated by a computer, are used to determine if a program is buggy and to evaluate the quality of a repair. We use instructor test suite to refer the test suite that is written by a human. And we use KLEE test suite to refer the test suite that are generated by the computer. We consider a program as a potential fixable defect if it fails and passes at least one test case in a test suite. Note that extracting input-output behaviors for the semantic code search requires that at least one passed test case so some buggy programs are excluded from our evaluation. There are 778 defects in IntroClass based on the instructor test suite and 845 defects in IntroClass based on the KLEE test suite. We find that when using the instructor test suite, SearchRepair is able to successfully repair 150 of 778 defects, Gengprog is able to fix 287 defects, TSPRepair is able to fix 247 defects, AE is able to fix 159 defects. In total, these 4 techniques are able to fix 310 defects using the instructor test suite and 20 of the 310 defects can only be fixed by SearchRepair. We also find that when using the computer generated test suite, there are 58 unique defects that can only fixed by SearchRepair out of 339 total unique defects that can be fixed by the 4 techniques. These results suggest that SearchRepair is a complementary…
Subjects/Keywords: Computer Science; automated; program repair; semantic code search; Computer Sciences
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Ke, Y. (2015). An automated approach to program repair with semantic code search. (Thesis). Iowa State University. Retrieved from https://lib.dr.iastate.edu/etd/14813
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Chicago Manual of Style (16th Edition):
Ke, Yalin. “An automated approach to program repair with semantic code search.” 2015. Thesis, Iowa State University. Accessed January 22, 2021.
https://lib.dr.iastate.edu/etd/14813.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
MLA Handbook (7th Edition):
Ke, Yalin. “An automated approach to program repair with semantic code search.” 2015. Web. 22 Jan 2021.
Vancouver:
Ke Y. An automated approach to program repair with semantic code search. [Internet] [Thesis]. Iowa State University; 2015. [cited 2021 Jan 22].
Available from: https://lib.dr.iastate.edu/etd/14813.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Council of Science Editors:
Ke Y. An automated approach to program repair with semantic code search. [Thesis]. Iowa State University; 2015. Available from: https://lib.dr.iastate.edu/etd/14813
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation

University of Waterloo
11.
Lutellier, Thibaud.
Machine Learning for Software Dependability.
Degree: 2020, University of Waterloo
URL: http://hdl.handle.net/10012/16501
► Dependability is an important quality of modern software but is challenging to achieve. Many software dependability techniques have been proposed to help developers improve software…
(more)
▼ Dependability is an important quality of modern software but is challenging to achieve. Many software dependability techniques have been proposed to help developers improve software reliability and dependability such as defect prediction [83,96,249], bug detection [6,17, 146], program repair [51, 127, 150, 209, 261, 263], test case prioritization [152, 250], or software architecture recovery [13,42,67,111,164,240].
In this thesis, we consider how machine learning (ML) and deep learning (DL) can be used to enhanced software dependability through three examples in three different domains: automatic program repair, bug detection in electronic document readers, and software architecture recovery.
In the first work, we propose a new G&V technique—CoCoNuT, which uses ensemble learning on the combination of convolutional neural networks (CNNs) and a new context-aware neural machine translation (NMT) architecture to automatically fix bugs in multiple programming languages. To better represent the context of a bug, we introduce a new context-aware NMT architecture that represents the buggy source code and its surrounding context separately. CoCoNuT uses CNNs instead of recurrent neural networks (RNNs) since CNN layers can be stacked to extract hierarchical features and better model source code at different granularity levels (e.g., statements and functions). In addition, CoCoNuTtakes advantage of the randomness in hyperparameter tuning to build multiple models that fix different bugs and combines these models using ensemble learning to fix more bugs.CoCoNuT fixes 493 bugs, including 307 bugs that are fixed by none of the 27 techniques with which we compare.
In the second work, we present a study on the correctness of PDF documents and readers and propose an approach to detect and localize the source of such inconsistencies automatically. We evaluate our automatic approach on a large corpus of over 230Kdocuments using 11 popular readers and our experiments have detected 30 unique bugs in these readers and files.
In the third work, we compare software architecture recovery techniques to understand their effectiveness and applicability. Specifically, we study the impact of leveraging accurate symbol dependencies on the accuracy of architecture recovery techniques. In addition, we evaluate other factors of the input dependencies such as the level of granularity and the dynamic-bindings graph construction. The results of our evaluation of nine architecture recovery techniques and their variants suggest that (1) using accurate symbol dependencies has a major influence on recovery quality, and (2) more accurate recovery techniques are needed. Our results show that some of the studied architecture recovery techniques scale to very large systems, whereas others do not.
Subjects/Keywords: software dependability; program repair; bug detection; software architecture recovery; machine learning
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Lutellier, T. (2020). Machine Learning for Software Dependability. (Thesis). University of Waterloo. Retrieved from http://hdl.handle.net/10012/16501
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Chicago Manual of Style (16th Edition):
Lutellier, Thibaud. “Machine Learning for Software Dependability.” 2020. Thesis, University of Waterloo. Accessed January 22, 2021.
http://hdl.handle.net/10012/16501.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
MLA Handbook (7th Edition):
Lutellier, Thibaud. “Machine Learning for Software Dependability.” 2020. Web. 22 Jan 2021.
Vancouver:
Lutellier T. Machine Learning for Software Dependability. [Internet] [Thesis]. University of Waterloo; 2020. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/10012/16501.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Council of Science Editors:
Lutellier T. Machine Learning for Software Dependability. [Thesis]. University of Waterloo; 2020. Available from: http://hdl.handle.net/10012/16501
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation

University of Texas – Austin
12.
-1790-0721.
Automated synthesis and debugging of declarative models in alloy.
Degree: PhD, Electrical and Computer Engineering, 2018, University of Texas – Austin
URL: http://hdl.handle.net/2152/71511
► In theory, formal specifications offer numerous benefits in developing more reliable software. In practice however, the use of specifications is rather limited, and practitioners often…
(more)
▼ In theory, formal specifications offer numerous benefits in developing more reliable software. In practice however, the use of specifications is rather limited, and practitioners often consider them more trouble than they are worth. Indeed, manually writing detailed specifications using notations that have unfamiliar syntax and semantics can be a daunting task – even for experienced programmers. We introduce a new automated approach for synthesis of desired specifications and debugging of faulty specifications using given examples that capture the essence of desired properties and serve as test cases. Our focus is specifications written in the declarative language Alloy – a first-order logic based on relations with transitive closure, and its SAT-based analysis engine. Our key insight is that a test-driven foundation enables modern approaches to synthesis and debugging of imperative code to serve as a basis for developing novel analogous techniques for declarative specifications. For synthesis, we build on equivalence in relational algebra and introduce techniques for generating candidate Alloy expressions. We also introduce a technique to complete a partial Alloy model with holes using constraint solving. For locating faults in buggy specifications, we build on mutation-based fault localization and introduce techniques for locating likely faulty nodes in the abstract syntax tree of the faulty specification. Moreover, we integrate our expression generation and fault localization techniques to introduce a technique for automated specification
repair. We experimentally evaluate our techniques using several Alloy models as subjects, including those with real faults. The results show that our techniques are effective at synthesis and debugging of the subjects. We believe our techniques provide an important step towards increasing the role of formal specifications in developing more reliable software and realizing their promise.
Advisors/Committee Members: Khurshid, Sarfraz (advisor), Garg, Vijay (committee member), Gligoric, Milos (committee member), Julien, Christine (committee member), Marinov, Darko (committee member).
Subjects/Keywords: Expression generation; Sketching; Fault localization; Automated program repair; Alloy
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
-1790-0721. (2018). Automated synthesis and debugging of declarative models in alloy. (Doctoral Dissertation). University of Texas – Austin. Retrieved from http://hdl.handle.net/2152/71511
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Chicago Manual of Style (16th Edition):
-1790-0721. “Automated synthesis and debugging of declarative models in alloy.” 2018. Doctoral Dissertation, University of Texas – Austin. Accessed January 22, 2021.
http://hdl.handle.net/2152/71511.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
MLA Handbook (7th Edition):
-1790-0721. “Automated synthesis and debugging of declarative models in alloy.” 2018. Web. 22 Jan 2021.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Vancouver:
-1790-0721. Automated synthesis and debugging of declarative models in alloy. [Internet] [Doctoral dissertation]. University of Texas – Austin; 2018. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/2152/71511.
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete
Council of Science Editors:
-1790-0721. Automated synthesis and debugging of declarative models in alloy. [Doctoral Dissertation]. University of Texas – Austin; 2018. Available from: http://hdl.handle.net/2152/71511
Note: this citation may be lacking information needed for this citation format:
Author name may be incomplete

University of Texas – Austin
13.
Gopinath, Divya.
Systematic techniques for more effective fault localization and program repair.
Degree: PhD, Electrical and Computer engineering, 2015, University of Texas – Austin
URL: http://hdl.handle.net/2152/33386
► Debugging faulty code is a tedious process that is often quite expensive and can require much manual effort. Developers typically perform debugging in two key…
(more)
▼ Debugging faulty code is a tedious process that is often quite expensive and can require much manual effort. Developers typically perform debugging in two key steps: (1) fault localization, i.e., identifying the location of faulty line(s) of code; and (2)
program repair, i.e., modifying the code to remove the fault(s). Automating debugging to reduce its cost has been the focus of a number of research projects during the last decade, which have introduced a variety of techniques.
However, existing techniques suffer from two basic limitations. One, they lack accuracy to handle real programs. Two, they focus on automating only one of the two key steps, thereby leaving the other key step to the developer.
Our thesis is that an approach that integrates systematic search based on state-of-the-art constraint solvers with techniques to analyze artifacts that describe application specific properties and behaviors, provides the basis for developing more effective debugging techniques. We focus on faults in programs that operate on structurally complex inputs, such as heap-allocated data or relational databases.
Our approach lays the foundation for a unified framework for localization and
repair of faults in programs. We embody our thesis in a suite of integrated techniques based on propositional satisfiability solving, correctness specifications analysis, test-spectra analysis, and rule-learning algorithms from machine learning, implement them as a prototype tool-set, and evaluate them using several
subject programs.
Advisors/Committee Members: Khurshid, Sarfraz (advisor), Perry, Dewayne (committee member), Pingali, Keshav (committee member), Julien, Christine (committee member), Bias, Randolph (committee member).
Subjects/Keywords: Software debugging; Program repair; Fault localization; SAT; Correctness specifications; Classifier learning
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Gopinath, D. (2015). Systematic techniques for more effective fault localization and program repair. (Doctoral Dissertation). University of Texas – Austin. Retrieved from http://hdl.handle.net/2152/33386
Chicago Manual of Style (16th Edition):
Gopinath, Divya. “Systematic techniques for more effective fault localization and program repair.” 2015. Doctoral Dissertation, University of Texas – Austin. Accessed January 22, 2021.
http://hdl.handle.net/2152/33386.
MLA Handbook (7th Edition):
Gopinath, Divya. “Systematic techniques for more effective fault localization and program repair.” 2015. Web. 22 Jan 2021.
Vancouver:
Gopinath D. Systematic techniques for more effective fault localization and program repair. [Internet] [Doctoral dissertation]. University of Texas – Austin; 2015. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/2152/33386.
Council of Science Editors:
Gopinath D. Systematic techniques for more effective fault localization and program repair. [Doctoral Dissertation]. University of Texas – Austin; 2015. Available from: http://hdl.handle.net/2152/33386

Université de Grenoble
14.
Von Essen, Christian.
Quantitative Verification and Synthesis : Vérification et synthèse quantitative.
Degree: Docteur es, Informatique, 2014, Université de Grenoble
URL: http://www.theses.fr/2014GRENM090
► Cette thèse contribue à l'étude théorique et a l'application de la vérification et de la synthèse quantitative. Nous étudions les stratégies qui optimisent la fraction…
(more)
▼ Cette thèse contribue à l'étude théorique et a l'application de la vérification et de la synthèse quantitative. Nous étudions les stratégies qui optimisent la fraction de deux récompenses des MDPs. L'objectif est la synthèse de régulateurs efficaces dans des environnements probabilistes. Premièrement nous montrons que les stratégies déterministes et sans mémoire sont suffisants. Sur la base de ces résultats, nous proposons trois algorithmes pour traiter des modèles explicitement encodées. Notre évaluation de ces algorithmes montre que l'un de ces derniers est plus rapide que les autres. Par la suite nous proposons et mettons en place une variante symbolique basé sur les diagrammes de décision binaire.Deuxièmement, nous étudions le problème de réparation des programmes d'un point de vue quantitatif. Cela conduit à une reformulation de la réparation d'un log: que seules les exécutions fautives du programme soient modifiées. Nous étudions les limites de cette approche et montrons comment nous pouvons assouplir cette nouvelle exigence. Nous concevons et mettons en œuvre un algorithme pour trouver automatiquement des réparations, et montrons qu'il améliore les modifications apportées aux programmes. Troisièmement, nous étudions une nouvelle approche au framework pour la vérification et synthèse quantitative. La vérification et la synthèse fonctionnent en tandem pour analyser la qualité d'un contrôleur en ce qui concerne, par exemple , de robustesse contre des erreurs de modélisation. Nous considérons également la possibilité d'approximer la courbure de Pareto, qui appataît de la combinaison du modèle avec de multiples récompenses. Cela nous permet à la fois d'étudier les compromis inhérents au système et de choisir une configuration adéquate. Nous appliquons notre framework aux plusieurs études de cas. La majorité de l'étude de cas est concernée par un système anti-collision embarqué (ACAS X). Nous utilisons notre framework pour aider à analyser l'espace de conception du système et de valider le contrôleur en cours d'investigation par la FAA. En particulier, nous contribuons l'analyse par PCTL et stochastic model checking.
This thesis contributes to the theoretical study and application of quantitative verification and synthesis. We first study strategies that optimize the ratio of two rewards in MDPs. The goal is the synthesis of efficient controllers in probabilistic environments. We prove that deterministic and memoryless strategies are sufficient. Based on these results we suggest 3 algorithms to treat explicitly encoded models. Our evaluation of these algorithms shows that one of these is clearly faster than the others. To extend its scope, we propose and implement a symbolic variant based on binary decision diagrams, and show that it cope with millions of states. Second, we study the problem of program repair from a quantitative perspective. This leads to a reformulation of program repair with the requirement that only faulty runs of the program be changed. We study the limitations of this approach and show how…
Advisors/Committee Members: Bensalem, Saddek (thesis director), Jobstmann, Barbara (thesis director).
Subjects/Keywords: Vérification quantitative; Synthèse quantitative; Systèmes adaptatifs; Quantitative Verification; Quantitative Synthesis; Adaptive Systems; Program Repair; 004
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Von Essen, C. (2014). Quantitative Verification and Synthesis : Vérification et synthèse quantitative. (Doctoral Dissertation). Université de Grenoble. Retrieved from http://www.theses.fr/2014GRENM090
Chicago Manual of Style (16th Edition):
Von Essen, Christian. “Quantitative Verification and Synthesis : Vérification et synthèse quantitative.” 2014. Doctoral Dissertation, Université de Grenoble. Accessed January 22, 2021.
http://www.theses.fr/2014GRENM090.
MLA Handbook (7th Edition):
Von Essen, Christian. “Quantitative Verification and Synthesis : Vérification et synthèse quantitative.” 2014. Web. 22 Jan 2021.
Vancouver:
Von Essen C. Quantitative Verification and Synthesis : Vérification et synthèse quantitative. [Internet] [Doctoral dissertation]. Université de Grenoble; 2014. [cited 2021 Jan 22].
Available from: http://www.theses.fr/2014GRENM090.
Council of Science Editors:
Von Essen C. Quantitative Verification and Synthesis : Vérification et synthèse quantitative. [Doctoral Dissertation]. Université de Grenoble; 2014. Available from: http://www.theses.fr/2014GRENM090

University of Victoria
15.
Murguia, Giovanni.
Autonomic test case generation of failing code using AOP.
Degree: Department of Computer Science, 2020, University of Victoria
URL: http://hdl.handle.net/1828/12096
► As software systems have grown in size and complexity, the costs of maintaining such systems increases steadily. In the early 2000's, IBM launched the autonomic…
(more)
▼ As software systems have grown in size and complexity, the costs of maintaining such systems increases steadily. In the early 2000's, IBM launched the autonomic computing initiative to mitigate this problem by injecting feedback control mechanisms into software systems to enable them to observe their health and self-heal without human intervention and thereby cope with certain changes in their requirements and environments. Self-healing is one of several fundamental challenges addressed and includes software systems that are able to recover from failure conditions. There has been considerable research on software architectures with feedback loops that allow a multi-component system to adjust certain parameters automatically in response to changes in its environment. However, modifying the components' source code in response to failures remains an open and formidable challenge.
Automatic
program repair techniques aim to create and apply source code patches autonomously. These techniques have evolved over the years to take advantage of advancements in programming languages, such as reflection. However, these techniques require mechanisms to evaluate if a candidate patch solves the failure condition. Some rely on test cases that capture the context under which the
program failed – the patch applied can then be considered as a successful patch if the test result changes from failing to passing. Although test cases are an effective mechanism to govern the applicability of potential patches, the automatic generation of test cases for a given scenario has not received much attention. ReCrash represents the only known implementation to generate test cases automatically with promising results through the use of low-level instrumentation libraries.
The work reported in this thesis aims to explore this area further and under a different light. It proposes the use of Aspect-Oriented Programming (AOP) – and in particular of AspectJ – as a higher-level paradigm to express the code elements on which monitoring actions can be interleaved with the source code, to create a representation of the context at the most relevant moments of the execution, so that if the code fails, the contextual representation is retained and used at a later time to automatically write a test case. By doing this, the author intends to contribute to fill the gap that prevents the use of automatic
program repair techniques in a self-healing architecture.
The prototype implementation engineered as part of this research was evaluated along three dimensions: memory usage, execution time and binary size. The evaluation results suggest that (1) AspectJ introduces significant overhead with respect to execution time, (2) the implementation algorithm causes a tremendous strain on garbage collection, and (3) AspectJ incorporates tens of additional lines of code, which account for a mean size increase to every binary file of a factor of ten compared to the original size. The comparative analysis with ReCrash shows that the algorithm and data structures…
Advisors/Committee Members: Müller, Hausi A. (supervisor).
Subjects/Keywords: Autonomic Computing; Self Healing; AOP; Aspect Oriented Programming; AspectJ; Automatic Program Repair; Test Cases
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Murguia, G. (2020). Autonomic test case generation of failing code using AOP. (Masters Thesis). University of Victoria. Retrieved from http://hdl.handle.net/1828/12096
Chicago Manual of Style (16th Edition):
Murguia, Giovanni. “Autonomic test case generation of failing code using AOP.” 2020. Masters Thesis, University of Victoria. Accessed January 22, 2021.
http://hdl.handle.net/1828/12096.
MLA Handbook (7th Edition):
Murguia, Giovanni. “Autonomic test case generation of failing code using AOP.” 2020. Web. 22 Jan 2021.
Vancouver:
Murguia G. Autonomic test case generation of failing code using AOP. [Internet] [Masters thesis]. University of Victoria; 2020. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/1828/12096.
Council of Science Editors:
Murguia G. Autonomic test case generation of failing code using AOP. [Masters Thesis]. University of Victoria; 2020. Available from: http://hdl.handle.net/1828/12096
16.
Alkhalaf, Muath.
Automatic Detection and Repair of Input Validation and Sanitization Bugs.
Degree: 2014, University of California – eScholarship, University of California
URL: http://www.escholarship.org/uc/item/0dx20255
► A crucial problem in developing dependable web applications is thecorrectness of the input validation and sanitization. Bugs in stringmanipulation operations used for validation and sanitization…
(more)
▼ A crucial problem in developing dependable web applications is thecorrectness of the input validation and sanitization. Bugs in stringmanipulation operations used for validation and sanitization are common,resulting in erroneous application behavior and vulnerabilities that areexploitable by malicious users. In this dissertation, we investigate theproblem of automatic detection and repair of validation and sanitization bugsboth at the client-side (JavaScript) and the server-side (PHP or Java) code.We first present a formal model for input validation and sanitizationfunctions along with a new domain specific intermediate languageto represent them. Then, we show how to extract input validation andsanitization functions in our intermediate language from both client andserver-side code in web applications. After the extraction phase, we useautomata-based static string-analysis techniques to automatically verifyand fix the extracted functions. One of our contributions is the developmentof efficient automata-based string analysis techniques for frequently used,complex string operations.We developed two basic approaches to bug detection and repair: 1)policy-based, and 2) differential. In the policy-based approach, inputvalidation and sanitization policies are expressed using two regularexpressions, one specifying the maximum policy (the upper bound for theset of strings that should be allowed) and the other specifying the minimumpolicy (the lower bound for the set of strings that should be allowed). Usingour string analysis techniques we can identify two types of errors inan input validation and sanitization function: 1) it accepts a set of strings thatis not permitted by the maximum policy (i.e., it is under-constrained),or 2) it rejects a set of strings that is permitted by the minimum policy(i.e., it is over-constrained).Our differential bug detection and repair approach does not require anypolicy specifications. It exploits the fact that, in web applications,developers typically perform redundant input validation and sanitizationin both the client and the server-side since client-side checks canbe by-passed. Using automata-based string analysis, we compare theinput validation and sanitization functions extracted from the client- andserver-side code, and identify and report the inconsistencies between them.Finally, we present an automated differential repair technique that canrepair client and server-side code with respect to each other, or acrossapplications in order to strengthen the validation and sanitizationchecks. Given a reference and a target function, our differential repairtechnique strengthens the validation and sanitization operations in thetarget function based on the reference function by automatically generatinga set of patches.We experimented with a number of real world web applications and found manybugs and vulnerabilities. Our analysis generates counter-example behaviorsdemonstrating the detected bugs and vulnerabilities to help the developerswith the debugging process. Moreover, we automatically…
Subjects/Keywords: Computer science; Automata; Formal Methods; Model Checking; Program Repair; Security; Software Verification
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Alkhalaf, M. (2014). Automatic Detection and Repair of Input Validation and Sanitization Bugs. (Thesis). University of California – eScholarship, University of California. Retrieved from http://www.escholarship.org/uc/item/0dx20255
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Chicago Manual of Style (16th Edition):
Alkhalaf, Muath. “Automatic Detection and Repair of Input Validation and Sanitization Bugs.” 2014. Thesis, University of California – eScholarship, University of California. Accessed January 22, 2021.
http://www.escholarship.org/uc/item/0dx20255.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
MLA Handbook (7th Edition):
Alkhalaf, Muath. “Automatic Detection and Repair of Input Validation and Sanitization Bugs.” 2014. Web. 22 Jan 2021.
Vancouver:
Alkhalaf M. Automatic Detection and Repair of Input Validation and Sanitization Bugs. [Internet] [Thesis]. University of California – eScholarship, University of California; 2014. [cited 2021 Jan 22].
Available from: http://www.escholarship.org/uc/item/0dx20255.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Council of Science Editors:
Alkhalaf M. Automatic Detection and Repair of Input Validation and Sanitization Bugs. [Thesis]. University of California – eScholarship, University of California; 2014. Available from: http://www.escholarship.org/uc/item/0dx20255
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation

Virginia Tech
17.
Zhang, Lu.
Runtime Verification and Debugging of Concurrent Software.
Degree: PhD, Computer Engineering, 2016, Virginia Tech
URL: http://hdl.handle.net/10919/71882
► Our reliance on software has been growing fast over the past decades as the pervasive use of computer and software penetrated not only our daily…
(more)
▼ Our reliance on software has been growing fast over the past decades as the pervasive use of computer and software penetrated not only our daily life but also many critical applications. As the computational power of multi-core processors and other parallel hardware keeps increasing, concurrent software that exploit these parallel computing hardware become crucial for achieving high performance. However, developing correct and efficient concurrent software is a difficult
task for programmers due to the inherent nondeterminism in their executions. As a result, concurrency related software bugs are among the most troublesome in practice and have caused severe problems in recent years.
In this dissertation, I propose a series of new and fully automated methods for verifying and debugging concurrent software. They cover the detection, prevention, classification, and
repair of some important types of bugs in the implementation of concurrent data structures and client-side web applications. These methods can be adopted at various stages of the software development life cycle, to help programmers write concurrent software correctly as well as efficiently.
Advisors/Committee Members: Wang, Chao (committeechair), Hsiao, Michael S. (committeechair), Zeng, Haibo (committee member), Lee, Dongyoon (committee member), Jung, Changhee (committee member).
Subjects/Keywords: Concurrency; Verification; Debugging; Program Repair; Quasi Linearizability; Concurrent Data Structure; Web Application; JavaScript
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Zhang, L. (2016). Runtime Verification and Debugging of Concurrent Software. (Doctoral Dissertation). Virginia Tech. Retrieved from http://hdl.handle.net/10919/71882
Chicago Manual of Style (16th Edition):
Zhang, Lu. “Runtime Verification and Debugging of Concurrent Software.” 2016. Doctoral Dissertation, Virginia Tech. Accessed January 22, 2021.
http://hdl.handle.net/10919/71882.
MLA Handbook (7th Edition):
Zhang, Lu. “Runtime Verification and Debugging of Concurrent Software.” 2016. Web. 22 Jan 2021.
Vancouver:
Zhang L. Runtime Verification and Debugging of Concurrent Software. [Internet] [Doctoral dissertation]. Virginia Tech; 2016. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/10919/71882.
Council of Science Editors:
Zhang L. Runtime Verification and Debugging of Concurrent Software. [Doctoral Dissertation]. Virginia Tech; 2016. Available from: http://hdl.handle.net/10919/71882

Université du Luxembourg
18.
Koyuncu, Anil.
Boosting Automated Program Repair for Adoption By Practitioners.
Degree: 2020, Université du Luxembourg
URL: http://orbilu.uni.lu/handle/10993/45073
► Automated program repair (APR) attracts a huge interest from research and industry as the ultimate target in automation of software maintenance. Towards realizing this automation…
(more)
▼ Automated
program repair (APR) attracts a huge interest from research and industry as the ultimate target in automation of software maintenance. Towards realizing this automation promise, the research community has explored various ideas and techniques, which are increasingly demonstrating that APR is no longer fictional. Although literature techniques constantly set new records in fixing a significant fraction of defects within well-established benchmarks, we are not aware of large-scale adoption of APR in practice. Meanwhile, open-source and commercial organizations have started to reflect on the potential of integrating some automated steps in the software development cycle. Actually, the current practice has several development settings that use a number of tools to automate and systematize various tasks such as code style checking, bug detection, and systematic patching.
Our work is motivated by this fact. We advocate that systematic and empirical exploration of the current practice that leverage tools to automate debugging tasks would provide valuable insights for rethinking and boosting the APR agenda towards its acceptability by developer communities. We have identified three investigation axes in this dissertation. First, mining software repositories towards understanding code change properties that could be valuable to guide
program repair. Second, analyzing communication channels in software development in order to assess to what extent they could be relevant in a real-world
program repair scenario. Third, exploring generic concepts of patching in the literature for establishing a common foundation for
program repair pipelines that can be integrated with industrial settings.
This dissertation makes the following contributions to the community:
• An empirical study of tool support in a real development setting providing concrete insights on the acceptance, stability and the nature of bugs being fixed by manually-craft patches vs tool-supported patches and manifests opportunities for improving automated
repair techniques.
• A novel information retrieval based bug localization approach that learns how to compute the similarity scores of various types of features.
• An automated mining strategy to infer fix pattern that can be integrated to automated
program repair pipelines.
• A practical bug report driven
program repair pipeline.
Advisors/Committee Members: Le Traon, Yves [superviser], Klein, Jacques [president of the jury], Bissyande, Tegawendé François D Assise [member of the jury], Barr, Earl [member of the jury], Pradel, Michael [member of the jury].
Subjects/Keywords: program repair; Engineering, computing & technology :: Computer science [C05]; Ingénierie, informatique & technologie :: Sciences informatiques [C05]
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Koyuncu, A. (2020). Boosting Automated Program Repair for Adoption By Practitioners. (Doctoral Dissertation). Université du Luxembourg. Retrieved from http://orbilu.uni.lu/handle/10993/45073
Chicago Manual of Style (16th Edition):
Koyuncu, Anil. “Boosting Automated Program Repair for Adoption By Practitioners.” 2020. Doctoral Dissertation, Université du Luxembourg. Accessed January 22, 2021.
http://orbilu.uni.lu/handle/10993/45073.
MLA Handbook (7th Edition):
Koyuncu, Anil. “Boosting Automated Program Repair for Adoption By Practitioners.” 2020. Web. 22 Jan 2021.
Vancouver:
Koyuncu A. Boosting Automated Program Repair for Adoption By Practitioners. [Internet] [Doctoral dissertation]. Université du Luxembourg; 2020. [cited 2021 Jan 22].
Available from: http://orbilu.uni.lu/handle/10993/45073.
Council of Science Editors:
Koyuncu A. Boosting Automated Program Repair for Adoption By Practitioners. [Doctoral Dissertation]. Université du Luxembourg; 2020. Available from: http://orbilu.uni.lu/handle/10993/45073
19.
MECHTAEV SERGEY.
SEMANTIC PROGRAM REPAIR.
Degree: 2018, National University of Singapore
URL: http://scholarbank.nus.edu.sg/handle/10635/145447
Subjects/Keywords: program repair. program synthesis; debugging; symbolic execution; program analysis; software verification
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
SERGEY, M. (2018). SEMANTIC PROGRAM REPAIR. (Thesis). National University of Singapore. Retrieved from http://scholarbank.nus.edu.sg/handle/10635/145447
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Chicago Manual of Style (16th Edition):
SERGEY, MECHTAEV. “SEMANTIC PROGRAM REPAIR.” 2018. Thesis, National University of Singapore. Accessed January 22, 2021.
http://scholarbank.nus.edu.sg/handle/10635/145447.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
MLA Handbook (7th Edition):
SERGEY, MECHTAEV. “SEMANTIC PROGRAM REPAIR.” 2018. Web. 22 Jan 2021.
Vancouver:
SERGEY M. SEMANTIC PROGRAM REPAIR. [Internet] [Thesis]. National University of Singapore; 2018. [cited 2021 Jan 22].
Available from: http://scholarbank.nus.edu.sg/handle/10635/145447.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Council of Science Editors:
SERGEY M. SEMANTIC PROGRAM REPAIR. [Thesis]. National University of Singapore; 2018. Available from: http://scholarbank.nus.edu.sg/handle/10635/145447
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation

University of New Mexico
20.
Nguyen, Thanh V.
Automating Program Verification and Repair Using Invariant Analysis and Test Input Generation.
Degree: Department of Computer Science, 2010, University of New Mexico
URL: http://hdl.handle.net/1928/24584
► Software bugs are a persistent feature of daily life – crashing web browsers, allowing cyberattacks, and distorting the results of scientific computations. One approach to improving…
(more)
▼ Software bugs are a persistent feature of daily life – crashing web browsers, allowing cyberattacks, and distorting the results of scientific computations. One approach to improving software uses
program invariants – mathematical descriptions of
program behaviors – to verify code and detect bugs. Current invariant generation techniques lack support for complex yet important forms of invariants, such as general polynomial relations and properties of arrays. As a result, we lack the ability to conduct precise analysis of programs that use this common data structure. This dissertation presents DIG, a static and dynamic analysis framework for discovering several useful classes of
program invariants, including (i) nonlinear polynomial relations, which are fundamental to many scientific applications; disjunctive invariants, (ii) which express branching behaviors in programs; and (iii) properties about multidimensional arrays, which appear in many practical applications. We describe theoretical and empirical results showing that DIG can efficiently and accurately find many important invariants in real-world uses, e.g., polynomial properties in numerical algorithms and array relations in a full AES encryption implementation. Automatic
program verification and synthesis are long-standing problems in computer science. However, there has been a lot of work on
program verification and less so on
program synthesis. Consequently, important synthesis tasks, e.g., generating
program repairs, remain difficult and time-consuming. This dissertation proves that certain formulations of verification and synthesis are equivalent, allowing for direct applications of techniques and tools between these two research areas. Based on these ideas, we develop CETI, a tool that leverages existing verification techniques and tools for automatic
program repair. Experimental results show that CETI can have higher success rates than many other standard
program repair methods.
Advisors/Committee Members: Forrest, Stephanie, Kapur, Deepak, Stefanovic, Darko, Weimer, Westley.
Subjects/Keywords: dynamic analysis; invariant generation; program repair; program synthesis; program verification; theorem proving
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Nguyen, T. V. (2010). Automating Program Verification and Repair Using Invariant Analysis and Test Input Generation. (Doctoral Dissertation). University of New Mexico. Retrieved from http://hdl.handle.net/1928/24584
Chicago Manual of Style (16th Edition):
Nguyen, Thanh V. “Automating Program Verification and Repair Using Invariant Analysis and Test Input Generation.” 2010. Doctoral Dissertation, University of New Mexico. Accessed January 22, 2021.
http://hdl.handle.net/1928/24584.
MLA Handbook (7th Edition):
Nguyen, Thanh V. “Automating Program Verification and Repair Using Invariant Analysis and Test Input Generation.” 2010. Web. 22 Jan 2021.
Vancouver:
Nguyen TV. Automating Program Verification and Repair Using Invariant Analysis and Test Input Generation. [Internet] [Doctoral dissertation]. University of New Mexico; 2010. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/1928/24584.
Council of Science Editors:
Nguyen TV. Automating Program Verification and Repair Using Invariant Analysis and Test Input Generation. [Doctoral Dissertation]. University of New Mexico; 2010. Available from: http://hdl.handle.net/1928/24584

Stellenbosch University
21.
Nickerson, Brendon Mark.
Development of an integrated numerical method for the fatigue analysis of railway bogies.
Degree: MEng, Mechanical and Mechatronic Engineering, 2017, Stellenbosch University
URL: http://hdl.handle.net/10019.1/101072
► ENGLISH ABSTRACT: This study focuses on the creation of a numerical simulation process that can be used to determine the fatigue life of railway bogies,…
(more)
▼ ENGLISH ABSTRACT: This study focuses on the creation of a numerical simulation process that can
be used to determine the fatigue life of railway bogies, using the Commonwealth
railway bogie of the class 5M train in South Africa as example. The
numerical simulation is intended for use in future research on railway bogies.
The research is supported and funded by the Passenger Rail Agency of South
Africa (PRASA) Engineering Research Group at Stellenbosch University. A finite
element (FE) model of the bogie has been created using an accurate three
dimensional computer aided drawing (CAD) model, supplied by the PRASA
Engineering Research Group. The FE model has been used to determine stress
distributions due to unit loads applied at the primary and secondary suspension
attachment points. Dynamic load cases have been determined through
simulation of spring-mass-damper models representing the train and track systems.
The load cases have been applied to the FE model stress distributions
and superimposed to obtain stress histories. A script has been coded in Python
to determine fatigue life from the stress histories. The process has been designed
in such a way that each component can be altered and refined, allowing
future research opportunities and refinements such as expanding the process
to be applied to other bogies or allowing actual measured track data to be
used as input for determining dynamic loads. Further research is required to
validate and improve the numerical process.
AFRIKAANSE OPSOMMING: Hierdie navorsing fokus op die daarstelling van ’n numeriese proses wat gebruik
kan word om die vermoeidheidslewe van spoorlyn draaistelle te voorspel. Die
"Commonwealth" spoorlyn draaistel van ’n Suid Afrikaans 5M trein word as
voorbeeld gebruik. Die navorsing word ondersteun en befonds deur die "Passenger
Rail Agency of South Africa (PRASA) Engineering Research Group" by
Stellenbosch Universiteit. ’n Eindige element (EE) model van die draaistel was
geskep deur die gebruik van ’n akkurate drie dimensionele rekenaargesteunde
tekenprogram model, wat deur die PRASA Engineering Research Group verskaf
is. Die EE model is gebruik om die verspreiding van die spanning in
die draaistel te bereken as gevolg van eenheidslaste op die primêre en sekondêr
veringstelsel punte. Dinamiese lasgevalle is deur die gebruik van ’n veer-massademper
model van die trein en spoor sisteme bepaal. Die lasgevalle is op die EE
model se spanningsvelde toegepas en gekombineer om die spanninggeskiedenis
te bepaal. Die kode wat hierdie geskiedenis gebruik om die vermoeidheidslewe
te voorspel, is in Python geskryf. Die hele proses is ontwerp so dat elke komponent
op sy eie verfyn kan word. Dit skep verdere navorsingsgeleenthede soos
studies op ander draaistelle of die gebruik van gemete spoor data as inset vir
die dinamiese model. Verdere norvorsing is nodig om die proses te verbeter en
geldig te maak.
Advisors/Committee Members: Venter, G., Stellenbosch University. Faculty of Engineering. Dept. of Mechanical and Mechatronic Engineering..
Subjects/Keywords: Car trucks (Railroads) – Fatigue; Finite element method; Dynamic models (Computer program language); Railroad cars – Wheels – Maintenance and repair; UCTD
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Nickerson, B. M. (2017). Development of an integrated numerical method for the fatigue analysis of railway bogies. (Thesis). Stellenbosch University. Retrieved from http://hdl.handle.net/10019.1/101072
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Chicago Manual of Style (16th Edition):
Nickerson, Brendon Mark. “Development of an integrated numerical method for the fatigue analysis of railway bogies.” 2017. Thesis, Stellenbosch University. Accessed January 22, 2021.
http://hdl.handle.net/10019.1/101072.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
MLA Handbook (7th Edition):
Nickerson, Brendon Mark. “Development of an integrated numerical method for the fatigue analysis of railway bogies.” 2017. Web. 22 Jan 2021.
Vancouver:
Nickerson BM. Development of an integrated numerical method for the fatigue analysis of railway bogies. [Internet] [Thesis]. Stellenbosch University; 2017. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/10019.1/101072.
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation
Council of Science Editors:
Nickerson BM. Development of an integrated numerical method for the fatigue analysis of railway bogies. [Thesis]. Stellenbosch University; 2017. Available from: http://hdl.handle.net/10019.1/101072
Note: this citation may be lacking information needed for this citation format:
Not specified: Masters Thesis or Doctoral Dissertation

University of South Carolina
22.
DELGADO DIAZ, DIANA CAROLINA.
Functional and Molecular Effects of Therapeutic Ultrasound On Skeletal Muscle Repair.
Degree: PhD, Exercise Science, 2012, University of South Carolina
URL: https://scholarcommons.sc.edu/etd/1204
► Skeletal muscle injuries are common in athletic and non-athletic populations and affect muscle function, mobility, and thereby quality of life; muscle rehabilitation constitute a…
(more)
▼ Skeletal muscle injuries are common in athletic and non-athletic populations and affect muscle function, mobility, and thereby quality of life; muscle rehabilitation constitute a challenge in physical therapy and sports medicine. Therapeutic ultrasound (TUS) is one of the most commonly used modality in muscular injuries in order to reduce edema and pain, and accelerate tissue
repair/regeneration, however the mechanisms of action of TUS are not clear yet. In addition, there is little clinical evidence from to support that TUS enhances regeneration of skeletal muscle following injury. The aim of this study was to determine the effects of TUS at a set combination of parameters on muscular performance and regeneration
program after exercise-induced damage, and its autonomous effects on muscle cells proliferation, differentiation and growth. Two models were used for the purpose of this study, human (healthy, college-aged individuals) and cell culture of muscle cells (C2C12). Three components of muscular performance of healing human skeletal muscle were examined in response to 7 consecutive TUS treatments. Satellite cell myogenic
program in humans (females and males) in response to TUS was examined 6h after TUS treatment by gene expression of myogenic regulatory factors and immunofluorescence for satellite cell (SC) counting. The autonomous effect of three consecutive TUS treatments on muscle cells was examined during proliferation, by cell counting and densitometry, and differentiation by determination of fusion index, myotube diameter and number of myonuclei per myotube. Protein synthesis and protein degradation were examined by relative protein phosphorilation of P70S6K and protein levels of MURF-1. During muscle healing process, TUS enhanced the muscle's capacity to contract throughout the range of motion (work (J)) compared to sham treatment (p=0.02). Acutely, TUS regulated the myogenic
program of satellite cells based upon the skeletal muscle's tissue status and gender. In healing muscle, TUS cancelled the effect of exercise in regards the number of SCs in males and females (no differences between TUS treated vs. untreated, p=0.9), increased the expression of cyclin-D1 (1.9±0.3-fold, p=0.008) in males and down regulated gene expression of p21(1.59±0.3-fold, p=0.005) in females. In response to TUS alone, females exhibited increase in the number of activated/proliferating satellite cells of 80% (MyoD positive cells) (p=0.01) and males exhibited an increase of 122% (p=0.001). In damaged skeletal muscle, TUS did not induce change in the number of satellite cells in either females or males for any of the variables examined (p=0.09). Correlation analysis showed that undamaged muscle Cyclin D1 has a negative correlation (r=-0.48, p=0.04) with the number of MyoD positive cells…
Advisors/Committee Members: Matthew C Kostek.
Subjects/Keywords: Exercise Science; Kinesiology; Life Sciences; muscle cells differentiation; muscular performance; myogenic program; satellite cells; skeletal muscle repair; Therapeutic ultrasound
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
DELGADO DIAZ, D. C. (2012). Functional and Molecular Effects of Therapeutic Ultrasound On Skeletal Muscle Repair. (Doctoral Dissertation). University of South Carolina. Retrieved from https://scholarcommons.sc.edu/etd/1204
Chicago Manual of Style (16th Edition):
DELGADO DIAZ, DIANA CAROLINA. “Functional and Molecular Effects of Therapeutic Ultrasound On Skeletal Muscle Repair.” 2012. Doctoral Dissertation, University of South Carolina. Accessed January 22, 2021.
https://scholarcommons.sc.edu/etd/1204.
MLA Handbook (7th Edition):
DELGADO DIAZ, DIANA CAROLINA. “Functional and Molecular Effects of Therapeutic Ultrasound On Skeletal Muscle Repair.” 2012. Web. 22 Jan 2021.
Vancouver:
DELGADO DIAZ DC. Functional and Molecular Effects of Therapeutic Ultrasound On Skeletal Muscle Repair. [Internet] [Doctoral dissertation]. University of South Carolina; 2012. [cited 2021 Jan 22].
Available from: https://scholarcommons.sc.edu/etd/1204.
Council of Science Editors:
DELGADO DIAZ DC. Functional and Molecular Effects of Therapeutic Ultrasound On Skeletal Muscle Repair. [Doctoral Dissertation]. University of South Carolina; 2012. Available from: https://scholarcommons.sc.edu/etd/1204

University of New South Wales
23.
Haski, Roberta.
Microsomal metabolic activity and DNA repair processes as determinants of carcinogen-induced DNA damage.
Degree: Medicine. Pathology, 1982, University of New South Wales
URL: http://handle.unsw.edu.au/1959.4/63993
;
https://unsworks.unsw.edu.au/fapi/datastream/unsworks:61227/SOURCE01?view=true
Subjects/Keywords: DNA repair; Microsomes; Oncology; Thesis Digitisation Program
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Haski, R. (1982). Microsomal metabolic activity and DNA repair processes as determinants of carcinogen-induced DNA damage. (Masters Thesis). University of New South Wales. Retrieved from http://handle.unsw.edu.au/1959.4/63993 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:61227/SOURCE01?view=true
Chicago Manual of Style (16th Edition):
Haski, Roberta. “Microsomal metabolic activity and DNA repair processes as determinants of carcinogen-induced DNA damage.” 1982. Masters Thesis, University of New South Wales. Accessed January 22, 2021.
http://handle.unsw.edu.au/1959.4/63993 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:61227/SOURCE01?view=true.
MLA Handbook (7th Edition):
Haski, Roberta. “Microsomal metabolic activity and DNA repair processes as determinants of carcinogen-induced DNA damage.” 1982. Web. 22 Jan 2021.
Vancouver:
Haski R. Microsomal metabolic activity and DNA repair processes as determinants of carcinogen-induced DNA damage. [Internet] [Masters thesis]. University of New South Wales; 1982. [cited 2021 Jan 22].
Available from: http://handle.unsw.edu.au/1959.4/63993 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:61227/SOURCE01?view=true.
Council of Science Editors:
Haski R. Microsomal metabolic activity and DNA repair processes as determinants of carcinogen-induced DNA damage. [Masters Thesis]. University of New South Wales; 1982. Available from: http://handle.unsw.edu.au/1959.4/63993 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:61227/SOURCE01?view=true

University of New South Wales
24.
Vizesi, Frank.
The creation and repair of osteochondral defects and the effect on the opposing surfaces.
Degree: Graduate School of Biomedical Engineering, 2008, University of New South Wales
URL: http://handle.unsw.edu.au/1959.4/43407
;
https://unsworks.unsw.edu.au/fapi/datastream/unsworks:7091/SOURCE01?view=true
► The repair of articular cartilage defects is a topic that has received significant focus from both basic science and clinical perspectives. The current gold standard…
(more)
▼ The repair of articular cartilage defects is a topic that has received significant focus from both basic science and clinical perspectives. The current gold standard treatment for significantly damaged or degenerated articular cartilage in the knee is a total joint replacement, although there are several drawbacks including reduced range of motion and increased instability. Whilst the total knee replacement will continue to be a valuable treatment, there is a need to find alternatives and part of the solution is having an appropriate animal model to effectively evaluate said alternative treatments.The first part of this dissertation describes the characterization of an ovine osteochondral defect model which ultimately could be used to validate the efficacy of a variety of osteochondral implants. The effect of this femoral defect on the tibial surface, including the meniscus, was also studied and a metallic resurfacing device (HemiCAP) evaluated for its efficacy in protecting the knee from further degenerative changes. Additionally, pressure footprint and contact stresses were measured with flexible pressure sensors at flexion angles and loads determined from the sheep gaitcycle. This study found that the HemiCAP device increased peak pressure when compared to all other conditions tested, especially at a point corresponding to heel strike. Since loading is known to modulate bone remodelling, micro computed tomography was used to measure changes in the subchondral and cancellous bone on the tibia opposing the surgical site. Biologically, there were no significant differences detected in the knees treated with the HemiCAP device when compared with those that had untreated osteochondral defects, which suggests that the HemiCAP device is not effective in protecting against tibial degeneration, but at least it does no more harm than not treating the defect in the first place.
Subjects/Keywords: Articular Cartilage; Osteochondral Defect Repair; Thesis Digitisation Program
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Vizesi, F. (2008). The creation and repair of osteochondral defects and the effect on the opposing surfaces. (Doctoral Dissertation). University of New South Wales. Retrieved from http://handle.unsw.edu.au/1959.4/43407 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:7091/SOURCE01?view=true
Chicago Manual of Style (16th Edition):
Vizesi, Frank. “The creation and repair of osteochondral defects and the effect on the opposing surfaces.” 2008. Doctoral Dissertation, University of New South Wales. Accessed January 22, 2021.
http://handle.unsw.edu.au/1959.4/43407 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:7091/SOURCE01?view=true.
MLA Handbook (7th Edition):
Vizesi, Frank. “The creation and repair of osteochondral defects and the effect on the opposing surfaces.” 2008. Web. 22 Jan 2021.
Vancouver:
Vizesi F. The creation and repair of osteochondral defects and the effect on the opposing surfaces. [Internet] [Doctoral dissertation]. University of New South Wales; 2008. [cited 2021 Jan 22].
Available from: http://handle.unsw.edu.au/1959.4/43407 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:7091/SOURCE01?view=true.
Council of Science Editors:
Vizesi F. The creation and repair of osteochondral defects and the effect on the opposing surfaces. [Doctoral Dissertation]. University of New South Wales; 2008. Available from: http://handle.unsw.edu.au/1959.4/43407 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:7091/SOURCE01?view=true

University of New South Wales
25.
Ward, Ewan Janes.
Localization within chromatin of DNA damage and repair induced in vivo by a carcinogen.
Degree: Faculty of Medicine, 1985, University of New South Wales
URL: http://handle.unsw.edu.au/1959.4/59626
;
https://unsworks.unsw.edu.au/fapi/datastream/unsworks:49156/SOURCE01?view=true
Subjects/Keywords: Carcinogenesis; Chromatin; DNA repair; Thesis Digitisation Program
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Ward, E. J. (1985). Localization within chromatin of DNA damage and repair induced in vivo by a carcinogen. (Doctoral Dissertation). University of New South Wales. Retrieved from http://handle.unsw.edu.au/1959.4/59626 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:49156/SOURCE01?view=true
Chicago Manual of Style (16th Edition):
Ward, Ewan Janes. “Localization within chromatin of DNA damage and repair induced in vivo by a carcinogen.” 1985. Doctoral Dissertation, University of New South Wales. Accessed January 22, 2021.
http://handle.unsw.edu.au/1959.4/59626 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:49156/SOURCE01?view=true.
MLA Handbook (7th Edition):
Ward, Ewan Janes. “Localization within chromatin of DNA damage and repair induced in vivo by a carcinogen.” 1985. Web. 22 Jan 2021.
Vancouver:
Ward EJ. Localization within chromatin of DNA damage and repair induced in vivo by a carcinogen. [Internet] [Doctoral dissertation]. University of New South Wales; 1985. [cited 2021 Jan 22].
Available from: http://handle.unsw.edu.au/1959.4/59626 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:49156/SOURCE01?view=true.
Council of Science Editors:
Ward EJ. Localization within chromatin of DNA damage and repair induced in vivo by a carcinogen. [Doctoral Dissertation]. University of New South Wales; 1985. Available from: http://handle.unsw.edu.au/1959.4/59626 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:49156/SOURCE01?view=true

University of New South Wales
26.
Haber, Michelle.
Structural analysis by BD-cellulose chromatography of mammalian DNA during repair, replication and degradation.
Degree: Medicine. Pathology, 1984, University of New South Wales
URL: http://handle.unsw.edu.au/1959.4/68148
;
https://unsworks.unsw.edu.au/fapi/datastream/unsworks:68950/SOURCE01?view=true
Subjects/Keywords: DNA; DNA repair; Chromatographic analysis; Thesis Digitisation Program
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Haber, M. (1984). Structural analysis by BD-cellulose chromatography of mammalian DNA during repair, replication and degradation. (Doctoral Dissertation). University of New South Wales. Retrieved from http://handle.unsw.edu.au/1959.4/68148 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:68950/SOURCE01?view=true
Chicago Manual of Style (16th Edition):
Haber, Michelle. “Structural analysis by BD-cellulose chromatography of mammalian DNA during repair, replication and degradation.” 1984. Doctoral Dissertation, University of New South Wales. Accessed January 22, 2021.
http://handle.unsw.edu.au/1959.4/68148 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:68950/SOURCE01?view=true.
MLA Handbook (7th Edition):
Haber, Michelle. “Structural analysis by BD-cellulose chromatography of mammalian DNA during repair, replication and degradation.” 1984. Web. 22 Jan 2021.
Vancouver:
Haber M. Structural analysis by BD-cellulose chromatography of mammalian DNA during repair, replication and degradation. [Internet] [Doctoral dissertation]. University of New South Wales; 1984. [cited 2021 Jan 22].
Available from: http://handle.unsw.edu.au/1959.4/68148 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:68950/SOURCE01?view=true.
Council of Science Editors:
Haber M. Structural analysis by BD-cellulose chromatography of mammalian DNA during repair, replication and degradation. [Doctoral Dissertation]. University of New South Wales; 1984. Available from: http://handle.unsw.edu.au/1959.4/68148 ; https://unsworks.unsw.edu.au/fapi/datastream/unsworks:68950/SOURCE01?view=true
27.
Assiri, Fatmah Yousef.
Assessment and improvement of automated program repair mechanisms and components.
Degree: PhD, Computer Science, 2015, Colorado State University
URL: http://hdl.handle.net/10217/166889
► Automated program repair (APR) refers to techniques that locate and fix software faults automatically. An APR technique locates potentially faulty locations, then it searches the…
(more)
▼ Automated
program repair (APR) refers to techniques that locate and fix software faults automatically. An APR technique locates potentially faulty locations, then it searches the space of possible changes to select a
program modification operator (PMO). The selected PMO is applied to a potentially faulty location thereby creating a new version of the faulty
program, called a variant. The variant is validated by executing it against a set of test cases, called
repair tests, which is used to identify a
repair. When all of the
repair tests are successful, the variant is considered a potential
repair. Potential repairs that have passed a set of regression tests in addition to those included in the
repair tests are deemed to be validated repairs. Different mechanisms and components can be applied to
repair faults. APR mechanisms and components have a major impact on APR effectiveness,
repair quality, and performance. APR effectiveness is the ability to and potential repairs.
Repair quality is defined in terms of
repair correctness and maintainability, where
repair correctness indicates how well a potential repaired
program retains required functionality, and
repair maintainability indicates how easy it is to understand and maintain the generated potential
repair. APR performance is the time and steps required to find a potential
repair. Existing APR techniques can successfully fix faults, but the changes inserted to fix faults can have negative consequences on the quality of potential repairs. When a potential
repair is executed against tests that were not included in the
repair tests, the "
repair" can fail. Such failures indicate that the generated
repair is not a validated
repair due to the introduction of other faults or the generated potential
repair does not actually fix the real fault. In addition, some existing techniques add extraneous changes to the code that obfuscate the
program logic and thus reduce its maintainability. APR effectiveness and performance can be dramatically degraded when an APR technique applies many PMOs, uses a large number of
repair tests, locates many statements as potentially faulty locations, or applies a random search algorithm. This dissertation develops improved APR techniques and tool set to help optimize APR effectiveness, the quality of generated potential repairs, and APR performance based on a comprehensive evaluation of APR mechanisms and components. The evaluation involves the following: (1) the PMOs used to produce repairs, (2) the properties of
repair tests used in the APR, (3) the fault localization techniques employed to identify potentially faulty statements, and (4) the search algorithms involved in the
repair process. We also propose a set of guided search algorithms that guide the APR technique to select PMO that fix faults, which thereby improve APR effectiveness,
repair quality, and performance. We performed a set of evaluations to investigate potential improvements in APR effectiveness,
repair quality, and performance. APR effectiveness of different
program…
Advisors/Committee Members: Bieman, James M. (advisor), Ghosh, Sudipto (committee member), France, Robert B. (committee member), Callahan, Gerald (committee member).
Subjects/Keywords: repair quality; automated program repair; repair tests properties; software engineering; and performance; search algorithms; fault localization techniques; APR effectiveness
…1
1.1. Automated Program Repair (APR) Overview… …82
5.6
Benchmark programs to study the impact of repair test suites size. Each Program
is… …141
xii
List of Figures
1.1
Overall Automated Program Repair (APR) Technique… …promise to reduce debugging costs.
1.1. Automated Program Repair (APR) Overview… …Automated program repair (APR) refers to techniques that automatically locate and fix…
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Assiri, F. Y. (2015). Assessment and improvement of automated program repair mechanisms and components. (Doctoral Dissertation). Colorado State University. Retrieved from http://hdl.handle.net/10217/166889
Chicago Manual of Style (16th Edition):
Assiri, Fatmah Yousef. “Assessment and improvement of automated program repair mechanisms and components.” 2015. Doctoral Dissertation, Colorado State University. Accessed January 22, 2021.
http://hdl.handle.net/10217/166889.
MLA Handbook (7th Edition):
Assiri, Fatmah Yousef. “Assessment and improvement of automated program repair mechanisms and components.” 2015. Web. 22 Jan 2021.
Vancouver:
Assiri FY. Assessment and improvement of automated program repair mechanisms and components. [Internet] [Doctoral dissertation]. Colorado State University; 2015. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/10217/166889.
Council of Science Editors:
Assiri FY. Assessment and improvement of automated program repair mechanisms and components. [Doctoral Dissertation]. Colorado State University; 2015. Available from: http://hdl.handle.net/10217/166889
28.
Samanta, Roopsha.
Program reliability through algorithmic design and analysis.
Degree: PhD, Electrical and Computer Engineering, 2013, University of Texas – Austin
URL: http://hdl.handle.net/2152/23103
► Software systems are ubiquitous in today's world and yet, remain vulnerable to the fallibility of human programmers as well as the unpredictability of their operating…
(more)
▼ Software systems are ubiquitous in today's world and yet, remain vulnerable to the fallibility of human programmers as well as the unpredictability of their operating environments. The overarching goal of this dissertation is to develop algorithms to enable automated and efficient design and analysis of
reliable programs.
In the first and second parts of this dissertation, we focus on the development of programs that are free from programming errors. The intent is not to eliminate the human programmer, but instead to complement his or her expertise, with sound and efficient computational techniques, when possible. To this end, we make contributions in two specific domains.
Program debugging – the process of fault localization and error elimination from a
program found to be incorrect – typically relies on expert human intuition and experience, and is often a lengthy, expensive part of the
program development cycle. In the first part of the dissertation, we target automated debugging of sequential programs. A broad and informal statement of the (automated)
program debugging problem is to suitably modify an
erroneous
program, say P, to obtain a correct
program, say P'. This problem is undecidable in general; it is hard to formalize; moreover, it is particularly challenging to assimilate and mechanize the customized, expert
programmer intuition involved in the choices made in manual
program debugging. Our first contribution in this domain is a methodical formalization of the
program debugging problem, that enables automation, while incorporating expert programmer intuition and intent. Our second contribution is a solution framework that can debug infinite-state, imperative, sequential programs written in higher-level programming languages such as C. Boolean programs, which are smaller, finite-state abstractions of infinite-state or large, finite-state programs, have been found to be tractable for
program verification. In this dissertation, we utilize Boolean programs for
program debugging. Our solution framework involves two main steps: (a) automated debugging of a Boolean
program, corresponding to an erroneous
program P, and (b) translation of the corrected Boolean
program into a correct
program P'.
Shared-memory concurrent programs are notoriously difficult to write, verify
and debug; this makes them excellent targets for automated
program
completion, in particular, for synthesis of synchronization code. Extant work
in this domain has focused on either propositional temporal logic specifications with simplistic models of concurrent programs, or more refined
program models with the specifications limited to just safety properties. Moreover, there has been limited effort in developing adaptable and fully-automatic synthesis frameworks that are capable of generating synchronization at different levels of abstraction and granularity. In the
second part of this dissertation, we present a framework for synthesis of
synchronization for shared-memory concurrent programs with respect to temporal logic…
Advisors/Committee Members: Emerson, E. Allen (advisor), Garg, Vijay K. (Vijay Kumar), 1963- (advisor).
Subjects/Keywords: Automated program repair; Automated program debugging; Automated program synthesis; Automated synchronization synthesis; Robustness analysis
…2.3 Program Repair: The Problem . . . . . . . . . . . . . . . . . .
2.4 Solution Overview… …3.3.3 Annotation and Repair of Programs with Procedures
Chapter 4. Cost-Aware Program Repair… …main steps: (a) automated repair of the Boolean program B using permissible
update… …schema to a program
statement some user-defined cost, and a repair budget, the framework com12… …putes a repaired program whose total modification cost does not exceed the repair budget; we…
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Samanta, R. (2013). Program reliability through algorithmic design and analysis. (Doctoral Dissertation). University of Texas – Austin. Retrieved from http://hdl.handle.net/2152/23103
Chicago Manual of Style (16th Edition):
Samanta, Roopsha. “Program reliability through algorithmic design and analysis.” 2013. Doctoral Dissertation, University of Texas – Austin. Accessed January 22, 2021.
http://hdl.handle.net/2152/23103.
MLA Handbook (7th Edition):
Samanta, Roopsha. “Program reliability through algorithmic design and analysis.” 2013. Web. 22 Jan 2021.
Vancouver:
Samanta R. Program reliability through algorithmic design and analysis. [Internet] [Doctoral dissertation]. University of Texas – Austin; 2013. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/2152/23103.
Council of Science Editors:
Samanta R. Program reliability through algorithmic design and analysis. [Doctoral Dissertation]. University of Texas – Austin; 2013. Available from: http://hdl.handle.net/2152/23103

University of New Mexico
29.
Schulte, Eric.
Neutral Networks of Real-World Programs and their Application to Automated Software Evolution.
Degree: Department of Computer Science, 2014, University of New Mexico
URL: http://hdl.handle.net/1928/25819
► The existing software development ecosystem is the product of evolutionary forces, and consequently real-world software is amenable to improvement through automated evolutionary techniques. This dissertation…
(more)
▼ The existing software development ecosystem is the product of evolutionary forces, and consequently real-world software is amenable to improvement through automated evolutionary techniques. This dissertation presents empirical evidence that software is inherently robust to small randomized
program transformations, or 'mutations. Simple and general mutation operations are demonstrated that can be applied to software source code, compiled assembler code, or directly to binary executables. These mutations often generate variants of working programs that differ significantly from the original, yet remain fully functional. Applying successive mutations to the same software
program uncovers large 'neutral networks' of fully functional variants of real-world software projects. These properties of 'mutational robustness' and the corresponding 'neutral networks' have been studied extensively in biology and are believed to be related to the capacity for unsupervised evolution and adaptation. As in biological systems, mutational robustness and neutral networks in software systems enable automated evolution. The dissertation presents several applications that leverage software neutral networks to automate common software development and maintenance tasks. Neutral networks are explored to generate diverse implementations of software for improving runtime security and for proactively repairing latent bugs. Next, a technique is introduced for automatically repairing bugs in the assembler and executables compiled from off-the-shelf software. As demonstration, a proprietary executable is manipulated to patch security vulnerabilities without access to source code or any aid from the software vendor. Finally, software neutral networks are leveraged to optimize complex nonfunctional runtime properties. This optimization technique is used to reduce the energy consumption of the popular PARSEC benchmark applications by 20% as compared to the best available public domain compiler optimizations. The applications presented herein apply evolutionary computation techniques to existing software using common software engineering tools. By enabling evolutionary techniques within the existing software development toolchain, this work is more likely to be of practical benefit to the developers and maintainers of real-world software systems.
Advisors/Committee Members: Forrest, Stephanie, Weimer, Westley, Crandall, Jedidiah, Moses, Melanie.
Subjects/Keywords: software engineering; search based software engineering; software mutational robustness; mutational robustness; evolutionary computation; genetic algorithm; genetic programming; optimization; automated program repair; automated software engineering; bug repair; fitness landscape; instruction set architecture; neutral network
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Schulte, E. (2014). Neutral Networks of Real-World Programs and their Application to Automated Software Evolution. (Doctoral Dissertation). University of New Mexico. Retrieved from http://hdl.handle.net/1928/25819
Chicago Manual of Style (16th Edition):
Schulte, Eric. “Neutral Networks of Real-World Programs and their Application to Automated Software Evolution.” 2014. Doctoral Dissertation, University of New Mexico. Accessed January 22, 2021.
http://hdl.handle.net/1928/25819.
MLA Handbook (7th Edition):
Schulte, Eric. “Neutral Networks of Real-World Programs and their Application to Automated Software Evolution.” 2014. Web. 22 Jan 2021.
Vancouver:
Schulte E. Neutral Networks of Real-World Programs and their Application to Automated Software Evolution. [Internet] [Doctoral dissertation]. University of New Mexico; 2014. [cited 2021 Jan 22].
Available from: http://hdl.handle.net/1928/25819.
Council of Science Editors:
Schulte E. Neutral Networks of Real-World Programs and their Application to Automated Software Evolution. [Doctoral Dissertation]. University of New Mexico; 2014. Available from: http://hdl.handle.net/1928/25819

Université du Luxembourg
30.
Ben Abdessalem (helali), Raja.
Effective Testing Of Advanced Driver Assistance Systems Using Evolutionary Algorithms And Machine Learning.
Degree: 2019, Université du Luxembourg
URL: http://orbilu.uni.lu/handle/10993/39529
► Improving road safety is a major concern for most car manufacturers. In recent years, the development of Advanced Driver Assistance Systems (ADAS) has subsequently seen…
(more)
▼ Improving road safety is a major concern for most car manufacturers. In recent years, the development of Advanced Driver Assistance Systems (ADAS) has subsequently seen a tremendous boost. The development of such systems requires complex testing to ensure vehicle’s safety and reliability. Performing road tests tends to be dangerous, time-consuming, and costly. Hence, a large part of testing for ADAS has to be carried out using physics-based simulation platforms, which are able to emulate a wide range of virtual traffic scenarios and road environments. The main difficulties with simulation-based testing of ADAS are: (1) the test input space is large and multidimensional, (2) simulation platforms provide no guidance to engineers as to which scenarios should be selected for testing, and hence, simulation is limited to a small number of scenarios hand-picked by engineers, and (3) test executions are computationally expensive because they often involve executing high-fidelity mathematical models capturing continuous dynamic behaviors of vehicles and their environment.
The complexity of testing ADAS is further exacerbated when many ADAS are employed together in a self-driving system. In particular, when self-driving systems include many ADAS (i.e., features), they tend to interact and impact one another’s behavior in an unknown way and may lead to conflicting situations. The main challenge here is to detect and manage feature interactions, in particular, those that violate system safety requirements, hence leading to critical failures. In practice, once feature interaction failures are detected, engineers need to devise resolution strategies to resolve potential conflicts between features. Developing resolution strategies is a complex task and despite the extensive domain expertise, these resolution strategies can be erroneous and are too complex to be manually repaired. In this dissertation, in addition to testing individual ADAS, we focus on testing self-driving systems that include several ADAS.
In this dissertation, we propose a set of approaches based on meta-heuristic search and machine learning techniques to automate ADAS testing and to
repair feature interaction failures in self-driving systems. The work presented in this dissertation is motivated by ADAS testing needs at IEE, a world-leading part supplier to the automotive industry. In this dissertation, we focus on the problem of design time testing of ADAS in a simulated environment, relying on Simulink models.
The main research contributions in this dissertation are:
- A testing approach for ADAS that combines multi-objective search with surrogate models to guide testing towards the most critical behaviors of ADAS, and to explore a larger part of the input search space with less computational resources.
- An automated testing algorithm that builds on learnable evolution models and uses classification decision trees to guide the generation of new test scenarios within complex and multidimensional input spaces and help engineers interpret test results.
-…
Advisors/Committee Members: Fonds National de la Recherche - FnR [sponsor], Interdisciplinary Centre for Security, Reliability and Trust (SnT) >, Software Verification and Validation Lab (SVV Lab) [research center], Briand, Lionel [superviser], Nejati, Shiva [superviser], Sabetzadeh, Mehrdad [president of the jury], Baudry, Benoit [member of the jury], Borg, Markus [member of the jury].
Subjects/Keywords: Search-based Software Engineering; Software Testing; Evolutionary algorithms; Automotive Software Systems; Feature Interaction Problem; Program Repair; Engineering, computing & technology :: Computer science [C05]; Ingénierie, informatique & technologie :: Sciences informatiques [C05]
Record Details
Similar Records
Cite
Share »
Record Details
Similar Records
Cite
« Share





❌
APA ·
Chicago ·
MLA ·
Vancouver ·
CSE |
Export
to Zotero / EndNote / Reference
Manager
APA (6th Edition):
Ben Abdessalem (helali), R. (2019). Effective Testing Of Advanced Driver Assistance Systems Using Evolutionary Algorithms And Machine Learning. (Doctoral Dissertation). Université du Luxembourg. Retrieved from http://orbilu.uni.lu/handle/10993/39529
Chicago Manual of Style (16th Edition):
Ben Abdessalem (helali), Raja. “Effective Testing Of Advanced Driver Assistance Systems Using Evolutionary Algorithms And Machine Learning.” 2019. Doctoral Dissertation, Université du Luxembourg. Accessed January 22, 2021.
http://orbilu.uni.lu/handle/10993/39529.
MLA Handbook (7th Edition):
Ben Abdessalem (helali), Raja. “Effective Testing Of Advanced Driver Assistance Systems Using Evolutionary Algorithms And Machine Learning.” 2019. Web. 22 Jan 2021.
Vancouver:
Ben Abdessalem (helali) R. Effective Testing Of Advanced Driver Assistance Systems Using Evolutionary Algorithms And Machine Learning. [Internet] [Doctoral dissertation]. Université du Luxembourg; 2019. [cited 2021 Jan 22].
Available from: http://orbilu.uni.lu/handle/10993/39529.
Council of Science Editors:
Ben Abdessalem (helali) R. Effective Testing Of Advanced Driver Assistance Systems Using Evolutionary Algorithms And Machine Learning. [Doctoral Dissertation]. Université du Luxembourg; 2019. Available from: http://orbilu.uni.lu/handle/10993/39529
◁ [1] [2] ▶
.