Fachberichte INFORMATIK - CiteSeerX

2 downloads 0 Views 240KB Size Report
16/2003 Peter Baumgartner, Paul A. Cairns, Michael ... Feldmann, Andreas Kern, David Polock, .... 2/98 Hans-Michael Hanisch, Kurt Lautenbach, Carlo. Simon ...
Duality of Marked Place/Transition Nets Kurt Lautenbach 18/2003

Fachberichte INFORMATIK

¨ Koblenz-Landau Universitat ¨ Institut fur ¨ Informatik, Universitatsstr. 1, D-56070 Koblenz E-mail: [email protected], WWW: http://www.uni-koblenz.de/fb4/

Duality of Marked Place/Transition Nets Kurt Lautenbach University of Koblenz-Landau, Universit¨ atsstr. 1, 56075 Koblenz, Germany, [email protected], WWW home page: http://www.uni-koblenz.de/ ~laut

Abstract. The concern of this paper is to introduce and apply the concept of duality for place/transition nets. The two main consequences of the duality concept are: transition tokens and firing places that transform the transition token load of the nets. A marked transition is definitely excluded from getting enabled. So, the forward motion of transition tokens might describe cascading fails in (technical) devices, whereas the backward motion might describe the search for reasons for the non-occurrence of events.

1

Introduction

This paper deals with the duality of place/transition nets. Dualizing a mathematical concept, e.g. a linear program, usually aims at a deeper understanding of that concept. Let N be a place/transition net and [N ] its incidence matrix; then the dual net N d of N can be introduced by defining its incidence matrix [N d ] := [N ]t (transpose of [N ]). By this, places and transitions are exchanged and the direction of all arcs is changed. This approach, by the way, is absolutely not new. C. A. Petri used this duality for a net topology [Fern75] by which he was able to describe proximity phenomina. P- and t-invariants are also dual to each other in that sense. But it seems, that dualizing only the structure of a net is not nearly enough to get a deeper insight into the net, because dynamic aspects of modelling are not considered. Consequently, it should be tried to dualize nets and their markings. The simplest way of dualizing a marking is probably to ”leave the tokens lying”. But then, after dualizing the structure, the tokens are lying on transitions. That, however, contradicts any net-theoretical tradition. On the other hand, one of C. A. Petri’s main principles was, that places and transitions are of the same rank and of equal importance (in spite of all their differences). Especially in that, nets differ from automata. Supposing now, tokens on transitions (t-tokens in short) will be permitted: How

and by what are they moved? What is their meaning? Moreover, a real enrichment by the t-tokens is only then conceivable if in a net both types of tokens, t-tokens and ”normal” tokens (place tokens, p-tokens), are permitted. Otherwise, the dual marked net is nothing but another form of the original one. It will be shown that the answers are suggested by the concept of duality itself: T-tokens are moved by backwards firing places. Places are (t-)enabled by sufficiently many t-tokens on their output transitions. The meaning of t-tokens is, that they prevent transitions from being enabled. A transition carrying a t-token cannot be enabled by any marking of p-tokens. This specific disabling of transitions by t-tokens and the backwards firing of t-enabled places will be exploited as follows. Let a marking A consist of the t-tokens t-enabling a place p, thus disabling the output transitions of p. Let B consist of the t-tokens after firing of p, thus disabling the input transitions of p. Then one may consider the disabled transitions of B the cause for the disabled transitions of A; in other words: a situation B that makes certain actions impossible, is in some very active sense responsible for the fact that in a different situation A certain other actions are impossible. It will be shown that this train of thought is a basis for seeking diagnoses of system faults. In contrast to that, the forward flow of t-tokens leads to a method to observe the expansion of faults caused by one ore more defective system components. Besides these practical questions, the paper should also be understood as an attempt at completing the ability of modelling dynamic processes by place/transition nets. Although the concept of duality for marked nets was already introduced in [Laut83], even for a class of higher level nets, it took quite a long time to ultimately get convinced that marked transitions and firing places might yet be useful concepts and no ”net-theoretical sacrilege”. The paper is organized as follows. The new concepts will be intuitively and formally introduced in section 2. In section 3, it will be shown by means of most simple examples how these concepts can be applied. Section 4 contains a connection between place/transition nets and fault trees. The last section is a summary with outlook.1 I am greatly indebted to Rudolf J. Kruse, J¨ org M¨ uller, and Stephan Philippi for excellent cooperation.

1

This work was partly funded by DFG (LA 1042/5-1)

2

2

Dual place/transition nets

In this section, dual place/transition nets (p/t-nets) will be defined. Roughly speaking, the dual net N d of a p/t-net N is developed by transposing the incidence matrix [N ] of N . By that, places and transitions are exchanged and the direction of all arcs is changed. If N is marked, the tokens remain on their places and become transition tokens that way. 2.1

Dualizing the structure

Definition 1 (Dual p/t-net). Let N = (P, T, F, W ) be a p/t-net with – – – – –

P 6= ∅ T 6= ∅ P ∩T = ∅ F ⊆ ((P × T ) ∪ (T × P )) W : F −→ IN

(set of places) (set of transitions) (Flow relation, set of arcs) (arc weight function);

the p/t-net N d = (P d , T d , F d , W d ) is the dual net of N iff – – – –

Pd = T Td = P F d = F −1 = {(y, x)|(x, y) ∈ F } W d (y, x) = W (x, y) for all (x, y) ∈ F 

Lemma 1. (trivial) (a) (b) (c)

(N d )d = N [N d ] = [N ]t p-invariants (t-invariants) of N d are t-invariants (p-invariants) of N 

Example 1. Figure 1 shows a p/t-net N and the dual net N d . Figure 2 shows the corresponding incidence matrices [N ] and [N d ]. 

3

1

2

1

2

A

B

A

B

3

3

C

C

4

4

N

Nd

Fig. 1. P/t-nets N and N d [N] A B C

1 1

2

3 -1 -1 1

1

[Nd] 1 2 3 4

A

B

4

-1 C

1 1 -1

-1

1 -1

Fig. 2. Incidence matrices [N ] and [N d ]

2.2

Dualizing the behavior

For dualizing the behavior, one needs an extension to nets with markings. The most obvious extension is to leave the tokens (place tokens, p-tokens) on their places. When the places are converted into transitions, the p-tokens are converted into transition tokens (t-tokens).

Remark: When marked nets are dualized, a second sort of tokens arises, namely t-tokens as markings of transitions. Before defining all that formally, an introducing example might be advisable. In the figures, p-tokens are drawn as small circles (as usual) and t-tokens as small squares.

4

Example 2. Figure 3 shows four marked p/t-nets (cf. figure 1). In N M0 [3iM1 holds, i.e. M1 follows from M0 by firing transition 3. Now, we demand M0d [3iM1d also in N d , i.e. M1d follows from M0d by firing place 3. So places fire backwards (against the arc direction) .



1

1

2

A

2

A

B

dualization

3

B

3

C

C

4

4

N, M(

d (NM ,

0

d

)

t-token flow

p-token flow

0)

1

2

A

B

dualization

3

1

2

A

B

3

C

C

4

4

N, M(

d (NM ,

1)

Fig. 3. Token flow in N and N d

5

1

d

)

1

2

A

B

1

2

A

1

2

A

B

B

3

3

3

C

C

C

4

4

4

1

2

A

B

1

2

A

B

1

2

A

B

3

3

3

C

C

C

4

4

4

1

2

1

2

1

2

A

B

A

B

A

B

3

3

3

C

C

C

4

4

4

Fig. 4. Interpretation of t-tokens (1)

Remark: Dualizing marked p/t-nets induces the firing of enabled places. A place is enabled if its output transitions are sufficiently marked by t-tokens. Of course, now the question of the meaning of t-tokens arises. Example 3. Transition 4 of the first net of the first row in figure 4 is crossed out, what is assumed to mean that this transition was not able (not allowed) to fire. The reason for it is that before (shown in the second net of the first row) transition 3 was not able (not allowed) to fire. Here the reason is that transition 1 or 2 was not able (not allowed) to fire. Comparing the first two rows shows that 6

1

2

A

B

1

2

A

B

1

2

A

B

3

3

3

C

C

C

4

4

4

1

2

A

B

1

2

A

B

1

2

A

B

3

3

3

C

C

C

4

4

4

1

2

1

2

1

2

A

B

A

B

A

B

3

3

3

C

C

C

4

4

4

Fig. 5. Interpretation of t-tokens (2)

the crosses and the t-tokens behave completely alike. So, we have good reasons to identify their meaning: a t-token on a transition indicates a non-activation or a specific disabling of that transition. The third row shows the corresponding dual nets.  Now an important question arises: What can be gained by duality? T-tokens and firing places yield only a new interpretation of the traditional net dynamics and nothing else because of (N d , M0d )d = (N, M0 ). But the dual should enrich the original net. That is to be achieved by permitting nets with both sorts of tokens. Example 4. This is a modification of example 3. In all nets of figure 5, node B is marked by one suitable token. In row one, it is no longer sensible to assume 7

that transition 2 was not able (not allowed) to fire because the p-token on B might be the result of a firing of transition 2. Again, we identify the meaning of crosses and t-tokens, and we conclude that the p-token on B prevents B from being enabled by the t-token on 3. Of course, we assume in the third row that the t-token on transition B prevents an enabling by the p-token on place 3.  Remark: p- and t-tokens block each other. Marked nodes cannot be enabled. Definition 2 (p/t-marking). Let N = (P, T, F, W ) be a p/t-net; M is a place/transition marking (p/t-marking) iff M : P ∪ T −→ IN0 ; p ∈ P is p-marked (marked) iff M (p) ≥ 1, t ∈ T is t-marked (marked) iff M (t) ≥ 1; the tokens on places are p-tokens, the tokens on transitions are t-tokens;

· ·

p ∈ P is enabled for M iff M (p) = 0 ∧∀x ∈ p : M (x) ≥ W (p, x), t ∈ T is enabled for M iff M (t) = 0 ∧∀y ∈ t : M (y) ≥ W (y, t). Let p ∈ P be enabled for M; the follower marking M ′ of M after one firing of p is given by  M (y) − W (p, y)    M (y) + W (y, p) ′ M (y) := M (y) − W (p, y) + W (y, p)    M (y) ′

M (x) :=

M (x)

if if if if

y y y y

· · · ·

· · · ·

∈p \ p ∈ p\p ∈ p∩p ∈ / p∪p

for all y ∈ T for all x ∈ P ;

let t ∈ T be enabled for M; the follower marking M ” of M after one firing of t is given by  M (x) − W (x, t)    M (x) + W (t, x) M ”(x) := M (x) − W (x, t) + W (t, x)    M (x) M ”(y) :=

M (y)

if if if if

· · · ·

· · · ·

x ∈ t\t x∈t \ t x ∈ t∩t x∈ / t∪t

for all x ∈ P for all y ∈ T ; 

8

Example 5. In the second net of the second row of figure 4, the places A and B are in a conflict (so, they are enabled!). In the corresponding net of figure 5, only place A is enabled. In the second row of both figures, transition 4 is only in the first net disabled. The corresponding statements hold for the dual nets in the third row. 

3

Using the duality approach

In this section, we will show by means of two examples how the duality approach or, more precisely, the t-tokens and the firing of places can be applied. Even though the examples are rather small, there is no principle difference to real applications. It should be stressed that dual nets themselves are not needed in this section.

R1

R2 R1

U1

B

R2

U2 L1

L2

E R1

B

R1

E

R2

R1

R2

U1

L1

R2

H1

U2

L2

H2

Fig. 6. Technical representations

Example 6. This example is borrowed from [Lunze95]. Figure 6 shows two technical representations of an electrical circuit. The meaning of the symbols is B: L1, L2: R1, R2: E: U1, U2: H1, H2:

battery bulbs leads to the bulbs energy voltages at the bulbs shining of the bulbs

9

For constructing the net representation, we will use the following logical formulas (see [Laut03]). B −→ E R1 ∧ E −→ U 1 L1 ∧ U 1 −→ H1 R2 ∧ U 1−→ U 2 L2 ∧ U 2 −→ H2

(1) (2) (3) (4) (5)

These formulas are nearly self-explanatory. The fourth one e.g. says that if the lead to bulb L2 is ok and there is voltage at L1 then there will be also voltage at L2. The transitions 1 to 5 of figure 7 originate from these formulas. In the sense of [Laut03], the input boundary transitions okB, okR1, okR2, okL1, okL2 are fact transitions which are permanently enabled, thus permanently prepared to provide facts, okB e.g.

ok L1 L1 H1 3

ok R1 U1

R1

2

ok B

ok H1

4

U2 H2

B

E

1

5

R2

ok R2

N, M (

0)

ok H2

L2

ok L2

Fig. 7. Net representation of the circuit (1)

In this example, however, we are not sure whether B, R1, R2, L1, L2 are ok. So, we let none of the transitions okB, okR1, okR2, okL1, okL2 fire. Supposed 10

now that L2 is shining and that L1 is not shining. This assumption is recorded by (t-)marking okH1 and (p-)marking H2 in the initial marking M0 : M0 (okH1) = M0 (H2) = 1,

M0 (k) = 0

for all other nodes k.

Now, the only place firing sequence to a dead marking is M0 [H1, L1iM1 with M1 (okL1) = M1 (H2) = 1,

M1 (k) = 0

for all other nodes k.

That means that only okL1 is disabled, thus representing the only diagnosis: The bulb L1 is damaged. On the other hand, there is a backward transition firing sequence: M0 [5, 4, 2, 1, okL2, okR2, okR1, okBiM2. That means that L2, R2, R1, and B are ok. Even though that is correct, it is not at all interesting because we are seeking only defective parts (in order to find all diagnoses of the non-shining of L1 ).

ok L1 L1 H1 3

ok R1 U1

R1

2

ok B

ok H1

4

U2 H2

B

E

1

5

R2

ok R2

N, M (

)0 '

L2

ok L2

Fig. 8. Net representation of the circuit (2)

11

ok H2

The situation is quite different in figure 8. The marking M0′ with M0′ (okH1) = 1, M0′ (okH2) = 1, M0′ (k) = 0 for all other nodes k. represents the non-shining of both bulbs. Then there are the following place firing sequences from M0′ to dead markings which indicate diagnoses: M0′ [H1, L1, H2, L2iM1′ with M1′ (okL1) = M1′ (okL2) = 1, M1′ (k) = 0 otherwise; L1 and L2 are defective;

M0′ [H1, L1, H2, U 2, R2iM2′ with M2′ (okL1) = M2′ (okR2) = 1, M2′ (k) = 0 otherwise; L1 and R2 are defective;

M0′ [H1, H2, U 2, U 1, R1iM3′ with M3′ (okR1) = 1, M3′ (k) = 0 otherwise; R1 is defective;

M0′ [H1, H2, U 2, U 1, E, BiM4′ with M4′ (okB) = 1, = 0 otherwise; M4′ (k) B is defective.

Yet another situation is shown in figure 9. The marking M0′′ with M0′′ (okH1) = 1, M0′′ (okH2) = 1, = 1, M0′′ (k) = 0 for all other nodes k = 1, M0′′ (L2) M0′′ (L1) represents again the non-shining of both bulbs; but now we assume that both bulbs, L1 and L2, are ok. The place firing sequences from M0′′ to dead markings and the corresponding diagnoses are the following ones:

12

M0′′ [H1, H2, U 2, R2iM1′′ with M1′′ (3) = M1′′ (okR2) = M1′′ (L1) = M1′′ (L2) = 1, M1′′ (k) = 0 otherwise, there is no voltage U1, whatever the reason – moreover, R2 is defective; M0′′ [H1, H2, U 2, U 1, R1iM2′′ with M2′′ (okR1) = M2′′ (L1) = M2′′ (L2) = 1, M2′′ (k) = 0 otherwise; R1 is defective; M0′′ [H1, H2, U 2, U 1, E, BiM3′′ with M3′′ (okB) = M3′′ (L1) = M3′′ (L2) = 1, M3′′ (k) = 0 otherwise; B is defective.

ok L1 L1 H1 3

ok R1 U1

R1

2

ok B

ok H1

4

U2 H2

B

E

1

5

R2

ok R2

N, M (

0)''

ok H2

L2

ok L2

Fig. 9. Net representation of the circuit (3)



13

Remark: Consequences of events occurring and reasons for events not occurring are dual to each other. The commitment of backwards firing places was induced by dualizing a p-marked net before and after firing a transition. Of course, it is also justified to ask for an interpretation of forwards firing places. The next example will show the practical use for that.

ok L1 L1 H1 3

ok R1 U1

R1

2

ok B

ok H1

4

U2 H2

B

E

1

5

R2

ok R2

N, M (

0)

ok H2

L2

ok L2

Fig. 10. Net representation of the circuit (4)

Example 7. The net N=(P,T,F,W) of figure 10 is marked by M0 with M0 (L1) = 1, M0 (okR2) = 1,

M0 (L2) = 1, M0 (k) = 0

for all other nodes k ;

i.e. we assume that the lead R2 is defective and that both bulbs are ok. Then the forward place firing sequence M0 [R2, U 2, H2iM1 leads to the marking M1 with

14

M1 (L1) = 1, M1 (okH2) = 1,

M1 (L2) = 1, M1 (k) = 0

for all other nodes k

that is dead in the t-token sense. (The net is not really dead because of the input boundary transitions; this, again, is not interesting since we are exclusively looking for the consequences of R2 being defective.) The above firing sequence M0 [R2, U 2, H2iM1 says that if lead R2 is broken, no voltage U2 exists and, consequently, the bulb L2 is not shining. Nothing else can be concluded. One easily recognizes that the p-tokens on L1 and L2 are of no influence, which is correct.

ok L1 L1 H1 3

ok R1 R1

U1

2

ok B

ok H1

4

U2 H2

B

E

1

R2

5

ok R2

N, M (

)0 '

ok H2

L2

ok L2

Fig. 11. Net representation of the circuit (5)

If, however, the initial marking is M0′ with M0′ (L1) = 1, M0′ (okR1) = 1,

M0′ (L2) = 1, M0′ (k) = 0

for all other nodes k,

i.e. if we now assume that the lead R1 is defective, then the forward place firing sequence M0′ [R1, U 1, H1, U 2, H2iM1′ leads to the marking M1′ with M1′ (L1) = 1, M1′ (okH2) = 1,

M1′ (L2) = 1, M1′ (okH1) = 1, M1′ (k) = 0 for all other nodes k. 15

Now, we similarly come to the conclusion that both bulbs are not shining, even though they are ok.  In forward direction, the t-token flow models what will happen if a component fails - what will fail next etc. So, it is possible to represent cascading fails. Remark: Diagnoses Consequences Diagnoses Consequences

4

of of of of

non-occurrences non-occurrences occurrences occurrences

are are are are

modelled modelled modelled modelled

by by by by

backwards forwards backwards forwards

flowing flowing flowing flowing

t-tokens t-tokens p-tokens p-tokens

Fault trees and dual p/t-nets: an example

The focus of this section is to demonstrate the connection between the p/t-net N of some plant, its dual net N d , and a corresponding fault tree by means of an example. Even though this example is again extremely simple it is possible to show that connection - at least in principle.

time out ok B

valve ok A

overflow D

C

2

1

D no overflow

N, M(

full sensor ok

2

C full sensor failed

1

B

0

d

C full sensor failed

)

.

Fig. 12. A dual net and a related fault tree

16

1

2

A valve failed

time out failed

d , (NM

0)

D overflow

A

B time out failed

fault tree

valve failed

Example 8. This example is borrowed from [Dugan02]. The net N in figure 12 shows a mechanism for avoiding overflows in washing machines. If the valve is ok (transition A fires) and if also the time out mechanism or the full sensor is ok (transition B or C fires), then no overflow can happen (transition D fires). In (N, M0 ), the occurrence of an overflow is modelled by a t-token on D. Now, there are two possible diagnoses: M0 [1iM1 with M1 (A) = 1 : M0 [2iM2 with M2 (B) = M2 (C) = 1 :

the valve is defective the time out and the full sensor are defective

Of course, in the dual net (N d , M0d ) (with place inscriptions adjusted to the fault tree), firing of transitions 1 and 2 leads to the same results. Since in the fault tree, D is an or-node and 2 is an and-node, the same diagnoses will be derived.  Remark: In case a p/t-net representation of a (technical) device exists, the use of t-tokens leads to the same results as fault trees. Of course, fault trees are not at all obsolete - in particular in the case that no net representation of a device exists.

As to the applicability of the duality approach, there exists a huge number of net representations (not only of technical) devices which could be upgraded by the technique introduced in this paper – if the corresponding net tools would be upgraded, too.

5

Summary and Outlook

Based on the idea of a dual marked p/t-net, in this paper t-tokens are introduced as markings for transitions. T-marked transitions cannot be enabled and are thus excluded from firing. T-tokens are subjected to a dynamics caused by the firing of places which is dual to the ”normal” firing of transitions. Whereas p/t-nets usually are dynamic models of events, the dynamics and causality of non-events become visible by means of the dual approach. If a system component breaks down, one can point to the components which are the next ones that cannot work any more, the next but ones etc. Also, the diagnoses for the non-working of components can be found.

17

Even the small examples clearly show that the duality of marked nets supplements the modelling power of p/t-nets, because the non-occurring of events becomes an integral and actively representable part of the theory. Thus, the approach might help to apply Petri net theory more intensively. One could argue that fault trees are models of the non-working of systems. That is true. A fault tree, however, is no part of a system model. On the other hand, fault trees are not at all obsolete, because they can be constructed also in cases where there exists no system model. This paper is only a first (qualitative) step. If the dual approach has really a sufficient modelling potential, it is profitably extendable to higher level nets. Only then also (quantitative) questions can be answered: ”Why did some event not occur on time?” or ”What will happen or not happen next if some event does not occur before a certain point in time?” or ”What is the reason for the high probability or possibility of some event?” So, the next step should be the development of a mathematical fundament for dualizing higher level marked nets.

References [Dugan02] J.B. Dugan. Fault Tree Analysis of Computer-Based Systems. University of Virginia, RELIABILITY and MAINTAINABILITY Symposium, http://www.fault-tree.net/papers/dugan-comp-sys-fta-tutor.pdf, 2002. [Fern75] C. Fernandez. Net Topology I. Gesellschaft f¨ ur Math. und Datenverarbeitung mbH Bonn, Interner Bericht ISF-75-09, September, 1975. [LauPag85] K. Lautenbach and A. Pagnoni. Liveness and Duality in MarkedGraph-Like Predicate/Transition Nets. Lecture Notes in Computer Science: Advances in Petri Nets 1984, 188:331–352, 1985. [Laut83] K. Lautenbach. Simple Marked-Graph-Like Predicate Transition Nets. Gesellschaft f¨ ur Math. und Datenverarbeitung mbH Bonn, Arbeitspapiere der GMD Nr. 41, Juli 1983. [Laut03] K. Lautenbach. Logical Reasonig and Petri Nets. Wil van der Aalst and Eike Best (eds.), Application and Theory of Petri Nets 2003, 24th International Conference, ICATPN 2003, Eindhoven, The Netherlands, June 23-27, 2003, Proceedings, volume 2679 of Lecture Notes in Computer Science, S. 276–295. Springer-Verlag, 2003. [Lunze95] J. Lunze. K¨ unstliche Intelligenz f¨ ur Ingenieure, volume 2 (in German). Oldenburg-Verlag M¨ unchen Wien, 1995.

18

Available Research Reports (since 1998): 2003 18/2003 Kurt Lautenbach. Duality of Marked Place/Transition Nets. 17/2003 Frieder Stolzenburg, Jan Murray, Karsten Sturm. Multiagent Matching Algorithms With and Without Coach. 16/2003 Peter Baumgartner, Paul A. Cairns, Michael Kohlhase, Erica Melis (Eds.). Knowledge Representation and Automated Reasoning for E-Learning Systems. 15/2003 Peter Baumgartner, Ulrich Furbach, Margret Gross-Hardt, Thomas Kleemann, Christoph Wernhard. KRHyper Inside — Model Based Deduction in Applications. 14/2003 Christoph Wernhard. System Description: KRHyper. 13/2003 Peter Baumgartner, Ulrich Furbach, Margret Gross-Hardt, Alex Sinner. ’Living Book’ :’Deduction’, ’Slicing’, ’Interaction’.. 12/2003 Heni Ben Amor, Oliver Obst, Jan Murray. Fast, Neat and Under Control: Inverse Steering Behaviors for Physical Autonomous Agents. 11/2003 Gerd Beuster, Thomas Kleemann, Bernd Thomas. MIA - A Multi-Agent Location Based Information Systems for Mobile Users in 3G Networks. 10/2003 Gerd Beuster, Ulrich Furbach, Margret Groß-Hardt, Bernd Thomas. Automatic Classification for the Identification of Relationships in a Metadata Repository. 9/2003 Nicholas Kushmerick, Bernd Thomas. Adaptive information extraction: Core technologies for information agents. 8/2003 Bernd Thomas. Bottom-Up Learning of Logic Programs for Information Extraction from Hypertext Documents. 7/2003 Ulrich Furbach. AI - A Multiple Book Review. 6/2003 Peter Baumgartner, Ulrich Furbach, Margret Groß-Hardt. Living Books. 5/2003 Oliver Obst. Using Model-Based Diagnosis to Build Hypotheses about Spatial Environments. 4/2003 Daniel Lohmann, J¨urgen Ebert. A Generalization of the Hyperspace Approach Using Meta-Models. 3/2003 Marco K¨ogler, Oliver Obst. Simulation League: The Next Generation.

2/2003 Peter Baumgartner, Margret Groß-Hardt, Alex Sinner. Living Book – Deduction, Slicing and Interaction. 1/2003 Peter Baumgartner, Cesare Tinelli. The Model Evolution Calculus.

2002 12/2002 Kurt Lautenbach. Logical Reasoning and Petri Nets. 11/2002 Margret Groß-Hardt. Processing of Concept Based Queries for XML Data. 10/2002 Hanno Binder, J´erˆome Diebold, Tobias Feldmann, Andreas Kern, David Polock, Dennis Reif, Stephan Schmidt, Frank Schmitt, Dieter Z¨obel. Fahrassistenzsystem zur Unterst¨utzung beim R¨uckw¨artsfahren mit einachsigen Gespannen. 9/2002 J¨urgen Ebert, Bernt Kullbach, Franz Lehner. 4. Workshop Software Reengineering (Bad Honnef, 29./30. April 2002). 8/2002 Richard C. Holt, Andreas Winter, Jingwei Wu. Towards a Common Query Language for Reverse Engineering. 7/2002 J¨urgen Ebert, Bernt Kullbach, Volker Riediger, Andreas Winter. GUPRO – Generic Understanding of Programs, An Overview. 6/2002 Margret Groß-Hardt. Concept based querying of semistructured data. 5/2002 Anna Simon, Marianne Valerius. User Requirements – Lessons Learned from a Computer Science Course. 4/2002 Frieder Stolzenburg, Oliver Obst, Jan Murray. Qualitative Velocity and Ball Interception. 3/2002 Peter Baumgartner. A First-Order Logic Davis-Putnam-Logemann-Loveland Procedure. 2/2002 Peter Baumgartner, Ulrich Furbach. Automated Deduction Techniques for the Management of Personalized Documents. 1/2002 J¨urgen Ebert, Bernt Kullbach, Franz Lehner. 3. Workshop Software Reengineering (Bad Honnef, 10./11. Mai 2001).

2001 13/2001 Annette Pook. Schlussbericht “FUN Funkunterrichtsnetzwerk”.

12/2001 Toshiaki Arai, Frieder Stolzenburg. Multiagent Systems Specification by UML Statecharts Aiming at Intelligent Manufacturing.

4/2000 Frieder Stolzenburg, Alejandro J. Garc´ıa, Carlos I. Ches˜nevar, Guillermo R. Simari. Introducing Generalized Specificity in Logic Programming.

11/2001 Kurt Lautenbach. Reproducibility of the Empty Marking.

3/2000 Ingar Uhe, Manfred Rosendahl. Specification of Symbols and Implementation of Their Constraints in JKogge.

10/2001 Jan Murray. Specifying Agents with UML in Robotic Soccer. 9/2001 Andreas Winter. Exchanging Graphs with GXL. 8/2001 Marianne Valerius, Anna Simon. Slicing Book Technology — eine neue Technik f¨ur eine neue Lehre?.

2/2000 Peter Baumgartner, Fabio Massacci. The Taming of the (X)OR. 1/2000 Richard C. Holt, Andreas Winter, Andy Sch¨urr. GXL: Towards a Standard Exchange Format.

1999

7/2001 Bernt Kullbach, Volker Riediger. Folding: An Approach to Enable Program Understanding of Preprocessed Languages.

10/99 J¨urgen Ebert, Luuk Groenewegen, Roger S¨uttenbach. A Formalization of SOCCA.

6/2001 Frieder Stolzenburg. From the Specification of Multiagent Systems by Statecharts to their Formal Analysis by Model Checking.

9/99 Hassan Diab, Ulrich Furbach, Hassan Tabbara. On the Use of Fuzzy Techniques in Cache Memory Managament.

5/2001 Oliver Obst. Specifying Rational Agents with Statecharts and Utility Functions.

8/99 Jens Woch, Friedbert Widmann. Implementation of a Schema-TAG-Parser.

4/2001 Torsten Gipp, J¨urgen Ebert. Conceptual Modelling and Web Site Generation using Graph Technology.

7/99 J¨urgen Ebert, and Bernt Kullbach, Franz Lehner (Hrsg.). Workshop Software-Reengineering (Bad Honnef, 27./28. Mai 1999).

3/2001 Carlos I. Ches˜nevar, J¨urgen Dix, Frieder Stolzenburg, Guillermo R. Simari. Relating Defeasible and Normal Logic Programming through Transformation Properties. 2/2001 Carola Lange, Harry M. Sneed, Andreas Winter. Applying GUPRO to GEOS – A Case Study. 1/2001 Pascal von Hutten, Stephan Philippi. Modelling a concurrent ray-tracing algorithm using object-oriented Petri-Nets.

2000 8/2000 J¨urgen Ebert, Bernt Kullbach, Franz Lehner (Hrsg.). 2. Workshop Software Reengineering (Bad Honnef, 11./12. Mai 2000). 7/2000 Stephan Philippi. AWPN 2000 - 7. Workshop Algorithmen und Werkzeuge f¨ur Petrinetze, Koblenz, 02.-03. Oktober 2000 . 6/2000 Jan Murray, Oliver Obst, Frieder Stolzenburg. Towards a Logical Approach for Soccer Agents Engineering. 5/2000 Peter Baumgartner, Hantao Zhang (Eds.). FTP 2000 – Third International Workshop on First-Order Theorem Proving, St Andrews, Scotland, July 2000.

6/99 Peter Baumgartner, Michael K¨uhn. Abductive Coreference by Model Construction. 5/99 J¨urgen Ebert, Bernt Kullbach, Andreas Winter. GraX – An Interchange Format for Reengineering Tools. 4/99 Frieder Stolzenburg, Oliver Obst, Jan Murray, Bj¨orn Bremer. Spatial Agents Implemented in a Logical Expressible Language. 3/99 Kurt Lautenbach, Carlo Simon. Erweiterte Zeitstempelnetze zur Modellierung hybrider Systeme. 2/99 Frieder Stolzenburg. Loop-Detection in Hyper-Tableaux by Powerful Model Generation. 1/99 Peter Baumgartner, J.D. Horton, Bruce Spencer. Merge Path Improvements for Minimal Model Hyper Tableaux.

1998 24/98 J¨urgen Ebert, Roger S¨uttenbach, Ingar Uhe. Meta-CASE Worldwide. 23/98 Peter Baumgartner, Norbert Eisinger, Ulrich Furbach. A Confluent Connection Calculus.

22/98 Bernt Kullbach, Andreas Winter. Querying as an Enabling Technology in Software Reengineering. 21/98 J¨urgen Dix, V.S. Subrahmanian, George Pick. Meta-Agent Programs. 20/98 J¨urgen Dix, Ulrich Furbach, Ilkka Niemel¨a . Nonmonotonic Reasoning: Towards Efficient Calculi and Implementations. 19/98 J¨urgen Dix, Steffen H¨olldobler. Inference Mechanisms in Knowledge-Based Systems: Theory and Applications (Proceedings of WS at KI ’98). 18/98 Jose Arrazola, J¨urgen Dix, Mauricio Osorio, Claudia Zepeda. Well-behaved semantics for Logic Programming. 17/98 Stefan Brass, J¨urgen Dix, Teodor C. Przymusinski. Super Logic Programs. 16/98 J¨urgen Dix. The Logic Programming Paradigm. 15/98 Stefan Brass, J¨urgen Dix, Burkhard Freitag, Ulrich Zukowski. Transformation-Based Bottom-Up Computation of the Well-Founded Model. 14/98 Manfred Kamp. GReQL – Eine Anfragesprache f¨ur das GUPRO–Repository – Sprachbeschreibung (Version 1.2). 12/98 Peter Dahm, J¨urgen Ebert, Angelika Franzke, Manfred Kamp, Andreas Winter. TGraphen und EER-Schemata – formale Grundlagen.

11/98 Peter Dahm, Friedbert Widmann. Das Graphenlabor. 10/98 J¨org Jooss, Thomas Marx. Workflow Modeling according to WfMC. 9/98 Dieter Z¨obel. Schedulability criteria for age constraint processes in hard real-time systems. 8/98 Wenjin Lu, Ulrich Furbach. Disjunctive logic program = Horn Program + Control program. 7/98 Andreas Schmid. Solution for the counting to infinity problem of distance vector routing. 6/98 Ulrich Furbach, Michael K¨uhn, Frieder Stolzenburg. Model-Guided Proof Debugging. 5/98 Peter Baumgartner, Dorothea Sch¨afer. Model Elimination with Simplification and its Application to Software Verification. 4/98 Bernt Kullbach, Andreas Winter, Peter Dahm, J¨urgen Ebert. Program Comprehension in Multi-Language Systems. 3/98 J¨urgen Dix, Jorge Lobo. Logic Programming and Nonmonotonic Reasoning. 2/98 Hans-Michael Hanisch, Kurt Lautenbach, Carlo Simon, Jan Thieme. Zeitstempelnetze in technischen Anwendungen. 1/98 Manfred Kamp. Managing a Multi-File, Multi-Language Software Repository for Program Comprehension Tools — A Generic Approach.