Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving

Autores
Moscato, Mariano Miguel
Año de publicación
2013
Idioma
inglés
Tipo de recurso
tesis doctoral
Estado
versión publicada
Colaborador/a o director/a de tesis
Frías, Marcelo Fabián
Descripción
El análisis formal de especificaciones de software suele atacarse desde dosenfoques, usualmente llamados: liviano y pesado. En el lado liviano encontramoslenguajes fáciles de aprender y utilizar junto con herramientasautomáticas de análisis, pero de alcance parcial. El lado pesado nos ofrecelograr certeza absoluta, pero a costo de requerir usuarios altamente capacitados. Un buen representante de los métodos livianos es lenguaje de modelado Alloy y su analizador automático: el Alloy Analyzer. Su análisis consisteen transcribir un modelo Alloy a una fórmula proposicional que luego seprocesa utilizando SAT-solvers estándar. Esta transcripción requiere que el usuario establezca cotas en los tamañosde los dominios modelados en la especificación. El análisis, entonces, esparcial, ya que está limitado por esas cotas. Por ello, puede pensarse queno es seguro utilizar el Alloy Analyzer para trabajar en el desarrollo deaplicaciones críticas donde se necesitan resultados concluyentes. En esta tesis presentamos un cálculo basado en álgebras de Fork que permiterealizar demostraciones en cálculo de secuentes sobre especificaciones Alloy. También hemos desarrollado una herramienta (Dynamite) que loimplementa. Dynamite es una extensión del sistema de demostración semiatomático PVS, método pesado ampliamente utilizado por la comunidad. Así, Dynamite consigue complementar el análisis parcial que ofrece Alloy,además de potenciar el esfuerzo realizado durante una demostración usandoel Alloy Analyzer para detectar errores tempranamente, refinar secuentes yproponer términos para utilizar como testigos de propiedades cuantificadasexistencialmente.
Formal analysis of software models can be undertaken following two approaches:the lightweight and the heavyweight. The former offers languageswith simple syntax and semantics, supported by automatic analysis tools. Nevertheless, the analysis they perform is usually partial. The latter providesfull confidence analysis of models, but often requires interaction fromhighly trained users. Alloy is a good example of a lightweight method. Automatic analysisof Alloy models is supported by the Alloy Analyzer, a tool that translatesan Alloy model to a propositional formula that is then analyzed using off-the-shelf SAT-solvers. The translation requires user-provided bounds on thesizes of data domains. The analysis is limited by the bounds, and is thereforepartial. Thus, the Alloy Analyzer may not be appropriate for the analysisof critical applications where more conclusive results are necessary. In this thesis we develop Dynamite, an extension of PVS that embeds acomplete calculus for Alloy. PVS is a well-known heavyweight method. Itprovides a semi-automatic theorem prover for higher order logic. Dynamitecomplements the partial automatic analysis offered by the Alloy Analyzerwith semi-automatic verification through theorem proving. It also improvesthe theorem proving experience by using the Alloy Analyzer to provide automaticfunctionality intended for early detection of errors, proof refinementand witness generation for existentially quantified properties.
Fil: Moscato, Mariano Miguel. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
Materia
DEMOSTRACION DE TEOREMAS INTERACTIVA
SAT-SOLVING
CALCULO PARA ALLOY
PVS
ANALISIS DE ESPECIFICACIONES DE SOFTWARE
INTERACTIVE THEOREM PROVING
SAT-SOLVING
ALLOY CALCULUS
PVS
SPECIFICATION ANALYSIS
Nivel de accesibilidad
acceso abierto
Condiciones de uso
https://creativecommons.org/licenses/by-nc-sa/2.5/ar
Repositorio
Biblioteca Digital (UBA-FCEN)
Institución
Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
OAI Identificador
tesis:tesis_n5428_Moscato

id BDUBAFCEN_74b69b0c7559a096b43f640fcbdcebbf
oai_identifier_str tesis:tesis_n5428_Moscato
network_acronym_str BDUBAFCEN
repository_id_str 1896
network_name_str Biblioteca Digital (UBA-FCEN)
spelling Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-SolvingImprovements to interactive theorem proving of alloy properties using sat-solvingMoscato, Mariano MiguelDEMOSTRACION DE TEOREMAS INTERACTIVASAT-SOLVINGCALCULO PARA ALLOYPVSANALISIS DE ESPECIFICACIONES DE SOFTWAREINTERACTIVE THEOREM PROVINGSAT-SOLVINGALLOY CALCULUSPVSSPECIFICATION ANALYSISEl análisis formal de especificaciones de software suele atacarse desde dosenfoques, usualmente llamados: liviano y pesado. En el lado liviano encontramoslenguajes fáciles de aprender y utilizar junto con herramientasautomáticas de análisis, pero de alcance parcial. El lado pesado nos ofrecelograr certeza absoluta, pero a costo de requerir usuarios altamente capacitados. Un buen representante de los métodos livianos es lenguaje de modelado Alloy y su analizador automático: el Alloy Analyzer. Su análisis consisteen transcribir un modelo Alloy a una fórmula proposicional que luego seprocesa utilizando SAT-solvers estándar. Esta transcripción requiere que el usuario establezca cotas en los tamañosde los dominios modelados en la especificación. El análisis, entonces, esparcial, ya que está limitado por esas cotas. Por ello, puede pensarse queno es seguro utilizar el Alloy Analyzer para trabajar en el desarrollo deaplicaciones críticas donde se necesitan resultados concluyentes. En esta tesis presentamos un cálculo basado en álgebras de Fork que permiterealizar demostraciones en cálculo de secuentes sobre especificaciones Alloy. También hemos desarrollado una herramienta (Dynamite) que loimplementa. Dynamite es una extensión del sistema de demostración semiatomático PVS, método pesado ampliamente utilizado por la comunidad. Así, Dynamite consigue complementar el análisis parcial que ofrece Alloy,además de potenciar el esfuerzo realizado durante una demostración usandoel Alloy Analyzer para detectar errores tempranamente, refinar secuentes yproponer términos para utilizar como testigos de propiedades cuantificadasexistencialmente.Formal analysis of software models can be undertaken following two approaches:the lightweight and the heavyweight. The former offers languageswith simple syntax and semantics, supported by automatic analysis tools. Nevertheless, the analysis they perform is usually partial. The latter providesfull confidence analysis of models, but often requires interaction fromhighly trained users. Alloy is a good example of a lightweight method. Automatic analysisof Alloy models is supported by the Alloy Analyzer, a tool that translatesan Alloy model to a propositional formula that is then analyzed using off-the-shelf SAT-solvers. The translation requires user-provided bounds on thesizes of data domains. The analysis is limited by the bounds, and is thereforepartial. Thus, the Alloy Analyzer may not be appropriate for the analysisof critical applications where more conclusive results are necessary. In this thesis we develop Dynamite, an extension of PVS that embeds acomplete calculus for Alloy. PVS is a well-known heavyweight method. Itprovides a semi-automatic theorem prover for higher order logic. Dynamitecomplements the partial automatic analysis offered by the Alloy Analyzerwith semi-automatic verification through theorem proving. It also improvesthe theorem proving experience by using the Alloy Analyzer to provide automaticfunctionality intended for early detection of errors, proof refinementand witness generation for existentially quantified properties.Fil: Moscato, Mariano Miguel. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.Universidad de Buenos Aires. Facultad de Ciencias Exactas y NaturalesFrías, Marcelo Fabián2013info:eu-repo/semantics/doctoralThesisinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_db06info:ar-repo/semantics/tesisDoctoralapplication/pdfhttps://hdl.handle.net/20.500.12110/tesis_n5428_Moscatoenginfo:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc-sa/2.5/arreponame:Biblioteca Digital (UBA-FCEN)instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesinstacron:UBA-FCEN2025-09-29T13:40:55Ztesis:tesis_n5428_MoscatoInstitucionalhttps://digital.bl.fcen.uba.ar/Universidad públicaNo correspondehttps://digital.bl.fcen.uba.ar/cgi-bin/oaiserver.cgiana@bl.fcen.uba.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:18962025-09-29 13:40:56.669Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesfalse
dc.title.none.fl_str_mv Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving
Improvements to interactive theorem proving of alloy properties using sat-solving
title Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving
spellingShingle Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving
Moscato, Mariano Miguel
DEMOSTRACION DE TEOREMAS INTERACTIVA
SAT-SOLVING
CALCULO PARA ALLOY
PVS
ANALISIS DE ESPECIFICACIONES DE SOFTWARE
INTERACTIVE THEOREM PROVING
SAT-SOLVING
ALLOY CALCULUS
PVS
SPECIFICATION ANALYSIS
title_short Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving
title_full Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving
title_fullStr Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving
title_full_unstemmed Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving
title_sort Mejoras a la demostración interactiva de propiedades Alloy utilizando SAT-Solving
dc.creator.none.fl_str_mv Moscato, Mariano Miguel
author Moscato, Mariano Miguel
author_facet Moscato, Mariano Miguel
author_role author
dc.contributor.none.fl_str_mv Frías, Marcelo Fabián
dc.subject.none.fl_str_mv DEMOSTRACION DE TEOREMAS INTERACTIVA
SAT-SOLVING
CALCULO PARA ALLOY
PVS
ANALISIS DE ESPECIFICACIONES DE SOFTWARE
INTERACTIVE THEOREM PROVING
SAT-SOLVING
ALLOY CALCULUS
PVS
SPECIFICATION ANALYSIS
topic DEMOSTRACION DE TEOREMAS INTERACTIVA
SAT-SOLVING
CALCULO PARA ALLOY
PVS
ANALISIS DE ESPECIFICACIONES DE SOFTWARE
INTERACTIVE THEOREM PROVING
SAT-SOLVING
ALLOY CALCULUS
PVS
SPECIFICATION ANALYSIS
dc.description.none.fl_txt_mv El análisis formal de especificaciones de software suele atacarse desde dosenfoques, usualmente llamados: liviano y pesado. En el lado liviano encontramoslenguajes fáciles de aprender y utilizar junto con herramientasautomáticas de análisis, pero de alcance parcial. El lado pesado nos ofrecelograr certeza absoluta, pero a costo de requerir usuarios altamente capacitados. Un buen representante de los métodos livianos es lenguaje de modelado Alloy y su analizador automático: el Alloy Analyzer. Su análisis consisteen transcribir un modelo Alloy a una fórmula proposicional que luego seprocesa utilizando SAT-solvers estándar. Esta transcripción requiere que el usuario establezca cotas en los tamañosde los dominios modelados en la especificación. El análisis, entonces, esparcial, ya que está limitado por esas cotas. Por ello, puede pensarse queno es seguro utilizar el Alloy Analyzer para trabajar en el desarrollo deaplicaciones críticas donde se necesitan resultados concluyentes. En esta tesis presentamos un cálculo basado en álgebras de Fork que permiterealizar demostraciones en cálculo de secuentes sobre especificaciones Alloy. También hemos desarrollado una herramienta (Dynamite) que loimplementa. Dynamite es una extensión del sistema de demostración semiatomático PVS, método pesado ampliamente utilizado por la comunidad. Así, Dynamite consigue complementar el análisis parcial que ofrece Alloy,además de potenciar el esfuerzo realizado durante una demostración usandoel Alloy Analyzer para detectar errores tempranamente, refinar secuentes yproponer términos para utilizar como testigos de propiedades cuantificadasexistencialmente.
Formal analysis of software models can be undertaken following two approaches:the lightweight and the heavyweight. The former offers languageswith simple syntax and semantics, supported by automatic analysis tools. Nevertheless, the analysis they perform is usually partial. The latter providesfull confidence analysis of models, but often requires interaction fromhighly trained users. Alloy is a good example of a lightweight method. Automatic analysisof Alloy models is supported by the Alloy Analyzer, a tool that translatesan Alloy model to a propositional formula that is then analyzed using off-the-shelf SAT-solvers. The translation requires user-provided bounds on thesizes of data domains. The analysis is limited by the bounds, and is thereforepartial. Thus, the Alloy Analyzer may not be appropriate for the analysisof critical applications where more conclusive results are necessary. In this thesis we develop Dynamite, an extension of PVS that embeds acomplete calculus for Alloy. PVS is a well-known heavyweight method. Itprovides a semi-automatic theorem prover for higher order logic. Dynamitecomplements the partial automatic analysis offered by the Alloy Analyzerwith semi-automatic verification through theorem proving. It also improvesthe theorem proving experience by using the Alloy Analyzer to provide automaticfunctionality intended for early detection of errors, proof refinementand witness generation for existentially quantified properties.
Fil: Moscato, Mariano Miguel. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
description El análisis formal de especificaciones de software suele atacarse desde dosenfoques, usualmente llamados: liviano y pesado. En el lado liviano encontramoslenguajes fáciles de aprender y utilizar junto con herramientasautomáticas de análisis, pero de alcance parcial. El lado pesado nos ofrecelograr certeza absoluta, pero a costo de requerir usuarios altamente capacitados. Un buen representante de los métodos livianos es lenguaje de modelado Alloy y su analizador automático: el Alloy Analyzer. Su análisis consisteen transcribir un modelo Alloy a una fórmula proposicional que luego seprocesa utilizando SAT-solvers estándar. Esta transcripción requiere que el usuario establezca cotas en los tamañosde los dominios modelados en la especificación. El análisis, entonces, esparcial, ya que está limitado por esas cotas. Por ello, puede pensarse queno es seguro utilizar el Alloy Analyzer para trabajar en el desarrollo deaplicaciones críticas donde se necesitan resultados concluyentes. En esta tesis presentamos un cálculo basado en álgebras de Fork que permiterealizar demostraciones en cálculo de secuentes sobre especificaciones Alloy. También hemos desarrollado una herramienta (Dynamite) que loimplementa. Dynamite es una extensión del sistema de demostración semiatomático PVS, método pesado ampliamente utilizado por la comunidad. Así, Dynamite consigue complementar el análisis parcial que ofrece Alloy,además de potenciar el esfuerzo realizado durante una demostración usandoel Alloy Analyzer para detectar errores tempranamente, refinar secuentes yproponer términos para utilizar como testigos de propiedades cuantificadasexistencialmente.
publishDate 2013
dc.date.none.fl_str_mv 2013
dc.type.none.fl_str_mv info:eu-repo/semantics/doctoralThesis
info:eu-repo/semantics/publishedVersion
http://purl.org/coar/resource_type/c_db06
info:ar-repo/semantics/tesisDoctoral
format doctoralThesis
status_str publishedVersion
dc.identifier.none.fl_str_mv https://hdl.handle.net/20.500.12110/tesis_n5428_Moscato
url https://hdl.handle.net/20.500.12110/tesis_n5428_Moscato
dc.language.none.fl_str_mv eng
language eng
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
https://creativecommons.org/licenses/by-nc-sa/2.5/ar
eu_rights_str_mv openAccess
rights_invalid_str_mv https://creativecommons.org/licenses/by-nc-sa/2.5/ar
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
publisher.none.fl_str_mv Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
dc.source.none.fl_str_mv reponame:Biblioteca Digital (UBA-FCEN)
instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
instacron:UBA-FCEN
reponame_str Biblioteca Digital (UBA-FCEN)
collection Biblioteca Digital (UBA-FCEN)
instname_str Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
instacron_str UBA-FCEN
institution UBA-FCEN
repository.name.fl_str_mv Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
repository.mail.fl_str_mv ana@bl.fcen.uba.ar
_version_ 1844618696730869760
score 13.070432