Papers by Alberto Pettorossi
Lecture Notes in Computer Science, Dec 31, 2022

We present a comparative evaluation of some generalization strategies which are applied by a meth... more We present a comparative evaluation of some generalization strategies which are applied by a method for the automated verification of infinite state reactive systems. The verification method is based on (1) the specialization of the constraint logic program which encodes the system with respect to the initial state and the property to be verified, and (2) a bottom-up evaluation of the specialized program. The generalization strategies are used during the program specialization phase for controlling when and how to perform generalization. Selecting a good generalization strategy is not a trivial task because it must guarantee the termination of the specialization phase itself, and it should be a good balance between precision and performance. Indeed, a coarse generalization strategy may prevent one to prove the properties of interest, while an unnecessarily precise strategy may lead to high verification times. We perform an experimental evaluation of various generalization strategies on several infinite state systems and properties to be verified.

These lecture notes are intended to introduce the reader to the basic notions of computability th... more These lecture notes are intended to introduce the reader to the basic notions of computability theory, decidability, and complexity. More information on these subjects can be found in classical books such as [Cut80,Dav58,Her69,HoU79,Rog67]. The results reported in these notes are taken from those books and in various parts we closely follow their style of presentation. The reader is encouraged to look at those books for improving his/her knowledge on these topics. Some parts of the chapter on complexity are taken from the lecture notes of a beautiful course given by Prof. Leslie Valiant at Edinburgh University, Scotland, in 1979. It was, indeed, a very stimulating and enjoyable course. For the notions of Predicate Calculus we have used in this book the reader may refer to [Men87]. I would like to thank Dr. Maurizio Proietti at IASI-CNR (Roma, Italy), my colleagues, and my students at the University of Roma Tor Vergata and, in particular, Michele Martone. They have been for me a source of continuous inspiration and enthusiasm. Finally, I would like to thank Dr. Gioacchino Onorati and Lorenzo Costantini of the Aracne Publishing Company for their helpful cooperation.
Banach Center Publications, 1988
Lecture Notes in Computer Science, 1992

These lecture notes present some basic notions and results on Automata Theory, Formal Languages T... more These lecture notes present some basic notions and results on Automata Theory, Formal Languages Theory, Computability Theory, and Parsing Theory. I prepared these notes for a course on Automata, Languages, and Translators which I am teaching at the University of Roma Tor Vergata. More material on these topics and on parsing techniques for context-free languages can be found in standard textbooks such as [1, 8, 9]. The reader is encouraged to look at those books. A theorem denoted by the triple k.m.n is in Chapter k and Section m, and within that section it is identified by the number n. Analogous numbering system is used for algorithms, corollaries, definitions, examples, exercises, figures, and remarks. We use 'iff' to mean 'if and only if'. Many thanks to my colleagues of the Department of Informatics, Systems, and Production of the University of Roma Tor Vergata. I am also grateful to my students and co-workers and, in particular, to
Lecture Notes in Computer Science
In this paper weak combinatory logic as an algorithmic language is considered and various notions... more In this paper weak combinatory logic as an algorithmic language is considered and various notions of structural and computational complexity are introduced. Particular attention is devoted to the definitional power of a system of combinators,that is to the concept of “subbase”. Some results concerning the relations between specific subbases and their generative power are presented.
Information Processing Letters, 1980

Definition 8. [Language Accepted by a Turing Machine. Equivalence Between Turing Machines] Let us... more Definition 8. [Language Accepted by a Turing Machine. Equivalence Between Turing Machines] Let us consider a Turing Machine M with initial state q 0 , and an input word w ∈ Σ * for M. (i) We say that M answers 'yes' for w (or M accepts w) iff (1.1) q 0 w → * M α 1 q α 2 for some q ∈ F , α 1 ∈ Γ * , and α ∈ Γ + , and (1.2) M stops in the configuration α 1 q α 2. (ii) We say that M answers 'no' for w (or M rejects w) iff (2.1) for all configurations γ such that q 0 w → * M γ, the state in γ is not a final state, and (2.2) there exists a configuration γ such that q 0 w → * M γ and M stops in γ. (iii) The set {w | w ∈ Σ * and q 0 w → * M α 1 q α 2 for some q ∈ F , α 1 ∈ Γ * , and α 2 ∈ Γ + } which is a subset of Σ * , is said to be the language accepted by M and it denoted by L(M). Every word in L(M) is said to be a word accepted by M. A language accepted by a Turing Machine is said to be Turing computable. (iv) Two Turing Machines M 1 and M 2 are said to be equivalent iff L(M 1) and L(M 2). When the input word w is understood from the context, we will simply say: M answers 'yes' (or 'no'), instead of saying: M answers 'yes' (or 'no') for the word w. Note that in other textbooks, when introducing the concepts of Definition 8 above, the authors use the expressions 'recognizes', 'recognized', and 'does not recognize', instead of 'accepts', 'accepted', and 'rejects', respectively. Remark 1. [Halting Hypothesis] Unless otherwise specified, we will assume the following hypothesis, called the Halting Hypothesis: for all Turing Machines M, for all initial configuration q 0 w, and for all configurations γ, if q 0 w → * M γ and the state in γ is final then no configuration γ ′ exists such that γ → M γ ′. Thus, by assuming the Halting Hypothesis, we will consider only Turing Machines which stop whenever they are in a final state.
Springer eBooks, 2021
DISPOSITIONS * Filename: "Dispositions.java" * * A disposition is a sequence of length D whose el... more DISPOSITIONS * Filename: "Dispositions.java" * * A disposition is a sequence of length D whose elements (not necessarily * distinct) are taken from a set of B elements. * ======================================================================== */ public class Dispositions { private int id = 0; private final int D = 3; private final int B = 2; private int[] arrayDisp = new int[D];// by default: initially the elements // of arrayDisp are all 0's private void printar(int[] array, int size) { for (int k=0; k<size; k++) {System.out.print(array[k]+" ");} System.out.println(); } private void generate() { int ib=1; do {arrayDisp[id]=ib; id++; if (id==D) {printar(arrayDisp,D);} else generate(); id--; ib++;} while (ib <= B); } public static void main(String[] args) { Dispositions disp = new Dispositions(); disp.generate(); } } /** * input: output:
These lecture notes present some basic notions and results on Automata Theory, Formal Languages T... more These lecture notes present some basic notions and results on Automata Theory, Formal Languages Theory, Computability Theory, and Parsing Theory. I prepared these notes for a course on Automata, Languages, and Translators which I am teaching at the University of Roma Tor Vergata. More material on these topics and on parsing techniques for context-free languages can be found in standard textbooks such as~\cite{Ah&86,Har78,HoU79}. The reader is encouraged to look at those books.
Uploads
Papers by Alberto Pettorossi