{"id":{"repo_id":"uiuc","oai_identifier":"oai:www.ideals.illinois.edu:2142/23074"},"canonical_url":"https://search.dev.ndltd.org/etd/uiuc/oai:www.ideals.illinois.edu:2142/23074","repository":{"repo_id":"uiuc","name":"University of Illinois - Urbana-Champaign","base_url":"https://www.ideals.illinois.edu/oai-pmh"},"display":{"title":"Logical error diagnosis","abstract":"There are almost always differences between the behavior intended by a programmer and the behavior actually implemented by his code. These differences are logical errors. The process of locating the cause of these differences is the logical error diagnosis process.","abstract_html":"There are almost always differences between the behavior intended by a programmer and the behavior actually implemented by his code. These differences are logical errors. The process of locating the cause of these differences is the logical error diagnosis process.","abstract_has_math":false,"creators":["Renner, Scott Alexander"],"institution":"University of Illinois at Urbana-Champaign","degree_name":"Ph.D.","degree_level":"Dissertation","degree_discipline":"Computer Science","degree_department":null,"school":null,"contributors":["Harandi, Mehdi T."],"advisors":[],"committee_chairs":[],"committee_members":[],"year":2011,"date_issued":"2011-05-07T14:01:13Z","date_published":"2011-05-07T14:01:13Z","updated_at":"2026-07-22T22:25:21Z","subjects":["Computer Science"],"languages":["eng"],"rights":["Copyright 1990 Renner, Scott Alexander"],"rights_urls":[],"identifier_entries":[{"key":"dc:identifier","label":"Identifier","values":["AAI9114383","(UMI)AAI9114383"],"render_values":[{"text":"AAI9114383","href":null,"code":true},{"text":"(UMI)AAI9114383","href":null,"code":true}]}]},"links":{"outbound_url":"http://hdl.handle.net/2142/23074","outbound_label":"Handle","outbound_source":"dc:identifier"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor","label":"Contributor","values":["Harandi, Mehdi T."]},{"key":"dc:creator","label":"Author","values":["Renner, Scott Alexander"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date","label":"Dc Date","values":["2011-05-07T14:01:13Z","10000-01-01","1990"]},{"key":"dc:type","label":"Dc Type","values":["text"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Computer Science"]},{"key":"thesis:degree_level","label":"Degree Level","values":["Dissertation"]},{"key":"thesis:degree_name","label":"Degree Name","values":["Ph.D."]},{"key":"thesis:institution_name","label":"Thesis Institution Name","values":["University of Illinois at Urbana-Champaign"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Computer Science"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language","label":"Dc Language","values":["eng"]},{"key":"dc:rights","label":"Dc Rights","values":["Copyright 1990 Renner, Scott Alexander"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["AAI9114383","(UMI)AAI9114383","http://hdl.handle.net/2142/23074"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description","label":"Description","values":["There are almost always differences between the behavior intended by a programmer and the behavior actually implemented by his code. These differences are logical errors. The process of locating the cause of these differences is the logical error diagnosis process.","Run-time errors are usually diagnosed through an analysis of the incorrect program's execution behavior. The analysis is divided into two tasks: (1) selection of a segment of the execution history, and (2) determination of the correctness of this segment using an oracle. The objective is to locate a small segment that does not match the programmer's expectations; the error is then known to be in the corresponding piece of source code.","This thesis describes techniques which partially automate this diagnosis process for programs written in Pascal. The segment selection task is treated as a search problem in which the objective is to locate the error with a minimum of effort on the part of the oracle. The search algorithm locates errors without requiring any initial information about their location but can also use clues derived from the error symptoms or supplied by the programmer to reduce the search space. The segment verification task is partially automated by the availability of a high-level query language, which permits the programmer to write partial specifications of correct behavior. These specifications are then automatically evaluated by the debugger. The query language is based on Pascal expressions, with extensions for quantification operators, temporal scoping, and knowledge about data structures.","Made available in DSpace on 2011-05-07T14:01:13Z (GMT). No. of bitstreams: 2 license.txt: 4922 bytes, checksum: 910b249b4beec47e7ab768910c8f966f (MD5) 9114383.pdf: 3708852 bytes, checksum: 66604a19a6fa107a73fe55900376c33a (MD5) Previous issue date: 1990","Item marked as restricted to the 'UIUC Users [automated]' Group (id=2) by Howard Ding (hding2@illinois.edu) on 2011-05-07T15:02:00Z Item is restricted indefinitely.","Restriction data tranferred 2014-07-01T11:29:27-05:00 Original Data Group with Access UIUC Users [automated] Release Date: none Reason: ETDs are only available to UIUC Users without author permission","ETDs are only available to UIUC Users without author permission","U of I Only"]},{"key":"dc:title","label":"Title","values":["Logical error diagnosis"]}]}],"canonical_facts":{"dc:contributor":["Harandi, Mehdi T."],"dc:creator":["Renner, Scott Alexander"],"dc:date":["2011-05-07T14:01:13Z","10000-01-01","1990"],"dc:description":["There are almost always differences between the behavior intended by a programmer and the behavior actually implemented by his code. These differences are logical errors. The process of locating the cause of these differences is the logical error diagnosis process.","Run-time errors are usually diagnosed through an analysis of the incorrect program's execution behavior. The analysis is divided into two tasks: (1) selection of a segment of the execution history, and (2) determination of the correctness of this segment using an oracle. The objective is to locate a small segment that does not match the programmer's expectations; the error is then known to be in the corresponding piece of source code.","This thesis describes techniques which partially automate this diagnosis process for programs written in Pascal. The segment selection task is treated as a search problem in which the objective is to locate the error with a minimum of effort on the part of the oracle. The search algorithm locates errors without requiring any initial information about their location but can also use clues derived from the error symptoms or supplied by the programmer to reduce the search space. The segment verification task is partially automated by the availability of a high-level query language, which permits the programmer to write partial specifications of correct behavior. These specifications are then automatically evaluated by the debugger. The query language is based on Pascal expressions, with extensions for quantification operators, temporal scoping, and knowledge about data structures.","Made available in DSpace on 2011-05-07T14:01:13Z (GMT). No. of bitstreams: 2 license.txt: 4922 bytes, checksum: 910b249b4beec47e7ab768910c8f966f (MD5) 9114383.pdf: 3708852 bytes, checksum: 66604a19a6fa107a73fe55900376c33a (MD5) Previous issue date: 1990","Item marked as restricted to the 'UIUC Users [automated]' Group (id=2) by Howard Ding (hding2@illinois.edu) on 2011-05-07T15:02:00Z Item is restricted indefinitely.","Restriction data tranferred 2014-07-01T11:29:27-05:00 Original Data Group with Access UIUC Users [automated] Release Date: none Reason: ETDs are only available to UIUC Users without author permission","ETDs are only available to UIUC Users without author permission","U of I Only"],"dc:identifier":["AAI9114383","(UMI)AAI9114383","http://hdl.handle.net/2142/23074"],"dc:language":["eng"],"dc:rights":["Copyright 1990 Renner, Scott Alexander"],"dc:subject":["Computer Science"],"dc:title":["Logical error diagnosis"],"dc:type":["text"],"thesis:degree_discipline":["Computer Science"],"thesis:degree_level":["Dissertation"],"thesis:degree_name":["Ph.D."],"thesis:institution_name":["University of Illinois at Urbana-Champaign"]},"updated_at":"2026-07-22T22:25:21Z"}