A short resumè



Curriculum vitae:


Born 5 Oct 1959.
Married, two children:
Daniele (1993)
Alice (1996)




Research Interests

Stefania's research interests are in the field of Computational Logic, Logic Programming and its applications to Artificial Intelligence.

Metalogic Programming

Together with Elio Lanzarone, Stefania has defined Reflective Prolog, a metalogic programming language which extends the Horn clause language with a naming mechanism, metaevaluation clauses and a form of logical reflection. Reflective Prolog has been implemented at the Logic Programming Lab of the Computer Science Department of the University of Milano. The language has been experimented on several complex problems of significant application domains in Knowledge Representation and AI, such as plausible reasoning, case-based reasoning, legal reasoning and temporal reasoning. The language has been augmented with negation and agents, and simple forms of induction. The main concepts underlying Reflective Prolog have been further elaborated,  to design (together with Jonas Barklund and Pier Dell'Acqua) a self-referential, reflective logical system whose main objective is to allow its users to specify and experiment a variety of deductive systems, defined via axioms and rules of inference. Stefania has been invited to contribute to a book in honour of Prof. Robert Kowalski, title of contribution: "Meta-Reasoning: a Survey". Recently, Stefania has exploited her work and experience about meta-reasoning in her  research on logical agents, discussed below. Some important features of the DALI language that Stefania has proposed have been defined as forms of introspection. Reflection mechanisms taken from Reflective Prolog have been very useful for the agents to deal with ontologies, and with uncertain and incomplete knowledge.

Logic Programming with Negation, and Non-Monotonic Reasoning

One of Stefania's main interests is negation in logic programming. Stefania has introduced the first explicit characterizations of stable models in the context of logic programming (the existing ones where represented in other formal systems, such as TMS). She has shown that these characterizations are widely applicable, and are, at least in principle, efficiently computable. Stefania is presently studying the relationship between the syntax of programs and the existence of stable models. In particular, by representing the program as a graph (Extended Dependency Graph, EDG), the stable models can be characterized as Admissible Colorings of the EDG (joint work with Ottavio D'Antona and Alessandro Provetti). In December 1999, Stefania has given a seminar on this topic at the University of Texas at El Paso, invited by Prof. Micheal Gelfond.  She has also shown that, as far as consistency checking or more generally program analysis are concerned, it is possible to work with compact forms of programs, such as the kernel normal form. In a joint work with Alessandro provetti an
algorithm is proposed for shifting back and forth from the given logic program to its kernel form. Obtaining the kernel has low polynomial time
complexity, while shifting back to the original form has linear
complexity. This means, the graph of the kernel might be displayed
on the screen, and edges representing a longer path in the original program could be emphasized, so as the original program might be obtained upon request (for instance by clicking on those edges). With the aim of defining sofware engineering methodologies for ASP, she has shown that representations like the EDG, or others that have been proposed in the literature, which are oriented to atoms and rules can be usefully  condensed  into more compact representations oriented to components, like the Cycle Graph
that she has defined. In the Cycle Graph, vertices are not atoms or rules,
but significant subprograms.

She has proposed a formalization of the features that graph representations of logic programs should  exhibit in order to
be a satisfactory and useful representation formalism.
She has  introduced a concept of
isomorphism between a program and the corresponding graph.
Isomorphic graph representations guarantee that the graph
corresponding to a program is unique, and that the original
program can be reconstructed from the graph. She has proved that the
isomorphism is possible only if a graph representation formalism
is able to distinguish the cycles occurring in the program, and
the different connections among them. She has argued that understanding
cycles and their connections is a key point for understanding
program behavior and for checking consistency, for being then
able to create, debug and combine good programs, and for developing
program analysis techniques. useful classes of consistent programs can be easily defined.
Based on this concept, she has identified, for the first time in the literature, a class of programs which are not call-consistent,
and admit answer sets by construction, and are such that an automated analysis tool might easily verify whether a program belongs to this class, and that program fragments of this kind might act as building blocks for safely constructing larger ones.

In recent work, Stefania aims at demonstrating that the programming paradigm stemmed from stable model semantics, called Answer Set Programming (ASP), is a suitable paradigm for defining and implementing data integration systems.
In particular, she has defined (with Andrea Formisano and Eugenio Omodeo)  a formalization of the Global-as-View approach, with the objective of dealing with forms of incompleteness in data correspondence.
She has presented a working inference engine for effectively answering queries in presence of uncertain/ambiguous/imcomplete knowledge, where each answer set corresponds to one of the
possible consistent answers.

She has recently proposed with Andrea Formisano and approach to Answer Set Programming with resources (RASP) and also with preferences which, in the spirit of linear logic, deals with resources, quantities and remainders. RASP provides forms of preferences that can be local to rules, to cope with the fact that one may have different preferences in different contexts. Moreover, il allows for non-linear preferences, i.e. manages partial orders. A merit of the approach is that, even though the proposed extensions are not merely syntactic sugar, the computational complexity is the same as plain ASP. A prototype implementation is publicly available at the web site http://www.dmi.unipg.it/~formis/raspberry/.

Again with Andrea Formisano she has defined RAS (Resource-based Answer Set programming), which is a variation of ASP related to linear and autoepistemic logic where there are no inconsistent programs. They have defined a top-down query-answering procedure for RAS.

Stefania has been also interested in the past in disjunctive logic programming. Together with Elio Lanzarone, she has pointed out how the complexity of the semantics of this class of programs can be coped with by splitting the definition of the semantics into two parts:  a program transformation phase, of high complexity, and a constructive phase, of reasonable complexity. As a case study, they have considered Przymusinski's Static semantics: they have formally defined the two phases, and  have devised the complexity. Computationally, for disjunctive logic programs this would result in a procedural semantics with an inefficient preprocessing step, to perform in the first place, and a reasonably efficient inference procedure. Stefania and Tiziana Morbidoni have formally assessed the computational complexity of this approach (which is related to the technique of knowledge compilation).

Logical Agents

Stefania has proposed (with Arianna Tocchio) a new logic programming language, called DALI, with active and reactive rules, close in syntax and semantics to the traditional Horn Clause language. The language has been implemented (in co-operation with Arianna Tocchio) at the Computer Science Dept. of the University of L'Aquila and is being experimented. The DALI interpreter with documentation is publicly available.

Syntactically, DALI is
close to the Horn clause language and to Prolog. DALI programs, i.e., DALI agents, may however contain a new kind of rules, reactive rules, aimed at:
(i) interacting with an external environment; (ii) reacting to some of  its own internal conclusions. The environment is perceived in the form of external events, that can be exogenous events, observations, or messages from other agents. In response, a DALI agent can either make actions or send messages, or perform some internal reasoning.

What is new in DALI is that the same external event can be considered under different points of view: the event is first perceived, and the agent may reason about this perception; then a reaction can take place, and finally the event and the (possible) actions that have been performed are recorded as past events and
past actions. An important novel feature is that internal conclusions can be seen as events: this means, a DALI agent can "think" about some topic, the conclusions she takes can determine a behavior, and, finally, she is able to remember the conclusion, and what she did in reaction. Distinguished internal conditions that can trigger reactions are automatically attempted from time to time. Whatever the agent remembers is kept or "forgotten" according to suitable
conditions (that can be set by directives)
. Then, a DALI agent is not a purely reactive agent based on condition-action rules: rather, it is a reactive, proactive and rational agent that performs inference within an evolving context.

DALI has a fully logical declarative and procedural semantics, and an operational semantics. DALI provides reactive and proactive features combined with reasoning mechanisms, within an evolving context that can be exploited for achieving agents with "ambient intelligence".

DALI agents have been experimented in the definition of a prototype Intrusion Detection System. In the context of the CUSPIS project, DALI has been used to implement a multi-agent system that assists the user during her visit to cultural assets (where the visit is monitored by means of GALILEO satellites) by eliciting the user profile and thus providing the user with personalized information and suggestions for the persent as well as for future visits. A satellite-based authentication system has also been developed (with Arianna Tocchio and Pierangelo Dell'Acqua) for monitoring the cultural assets transfers.

With Pierangelo Dell'Acqua Stefania is explored the definition of local preferences in logical agent languages. With Francesca Toni, Stefania has formally defined an abstract multi-layered general agent model including a meta-control layer.

Together with Pierangelo Dell’Acqua, Luis Moniz Pereira and Francesca Toni, Stefania devised an approach where assistant agents interact with users and support their activities. Agents cooperate with humans so as to help them to adapt to environments that are new to them and/or when their ability to cope with the environment is too costly, non-existent or impaired. An assistant agent should improve in time, both in its understanding of the user needs, cultural level, preferred kinds of explanations, etc. and in its ability to cope with the environment. Also, they are developing an approach to self-checking in the form of a method for allowing agents to explicitly observe and record their past behavior so as to be able, by means of specific constraints defined as temporal-logic-like formulae, to decide the best actions to do, and to avoid errors performed in previous similar situations.

Work has been done with the former Ph.D. student Panagiota Tsintza, now lecturer at the University of Ionia (Greece) about automated negotiation.  We have extended a constraint-based algorithm for P2P agent negotiation proposed by late Marco Cadoli in 2003. The extensions on the one hand overcome some limits of the original approach thus allowing am agreement to be found where previously it was not possible. The extension allows more generality in defining the negotiation area of each agent and in computing offers.

in turn to devise a counter-attack.


DALI has been integrated with logical planning modules (with Giovanni De Gasperis), and inter-agent negotiation based on game theory (with Pasquale Caianiello and Giovanni De Gasperis).

Stefania Costantini has been working about extensions and applications of Multi-Context Systems (MCSs) also in the agent domain, and on the adoption of bridge rules (which are the MCS's inter-context knowledge exchange device) as a general mechanism for practically exchanging knowledge among distributed heterogeneous sources in the "Internet of Everything".

Stefania Costantini has in fact introduced: ACEs (Agent Computational Environments) which are modular systems where a basic logical agent is equipped with modules for Complex Event Processing, quantitative reasoning, and other forms of reasoning; DACMACS, which is a framework extending MCSs for defining Multi-Agent Systems (MAS) where agents possess global and local ontologies, and interact with external data/knowledge sources.


Natural Language Processing

With the former Ph.D. student Alessio Paolucci, work has been done about aspects of Natural Language Processing (NLP) in Computational Logic. A working prototype has been developed, called Mnemosine, which by relying upon an improved form of DCG’s, the SE-DCG’s and upon a background knowledge base is able to answer questions in natural language in a comparatively efficient and reliable way.

In order to automate the process of knowledge acquisition from natural language source, they build upon recent work where natural language sentences are translated into ASP, taking into account sentences that imply uncertain knowledge and thus cannot be translated into classical logic. They mean to exploit meta-reasoning and default reasoning so as to decide whether and in which form knowledge extracted by a sentence should be added to a knowledge base.

Automated Deduction

In cooperation with Eugenio Omodeo and Pasquale Caianiello, Stefania Costantini has contributed to the specification of definitional extension mechanisms within a purely equational framework such as the "Schroder-Tarski"  calculus of dyadic
relations  The prototype implemented Metamorpho system, written in SWI-Prolog, is available at the URL
http://costantini.dm.univaq.it/online.htm The motivation is that  such a
formalism can play a fundamental role in a two-level architecture
of logic-based systems.

Three basic forms of definitional extensions are supported:
(i) introduction of new term constructors;
(ii) disguisement of special equations under new sentence constructors;
(iii) templates for parametric lists of sentences that will be actualized in the formation of axiomatic theories.

Supplied features which make the above mechanisms really flexible
are the ones enabling the user to:
(a) introduce variadic constructs, to wit, constructs with an
unrestricted number of arguments;
(b) exploit, in the definienda, parameters which do not belong
to the formalism: typically, natural numbers, lists, and even
quantified first-order formulas;
(c) make some definitions local to specific theories;
(d) make some templates for parametric theories 'ephemeral', so that they are available throughout the loading of the context where
they are created, but then they automatically vanish;
(e) pass identifiers as parameters to templates: a typical use will be
(f) fix default expressions for some template parameters.

 The process of definition expansion should be guaranteed to converge by such checks, although this fact has not been proved formally so far.

Research in the Industry

In the period she had been working at the R&D Labs of Italtel SIT in Milan (1983-87), Stefania worked in the Software Engineering Group. The objective of this group was to define, implement and experiment automated or semi-automated methodologies for supporting the specification and design of telecommunication systems. The conceptual tools that were used are: (i) algebraic specification languages, mainly the Clear language by Burstall and Goguen; (ii) Petri Nets.

She has spent eight months at the AEG research center in ULM, Germany, partecipating as a software engineer to the definition and experimentation of one of the first prototypes in Europe of a 900Mhz mobile phone. She has developed a real-time test suite that has been widely used for actual experiments.



Teaching Activities

Until 1998: undergraduate course in Computer Architectures ("Architettura degli Elaboratori") for students of Computer Science

1999-2001: introductory undergraduate course in Computer Science ("Informatica Generale") for students of Economy

Since 2000: undergraduate course in Databases ("Basi di Dati e Sistemi Informativi") for students of Computer Science

2000-2004: undergraduate course in Artificial Intelligence (Intelligenza Artificiale) for students of Computer Science

Since 2004: graduate course in Artificial Intelligence + Intelligent Agents for students of Computer Science

2005-2007: Master course in Advanced Databases  ("Basi  .di Dati Avanzate) for students with a degree in Computer Science attending the Master in Web Technologies


Program Committees

  • Seventh Italian Conference on Logic Programming  (GULP'92, held in Tremezzo, Italy (Chair)
  • Eight Italian Conference on Logic Programming   (GULP'93), held in Gizzeria Lido, Italy, June 1993.
  • 1994 Joint Conference on Declarative Programming (GULP-PRODE'94),  held in Peninscola, Spain, September 1994.
  • Twelfth International Conference on Logic Programming (ICLP'95), held at Shohan Village Center, Kanagawa, Japan, June 1995.
  • Second International Workshop on Flexible Query-Answering Systems (FQAS'96), held in Roskilde, Denmark, May 1995.
  • META'96; Eight Workshop on Meta-Programming in Logic, held in Bonn, Germany, September 1996, held in conjunction to JICSLP'96, Joint International Conference and Symposium on Logic Programming.
  • AAAI Spring 2001 Symposium on
    Answer Set Programming:
    Towards Efficient and Scalable
    Knowledge Representation and Reasoning
    Stanford, USA, March 26-28, 2001
  • DALT 2003  Declarative Agent Languages and Technologies , AAMAS Workshop - Melbourne, 15 of July 2003
  • ASP03, Answer Set Programming: Advances in Theory and Implementation, held in Messina, September 26-28, 2003.
  • TPLP&NMR 2004, Theory and Practice of Logic Porgramming and Non-Monotonic Reasoning, to be held in Mexico City, April 26-30, 2004.
  • DALT 2004  Declarative Agent Languages and Technologies , AAMAS Workshop - held in Melbourne, July 2004
  • Seventh Workshop on Computational Logic in Multi-Agent Systems (CLIMA VII) held in London, UK, 2005
  • ASP05, Answer Set Programming: Advances in Theory and Implementation, held in Bath, UK, July 2005.
  • 2th RCRA workshop on Experimental Evaluation of Algorithms (RCRA'05)
    Ferrara, Italy, June 2005.
  • Eight Workshop on Computational Logic in Multi-Agent Systems (CLIMA VIII)
  • RCRA 2006, Giornata di Lavoro:  Analisi sperimentale e benchmark di
  • algoritmi per l’Intelligenza Artificiale.
  • 2.  CILC07, 22-esimo Convegno Italiano di Logica Computazionale
  • .ASP’07 (Co-Chair) International Workshop on Answer Set Programming and Applications.
  • AITA-08, Meta-Reasoning in Agents
  • CLIMA-IX,  Computational  Logic  in  Multi-Agent  Systems
  • LANMR-2008, Logic and Non-Monotonic Reasoning
  • RCRA 2008, 15th Workshop on Experimental Evaluation of Algorithms for  Solving  Problems  with  Combinatorial  Explosion
  • CILC08, 23-esimo Convegno Italiano di Logica Computazionale
  • CILC09, 24-esimo Convegno Italiano di Logica Computazionale
  • CLIMA-X,  Computational  Logic  in  Multi-Agent  Systems
  •  LANMR-2009, Logic and Non-Monotonic Reasoning
  • LPNMR-2009, Logic Programming and Non-Monotonic Reasoning
  • CILC 2010 e 2011, Convegno Italiano di Logica Computazionale
  • CLIMA-XI e XII,  Computational  Logic  in  Multi-Agent  Systems
  • RCRA 2010, 17th Workshop on Experimental Evaluation of Algorithms for  Solving  Problems  with  Combinatorial  Explosion 
  •  LANMR-2010, Logic and Non-Monotonic Reasoning
  • LPNMR-2011, Logic Programming and Non-Monotonic Reasoning
  • ENC 2011, Mexican International Conference on Computer Science
  • KR 2012, 13th International Conf. on Principles of Knowledge Representation and Reasoning
  • ECAI 2012, European Conference on Artificial Intelligence
  • … and many others


Stefania Costantini has served as a referee for several national and international Conferences,  and for several Journals, among which the Journal of Logic Programming, the Journal of Automated Reasoning, the IEEE Transactions on Knowledge and Data Engineering, The Journal on Theory and Practice of Logic Programming, the Journal of Logic and Computation, the Journal of Algorithms.

Participation to Projects

In the ''80 she participated (when working in the industry for  Italtel SIT)
to the  Esprit P283 FOR-ME-TOO about Formal Methodologies for the Specification and Design of Telecommunication Systems and to the activities of the CD900 consortium, that specified one of the first European prototype of 900Mhz mobile phones..

In the  '90 she participated to a three-years joint project between the University of Milano and Enel, the Italian Electricity State Company, for the definition and development of formal methods for the management of large organizations data. .

In the years 1999-2000 she participated to a  MURST-founded (Ministry of University, Reseach and Technology) about "Intelligent Agents for Information Extraction'',
coordinator  Prof. Franco Turini.

In the years  2000-2001 she has participated to a  MURST-founded (Ministry of University, Reseach and Technology) about "Aggregate- and number-reasoning for computing: from decision
algorithms to constraint programming with multisets, sets, and
coordinator  Prof. Domenico Cantone.

From 2002 to 2005 she has participated, as the coordinator of the unit of L'Aquila, and as the coordinator of a workpackage, to the WASP Working Group on Answer Set Programming, funded by the Information Society Technologies
programme of the European Commission, Future and Emerging Technologies
( IST-2001-37004)

From 2005 to March 2007 she has participated to the project CUSPIS: A Cultural Heritage Space Identification System in the context of: Galileo and the European Cultural Assets: a European infrastructure serving another European infrastructure ( GJU/05/2412/CTR/CUSPIS)


Recent participations to European Projects: COST action IC0801 “Agreement Technologies”, SINTELNET “European Network for Social Intelligence”. Industrial Projects: with CIRA (Italian Center of Aerospatial Research), 2014-15; with SPEE, L’Aquila, 2015-17.



1983. MSc degree (laurea magna cum Laude) in Computer Science at the Univ. of Pisa, Italy

1983-1987: Programmer and software designer at Italtel SIT in Milano (a telecommunication Company)



1987-1990:   position at the Computer Science Dept., Univ. of Milano, supported by fellowships from IBM Italia  and Hewlett-Packard Italia.

1990-1999: Assistant professor at the Computer Science Dept., Univ. of Milano



1999- February 2001: Assistant Professor at the Dept. of Pure and Appl. Maths. ,Univ. of L'Aquila

March 2001-October 2005: Associate Professor first at the Dept. of Pure and Appl. Maths. , then at the Dept. of Computer Science, Univ. of L'Aquila




From November 2005: Professor at at the Dept. of Computer Science, Univ. of L'Aquila and then at DISIM, Dept. of Computer Science and Engineering and Mathematics