Popis: |
Reasoning about processes in applications such as manufacturing, web services, enterprise modeling, and planning requires the representation of composite processes with complicated flows of control. Previous research in process representation has used formalisms such as Event Systems, Petri nets, and the Unified Modeling Language activity diagrams. The computational hardness of temporal projection problems in Event Systems has been extensively examined in the literature, whereas Petri nets and UML activity diagrams are applied to describe more elaborate processes. This thesis takes a systematic look into the temporal reasoning problems in Event Systems and assigns accurate semantics to both Petri nets and, for the first time, to UML activity diagrams. We give an analysis of computational complexity in temporal projection problems by exploring the boundary between their tractable and intractable subproblems. Our results provide new insights into the prominent role the properties of partial ordering play, however we also show that partial ordering is not the sole source of the intractability as has been claimed in an earlier work by Nebel and B{\"a}ckstr{\"o}m. Two influential modeling languages, Petri nets and UML activity diagrams, are axiomatized as two Basic Action Theories of Situation Calculus. They are called, respectively, SCOPE (Situation Calculus Ontology of PEtri nets) and SCAD (Situation Calculus theory of Activity Diagrams). We provide a Prolog implementation of SCOPE and prove the correctness of this program for regressable queries. We use SCAD to axiomatize the structural and dynamic properties of UML activity diagrams and also provide the first set of computational results with regard to the reachability problems in activity diagrams. The correctness of each of these two axiomatizations is also demonstrated by proving that the theory is satisfiable, and the intended interpretation corresponds to a model of the theory. |