We propose a modular method for proving termination of general logic programs (i.e., logic progra... more We propose a modular method for proving termination of general logic programs (i.e., logic programs with negation). It is based on the notion of acceptable programs, but it allows us to prove termination in a truly modular way. We consider programs consisting of a hierarchy of modules and supply a general result for proving termination by dealing with each module separately. For programs which are in a certain sense well-behaved, namely well-moded or well-typed programs, we derive both a simple verification technique and an iterative proof method. Some examples show how our system allows for greatly simplified proofs.
Abstraction of strings, that is grouping strings together and representing them in a compact way ... more Abstraction of strings, that is grouping strings together and representing them in a compact way as patterns, can be useful in strings processing for stressing structure similarities among strings. In this pa- per, given a set of strings, we study how to obtain maximal abstractions in terms of maximal patterns, namely patterns which correspond to the largest subsets of strings which can be abstracted together. Intuitively such patterns represent all possible "most abstract views" of the strings in the given set. The number of maximal patterns of a set of strings is linear w.r.t. the number of strings. We propose an iterative algorithm for building all the maximal patterns of a set of strings, whose complex- ity is theoretically exponential w.r.t. the number of strings, but feasible in practice. The iterative nature of the algorithm can be exploited for strings analysis: at iteration j, the algorithm builds the set of all the maximal patterns with j abstract symbols, namely...
Comparison of metabolic pathways is useful in phylogenetic analysis and for understanding metabol... more Comparison of metabolic pathways is useful in phylogenetic analysis and for understanding metabolic functions when studying dis-eases and in drugs engineering. In the literature many techniques have been proposed to compare metabolic pathways, but most of them focus on structural aspects, while behavioural or functional aspects are gener-ally not considered. In this paper we propose a new method for comparing metabolic pathways of different organisms based on a similarity measure which considers both homology of reactions and functional aspects of the pathways. The latter are captured by relying on a Petri net repre-sentation of the pathways and comparing the corresponding T-invariant bases, which represent potential fluxes in the nets. The approach is im-plemented in a prototype tool, CoMeta, which allows us to test and validate our proposal. Some experiments with CoMeta are presented.
We propose MPath2PN, a tool which automatically trans-lates metabolic pathways, as described in t... more We propose MPath2PN, a tool which automatically trans-lates metabolic pathways, as described in the major biological databases, into corresponding Petri net representations. The aim is to allow for a systematic reuse, in the setting of metabolic pathways, of the variety of tools existing for Petri net analysis and simulation. The current proto-type implementation of MPath2PN inputs the KEGG description of a metabolic pathway and produces two Petri nets, mainly differing for the treatment of ubiquitous substances. Such Petri nets are represented using PNML, a standard format for many Petri net tools. We are extending the tool by considering further formats for metabolic pathways in in-put and for Petri nets in output. MPath2PN is part of a more general project aimed at developing an integrated framework which should offer the possibility of automatically querying databases for metabolic path-ways, producing corresponding Petri net models and performing analysis and simulation on them...
We study how to preserve universal termination besides computed answer substitutions while transf... more We study how to preserve universal termination besides computed answer substitutions while transforming definite programs. We consider the unfold operation both alone and combined with the introduction of a new definition and fold operations. We prove that unfold always preserves universal termination. Moreover we define a restricted version of the Tamaki-Sato's transformation sequence and show that it preserves universal termination
Pattern discovery is used for determining, in a blind way, subsequences characterizing a given se... more Pattern discovery is used for determining, in a blind way, subsequences characterizing a given sequence or set of sequences. It is ap- plied in genome and proteome analysis for discovering interesting biose- quences which are usually very short when compared to the length of the analyzed sequence. Abstraction of subsequences, that is grouping similar subsequences and representing them in a
We study the termination properties of well-moded programs, and we show that, under suitable cond... more We study the termination properties of well-moded programs, and we show that, under suitable conditions, for these programs there exists an algebraic characterization-in the style of Apt and Pedreschi, Studies in pure prolog: termination, in: J.W. Lloyd (Ed.), Proceedings of the Simposium in Computational Logic, Springer, Berlin, 1990, pp. 150–176-of the property of being terminating. This characterization enjoys the properties
In [3] a general fold operation has been introduced for definite programs wrt computed answer sub... more In [3] a general fold operation has been introduced for definite programs wrt computed answer substitution semantics. It differs from the fold operation defined by Tamaki and Sato in [26,25] because its application does not depend on the transformation history. This paper extends the results in [3] by giving a more powerful sufficient condition for the preservation of computed answer substitutions. Such a condition is meant to deal with the critical case when the atom introduced by folding depends on the clause to which the fold applies. The condition compares the dependency degree between the fonding atom and the folded clause, with the semantic delay between the folding atom and the ones to be folded. The result is also extended to a more general replacement operation, by showing that it can be decomposed into a sequence of definition, general folding and unfolding operations.
We propose a modular method for proving termination of general logic programs (i.e., logic progra... more We propose a modular method for proving termination of general logic programs (i.e., logic programs with negation). It is based on the notion of acceptable programs, but it allows us to prove termination in a truly modular way. We consider programs consisting of a hierarchy of modules and supply a general result for proving termination by dealing with each module separately. For programs which are in a certain sense well-behaved, namely well-moded or well-typed programs, we derive both a simple verification technique and an iterative proof method. Some examples show how our system allows for greatly simplified proofs.
Abstraction of strings, that is grouping strings together and representing them in a compact way ... more Abstraction of strings, that is grouping strings together and representing them in a compact way as patterns, can be useful in strings processing for stressing structure similarities among strings. In this pa- per, given a set of strings, we study how to obtain maximal abstractions in terms of maximal patterns, namely patterns which correspond to the largest subsets of strings which can be abstracted together. Intuitively such patterns represent all possible "most abstract views" of the strings in the given set. The number of maximal patterns of a set of strings is linear w.r.t. the number of strings. We propose an iterative algorithm for building all the maximal patterns of a set of strings, whose complex- ity is theoretically exponential w.r.t. the number of strings, but feasible in practice. The iterative nature of the algorithm can be exploited for strings analysis: at iteration j, the algorithm builds the set of all the maximal patterns with j abstract symbols, namely...
Comparison of metabolic pathways is useful in phylogenetic analysis and for understanding metabol... more Comparison of metabolic pathways is useful in phylogenetic analysis and for understanding metabolic functions when studying dis-eases and in drugs engineering. In the literature many techniques have been proposed to compare metabolic pathways, but most of them focus on structural aspects, while behavioural or functional aspects are gener-ally not considered. In this paper we propose a new method for comparing metabolic pathways of different organisms based on a similarity measure which considers both homology of reactions and functional aspects of the pathways. The latter are captured by relying on a Petri net repre-sentation of the pathways and comparing the corresponding T-invariant bases, which represent potential fluxes in the nets. The approach is im-plemented in a prototype tool, CoMeta, which allows us to test and validate our proposal. Some experiments with CoMeta are presented.
We propose MPath2PN, a tool which automatically trans-lates metabolic pathways, as described in t... more We propose MPath2PN, a tool which automatically trans-lates metabolic pathways, as described in the major biological databases, into corresponding Petri net representations. The aim is to allow for a systematic reuse, in the setting of metabolic pathways, of the variety of tools existing for Petri net analysis and simulation. The current proto-type implementation of MPath2PN inputs the KEGG description of a metabolic pathway and produces two Petri nets, mainly differing for the treatment of ubiquitous substances. Such Petri nets are represented using PNML, a standard format for many Petri net tools. We are extending the tool by considering further formats for metabolic pathways in in-put and for Petri nets in output. MPath2PN is part of a more general project aimed at developing an integrated framework which should offer the possibility of automatically querying databases for metabolic path-ways, producing corresponding Petri net models and performing analysis and simulation on them...
We study how to preserve universal termination besides computed answer substitutions while transf... more We study how to preserve universal termination besides computed answer substitutions while transforming definite programs. We consider the unfold operation both alone and combined with the introduction of a new definition and fold operations. We prove that unfold always preserves universal termination. Moreover we define a restricted version of the Tamaki-Sato's transformation sequence and show that it preserves universal termination
Pattern discovery is used for determining, in a blind way, subsequences characterizing a given se... more Pattern discovery is used for determining, in a blind way, subsequences characterizing a given sequence or set of sequences. It is ap- plied in genome and proteome analysis for discovering interesting biose- quences which are usually very short when compared to the length of the analyzed sequence. Abstraction of subsequences, that is grouping similar subsequences and representing them in a
We study the termination properties of well-moded programs, and we show that, under suitable cond... more We study the termination properties of well-moded programs, and we show that, under suitable conditions, for these programs there exists an algebraic characterization-in the style of Apt and Pedreschi, Studies in pure prolog: termination, in: J.W. Lloyd (Ed.), Proceedings of the Simposium in Computational Logic, Springer, Berlin, 1990, pp. 150–176-of the property of being terminating. This characterization enjoys the properties
In [3] a general fold operation has been introduced for definite programs wrt computed answer sub... more In [3] a general fold operation has been introduced for definite programs wrt computed answer substitution semantics. It differs from the fold operation defined by Tamaki and Sato in [26,25] because its application does not depend on the transformation history. This paper extends the results in [3] by giving a more powerful sufficient condition for the preservation of computed answer substitutions. Such a condition is meant to deal with the critical case when the atom introduced by folding depends on the clause to which the fold applies. The condition compares the dependency degree between the fonding atom and the folded clause, with the semantic delay between the folding atom and the ones to be folded. The result is also extended to a more general replacement operation, by showing that it can be decomposed into a sequence of definition, general folding and unfolding operations.
Uploads