38050 Povo (Trento), Italy Tel.: Fax: e mail: url:

Size: px
Start display at page:

Download "38050 Povo (Trento), Italy Tel.: Fax: e mail: url:"

Transcription

1 CENTRO PER LA RICERCA SCIENTIFICA E TECNOLOGICA Povo (Trento), Italy Tel.: Fax: e mail: prdoc@itc.it url: PLANNING AND VERIFICATION TECHNIQUES FOR THE HIGH LEVEL PROGRAMMING AND MONITORING OF AUTONOMOUS ROBOTIC DEVICES Carlucci Aiello L., Cesta A., Giunchiglia E., Pistore M., Traverso P. December 2001 Technical Report # Istituto Trentino di Cultura, 2001 LIMITED DISTRIBUTION NOTICE This report has been submitted forpublication outside of ITC and will probably be copyrighted if accepted for publication. It has been issued as a Technical Report forearly dissemination of its contents. In view of the transfert of copy right tothe outside publisher, its distribution outside of ITC priorto publication should be limited to peer communications and specificrequests. After outside publication, material will be available only inthe form authorized by the copyright owner.

2

3 Planning and verification techniques for the high level programming and monitoring of autonomous robotic devices Luigia Carlucci Aiello ½µ, Amedeo Cesta ¾µ, Enrico Giunchiglia µ, Marco Pistore µ, Paolo Traverso µ ½µ DIS - Univ. di Roma Via Salaria 113, Roma, Italy aiello@dis.uniroma1.it ¾µ IP-CNR Viale Marx 15, Roma, Italy cesta@ip.rm.cnr.it µ DIST - Univ. di Genova Viale Causa 13, Genova, Italy enrico@dist.unige.it µ ITC-IRST Via Sommarive 18, Povo (TN), Italy pistore,traverso@irst.itc.it Abstract Autonomy and safety are two major compelling requirements for space applications. From one side, real-life experiments with space missions have recently shown that planning techniques can provide in practice the desired level of autonomy. From the other side, they have also shown the need for planning techniques that guarantee a high level of safety. In this paper we describe a prototype system based on the idea of Planning as Model-Checking. The system allows both for the validation and for the automatic generation of safe plans, i.e. plans that are guarantee to satisfy user-defined (safety) requirements. This work has been done within SACSO (SAfety Critical SOftware for planning in space robotics), an on-going three years project funded by the Italian Space Agency (ASI). INTRODUCTION During the week of May 17th 1999, the Remote Agent took control of NASA s New Millenium Deep Space One spacecraft. The experiment successfully demonstrated the applicability of closed-loop planning and execution in space missions. However, this success was not without surprises. Indeed, a deadlock due to a missing critical section in the code, caused the ceasing of the Remote Agent controlling activities. The ability to quickly detecting and recovering from the problem has been at the basis of the success of the experiment [1]. Since then, the exploitation of verification techniques for the validation of planners has become an important issue for spatial missions (see, e.g., [2]). In this paper we describe the work done within SACSO (SAfety Critical SOftware for planning in space robotics), an on-going three years project funded by the Italian Space Agency (ASI). SACSO aims at the integration of planning and verification techniques for safe planning. By safe planning, we mean the task of generating and validating plans which not only achieve the goal, but verify also a set of other user defined properties. With this marriage, our goal is to retain the capability to program and (more important) re-program the robotic device at a high level of abstraction: this feature has been the basis of the NASA success for overcoming problems during RAX experiment; have the possibility to automatically verify the correctness of the (automatically or manually) generated programs: this feature is important while developing the system, but also to verify the new versions with respect to new properties, in case some malfunctioning happens.

4 Within the SACSO project, we construct a prototype showing the viability of these ideas. The feasibility of this somehow ambitious project is due to two facts. First, in the last few years, we have seen a tremendous boost in the performances of planning and formal verification tools. Right now, a variety of planning and Formal Verification systems capable of handling complex domains with huge search spaces are available. Second, in this variety of systems, we have seen that a common technology is at the basis of these engines, namely procedures for propositional satisfiability based on Davis Logemann Loveland Procedure (DLL) or Ordered Binary Decision Diagrams (OBDDs) (see, e.g., [3, 4, 5]). In this paper we focus on OBDD-based techniques. We show how it is possible to define a high-level language for the specification of safe plans. We use the Model Based Planner MBP [6] both to validate plans against specifications and to generate plans from specifications. MBP performs plan validation and generation along the lines described in [7, 8], where the planning as model checking paradigm [9, 10, 11] is extended to deal with goals that can express temporal properties in non-deterministic domains. The paper is structured as follows. We start describing the high level language for plan specifications and the structure of plans that can be validated and generated by MBP. Then we describe the main functionalities of MBP and how the user can interact with the planner during the different phases of the development process. We also discuss how plan validation and generation are performed within MBP by means of OBDD-based techniques. Finally, we draw some conclusions and discuss some related work. A LANGUAGE FOR THE SPECIFICATION OF SAFE PLANS We present a high-level language for the specification of plans that control robotic devices. The language allows the user to specify plans at the level of goals, or requirements, that the plan should satisfy. A formal account, syntax, and semantics of the language for the specification of goals can be found in [7, 8]. Here we provide some intuitions and an informal description based on a user friendly language for plan specifications that we are currently defining. The language is based on basic propositions, temporal operators, and strength operators. Basic propositions are, for instance, engine-off, engine-on, pos-ü, stating that the engine of the robot arm is turned off, turned on, and the arm position, respectively. Each basic proposition represent a set of possible states of the robotic device under control, namely all the states where the basic proposition holds. Propositions can be composed with usual connectives like and, or, implies, not. Thus, for instance, the proposition engine-off and pos-ü represents the set of states where the robot has its engine on and is in a given position. Temporal operators allow the user to specify temporal conditions that the device should satisfy along task executions. Temporal operators are reach [while preserving], maintain, avoid, then. Intuitively, reach p means that the plan should lead the robotic device to a state that satisfies proposition p. reach p while preserving q states that the plan, before reaching a state satisfying p, all along its execution, should preserve the property expressed by proposition q. maintain p states that property p should always be satisfied all along the (possibly infinite) execution of the plan. avoid p is the dual specification, p should never hold. spec1 then spec2 specifies a sequential ordering of the specifications spec1 and spec2: spec1 should be satisfied first, and spec2 afterwards. We have two strength operators, do and try. do spec states that spec should be guaranteed, in spite of all exogenous events (e.g., other agents working in the same environment), external environment behaviours (e.g., input/commands issued by the user), and system failures. try spec means that spec is desired but not strictly required for all possible situations, and it is acceptable that the plan satisfies spec only in some cases (e.g., the nominal ones). Specifications can be themselves combined with usual connectives, like and, or. For instance, do maintain p and try reach q states that the plan should guarantee that condition p is maintained and, at the same time, it should reach a state where q holds whenever this is allowed by non-determinism. In the following, we describe how the language can be used to specify safe plans with some simple examples. The user can specify that a camera (or a robot arm) should move to a desired position pos with: reach pos If not specified, the default strength operator is do: reach pos is equivalent to do reach pos, which means that that the plan should guarantee that the position pos is reached. The user can specify the weaker requirement: try reach pos In this case, the planner generates a plans that tries to move the camera to the desired position, accepting the fact that non-deterministically some situations may prevent this, e.g., in the case of failure of some components. The operator then specifies an order in which the plan should satisfy different parts of the specification, like in the case we want the camera to move to pos before, and to pos afterwards:

5 curr. state curr. context task next context 0 engine-off reach pos-2 then reach pos-0 turn-on reach pos-2 then reach pos-0 1 engine-on and pos-0 reach pos-2 then reach pos-0 moveto-1 reach pos-2 then reach pos-0 2 engine-on and pos-1 reach pos-2 then reach pos-0 moveto-2 reach pos-2 then reach pos-0 3 engine-on and pos-2 reach pos-2 then reach pos-0 moveto-1 reach pos-0 4 engine-on and pos-2 reach pos-0 moveto-1 reach pos-0 5 engine-on and pos-1 reach pos-0 moveto-0 reach pos-0 6 engine-on and pos-0 reach pos-0 turn-off 7 engine-off reach pos-0 turn-on reach pos-0 8 engine-on turn-off 9 engine-off nop Fig. 1: A plan for reach pos-2 then reach pos-0 reach pos then reach pos Now let us suppose we want the camera to point to a given moving object (e.g. the moon) and after that, we want to keep the camera pointing at that object. We can specify: reach pos then maintain pos We can specify different strengths for this requirement, like reach pos then try maintain pos, or try reach pos then maintain pos, or try reach pos then try maintain pos. We can furtherly refine the plan specification by requiring that the camera should do all of this by avoiding to point at another position danger-pos, e.g., by avoiding to point at the sun: (reach pos then maintain pos) and avoid danger-pos As a further example, consider the case in which we need a plan that is guaranteed that a given position pos is maintained during the mission (e.g. pointing the camera to the moon), and leaves open the non-deterministic possibility to reach a different position pos (e.g. taking the picture of another desired object just if possible): maintain pos and try reach pos As a final example, consider the case in which the user nests reach and maintain specifications, e.g., in order to specify that the camera should always maintain the possibility to shut down according to a safe procedure : do maintain try reach safe-shut-down SAFE PLANS A plan is a data structure that describes tasks to be executed in given situations. More precisely, a plan can be seen as a table whose columns are current states, current and next contexts, and tasks. The current state specifies the situation of the system under control (e.g. the position of the camera) and the current context defines the specification to be satisfied (e.g. the camera must reach a certain position). The task describes what has to be performed in the current state and current context, while the next context represents the specification that remains to be satisfied afterwards. For instance, a plan that satisfies the high level specification reach pos-2 then reach pos-0 is shown in Fig.1. Assume the camera is initially at position 0 and the engine is off. According to the plan, the, engine is turned on (line 0), then the camera is moved to pos-1 (line 1) and then to pos-2 (line 2). Once position 2 is reached, specification reach pos-2 is satisfied and the new context becomes reach pos-0 (line 3). The camera is moved back to pos-1 (line 3) and to pos-0 (line 5). Now, also specification reach pos-0 is satisfied. Finally the engine is turned off (line 6) and the robot becomes inactive (line 9). We remark that, given a state, the plan can execute different tasks depending on the current context. Plans of this form are strictly more expressive than plans that simply map states to actions to be executed, like universal plans [12], memory-less policies [13], and state-action tables [9, 11]. Indeed, they allow to specify the task to be executed in a given state depending

6 MBP Plan Generation Domain Description Plan Validation OBDD based model Plan Specification Control Automaton Plan Description yes/no(counterexample) OBDD based Plan Library Fig. 2: MBP: Plan Generation and Validation on the history of execution and on the conditions that should still be fulfilled. For instance, in the previous example the first time the camera is in position 1, the context specifies that the plan has still to satisfy the whole specification reach pos-2 then reach pos-0, and task moveto-2 is performed (line 2). Once pos-2 is reached, the context changes (see next context in line 3). When the camera gets back to pos-1 the only specification to satisfy is reach pos-0. Therefore, task moveto-0 is performed (line 5). A further remark is in order. The plan shown in the example is more powerful than a sequential plan. Indeed, no a-priori sequence of tasks is precompiled in the plan. The plan encodes a reactive behaviour that, depending on the state of the world and on the current context, executes a suitable task. This allows for the specification of plans that are robust with respect to unexpected behaviours at execution time. For instance, let us suppose that for some reason (e.g. an alarm, a high priority event) the engine must be turned off while the plan is moving the camera to pos-0. The plan execution would not fail; rather, it would reactively jump to line 7, turn on the engine again and start again to move the camera towards pos-0. As a further example, let us suppose that the engine has some temporary fault such that the task turn-on might fail and leave the engine off. The plan in Fig.1 would iteratively try to turn on the engine until it succeeds by repeatly executing task turn-on, testing whether the engine is on or off, and executing again the same task is the engine is off. SAFE PLANNING The MBP planner can perform two main functions: Plan Validation and Plan Generation (see Fig.2). The user can provide three kinds of inputs to the planner: a plan specification, a domain description, and a plan description. The plan specification is provided in the high-level language introduced previously. The domain description mainly consists of a description of the possible states of the device (e.g., the positions of a robotic arm) and of the basic tasks that it can perform (e.g., the task of moving the arm to a given position). For instance, moveto-ü can be described as a task that can be applied if the engine is on, that leads the device to position Ü if the task succeeds, and that may lead to a different position in the case of failure. The plan description specifies which tasks should be performed by the device in different situations. Plan validation takes in input a domain description, a plan specification, and a plan description. It checks whether the plan satisfies the plan specification in the given domain. If this is not the case, MBP provides a counterexample to the users, i.e., it shows a behaviour of the system that does not satisfy the requirements. The user can validate plans incrementally. For instance, the user can check whether a plan is guaranteed to move the robot arm to a given position. Then he/she can add a further constraint, e.g., the fact that the plan should avoid to bring the device to unsafe positions while moving to a desired position, and check the plan against the more restrictive constraint. At each step, if the plan does not satisfy the plan specification, MBP provides a counterexample that shows how the

7 constraints are violated. The user can refine and modify plans and specifications until satisfied. Plan generation takes in input a domain description and a plan specification. MBP generates automatically a plan that is guaranteed by construction to satisfy the specifications. A plan generated automatically will always be validated successfully by MBP. There are cases in which it is impossible to generate a plan that satisfies the specifications. For instance, the user can ask the planner to find a plan that moves a robotic arm somewhere without passing for a given area while the only possible way to get there is thorough that area. In this case, MBP explores exhaustively all the possible tasks and states of the model, and terminates its search with failure. When failure is returned by the plan generation function, then we are guaranteed that no plan exists that satisfies the specifications in the given model of the domain. If this happens, this probably means that the domain and/or the plan specification need further analysis. Plan generation and plan validation can be used in different phases of the development process, and can be combined iteratively. Automatic plan generation can avoid the error-proning and time consuming task of describing the plan by hand from scratch and in all the details. In the first phases, plan generation can thus be a valuable and convenient functionality. However, after that a plan has been generated, the user can modify it by suggesting a better solution based on his/her experience. The resulting plan can be validated against the original plan specifications in order to guarantee safety. Moreover, both models of the domain and requirements on plans evolve during the project, and they are iteratively refined and modified. Both automatically generated and user-defined plans can be validated against the changes in the requirements or the domain specifications. SAFE PLANNING BY MODEL CHECKING In this section we show how safe planning can be done by using model checking techniques. Model Checking [14] is a well-known technique for the formal verification of digital systems. In order to deal in practice with the huge size of realistic domains, we use symbolic model checking techniques [15] based on OBDDs [16]. From Domain Descriptions to Models The user description of the domain is translated automatically into a state-transition system. A state-transition system is a directed graph whose nodes represent the possible states of the device and whose arcs represent possible transitions when tasks are executed. Realistic applications lead to huge models of the domain, where the explicit definition of the statetransition system is impossible. MBP makes use of the so-called symbolic techniques for representing state-transition systems. The basic idea is that of representing symbolically sets of states and transitions in the graph, rather than each single state and each single transition. Sets of states and transitions can be represented symbolically through a logic formalism, and in particular by means of propositional formulas. Thus, for instance, the set of states where the engine is off can be represented with the propositional variable engine-off. This proposition encodes very compactly a possibly huge number of explicit states, since, e.g., it does not constrains at all the possible positions of the camera. Transitions from states to states are represented by propositions on variables representing the current states, the task, and the next states resulting from executing the task. For instance, all the transitions caused by the task turn-on and leading from the set of current states where the engine is off to a set of next states where the engine is on, can be represented by the formula: (engine-off and turn-on) implies next(engine-on) A symbolic representation of a non-deterministic task turn-on that my unpredictably leave the engine off can be done as follows: (engine-off and turn-on) implies (next(engine-on) or next(engine-off)) Symbolic representations can be manipulated by means of different techniques (e.g., with satisfiability decision procedures or model checking). MBP is based on Ordered Binary Decision Diagrams (OBDDs) [16] that allow for a compact representation of symbolic representations and for their effective manipulation. MBP translates automatically a domain description into an OBDD-based model representing compactly the corresponding state-transition system (see Fig.2). From Plan Specifications to Control Automata For each plan specification, MBP constructs a control automaton (see Fig.2) that is used to control the search for a plan in the symbolic representation of the model of the domain. The nodes are the control states of the planner during the search. They correspond to the current sub-goals that need to be resolved by the planning algorithm, and constitute the

8 pos and pos all all some c1 pos all c2 pos c1 = maintain pos and try reach pos c2 = maintain pos Fig. 3: The automaton for maintain pos and try reach pos contexts of the plan that is being built. The transitions correspond to possible evolutions to different control states in the search. Consider, for instance, the following plan specification, where the user requires a plan that must guarantee that position pos is maintained and that there is a chance to reach position pos : maintain pos and try reach pos During the search, the planning algorithm has mainly to deal with two cases. In the first case, pos has been already reached, and the algorithm must look for a plan that guarantees that pos is maintained. In the second case, pos has still to be reached, and the planner must both leave a chance to reach pos, thus satisfying try reach pos, and guarantee that pos is maintained, thus satisfying do maintain pos. MBP constructs the automaton, presented in Fig.3, that represents these two cases. Consider the state ½ = maintain pos and try reach pos of the automaton. This control state corresponds to the situation where the planner has still to satisfy both try reach pos and maintain pos. From control state ½, we have two possible transitions, corresponding to the two cases described above. The transition labelled with pos and pos corresponds to the case where pos is reached, and thus leads to state ¾ = maintain pos. The transition is also marked with all, to mean that the planner must guarantee the maintainability of pos in all non-deterministic possibilities. In control state ¾, pos must be maintained forever. For this reason, we have a transition from ¾, which is labeled pos and loops back to ¾. The other transition from state ½ corresponds to the case where only pos holds, but not pos, i.e., pos is not reached yet. The transition forks to two different control states. It corresponds to a conjunction of two requirements that must be both satisfied. Indeed, the plan has to guarantee both that in all next states of the domain pos is maintained (arc marked with all and leading to ¾ ) and that there is some state where try reach pos is satisfied (arc marked with some and looping back to ½ ). From Plan Descriptions to Plans The user can provide in input plans to the planner. We are currently investigating different possible languages for plan descriptions. A possibility for the user will be to describe plans in a tabular form, like the one of the example shown in Fig.1. A different possibility is to provide a procedural language. The language should specify the tasks that should be executed when the device is in different states, and the controller of the device is in different contexts. Given a description of a plan in a proper language, MBP can generate an OBDD-based encoding of the plan (see Fig.2), very much in the style used for representing transitions. Conversely, given an OBDD-based encoding of a plan, MBP can generate its description in the tabular format of Fig.1. Plan Generation and Validation We can now describe in some detail how the the two main functionalities of MBP are performed. Plan validation is reduced to a model checking problem. From the model and the plan, a new model is extracted. The extracted model corresponds to a state-transition system that encodes only the behaviours of the system when it is controlled by the given plan. Plan specifications correspond to a formula in temporal logic [7]. Plan validation is then reduced to model checking the new model against the plan specification. This is done by means of standard symbolic model checking techniques. In our case, since MBP is based on NuSMV [17], a state of the art symbolic model checker, plan validation is reduced to model checking in NuSMV.

9 In plan generation, given the symbolic model generated by the description of the domain, and the control automaton generated by plan specifications, MBP searches through the symbolic model guided by the control automaton. The algorithm associates to each context in the control automaton a (symbolic representation of a) set of pairs of states and tasks. The context of the control automaton and the associated states and tasks constitute a putative plan, that is incrementally refined during the search. The algorithm starts with a plan that associates to each context all the state-task pairs. The plan is then incrementally updated and refined by eliminating iteratively states and tasks from a context. Whenever the algorithm recognizes that the requirements encoded in the arcs of the control automaton are not satisfied by the next states reachable by executing a given task in a given state, then that state-task pair is eliminated from the context. Let us consider the case of context ½ in the example of Fig.3. The algorithm distinguishes two cases. The first one corresponds to the arc marked with pos and pos, and covers the case of the states where pos holds. In this case a state-task pair is eliminated if it may lead to a next state that does not belong to context ¾ (namely to a next state where pos is not guaranteed to hold in the future). The second case corresponds to the arcs marked with pos, and cover the states where pos does not hold. In this case a state-task pair is eliminated if it may lead to a state not in ¾ (arc marked with all), but also if no next state belongs to ½ (arc marked with some). The algorithm terminates when no more state-task pairs can be eliminated. CONCLUSIONS AND RELATED WORK In this paper we have shown how OBDD-based model checking techniques can be used to do safe planning. Based on the results presented in [7, 8], we have described how the MBP planner [6] performs plan generation and validation. This work is a starting point in the SACSO project, a project sponsored by ASI. The aim of SACSO is the development of techniques and tools for the support of autonomy and safety in space applications. Within the SACSO project, we are also addressing the problem of safe planning by applying the planning as satisfiability approach [18]. Within the planning literature, most of the works on planning for temporally extended goals restricts to deterministic domains, see for instance [19, 20]. Deductive planning can be considered as the first attempt to merge planning and formal verification techniques. In this case, theorem proving can be used to generate (and validate) plans that satisfy temporal goals, and planning domains can be non-deterministic, see, e.g., [21]. However,the practical automatic generation of plans by deductive planning is still an open problem. SIMPLAN [22] generates plans for LTL-like goals in non-deterministic domains by searching through an explicit representation of the state-space. The use of symbolic model checking techniques, opens up the possibility to deal in practice with large state spaces that are very hard to be tackled with explicit state techniques. REFERENCES [1] A. Jonsson, P. Morris, N. Muscettola, and K. Rajan. Planning in interplanetary space: theory and practice. In Proc. 5th Int.nl Conf. on Artificial Intelligence Planning and Scheduling (AIPS 2000), [2] B. Smith, M.S. Feather, and N. Muscettola. Challenges and Methods in Testing the Remote Agent Planner. In Proc. 5th Int.nl Conf. on Artificial Intelligence Planning and Scheduling (AIPS 2000), [3] A. Cimatti, E. Giunchiglia, F. Giunchiglia, and P. Traverso. Planning via model checking: a decision procedure for AR. In Lecture Notes in Computer Science, volume 1348, [4] F. Giunchiglia and P. Traverso. Planning as Model Checking. In Susanne Biundo, editor, Proceeding of the Fifth European Conference on Planning, Lecture Notes in Artificial Intelligence, Durham, United Kingdom, September Springer-Verlag. [5] H. Kautz and B. Selman. Planning as satisfiability. In Proc. ECAI-92, pages , [6] P. Bertoli, A. Cimatti, M. Pistore, M. Roveri, and P. Traverso. MBP: a Model Based Planner. In Proc. of IJCAI 01 workshop on Planning under Uncertainty and Incomplete Information, August [7] M. Pistore and P. Traverso. Planning as Model Checking for Extended Goals in Non-deterministic Domains. In Proc. Ø International Joint Conference on Artificial Intelligence (IJCAI-01). AAAI Press, August [8] M. Pistore, R. Bettin, and P. Traverso. Symbolic techniques for planning with extended goals in non-deterministic domains. In Proc. 6th European Conference on Planning (ECP-01). Springer Verlag, September 2001.

10 [9] A. Cimatti, M. Roveri, and P. Traverso. Automatic OBDD-based Generation of Universal Plans in Non-Deterministic Domains. In Proc. AAAI 98, [10] F. Giunchiglia and P. Traverso. Planning as model checking. In Lecture Notes in Computer Science, Proc. of the 5th European Conference on Planning (ECP-99). Springer, September [11] A. Cimatti, M. Pistore, M. Roveri, and P. Traverso. Weak, Strong, and Strong Cyclic Planning via Symbolic Model Checking. Technical report, IRST, Trento, Italy, Available at URL [12] M. J. Schoppers. Universal plans for Reactive Robots in Unpredictable Environments. In Proc. IJCAI 87, pages , [13] B. Bonet and H. Geffner. Planning with incomplete information as heuristic search in bellief space. In Proc. AIPS 2000, pages 52 61, [14] E. M. Clarke, O. Grumberg, and D. A. Peled. Model Checking. The MIT Press, Cambridge, Massachusetts, [15] K.L. McMillan. Symbolic Model Checking. Kluwer Academic Publ., [16] R. E. Bryant. Symbolic Boolean manipulation with ordered binary-decision diagrams. ACM Computing Surveys, 24(3): , September [17] A. Cimatti, E.M. Clarke, F. Giunchiglia, and M. Roveri. NUSMV: a new Symbolic Model Verifier. In N. Halbwachs and D. Peled, editors, Proceedings Eleventh Conference on Computer-Aided Verification (CAV 99), number 1633 in Lecture Notes in Computer Science, pages , Trento, Italy, July Springer-Verlag. [18] L. C. Aiello, A. Cesta, E. Giunchiglia, and P. Traverso. Merging Planning and Verification Techniques for Safe Planning in Space Robotics. In Proc. of ISAIRAS 2001, [19] G. de Giacomo and M.Y. Vardi. Automata-theoretic approach to planning with temporally extended goals. In Proc. of ECP99, [20] F. Bacchus and F. Kabanza. Using temporal logic to express search control knowledge for planning. J. of Artificial Intelligence, Submitted for pubblication. [21] W. Stephan and S. Biundo. A New Logical Framework for Deductive Planning. In Proc. of IJCAI93, pages 32 38, [22] F. Kabanza, M. Barbeau, and R. St-Denis. Planning control rules for reactive agents. Artificial Intelligence, 95(1):67 113, 1997.

38050 Povo (Trento), Italy Tel.: Fax: e mail: url:

38050 Povo (Trento), Italy Tel.: Fax: e mail: url: CENTRO PER LA RICERCA SCIENTIFICA E TECNOLOGICA 38050 Povo (Trento), Italy Tel.: +39 0461 314312 Fax: +39 0461 302040 e mail: prdoc@itc.it url: http://www.itc.it PLANNING AS MODEL CHECKING FOR EXTENDED

More information

NuSMV 2: An OpenSource Tool for Symbolic Model Checking

NuSMV 2: An OpenSource Tool for Symbolic Model Checking NuSMV 2: An OpenSource Tool for Symbolic Model Checking Alessandro Cimatti, Edmund Clarke, Enrico Giunchiglia, Fausto Giunchiglia, Marco Pistore, Marco Roveri, Roberto Sebastiani, and Armando Tacchella

More information

NuSMV 2: An OpenSource Tool for Symbolic Model Checking

NuSMV 2: An OpenSource Tool for Symbolic Model Checking Carnegie Mellon University Research Showcase @ CMU Computer Science Department School of Computer Science 2002 NuSMV 2: An OpenSource Tool for Symbolic Model Checking Alessandro Cimatti ITC-IRST Edmund

More information

38050 Povo (Trento), Italy Tel.: Fax: e mail: url:

38050 Povo (Trento), Italy Tel.: Fax: e mail: url: CENTRO PER LA RICERCA SCIENTIFICA E TECNOLOGICA 38050 Povo (Trento), Italy Tel.: +39 061 31312 Fax: +39 061 30200 e mail: prdoc@itc.it url: http://www.itc.it SYMBOLIC MODEL CHECKING FOR MULTI AGENT SYSTEMS

More information

NuSMV: a reimplementation of SMV. A. Cimatti, E. Clarke, F. Giunchiglia, M. Roveri

NuSMV: a reimplementation of SMV. A. Cimatti, E. Clarke, F. Giunchiglia, M. Roveri istituto per la ricerca scientifica e tecnologica 38050 Povo (Trento), Italy Tel.: + 39 461 314575 Fax: + 39 461 314591 e-mail: prdoc@itc.it url: http://www.itc.it NuSMV: a reimplementation of SMV A. Cimatti,

More information

Implicit vs. Explicit Data-Flow Requirements in Web Service Composition Goals

Implicit vs. Explicit Data-Flow Requirements in Web Service Composition Goals Implicit vs. Explicit Data-Flow Requirements in Web Service Composition Goals Annapaola Marconi, Marco Pistore, and Paolo Traverso ITC-irst Via Sommarive 18, Trento, Italy {marconi, pistore, traverso}@itc.it

More information

Interactive Autonoluy for Space Applications

Interactive Autonoluy for Space Applications Interactive Autonoluy for Space Applications Amedeo Cesta IP-CNR, Roma cesta@ip.rm.cnr.lt Enrico Giunchiglia DIST - Univ. di Genova enrico@dist.unige.it Paolo Traverso ITC-IRST, Trento leaf@irst.itc.it

More information

Scenario Graphs Applied to Security (Summary Paper)

Scenario Graphs Applied to Security (Summary Paper) Book Title Book Editors IOS Press, 2003 1 Scenario Graphs Applied to Security (Summary Paper) Jeannette M. Wing Computer Science Department Carnegie Mellon University Pittsburgh, PA 15213 US Abstract.

More information

38050 Povo (Trento), Italy Tel.: Fax: e mail: url:

38050 Povo (Trento), Italy Tel.: Fax: e mail: url: CENTR PER LA RICERCA SCIENTIFICA E TECNLGICA 8050 Povo (Trento), Italy Tel.: +9 0461 141 Fax: +9 0461 0040 e mail: prdoc@itc.it url: http://www.itc.it CNDITINAL PLANNING UNDER PARTIAL BSERVABILITY AS HEURISTIC

More information

Automatic verification of deontic interpreted systems by model checking via OBDD s

Automatic verification of deontic interpreted systems by model checking via OBDD s Automatic verification of deontic interpreted systems by model checking via OBDD s Franco Raimondi ½ and Alessio Lomuscio ½ Abstract. We present an algorithm for the verification of multiagent systems

More information

Planning and Monitoring Web Service Composition

Planning and Monitoring Web Service Composition Planning and Monitoring Web Service Composition M. Pistore, F. Barbon, P. Bertoli, D. Shaparau, and P. Traverso University of Trento - ITALY pistore@dit.unitn.it ITC-irst - Trento - ITALY [barbon,bertoli,traverso,shaparau]@irst.itc.it

More information

Temporal Logic Motion Planning for Mobile Robots

Temporal Logic Motion Planning for Mobile Robots Temporal Logic Motion Planning for Mobile Robots Georgios E. Fainekos, Hadas Kress-Gazit and George J. Pappas GRASP Laboratory, Departments of ESE and CIS University of Pennsylvania Philadelphia, PA 19104,

More information

A Novel Approach for Software Property Validation

A Novel Approach for Software Property Validation A Novel Approach for Software Property Validation Salamah Salamah Department of Computer and Software Engineering, Embry-Riddle Aeronautical University, salamahs@erau.edu. Irbis Gallegos, Omar Ochoa Computer

More information

Planning and Monitoring Web Service Composition

Planning and Monitoring Web Service Composition Planning and Monitoring Web Service Composition M. Pistore 1,2, F. Barbon 2, P. Bertoli 2, D. Shaparau 2, and P. Traverso 2 1 University of Trento - ITALY pistore@dit.unitn.it 2 ITC-irst - Trento - ITALY

More information

ON-BOARD AUTONOMY VIA SYMBOLIC MODEL-BASED REASONING

ON-BOARD AUTONOMY VIA SYMBOLIC MODEL-BASED REASONING ON-BOARD AUTONOMY VIA SYMBOLIC MODEL-BASED REASONING M. Bozzano 1 A. Cimatti 1 A. Guiotto 2 A. Martelli 2 M. Roveri 1 A. Tchaltsev 1 Y. Yushtein 3 1 Fondazione Bruno Kessler 2 Thales Alenia Space Italy

More information

System Correctness. EEC 421/521: Software Engineering. System Correctness. The Problem at Hand. A system is correct when it meets its requirements

System Correctness. EEC 421/521: Software Engineering. System Correctness. The Problem at Hand. A system is correct when it meets its requirements System Correctness EEC 421/521: Software Engineering A Whirlwind Intro to Software Model Checking A system is correct when it meets its requirements a design without requirements cannot be right or wrong,

More information

Formal Analysis and Verification of a Communication Protocol

Formal Analysis and Verification of a Communication Protocol Proceedings of the 5th WSEAS Int. Conference on Information Security and Privacy, Venice, Italy, November 20-22, 2006 103 Formal Analysis and Verification of a Communication Protocol XIN BEN LI, DE CHAO

More information

Lecture1: Symbolic Model Checking with BDDs. Edmund M. Clarke, Jr. Computer Science Department Carnegie Mellon University Pittsburgh, PA 15213

Lecture1: Symbolic Model Checking with BDDs. Edmund M. Clarke, Jr. Computer Science Department Carnegie Mellon University Pittsburgh, PA 15213 Lecture: Symbolic Model Checking with BDDs Edmund M Clarke, Jr Computer Science Department Carnegie Mellon University Pittsburgh, PA 523 Temporal Logic Model Checking Specification Language: A propositional

More information

A Comprehensive Approach to On-Board Autonomy Verification and Validation

A Comprehensive Approach to On-Board Autonomy Verification and Validation Proceedings of the Twenty-Second International Joint Conference on Artificial Intelligence A Comprehensive Approach to On-Board Autonomy Verification and Validation M. Bozzano, A. Cimatti, M. Roveri, A.

More information

Modelling and verification of BPEL business processes

Modelling and verification of BPEL business processes Modelling and verification of BPEL business processes Marina Mongiello Dipartimento di Elettronica ed Elettrotecnica Politecnico di Bari, Italy mongiello@poliba.it Daniela Castelluccia Dipartimento di

More information

The Maude LTL Model Checker and Its Implementation

The Maude LTL Model Checker and Its Implementation The Maude LTL Model Checker and Its Implementation Steven Eker 1,José Meseguer 2, and Ambarish Sridharanarayanan 2 1 Computer Science Laboratory, SRI International Menlo Park, CA 94025 eker@csl.sri.com

More information

Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints

Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints Roman Barták Charles University in Prague, Faculty of Mathematics and Physics Institute for Theoretical Computer

More information

Distributed Systems Programming (F21DS1) Formal Verification

Distributed Systems Programming (F21DS1) Formal Verification Distributed Systems Programming (F21DS1) Formal Verification Andrew Ireland Department of Computer Science School of Mathematical and Computer Sciences Heriot-Watt University Edinburgh Overview Focus on

More information

Tutorial on Model Checking Modelling and Verification in Computer Science

Tutorial on Model Checking Modelling and Verification in Computer Science Tutorial on Model Checking Modelling and Verification in Computer Science Armin Biere Institute for Formal Models and Verification Johannes Kepler University, Linz, Austria Abstract. This paper serves

More information

Model Checking VHDL with CV

Model Checking VHDL with CV Model Checking VHDL with CV David Déharbe 1, Subash Shankar 2, and Edmund M. Clarke 2 1 Universidade Federal do Rio Grande do Norte, Natal, Brazil david@dimap.ufrn.br 2 Carnegie Mellon University, Pittsburgh,

More information

Formal Tropos: language and semantics

Formal Tropos: language and semantics Formal Tropos: language and semantics A. Fuxman R. Kazhamiakin M. Pistore M. Roveri Department of Computer Science, University of Toronto, Canada Department of Information and Communication Technology,

More information

Algorithmic Verification. Algorithmic Verification. Model checking. Algorithmic verification. The software crisis (and hardware as well)

Algorithmic Verification. Algorithmic Verification. Model checking. Algorithmic verification. The software crisis (and hardware as well) Algorithmic Verification The software crisis (and hardware as well) Algorithmic Verification Comp4151 Lecture 1-B Ansgar Fehnker Computer become more powerful (Moore s law) The quality of programs cannot

More information

System Assistance in Structured Domain Model Development*

System Assistance in Structured Domain Model Development* System Assistance in Structured Domain Model Development* Susanne Biundo and Werner Stephan German Research Center for Artificial Intelligence (DFKI) Stuhlsatzenhausweg 3 D-66123 Saarbriicken, Germany

More information

Automatic synthesis of switching controllers for linear hybrid systems: Reachability control

Automatic synthesis of switching controllers for linear hybrid systems: Reachability control Automatic synthesis of switching controllers for linear hybrid systems: Reachability control Massimo Benerecetti and Marco Faella Università di Napoli Federico II, Italy Abstract. We consider the problem

More information

Automatic Recovery from Software Failure: A Model-Based Approach to Self-Adaptive Software

Automatic Recovery from Software Failure: A Model-Based Approach to Self-Adaptive Software Automatic Recovery from Software Failure: A Model-Based Approach to Self-Adaptive Software Paul Robertson and Brian Williams {paulr,williams}@csail.mit.edu MIT CSAIL, 32 Vassar Street, Building 32-272

More information

Simulink Design Verifier vs. SPIN a Comparative Case Study

Simulink Design Verifier vs. SPIN a Comparative Case Study Simulink Design Verifier vs. SPIN a Comparative Case Study Florian Leitner and Stefan Leue Department of Computer and Information Science University of Konstanz, Germany {Florian.Leitner,Stefan.Leue}@uni-konstanz.de

More information

Managing test suites for services

Managing test suites for services Managing test suites for services Kathrin Kaschner Universität Rostock, Institut für Informatik, 18051 Rostock, Germany kathrin.kaschner@uni-rostock.de Abstract. When developing an existing service further,

More information

Lecture 2: Symbolic Model Checking With SAT

Lecture 2: Symbolic Model Checking With SAT Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.

More information

Automated Synthesis of Composite BPEL4WS Web Services

Automated Synthesis of Composite BPEL4WS Web Services Automated Synthesis of Composite BPEL4WS Web Services M. Pistore University of Trento Via Sommarive 14 38050 Povo (TN), Italy pistore@dit.unitn.it P. Traverso, P. Bertoli, A. Marconi ITC-IRST Via Sommarive

More information

Formal Verification of Safety I&C System Designs: Two Nuclear Power Plant Related Applications. Abstract

Formal Verification of Safety I&C System Designs: Two Nuclear Power Plant Related Applications. Abstract Formal Verification of Safety I&C System Designs: Two Nuclear Power Plant Related Applications Janne Valkonen 1, Matti Koskimies 2, Ville Pettersson 1, Keijo Heljanko 2, Jan-Erik Holmberg 1, Ilkka Niemelä

More information

Proving the Correctness of Distributed Algorithms using TLA

Proving the Correctness of Distributed Algorithms using TLA Proving the Correctness of Distributed Algorithms using TLA Khushboo Kanjani, khush@cs.tamu.edu, Texas A & M University 11 May 2007 Abstract This work is a summary of the Temporal Logic of Actions(TLA)

More information

Synthesis of Fault Tolerant Plans for Non-Deterministic Domains

Synthesis of Fault Tolerant Plans for Non-Deterministic Domains Synthesis of Fault Tolerant Plans for Non-Deterministic Domains Rune M. Jensen, Manuela M. Veloso, and Randal E. Bryant Computer Science Department,Carnegie Mellon University, 5000 Forbes Avenue, Pittsburgh,PA

More information

goal as inputs and produces a plan for achieving that goal. The planning algorithm guarantees that the generated plan is consistent with a set of temp

goal as inputs and produces a plan for achieving that goal. The planning algorithm guarantees that the generated plan is consistent with a set of temp Using Model Checking to Validate AI Planner Domain Models John Penix, Charles Pecheur and Klaus Havelund Automated Software Engineering Group NASA Ames Research Center M/S 269-3 Moett Field, CA 94035 jpenix,pecheur,havelund@ptolemy.arc.nasa.gov

More information

KRATOS A Software Model Checker for SystemC

KRATOS A Software Model Checker for SystemC KRATOS A Software Model Checker for SystemC A. Cimatti, A. Griggio, A. Micheli, I. Narasamdya, and M. Roveri Fondazione Bruno Kessler Irst {cimatti,griggio,amicheli,narasamdya,roveri}@fbk.eu Abstract.

More information

38050 Povo (Trento), Italy Tel.: Fax: e mail: url:

38050 Povo (Trento), Italy Tel.: Fax: e mail: url: ENTRO PER L RIER SIENTIFI E TENOLOGI 38050 Povo (Trento), Italy Tel.: +39 046 3432 Fax: +39 046 302040 e mail: prdoc@itc.it url: http://www.itc.it HEURISTI SERH + SYMOLI MODEL HEKING = EFFIIENT ONFORMNT

More information

A Verification Method for Software Safety Requirement by Combining Model Checking and FTA Congcong Chen1,a, Fuping Zeng1,b, Minyan Lu1,c

A Verification Method for Software Safety Requirement by Combining Model Checking and FTA Congcong Chen1,a, Fuping Zeng1,b, Minyan Lu1,c International Industrial Informatics and Computer Engineering Conference (IIICEC 2015) A Verification Method for Software Safety Requirement by Combining Model Checking and FTA Congcong Chen1,a, Fuping

More information

Parallel Model Checking of ω-automata

Parallel Model Checking of ω-automata Parallel Model Checking of ω-automata Vincent Bloemen Formal Methods and Tools, University of Twente v.bloemen@utwente.nl Abstract. Specifications for non-terminating reactive systems are described by

More information

Model Checking. Dragana Cvijanovic

Model Checking. Dragana Cvijanovic Model Checking Dragana Cvijanovic d.cvijanovic@cs.ucl.ac.uk 1 Introduction Computerised systems pervade more and more our everyday lives. Digital technology is now used to supervise critical functions

More information

Using Java Pathfinder to Reason about Agent Systems

Using Java Pathfinder to Reason about Agent Systems Using Java Pathfinder to Reason about Agent Systems Franco Raimondi f.raimondi@mdx.ac.uk Department of Computer Science Middlesex University http://www.rmnd.net Liverpool, 11th September 2015 Joint work

More information

erics: A Tool for Verifying Timed Automata and Estelle Specifications

erics: A Tool for Verifying Timed Automata and Estelle Specifications erics: A Tool for Verifying Timed Automata and Estelle Specifications Piotr Dembiński, Agata Janowska, Pawe l Janowski, Wojciech Penczek,5, Agata Pó lrola, Maciej Szreter,Bożena Woźna 4, and Andrzej Zbrzezny

More information

NuSMV 2.2 Tutorial. Roberto Cavada, Alessandro Cimatti, Gavin Keighren, Emanuele Olivetti, Marco Pistore and Marco Roveri

NuSMV 2.2 Tutorial. Roberto Cavada, Alessandro Cimatti, Gavin Keighren, Emanuele Olivetti, Marco Pistore and Marco Roveri NuSMV 2.2 Tutorial Roberto Cavada, Alessandro Cimatti, Gavin Keighren, Emanuele Olivetti, Marco Pistore and Marco Roveri IRST - Via Sommarive 18, 38055 Povo (Trento) Italy Email: nusmv@irst.itc.it Contents

More information

Solving QBF with SMV. Abstract. 1 Introduction

Solving QBF with SMV. Abstract. 1 Introduction Solving QBF with SMV Francesco M. Donini Dipartimento di Elettrotecnica ed Elettronica Politecnico di Bari Via Re David 200 Bari, Italia Fabio Massacci Dipartimento di Ingegneria Civile e Ambientale Università

More information

Introduction to Linear-Time Temporal Logic. CSE 814 Introduction to LTL

Introduction to Linear-Time Temporal Logic. CSE 814 Introduction to LTL Introduction to Linear-Time Temporal Logic CSE 814 Introduction to LTL 1 Outline Motivation for TL in general Types of properties to be expressed in TL Structures on which LTL formulas are evaluated Syntax

More information

Constraint Programming for Controller Synthesis

Constraint Programming for Controller Synthesis Constraint Programming for Controller Synthesis Gérard Verfaillie and Cédric Pralet ONERA - The French Aerospace Lab, F-31055, Toulouse, France {Gerard.Verfaillie,Cedric.Pralet}@onera.fr Abstract. In this

More information

Guided Symbolic Universal Planning

Guided Symbolic Universal Planning Guided Symbolic Universal Planning Rune M. Jensen, Manuela M. Veloso and Randal E. Bryant Computer Science Department,Carnegie Mellon University, Forbes Avenue, Pittsburgh,PA 1213-3891, USA runej,mmv,bryant

More information

On the Verification of Coordination

On the Verification of Coordination On the Verification of Coordination Paul Dechering 1 and Izak van Langevelde 2 1 Hollandse Signaalapparaten B.V. P.O. Box 42, 7550 GD Hengelo, The Netherlands paul@dechering.net 2 Centrum voor Wiskunde

More information

The UPPAAL Model Checker. Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN

The UPPAAL Model Checker. Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN The UPPAAL Model Checker Julián Proenza Systems, Robotics and Vision Group. UIB. SPAIN The aim of this presentation Introduce the basic concepts of model checking from a practical perspective Describe

More information

Overview. Discrete Event Systems - Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?

Overview. Discrete Event Systems - Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for? Computer Engineering and Networks Overview Discrete Event Systems - Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two

More information

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED.

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED. To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 Introduction SDN research directions as outlined in IRTF RG outlines i) need for more flexibility and programmability

More information

38050 Povo (Trento), Italy Tel.: Fax: e mail: url:

38050 Povo (Trento), Italy Tel.: Fax: e mail: url: CENTRO PER LA RICERCA SCIENTIFICA E TECNOLOGICA 38050 Povo (Trento), Italy Tel.: +39 0461 314312 Fax: +39 0461 302040 e mail: prdoc@itc.it url: http://www.itc.it Automated Composition of Semantic Web Services

More information

ALASKA Antichains for Logic, Automata and Symbolic Kripke structures Analysis

ALASKA Antichains for Logic, Automata and Symbolic Kripke structures Analysis ALASKA Antichains for Logic, Automata and Symbolic Kripke structures Analysis M. De Wulf 1, L. Doyen 2, N. Maquet 1 and J.-F. Raskin 1 1 Université Libre de Bruxelles (ULB), Belgium 2 École Polytechnique

More information

Linear-Time Model Checking: Automata Theory in Practice

Linear-Time Model Checking: Automata Theory in Practice Linear-Time Model Checking: Automata Theory in Practice (Extended Abstract of an Invited Talk) Moshe Y. Vardi Rice University, Department of Computer Science, Houston, TX 77251-1892, U.S.A. vardi@cs.rice.edu

More information

Research Collection. Formal background and algorithms. Other Conference Item. ETH Library. Author(s): Biere, Armin. Publication Date: 2001

Research Collection. Formal background and algorithms. Other Conference Item. ETH Library. Author(s): Biere, Armin. Publication Date: 2001 Research Collection Other Conference Item Formal background and algorithms Author(s): Biere, Armin Publication Date: 2001 Permanent Link: https://doi.org/10.3929/ethz-a-004239730 Rights / License: In Copyright

More information

T Reactive Systems: Kripke Structures and Automata

T Reactive Systems: Kripke Structures and Automata Tik-79.186 Reactive Systems 1 T-79.186 Reactive Systems: Kripke Structures and Automata Spring 2005, Lecture 3 January 31, 2005 Tik-79.186 Reactive Systems 2 Properties of systems invariants: the system

More information

Finite State Verification. CSCE Lecture 14-02/25/2016

Finite State Verification. CSCE Lecture 14-02/25/2016 Finite State Verification CSCE 747 - Lecture 14-02/25/2016 So, You Want to Perform Verification... You have a property that you want your program to obey. Great! Let s write some tests! Does testing guarantee

More information

Java-MOP: A Monitoring Oriented Programming Environment for Java

Java-MOP: A Monitoring Oriented Programming Environment for Java Java-MOP: A Monitoring Oriented Programming Environment for Java Feng Chen and Grigore Roşu Department of Computer Science, University of Illinois at Urbana - Champaign, USA {fengchen, grosu}@uiuc.edu

More information

Model Checking with Automata An Overview

Model Checking with Automata An Overview Model Checking with Automata An Overview Vanessa D Carson Control and Dynamical Systems, Caltech Doyle Group Presentation, 05/02/2008 VC 1 Contents Motivation Overview Software Verification Techniques

More information

Test-Case Generation and Coverage Analysis for Nondeterministic Systems Using Model-Checkers

Test-Case Generation and Coverage Analysis for Nondeterministic Systems Using Model-Checkers Test-Case Generation and Coverage Analysis for Nondeterministic Systems Using Model-Checkers Gordon Fraser and Franz Wotawa Institute for Software Technology Graz University of Technology Inffeldgasse

More information

On Computing the Minimal Labels in Time. Point Algebra Networks. IRST { Istituto per la Ricerca Scientica e Tecnologica. I Povo, Trento Italy

On Computing the Minimal Labels in Time. Point Algebra Networks. IRST { Istituto per la Ricerca Scientica e Tecnologica. I Povo, Trento Italy To appear in Computational Intelligence Journal On Computing the Minimal Labels in Time Point Algebra Networks Alfonso Gerevini 1;2 and Lenhart Schubert 2 1 IRST { Istituto per la Ricerca Scientica e Tecnologica

More information

Modeling Interactions of Web Software

Modeling Interactions of Web Software Modeling Interactions of Web Software Tevfik Bultan Department of Computer Science University of California Santa Barbara, CA 9106 bultan@cs.ucsb.edu Abstract Modeling interactions among software components

More information

Plexil-Like Plan Execution Control in Agent Programming

Plexil-Like Plan Execution Control in Agent Programming AI and Robotics: Papers from the AAAI-14 Workshop Plexil-Like Plan Execution Control in Agent Programming Pouyan Ziafati SnT, University of Luxembourg Intelligent Systems Group, Utrecht University Abstract

More information

Simulink/Stateflow. June 2008

Simulink/Stateflow. June 2008 Simulink/Stateflow Paul Caspi http://www-verimag.imag.fr/ Pieter Mosterman http://www.mathworks.com/ June 2008 1 Introduction Probably, the early designers of Simulink in the late eighties would have been

More information

AUTOMATED GENERATION OF FDIR FOR THE COMPASS INTEGRATED TOOLSET (AUTOGEF)

AUTOMATED GENERATION OF FDIR FOR THE COMPASS INTEGRATED TOOLSET (AUTOGEF) AUTOMATED GENERATION OF FDIR FOR THE COMPASS INTEGRATED TOOLSET (AUTOGEF) (1) Elena Alaña, Héctor Naranjo, (2) Yuri Yushtein, (3) Marco Bozzano, Alessandro Cimatti, Marco Gario, (4) Régis de Ferluc, Gérard

More information

Leslie Lamport: The Specification Language TLA +

Leslie Lamport: The Specification Language TLA + Leslie Lamport: The Specification Language TLA + This is an addendum to a chapter by Stephan Merz in the book Logics of Specification Languages by Dines Bjørner and Martin C. Henson (Springer, 2008). It

More information

Verification and Validation meet Planning and Scheduling

Verification and Validation meet Planning and Scheduling Verification and Validation meet Planning and Scheduling AndreA Orlandini (CNR-ISTC) Email: andrea.orlandini@istc.cnr.it National Research Council of Italy (CNR-ISTC) P&S Autonomy and V&V P&S systems are

More information

Lecture 9: Reachability

Lecture 9: Reachability Lecture 9: Reachability Outline of Lecture Reachability General Transition Systems Algorithms for Reachability Safety through Reachability Backward Reachability Algorithm Given hybrid automaton H : set

More information

Joint Entity Resolution

Joint Entity Resolution Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute

More information

A Fair Extension of (Soft) Concurrent Constraint Languages

A Fair Extension of (Soft) Concurrent Constraint Languages A Fair Extension of (Soft) Concurrent Constraint Languages Stefano Bistarelli 1,2,3 and Paola Campli 1 1 Department of Science, University G. d Annunzio of Chieti-Pescara, Italy [bista,campli]@sci.unich.it

More information

Finite State Verification. CSCE Lecture 21-03/28/2017

Finite State Verification. CSCE Lecture 21-03/28/2017 Finite State Verification CSCE 747 - Lecture 21-03/28/2017 So, You Want to Perform Verification... You have a property that you want your program to obey. Great! Let s write some tests! Does testing guarantee

More information

Computing Answer Sets of a Logic Program via-enumeration of SAT certificates

Computing Answer Sets of a Logic Program via-enumeration of SAT certificates Computing Answer Sets of a Logic Program via-enumeration of SAT certificates Yuliya Lierler and Marco Maratea Department of Computer Sciences, University of Texas, Austin, USA Dipartimento di Informatica,

More information

Planning and Acting with Hierarchical Input/Output Automata

Planning and Acting with Hierarchical Input/Output Automata Planning and Acting with Hierarchical Input/Output Automata Sunandita Patra 1, Paolo Traverso 2, Malik Ghallab 3 and Dana Nau 1 1 University of Maryland, College Park, MD 20742 USA, {patras, nau}@cs.umd.edu

More information

MODEL CHECKING PLANS FOR FLEXIBLE MANUFACTURING SYSTEMS. Leandro Dias da Silva Hyggo Almeida Angelo Perkusich Péricles Rezende Barros

MODEL CHECKING PLANS FOR FLEXIBLE MANUFACTURING SYSTEMS. Leandro Dias da Silva Hyggo Almeida Angelo Perkusich Péricles Rezende Barros MODEL CECKING PLANS FOR FLEXIBLE MANUFACTURING SYSTEMS Leandro Dias da Silva yggo Almeida Angelo Perkusich Péricles Rezende Barros Electrical Engineering Dement Federal University of Campina Grande 58109-970,

More information

The Fox Project: Advanced Development of Systems Software

The Fox Project: Advanced Development of Systems Software The Fox Project: Advanced Development of Systems Software R&D Status Report July 1 to September 30, 1999 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 19991222 022 This research

More information

A Framework for Securing Databases from Intrusion Threats

A Framework for Securing Databases from Intrusion Threats A Framework for Securing Databases from Intrusion Threats R. Prince Jeyaseelan James Department of Computer Applications, Valliammai Engineering College Affiliated to Anna University, Chennai, India Email:

More information

Modeling and Verification of Marine Equipment Systems Using a Model Checker

Modeling and Verification of Marine Equipment Systems Using a Model Checker Modeling and Verification of Marine Equipment Systems Using a Model Checker Shunsuke YAO Hiroaki AWANO Yasushi HIRAOKA Kazuko TAKAHASHI Abstract We discuss the modeling and verification of marine equipment

More information

Formal Verification: Practical Exercise Model Checking with NuSMV

Formal Verification: Practical Exercise Model Checking with NuSMV Formal Verification: Practical Exercise Model Checking with NuSMV Jacques Fleuriot Daniel Raggi Semester 2, 2017 This is the first non-assessed practical exercise for the Formal Verification course. You

More information

Symbolic LAO* Search for Factored Markov Decision Processes

Symbolic LAO* Search for Factored Markov Decision Processes Symbolic LAO* Search for Factored Markov Decision Processes Zhengzhu Feng Computer Science Department University of Massachusetts Amherst MA 01003 Eric A. Hansen Computer Science Department Mississippi

More information

Formal Methods for Software Development

Formal Methods for Software Development Formal Methods for Software Development Model Checking with Temporal Logic Wolfgang Ahrendt 21st September 2018 FMSD: Model Checking with Temporal Logic /GU 180921 1 / 37 Model Checking Check whether a

More information

containing such cycles will not satisfy the eventuality property, thus, we will be unable to derive its correctness for the concrete model. A common w

containing such cycles will not satisfy the eventuality property, thus, we will be unable to derive its correctness for the concrete model. A common w A Heuristic for the Automatic Generation of Ranking Functions Λ Dennis Dams z Rob Gerth x Orna Grumberg Abstract The duality between invariance and progress is fundamental in proof techniques for the verification

More information

ScienceDirect. Plan Restructuring in Multi Agent Planning

ScienceDirect. Plan Restructuring in Multi Agent Planning Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 46 (2015 ) 396 401 International Conference on Information and Communication Technologies (ICICT 2014) Plan Restructuring

More information

Mapping CSP into Many-Valued SAT

Mapping CSP into Many-Valued SAT Mapping CSP into Many-Valued SAT Carlos Ansótegui 1,María Luisa Bonet 2,JordiLevy 3, and Felip Manyà 1 1 Universitat de Lleida (DIEI, UdL) 2 Universitat Politècnica de Catalunya (LSI, UPC) 3 Artificial

More information

38050 Povo Trento (Italy), Via Sommarive 14 PLANNING AND MONITORING THE EXECUTION OF WEB SERVICE REQUESTS

38050 Povo Trento (Italy), Via Sommarive 14  PLANNING AND MONITORING THE EXECUTION OF WEB SERVICE REQUESTS UNIVERSITY OF TRENTO DEPARTMENT OF INFORMATION AND COMMUNICATION TECHNOLOGY 38050 Povo Trento (Italy), Via Sommarive 14 http://www.dit.unitn.it PLANNING AND MONITORING THE EXECUTION OF WEB SERVICE REQUESTS

More information

Heuristic Backtracking Algorithms for SAT

Heuristic Backtracking Algorithms for SAT Heuristic Backtracking Algorithms for SAT A. Bhalla, I. Lynce, J.T. de Sousa and J. Marques-Silva IST/INESC-ID, Technical University of Lisbon, Portugal fateet,ines,jts,jpmsg@sat.inesc.pt Abstract In recent

More information

A Formalization of Transition P Systems

A Formalization of Transition P Systems Fundamenta Informaticae 49 (2002) 261 272 261 IOS Press A Formalization of Transition P Systems Mario J. Pérez-Jiménez and Fernando Sancho-Caparrini Dpto. Ciencias de la Computación e Inteligencia Artificial

More information

38050 Povo (Trento), Italy Tel.: Fax: e mail: url:

38050 Povo (Trento), Italy Tel.: Fax: e mail: url: CENTRO PER LA RICERCA SCIENTIFICA E TECNOLOGICA 38050 Povo (Trento), Italy Tel.: +39 0461 314312 Fax: +39 0461 302040 e mail: prdoc@itc.it url: http://www.itc.it AN ALGORITHM FOR MATCHING CONTEXTUALIZED

More information

Efficient Planning with State Trajectory Constraints

Efficient Planning with State Trajectory Constraints Efficient Planning with State Trajectory Constraints Stefan Edelkamp Baroper Straße 301 University of Dortmund email: stefan.edelkamp@cs.uni-dortmund.de Abstract. This paper introduces a general planning

More information

An Eclipse Plug-in for Model Checking

An Eclipse Plug-in for Model Checking An Eclipse Plug-in for Model Checking Dirk Beyer, Thomas A. Henzinger, Ranjit Jhala Electrical Engineering and Computer Sciences University of California, Berkeley, USA Rupak Majumdar Computer Science

More information

Merging Planning, Scheduling & Verification - A Preliminary Analysis (1) ISTC-CNR

Merging Planning, Scheduling & Verification - A Preliminary Analysis (1) ISTC-CNR Merging Planning, Scheduling & Verification - A Preliminary Analysis Amedeo Cesta (1), Alberto Finzi (2), Simone Fratini (1), Andrea Orlandini (3), Enrico Tronci (4) (1) ISTC-CNR Via S.Martino della Battaglia

More information

Binary Decision Diagrams and Symbolic Model Checking

Binary Decision Diagrams and Symbolic Model Checking Binary Decision Diagrams and Symbolic Model Checking Randy Bryant Ed Clarke Ken McMillan Allen Emerson CMU CMU Cadence U Texas http://www.cs.cmu.edu/~bryant Binary Decision Diagrams Restricted Form of

More information

HYBRID PETRI NET MODEL BASED DECISION SUPPORT SYSTEM. Janetta Culita, Simona Caramihai, Calin Munteanu

HYBRID PETRI NET MODEL BASED DECISION SUPPORT SYSTEM. Janetta Culita, Simona Caramihai, Calin Munteanu HYBRID PETRI NET MODEL BASED DECISION SUPPORT SYSTEM Janetta Culita, Simona Caramihai, Calin Munteanu Politehnica University of Bucharest Dept. of Automatic Control and Computer Science E-mail: jculita@yahoo.com,

More information

Syntactic Optimizations for PSL Verification

Syntactic Optimizations for PSL Verification Syntactic Optimizations for PSL Verification Alessandro Cimatti, Marco Roveri, and Stefano Tonetta 2 ITC-irst Trento, Italy {cimatti,roveri}@itc.it 2 University of Lugano, Lugano, Switzerland tonettas@lu.unisi.ch

More information

State Identification In The Hybrid Automata Description Of Dynamical Systems

State Identification In The Hybrid Automata Description Of Dynamical Systems State Identification In The Hybrid Automata Description Of Dynamical Systems ISABELLA KOTINI, GEORGE HASSAPIS Dept. of Electrical and Computer Engineering Aristotle University of Thessaloniki 54006, Thessaloniki

More information

Model Checking: Back and Forth Between Hardware and Software

Model Checking: Back and Forth Between Hardware and Software Model Checking: Back and Forth Between Hardware and Software Edmund Clarke 1, Anubhav Gupta 1, Himanshu Jain 1, and Helmut Veith 2 1 School of Computer Science, Carnegie Mellon University {emc, anubhav,

More information

Model checking for nonmonotonic logics: algorithms and complexity

Model checking for nonmonotonic logics: algorithms and complexity Model checking for nonmonotonic logics: algorithms and complexity Riccardo Rosati Dipartimento di Informatica e Sisteinistica Universita di Roma "La Sapienza" Via Salaria 113, 00198 Roma, Italy rosati@dis.unirornal.it

More information

Model Checking Revision: Model Checking for Infinite Systems Revision: Traffic Light Controller (TLC) Revision: 1.12

Model Checking Revision: Model Checking for Infinite Systems Revision: Traffic Light Controller (TLC) Revision: 1.12 Model Checking mc Revision:.2 Model Checking for Infinite Systems mc 2 Revision:.2 check algorithmically temporal / sequential properties fixpoint algorithms with symbolic representations: systems are

More information