{"id":{"repo_id":"texas","oai_identifier":"oai:repositories.lib.utexas.edu:2152/31865"},"canonical_url":"https://search.dev.ndltd.org/etd/texas/oai:repositories.lib.utexas.edu:2152/31865","repository":{"repo_id":"texas","name":"University of Texas","base_url":"https://repositories.lib.utexas.edu/server/oai/request"},"display":{"title":"MuAlloy : an automated mutation system for alloy","abstract":"Mutation is a powerful technique that researchers have studied for several decades in the context of imperative code. For example, mutation testing is commonly considered a &apos;&quot;gold standard&quot;&apos; for test suite quality. Mutation in the context of declarative languages is a less studied problem. This thesis introduces a foundation for mutation-driven analyses for Alloy, a first-order, declarative language based on relations. Specifically, we introduce a family of mutation operators for Alloy models and define algorithms for applying the operators on different parts of the models. We embody these operators and algorithms in our prototype tool MuAlloy that provides a GUI-based front-end for customizing the application of mutation operators. To demonstrate the potential of our approach, we illustrate the use of MuAlloy in two application scenarios: (1) mutation testing for Alloy (in the spirit of traditional mutation testing for imperative languages); and (2) program repair for Alloy using mutation.","abstract_html":"Mutation is a powerful technique that researchers have studied for several decades in the context of imperative code. For example, mutation testing is commonly considered a &amp;apos;&amp;quot;gold standard&amp;quot;&amp;apos; for test suite quality. Mutation in the context of declarative languages is a less studied problem. This thesis introduces a foundation for mutation-driven analyses for Alloy, a first-order, declarative language based on relations. Specifically, we introduce a family of mutation operators for Alloy models and define algorithms for applying the operators on different parts of the models. We embody these operators and algorithms in our prototype tool MuAlloy that provides a GUI-based front-end for customizing the application of mutation operators. To demonstrate the potential of our approach, we illustrate the use of MuAlloy in two application scenarios: (1) mutation testing for Alloy (in the spirit of traditional mutation testing for imperative languages); and (2) program repair for Alloy using mutation.","abstract_has_math":false,"creators":["Wang, Kaiyuan"],"institution":"The University of Texas at Austin","degree_name":"Master of Science in Engineering","degree_level":"Masters","degree_discipline":"Electrical and Computer Engineering","degree_department":null,"school":null,"contributors":[],"advisors":["Khurshid, Sarfraz"],"committee_chairs":[],"committee_members":["Perry, Dewayne E."],"year":2015,"date_issued":"2015-05","date_published":"2015-05","updated_at":"2026-07-24T05:01:18Z","subjects":["MuAlloy","Mutation","Alloy","Mutation testing","Repair"],"languages":["en"],"rights":[],"rights_urls":[],"identifier_entries":[{"key":"dc:identifier","label":"Identifier","values":["doi:10.15781/T2S31M"],"render_values":[{"text":"doi:10.15781/T2S31M","href":"https://doi.org/10.15781/T2S31M","code":true}]}]},"links":{"outbound_url":"http://hdl.handle.net/2152/31865","outbound_label":"Handle","outbound_source":"dc:identifier.uri"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor.advisor","label":"Advisor","values":["Khurshid, Sarfraz"]},{"key":"dc:contributor.committeemember","label":"Committee Member","values":["Perry, Dewayne E."]},{"key":"dc:creator","label":"Author","values":["Wang, Kaiyuan"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.accessioned","label":"Dc Date Accessioned","values":["2015-10-22T17:25:46Z"]},{"key":"dc:date.available","label":"Dc Date Available","values":["2015-10-22T17:25:46Z"]},{"key":"dc:date.issued","label":"Date","values":["2015-05"]},{"key":"dc:type","label":"Dc Type","values":["Thesis"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Electrical and Computer Engineering"]},{"key":"thesis:degree_level","label":"Degree Level","values":["Masters"]},{"key":"thesis:degree_name","label":"Degree Name","values":["Master of Science in Engineering"]},{"key":"thesis:institution_name","label":"Thesis Institution Name","values":["The University of Texas at Austin"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["MuAlloy","Mutation","Alloy","Mutation testing","Repair"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language.iso","label":"Language (ISO)","values":["en"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["doi:10.15781/T2S31M"]},{"key":"dc:identifier.uri","label":"Identifier URI","values":["http://hdl.handle.net/2152/31865"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description","label":"Description","values":["text"]},{"key":"dc:description.abstract","label":"Abstract","values":["Mutation is a powerful technique that researchers have studied for several decades in the context of imperative code. For example, mutation testing is commonly considered a &apos;&quot;gold standard&quot;&apos; for test suite quality. Mutation in the context of declarative languages is a less studied problem. This thesis introduces a foundation for mutation-driven analyses for Alloy, a first-order, declarative language based on relations. Specifically, we introduce a family of mutation operators for Alloy models and define algorithms for applying the operators on different parts of the models. We embody these operators and algorithms in our prototype tool MuAlloy that provides a GUI-based front-end for customizing the application of mutation operators. To demonstrate the potential of our approach, we illustrate the use of MuAlloy in two application scenarios: (1) mutation testing for Alloy (in the spirit of traditional mutation testing for imperative languages); and (2) program repair for Alloy using mutation."]},{"key":"dc:format.mimetype","label":"Dc Format Mimetype","values":["application/pdf"]},{"key":"dc:title","label":"Title","values":["MuAlloy : an automated mutation system for alloy"]}]}],"canonical_facts":{"dc:contributor.advisor":["Khurshid, Sarfraz"],"dc:contributor.committeemember":["Perry, Dewayne E."],"dc:creator":["Wang, Kaiyuan"],"dc:date.accessioned":["2015-10-22T17:25:46Z"],"dc:date.available":["2015-10-22T17:25:46Z"],"dc:date.issued":["2015-05"],"dc:description":["text"],"dc:description.abstract":["Mutation is a powerful technique that researchers have studied for several decades in the context of imperative code. For example, mutation testing is commonly considered a &apos;&quot;gold standard&quot;&apos; for test suite quality. Mutation in the context of declarative languages is a less studied problem. This thesis introduces a foundation for mutation-driven analyses for Alloy, a first-order, declarative language based on relations. Specifically, we introduce a family of mutation operators for Alloy models and define algorithms for applying the operators on different parts of the models. We embody these operators and algorithms in our prototype tool MuAlloy that provides a GUI-based front-end for customizing the application of mutation operators. To demonstrate the potential of our approach, we illustrate the use of MuAlloy in two application scenarios: (1) mutation testing for Alloy (in the spirit of traditional mutation testing for imperative languages); and (2) program repair for Alloy using mutation."],"dc:format.mimetype":["application/pdf"],"dc:identifier":["doi:10.15781/T2S31M"],"dc:identifier.uri":["http://hdl.handle.net/2152/31865"],"dc:language.iso":["en"],"dc:subject":["MuAlloy","Mutation","Alloy","Mutation testing","Repair"],"dc:title":["MuAlloy : an automated mutation system for alloy"],"dc:type":["Thesis"],"thesis:degree_discipline":["Electrical and Computer Engineering"],"thesis:degree_level":["Masters"],"thesis:degree_name":["Master of Science in Engineering"],"thesis:institution_name":["The University of Texas at Austin"]},"updated_at":"2026-07-24T05:01:18Z"}