A study of the combination problem : dealing with multiple theories in SMT solving

Autores
Chocrón, Paula
Año de publicación
2014
Idioma
inglés
Tipo de recurso
tesis de grado
Estado
versión publicada
Colaborador/a o director/a de tesis
López Pombo, Carlos Gustavo
Descripción
Hoy en día, las aplicaciones de software son ubicuas en nuestras vidas, y sus fallas pueden, en muchos casos, producir enormes pérdidas. Esto hace esencial el desarrollo de métodos de análisis de software. Para esto, usualmente se asume que se cuenta con una especificación formal del sistema a analizar; entonces es posible verificar si cierta propiedad de interés se deduce de la especificación. La lógica es frecuentemente utilizada como sistema formal para la especificación y verificación, lo cual vuelve un problema crucial el decidir si una propiedad es satisfacible según determinadas teorías. Un problema de satisfacibilidad se expresa frecuentemente en una combinación de varias teorías, y un enfoque natural consiste en resolverlo combinando los procedimientos de decisión con los que se cuenta para cada una de las teorías. En esta tesis estudiamos el problema de combinación de procedimientos para teorías de primer orden sobre signaturas que comparten símbolos. Presentamos dos enfoques diferentes para resolver este problema. En el primero, extendemos el método de combinación clásico para teorías sobre signaturas disjuntas de Nelson y Oppen al caso en el cual sólo se comparten predicados unarios. Teorías relevantes se pueden analizar desde este marco, como por ejemplo la clase de teoría de Löwenheim. El segundo enfoque estudia un caso particular, en el cual el fragmento de signatura compartida resulta de definir funciones que conectan elementos de dos teorías sobre signaturas disjuntas. Un ejemplo clásico es el de las listas extendidas con una función de longitud que las relaciona con la aritmética. Presentamos un procedimiento para resolver este caso, y mostramos cómo se puede adaptarlo para considerar distintas clases de teorías y funciones. Este trabajo fue parcialmente desarrollado durante una pasantía en LORIA-INRIA, bajo la supervisión de Pascal Fontaine y Christophe Ringeissen, a quienes agradecemos especialmente.
Nowadays software artifacts are ubiquitous in our lives, and failures may, in many cases, produce enormous losses, making essential the development of methods to perform analysis over software. In order to do this, usually it is assumed that a formal specification of the system is available. Then, it is possible to check whether a certain property of interest follows from the specification. Logics have often been used as formal systems suitable for the specification and verification of software artifacts, making the problem of deciding if a property is satisfiable modulo some background theory crucial in verification. A satisfiability problem is very often expressed in a combination of theories, and a natural approach consists in solving the problem by combining the decision procedures available for the component theories. In this thesis, we study the problem of combining decision procedures for first-order theories over signatures sharing symbols. We present two different approaches. In the first one, we extend a classical combination method by Nelson and Oppen for theories over disjoint signatures to the case when only unary predicates are shared. Some well-known classes of theories fit in our framework, for example the Löwenheim class. The second approach focuses on a specific case, in which the non-disjointness arises from defining functions connecting terms in two theories with disjoint signatures. A classical example is the one of lists endowed with a length function that relates them with arithmetic. We present a procedure to solve this case, and discuss how it should be adapted to different classes of theories and functions. This work was partially developed during an internship at LORIA-INRIA, under the supervision of Pascal Fontaine and Christophe Ringeissen, to whom we thank specially.
Fil: Chocrón, Paula. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
Materia
SATISFACTIBILIDAD MODULO TEORIAS
ANALISIS DE SOFTWARE
MODULARIDAD
COMBINACION DE PROCEDIMIENTOS DE DECISION
SATISFIABILITY MODULO THEORIES
SOFWARE ANALYSIS
MODULARITY
COMBINATION OF DECISION PROCEDURES
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
seminario:seminario_nCOM000702_Chocron

id BDUBAFCEN_6e3bc74ddf4a317d7ba8904da88a4742
oai_identifier_str seminario:seminario_nCOM000702_Chocron
network_acronym_str BDUBAFCEN
repository_id_str 1896
network_name_str Biblioteca Digital (UBA-FCEN)
spelling A study of the combination problem : dealing with multiple theories in SMT solvingUn estudio del problema de Combinación : soluciones a SMT módulo varias teoríasChocrón, PaulaSATISFACTIBILIDAD MODULO TEORIASANALISIS DE SOFTWAREMODULARIDADCOMBINACION DE PROCEDIMIENTOS DE DECISIONSATISFIABILITY MODULO THEORIESSOFWARE ANALYSISMODULARITYCOMBINATION OF DECISION PROCEDURESHoy en día, las aplicaciones de software son ubicuas en nuestras vidas, y sus fallas pueden, en muchos casos, producir enormes pérdidas. Esto hace esencial el desarrollo de métodos de análisis de software. Para esto, usualmente se asume que se cuenta con una especificación formal del sistema a analizar; entonces es posible verificar si cierta propiedad de interés se deduce de la especificación. La lógica es frecuentemente utilizada como sistema formal para la especificación y verificación, lo cual vuelve un problema crucial el decidir si una propiedad es satisfacible según determinadas teorías. Un problema de satisfacibilidad se expresa frecuentemente en una combinación de varias teorías, y un enfoque natural consiste en resolverlo combinando los procedimientos de decisión con los que se cuenta para cada una de las teorías. En esta tesis estudiamos el problema de combinación de procedimientos para teorías de primer orden sobre signaturas que comparten símbolos. Presentamos dos enfoques diferentes para resolver este problema. En el primero, extendemos el método de combinación clásico para teorías sobre signaturas disjuntas de Nelson y Oppen al caso en el cual sólo se comparten predicados unarios. Teorías relevantes se pueden analizar desde este marco, como por ejemplo la clase de teoría de Löwenheim. El segundo enfoque estudia un caso particular, en el cual el fragmento de signatura compartida resulta de definir funciones que conectan elementos de dos teorías sobre signaturas disjuntas. Un ejemplo clásico es el de las listas extendidas con una función de longitud que las relaciona con la aritmética. Presentamos un procedimiento para resolver este caso, y mostramos cómo se puede adaptarlo para considerar distintas clases de teorías y funciones. Este trabajo fue parcialmente desarrollado durante una pasantía en LORIA-INRIA, bajo la supervisión de Pascal Fontaine y Christophe Ringeissen, a quienes agradecemos especialmente.Nowadays software artifacts are ubiquitous in our lives, and failures may, in many cases, produce enormous losses, making essential the development of methods to perform analysis over software. In order to do this, usually it is assumed that a formal specification of the system is available. Then, it is possible to check whether a certain property of interest follows from the specification. Logics have often been used as formal systems suitable for the specification and verification of software artifacts, making the problem of deciding if a property is satisfiable modulo some background theory crucial in verification. A satisfiability problem is very often expressed in a combination of theories, and a natural approach consists in solving the problem by combining the decision procedures available for the component theories. In this thesis, we study the problem of combining decision procedures for first-order theories over signatures sharing symbols. We present two different approaches. In the first one, we extend a classical combination method by Nelson and Oppen for theories over disjoint signatures to the case when only unary predicates are shared. Some well-known classes of theories fit in our framework, for example the Löwenheim class. The second approach focuses on a specific case, in which the non-disjointness arises from defining functions connecting terms in two theories with disjoint signatures. A classical example is the one of lists endowed with a length function that relates them with arithmetic. We present a procedure to solve this case, and discuss how it should be adapted to different classes of theories and functions. This work was partially developed during an internship at LORIA-INRIA, under the supervision of Pascal Fontaine and Christophe Ringeissen, to whom we thank specially.Fil: Chocrón, Paula. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.Universidad de Buenos Aires. Facultad de Ciencias Exactas y NaturalesLópez Pombo, Carlos Gustavo2014info:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_7a1finfo:ar-repo/semantics/tesisDeGradoapplication/pdfhttps://hdl.handle.net/20.500.12110/seminario_nCOM000702_Chocronenginfo: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-FCEN2026-04-09T08:25:40Zseminario:seminario_nCOM000702_ChocronInstitucionalhttps://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:18962026-04-09 08:25:42.182Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesfalse
dc.title.none.fl_str_mv A study of the combination problem : dealing with multiple theories in SMT solving
Un estudio del problema de Combinación : soluciones a SMT módulo varias teorías
title A study of the combination problem : dealing with multiple theories in SMT solving
spellingShingle A study of the combination problem : dealing with multiple theories in SMT solving
Chocrón, Paula
SATISFACTIBILIDAD MODULO TEORIAS
ANALISIS DE SOFTWARE
MODULARIDAD
COMBINACION DE PROCEDIMIENTOS DE DECISION
SATISFIABILITY MODULO THEORIES
SOFWARE ANALYSIS
MODULARITY
COMBINATION OF DECISION PROCEDURES
title_short A study of the combination problem : dealing with multiple theories in SMT solving
title_full A study of the combination problem : dealing with multiple theories in SMT solving
title_fullStr A study of the combination problem : dealing with multiple theories in SMT solving
title_full_unstemmed A study of the combination problem : dealing with multiple theories in SMT solving
title_sort A study of the combination problem : dealing with multiple theories in SMT solving
dc.creator.none.fl_str_mv Chocrón, Paula
author Chocrón, Paula
author_facet Chocrón, Paula
author_role author
dc.contributor.none.fl_str_mv López Pombo, Carlos Gustavo
dc.subject.none.fl_str_mv SATISFACTIBILIDAD MODULO TEORIAS
ANALISIS DE SOFTWARE
MODULARIDAD
COMBINACION DE PROCEDIMIENTOS DE DECISION
SATISFIABILITY MODULO THEORIES
SOFWARE ANALYSIS
MODULARITY
COMBINATION OF DECISION PROCEDURES
topic SATISFACTIBILIDAD MODULO TEORIAS
ANALISIS DE SOFTWARE
MODULARIDAD
COMBINACION DE PROCEDIMIENTOS DE DECISION
SATISFIABILITY MODULO THEORIES
SOFWARE ANALYSIS
MODULARITY
COMBINATION OF DECISION PROCEDURES
dc.description.none.fl_txt_mv Hoy en día, las aplicaciones de software son ubicuas en nuestras vidas, y sus fallas pueden, en muchos casos, producir enormes pérdidas. Esto hace esencial el desarrollo de métodos de análisis de software. Para esto, usualmente se asume que se cuenta con una especificación formal del sistema a analizar; entonces es posible verificar si cierta propiedad de interés se deduce de la especificación. La lógica es frecuentemente utilizada como sistema formal para la especificación y verificación, lo cual vuelve un problema crucial el decidir si una propiedad es satisfacible según determinadas teorías. Un problema de satisfacibilidad se expresa frecuentemente en una combinación de varias teorías, y un enfoque natural consiste en resolverlo combinando los procedimientos de decisión con los que se cuenta para cada una de las teorías. En esta tesis estudiamos el problema de combinación de procedimientos para teorías de primer orden sobre signaturas que comparten símbolos. Presentamos dos enfoques diferentes para resolver este problema. En el primero, extendemos el método de combinación clásico para teorías sobre signaturas disjuntas de Nelson y Oppen al caso en el cual sólo se comparten predicados unarios. Teorías relevantes se pueden analizar desde este marco, como por ejemplo la clase de teoría de Löwenheim. El segundo enfoque estudia un caso particular, en el cual el fragmento de signatura compartida resulta de definir funciones que conectan elementos de dos teorías sobre signaturas disjuntas. Un ejemplo clásico es el de las listas extendidas con una función de longitud que las relaciona con la aritmética. Presentamos un procedimiento para resolver este caso, y mostramos cómo se puede adaptarlo para considerar distintas clases de teorías y funciones. Este trabajo fue parcialmente desarrollado durante una pasantía en LORIA-INRIA, bajo la supervisión de Pascal Fontaine y Christophe Ringeissen, a quienes agradecemos especialmente.
Nowadays software artifacts are ubiquitous in our lives, and failures may, in many cases, produce enormous losses, making essential the development of methods to perform analysis over software. In order to do this, usually it is assumed that a formal specification of the system is available. Then, it is possible to check whether a certain property of interest follows from the specification. Logics have often been used as formal systems suitable for the specification and verification of software artifacts, making the problem of deciding if a property is satisfiable modulo some background theory crucial in verification. A satisfiability problem is very often expressed in a combination of theories, and a natural approach consists in solving the problem by combining the decision procedures available for the component theories. In this thesis, we study the problem of combining decision procedures for first-order theories over signatures sharing symbols. We present two different approaches. In the first one, we extend a classical combination method by Nelson and Oppen for theories over disjoint signatures to the case when only unary predicates are shared. Some well-known classes of theories fit in our framework, for example the Löwenheim class. The second approach focuses on a specific case, in which the non-disjointness arises from defining functions connecting terms in two theories with disjoint signatures. A classical example is the one of lists endowed with a length function that relates them with arithmetic. We present a procedure to solve this case, and discuss how it should be adapted to different classes of theories and functions. This work was partially developed during an internship at LORIA-INRIA, under the supervision of Pascal Fontaine and Christophe Ringeissen, to whom we thank specially.
Fil: Chocrón, Paula. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
description Hoy en día, las aplicaciones de software son ubicuas en nuestras vidas, y sus fallas pueden, en muchos casos, producir enormes pérdidas. Esto hace esencial el desarrollo de métodos de análisis de software. Para esto, usualmente se asume que se cuenta con una especificación formal del sistema a analizar; entonces es posible verificar si cierta propiedad de interés se deduce de la especificación. La lógica es frecuentemente utilizada como sistema formal para la especificación y verificación, lo cual vuelve un problema crucial el decidir si una propiedad es satisfacible según determinadas teorías. Un problema de satisfacibilidad se expresa frecuentemente en una combinación de varias teorías, y un enfoque natural consiste en resolverlo combinando los procedimientos de decisión con los que se cuenta para cada una de las teorías. En esta tesis estudiamos el problema de combinación de procedimientos para teorías de primer orden sobre signaturas que comparten símbolos. Presentamos dos enfoques diferentes para resolver este problema. En el primero, extendemos el método de combinación clásico para teorías sobre signaturas disjuntas de Nelson y Oppen al caso en el cual sólo se comparten predicados unarios. Teorías relevantes se pueden analizar desde este marco, como por ejemplo la clase de teoría de Löwenheim. El segundo enfoque estudia un caso particular, en el cual el fragmento de signatura compartida resulta de definir funciones que conectan elementos de dos teorías sobre signaturas disjuntas. Un ejemplo clásico es el de las listas extendidas con una función de longitud que las relaciona con la aritmética. Presentamos un procedimiento para resolver este caso, y mostramos cómo se puede adaptarlo para considerar distintas clases de teorías y funciones. Este trabajo fue parcialmente desarrollado durante una pasantía en LORIA-INRIA, bajo la supervisión de Pascal Fontaine y Christophe Ringeissen, a quienes agradecemos especialmente.
publishDate 2014
dc.date.none.fl_str_mv 2014
dc.type.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
info:eu-repo/semantics/publishedVersion
http://purl.org/coar/resource_type/c_7a1f
info:ar-repo/semantics/tesisDeGrado
format bachelorThesis
status_str publishedVersion
dc.identifier.none.fl_str_mv https://hdl.handle.net/20.500.12110/seminario_nCOM000702_Chocron
url https://hdl.handle.net/20.500.12110/seminario_nCOM000702_Chocron
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_ 1861996579986079744
score 13.018236