On Data-Structure Rewriting

Size: px
Start display at page:

Download "On Data-Structure Rewriting"

Transcription

1 On Data-Structure Rewriting Rachid Echahed LIG Lab, Grenoble France June, 2010

2 Rewriting (reminder) A rewrite relation R is a binary relation R A A (u, v) R is read u rewrites into v and written u v

3 Rewriting (reminder) R A A A = set of strings over a vocabulary (V ) A = set of states of the form (variables, valuation) A = set of Turing Machine configurations A = set of lambda-terms A = set of trees (or terms) A = set of clauses A = set of process terms A =...

4 Rewriting R A A How to define a rewrite relation R? How to define a run or the execution of a program? A rewrite derivation : u 0 is the initial call u 0 u 1... u n A narrowing derivation : w 0 is the initial goal (to solve): Where w 0 σ1 w 1... σn w n w i σ w i+1 iff σ(w i ) w i+1 w i is an element of A with partial information σ instantiates w i

5 Motivation : Extension of Term Rewriting ; sharing subterms Function definitions by means of term rewrite rules 0 + x x succ(x) + y succ(x + y) double(x) x + x Very well established domain with several results : Confluence, Termination, Strategies, Proof methods (equational reasoning, induction) etc. double(x) + x double t + t

6 Sharing Subterms (information) and Term Rewriting Consider the following rules: f (a, b) c a b Sharing does not preserve properties of tree (term) rewriting! f (a, a) f (a, b) c f a f b [Plump 99] survey on rewriting with dags.

7 Motivation (continued) Data-structure rewriting including cyclic data-structures with pointers such as circular lists, doubly-linked lists, etc. Data-structures are more complex than terms (Cycles, Sharing) Difficult to encode efficiently using terms Usually described by pointers ( pointer rewriting) Formally described as term-graphs term-graphs = terms with cycles and sharing

8 Term-graphs [Barendregt et al. 87] [Plump 99, survey on acyclic term-graphs] Let Ω be a set of operation symbols. A term-graph t over Ω is defined by: a set of nodes N t, a subset of labeled nodes N Ω t N t, a labeling function L t : N Ω t Ω, a successor function S t : N Ω t N t, 1 1 : f 2 2 : b 3 : g : 5 : h

9 Term-graphs [Barendregt et al. 87] [Plump 99, survey on acyclic term-graphs] Let Ω be a set of operation symbols and F a set of feature symbols. A term-graph t over Ω and F is defined by: a set of nodes N t, a set of edges E t a subset of labeled nodes N Ω t N t, a node labeling function L n t : N Ω t Ω, an edge labeling function L e t : E t F a source function S t : E t N t, a target function T t : E t N t,

10 (Term-)Graph Rewriting Which graphs? (Term-Graphs) Which rules? Which rewrite relation? Two main approaches Algorithmic approaches Algebraic approaches (DPO,SPO,...)

11 Graph Transformation Handbook of Graph Grammars and Computing by Graph Transformation (World Scientific) Vol 1: Foundations, ed. G. Rozenberg, 1997 Vol 2: Applications, Languages and Tools eds. H. Ehrig, G. Engels, H.-J. Kreowski and G. Rozenberg, 1999 Vol 3: Concurrency, Parallelism and Distribution eds. H. Ehrig, H.-J. Kreowski, U. Montanari and G. Rozenberg, 1999 A Monograph in Theoretical Computer Science (An EATCS series) H. Ehrig, K. Ehrig, U. Prange, G. Taentzer: Fundamentals of Algebraic Graph Transformation. Springer-Verlag, 2006

12 Outline Introduction Motivations Termgraph Rewrite Systems Confluence and Rewrite Strategies Narrowing A Modal Logic for Graph Transformation Conclusion

13 Algorithmic approach [Barendregt et al. 87] Shape of a rule: L R where L and R are rooted term-graphs. A rule can be defined as one graph together with two roots (L + R, r 1, r 2 ) where r 1 and r 2 are the roots of L and R respectively Let ρ be the rule (L + R, r 1, r 2 ) We say that G rewrites to H using the rule ρ if L matches a subgraph of G (h : L G n ) (build phase) Construct graph G 1 = G + h(r) (redirection phase) G 2 = [h(r 1 ) h(r 2 )]G 1 (garbage collection phase) H = G 2 root A cumbersome definition, hard to deal with in practice!

14 Rewrite Rules with actions Shape of a rewrite rule : [L C] R L is a term-graph pattern C is a node constraint, n i=1 (α i β i ). R is a sequence of actions a 1 ; a 2 ;... ; a n

15 Actions We consider three kinds of actions : Node definition α:f (α 1,..., α n ) Edge redirection α i β Global redirection α β

16 Application of actions a[t] denotes the application of action(s) a on the term-graph t Let t = n :f (p, q :a) n :f 1 2 p q :a Let t 1 = p :h(p)[t] = n :f (p :h(p), q : a) 1 n :f 1 2 p :h q :a

17 Application of actions a[t] denotes the application of action(s) a on the term-graph t Let t 1 = p :h(p)[t] = n :f (p :h(p), q : a) 1 n :f 1 2 p :h q :a Let t 2 = n 2 p[t 1 ] = n :f (p :h(p), p); q : a 1 p :h n :f 1 2 q :a

18 Application of actions a[t] denotes the application of action(s) a on the term-graph t Let t 2 = n 2 p[t 1 ] = n :f (p :h(p), p); q : a n :f 1 p :h 1 2 Let t 3 = p q[t 2 ] = n :f (q, q); p :h(q) n :f 2 q :a p :h 1 1 q :a

19 Rewrite Step Let t be a term-graph Let ρ be a rewrite rule [L C] R t rewrite to s at node α, t α s iff: m : L t a homomorphism (ρ-matcher) m(root L ) = α α is reachable from root t m(c) holds s = m(r)[t]

20 Term-Graph Rewrite Systems (tgrs) Example Length of a circular list : r : length(p) r : length (p, p) r : length (p 1 : cons(n, p 2 ), p 2 ) r : s(0) [r : length (p 1 : cons(n, p 2 ), p 3 ) p 2 p 3 ] r : s(q); q : length (p 2, p 3 ) Remark: term rewrite systems are tgrs s.

21 Term-Graph Rewrite Systems Example In-situ list reversal : o : reverse(p) o : rev(p, nil) o : rev(p 1 : cons(n, nil), p 2 ) p 1 2 p 2 ; o p 1 o : rev(p 1 : cons(n, p 2 : cons(m, p 3 ), p 4 ) p 1 2 p 4 ; o 1 p 2 ; o 2 p 1 Visual Programming would help!

22 DPO approach of rewrite rules with actions A categorical approach can be found in [TERMGRAPH 06, ENTCS07, RTA07] L l K r R m G d m l D r H Figure: Double pushout: a rewrite step (G H) Redirections of edges (pointers) are handled by K = disconnection(l, E, N) and the morphisms l and r. Remark: Morphisms l and r are not injective! D is not unique!

23 Confluence f (x) x g(x) x The following term-graph n :f q :g rewrites to n :f q :g

24 Confluence α : f (β : c) β : a; α β α : g(β : c) β : b; α β p :f q :g q :c The label of node q may end as q : a or q : b

25 Computing with non-confluent orthogonal Term-graph Rewrite Systems How to evaluate the following term-graph? addlast(length(n : [1, 2]), n) Two normal forms [1, 2, 2] (evaluate addlast after length) [1, 2, 3] (evaluate length after addlast)

26 Term-graphs with Priority [PPDP06][RTA07][RTA08] Endow Term-graphs with priorities (G, < G ) to express which node should be evaluated first m 1 :addlast(m 2 :length(n :[1, 2]), n); m 1 < m 2 Priorities should not be a total order (stay declarative) Which nodes should be ordered? Solution: Order only nodes producing a side-effect

27 Strategies and needed nodes A strategy φ is a partial function which takes a rooted term-graph t and returns a node (position) n and a rule R, φ(t) = (n, R) such that the term-graph t can be reduced at node n using the rule R, t n t

28 Needed Nodes Let φ be a rewrite strategy. Let φ(t) = (p, R). The node p is needed iff for all derivations t β1 t 1 β2... t n 1 βn t n such that t n is a value, there exists i [1..n] s.t. β i = p

29 Inductively sequential Term Rewrite Systems Constitute a subclass of TRSs for which efficient rewrite strategies are available [Antoy 92] Are as expressive as Strongly Sequential TRSs Are the basis of modern functional and logic programming languages. Are defined by means of data-structures called Definitional trees

30 Definitional Trees -case of terms- Let R be the following TRS f(k,nil) R1 f(0,cons(x,l)) R2 f(succ(n),cons(x,l)) R3 A definitional tree of operator f is a hierarchical structure whose leaves are the rules defining f. f(k, l) f(k, nil) R1 f(k, cons (x, u)) f(0, cons (x,u)) R2 f(succ(y), cons (x,u)) R3

31 Definitional trees -case of term-graphsr : length (p 1 : nil, p 2 : ) rhs 1 r : length (p 1 : cons(n :, p 2 : ), p 2 ) rhs 2 [r : length. (p 1 : cons(n :, p 2 : ), p 3 : ) p 2 = p 3 ] rhs 3 A definitional tree T of the operation length is given bellow: r : length (p 1 :, p 2 : ) r : length (p 1 : nil, p 2 : ) rhs 1 r : length (p 1 : cons(n :, p 3 : ), p 2 : ) r : length (p 1 : cons(n :, p 2 : ), p 2 ) rhs 2 [r : length. (p 1 : cons(n :, p 2 : ), p 3 : ) p 2 = p 3 ] rhs 3

32 A Rewrite strategy φ Consider the following definitional tree T of the operation g : r : g(p 1 :, p 2 : ) r : g(p 1 : nil, p 2 : ) rhs 1 r : g(p 1 : cons(n :, p 3 : ), p 2 : ) r : g(p 1 : cons(n :, p 2 : ), p 2 ) rhs 2. [r : g(p 1 : cons(n :, p 2 : ), p 3 : ) p 2 = p 3 ] rhs 3 φ(1 : g (2 : g(3 : g(nil, p), q), 4 : g(nil, o))) = φ(2 : g(3 : g(nil, p), q)) = φ(3 : g(nil, p)) = (3, Rule1)

33 Naive extension of TRS s Contrary to term rewriting, Definitional trees are not enough to ensure the neededness of positions computed by the strategy φ, in the context of term-graph rewriting. Proposition: Let SP = Ω, R be tgrs such that Ω is constructor-based and the rules of every defined operation are stored in a definitional tree. Let t be a rooted term-graph. Then, 1. if φ(t) = (p, R), the node p is not needed in general. 2. if φ(t) is not defined, g can still have a constructor normal form.

34 Counter-examples r : f (p : 0) r p r : h(p : 0, q : succ(n : )) q p r : f (p : succ(p : )) r p Let t = n : succ r : succ p : f q : succ s : h u : 0 φ(t) = (p, r : f (p : succ(p : )) r p). However, the node p is not needed in t.

35 Counter-examples r : g(p : 0) r p r : h(p : 0, q : succ(n : )) q p Let t = n : succ r : succ p : g q : succ s : h u : 0 φ(t) is not defined!. However, the term-graph t rewrites to n : succ(u : 0).

36 Inductively Sequential Term-Graph Rewrite Systems Let SP = Ω, R be a tgrs. SP is called inductively sequential iff The rules of every defined operation can be stored in a definitional tree and for all rules [L C] r in R, for all global (respectively, local) redirections of the form p q (respectively, p i q for some i), occurring in the right-hand side r, p = Root L.

37 Main Properties of Strategy Φ In presence of Inductively Sequential Term-Graph Rewrite Systems The positions computed by Φ are needed Φ is c-normalizing Φ is c-hyper-normalizing Derivations computed by Φ have minimal length

38 Confluence Inductively sequential tgrs are not confluent! f (p :, p) 0 [f (p :, q : ) p q] 1 r : g(q : ) r q Let t = n : f p : g q : 0 There are two different derivations starting from t : t n 1 t p f (q : 0, q) n 0

39 Admissible term-graphs [JICSLP98] Ω is contructor-based, i.e. Ω = D C and D C = D is a set of defined operations C is a set of constructors A term-graph is admissible if none of its cycles includes a defined operation. n : succ(n) is an admissible term-graph n :+(n, n) and n : tail(n) are not admissible

40 Admissible term-graphs The set of admissible term-graphs is not closed under rewriting n :f (m) q :g(n); n m Let Ω = D C with C = {0, succ} and D = {f, g} n 1 :f (m 1 :0) q 1 :g(q 1 )

41 Admissible Inductively sequential Term-Graph Rewrite Systems Let SP = Ω, R be an inductively sequential tgrs. SP is called admissible iff for all rules [π C] r in R the following conditions are satisfied for all global (respectively, local) redirections of the form p q (respectively, p i q for some i), occurring in the right-hand side r, we have p = Root π and q Root π. for all actions of the form α : f (β 1,..., β n ), for all i 1..n, β i Root π the set of actions of the form α : f (β 1,..., β n ), appearing in r, do not construct a cycle including a defined operation.. Constraint C includes disequations of the form p = q where p and q are labeled by constructor symbols.

42 Admissible Inductively sequential Term-Graph Rewrite Systems [ICGT08][JICSLP98] In presence of Admissible Inductively sequential Term-Graph Rewrite Systems The set of admissible term-graphs is closed under the rewrite relation defined by admissible rules. Φ computes needed positions Admissible term-graphs admit unique normal forms

43 Narrowing w i σ w i+1 iff σ(w i ) w i+1 Rewriting = Matching + Transformation Narrowing = Unification + Transformation

44 Narrowing Motivation Automated deduction [Slagle 74] [Fay 79][Hullot 80] Functional and Logic Programming [Goguen and Meseguer 84,...] Security verification [Meadows 89,...] Reachability Analysis [Meseguer and Thati 05,...]...

45 Narrowing Instantiate goal variables and apply a reduction step 0 + X X s(x) + Y s(x + Y ) U + s(0) = s(s(0)) {U s(v )} s(v + s(0)) = s(s(0)) {V 0} s(s(0)) = s(s(0)) Computed answer: {U s(0)}

46 Some Results Needed Term narrowing [POPL04][JACM2000] (main operational semantics of current functionalogic programming languages) Needed Graph Narrowing [JICSLP98] Needed Collapsing Narrowing [Gratra 2000] Narrowing-based algorithm for data-structure rewriting [ICGT06] Goal o : equal(p : length(q), s(s(0))) = true Solution : a circular list of length two [q : cons(n 1, r : cons(n 2, q)) q r]

47 Narrowing: What do we transform? Rule o : f (p : a, q, r) p : b; o 3 q Rewrite Steps o 1, p 1, q 1 and r 1 are constants (names or addresses) o 1 : f (p 1 : a, q 1 : a, r 1 ) o 1 : f (p 1 : b, q 1 : a, q 1 ) o 1 : f (p 1 : a, p 1, r 1 ) o 1 : f (p 1 : b, p 1, p 1 )

48 Narrowing: What do we transform? Rule o : f (p : a, q, r) p : b; o 3 q Rewrite Steps (o 1, p 1, q 1 and r 1 are constants) o 1 : f (p 1 : a, q 1 : a, r 1 ) o 1 : f (p 1 : b, q 1 : a, q 1 ) o 1 : f (p 1 : a, p 1, r 1 ) o 1 : f (p 1 : b, p 1, p 1 ) Narrowing steps (o 2, p 2, q 2 and r 2 are variables) o 2 : f (p 2, q 2 : a, r 2 )? σ labels node p 2 with symbol a. o 2 : f (p 2, q 2 : a, r 2 ) σ o 2 : f (p 2 : b, q 2 : a, q 2 ) p 2 q 2 o 2 : f (p 2, q 2 : a, r 2 ) σ {q2 p 2 } o 2 : f (p 2 : b, p 2, p 2 )

49 Narrowing: What do we transform? Rule Narrowing steps (o 2, p 2, q 2 and r 2 are variables) o : f (p : a, q, r) p : b; o 3 q o 2 : f (p 2, q 2 : a, r 2 ) σ [apply(o 2 : f (p 2 : a, q 2 : a, r 2 ), p 2 : b; o 2 3 q 2 )] [apply(o 2 : f (p 2 : a, q 2 : a, r 2 ), p 2 : b; o 2 3 q 2 ) p 2 q 2 ] [apply(o 2 : f (p 2 : b, q 2 : a, r 2 ), o 2 3 q 2 ) p 2 q 2 ] [apply(o 2 : f (p 2 : a, q 2 : a, q 2 ), ɛ) p 2 q 2 ] [o 2 : f (p 2 : a, q 2 : a, q 2 ) p 2 q 2 ]

50 Narrowing: What do we transform? Rule Narrowing steps o 2, p 2, q 2 and r 2 are variables o : f (p : a, q, r) p : b; o 3 q o 2 : f (p 2, q 2 : a, r 2 ) σ [apply(o 2 : f (p 2 : a, q 2 : a, r 2 ), p 2 : b; o 2 3 q 2 )] {q2 p 2 } [apply(o 2 : f (p 2 : a, p 2, r 2 ), p 2 : b; o 2 3 q 2 )] [apply(o 2 : f (p 2 : b, p 2, r 2 ), o 2 3 q 2 )] [apply(o 2 : f (p 2 : b, p 2, p 2 ), ɛ)] o 2 : f (p 2 : b, p 2, p 2 )

51 g-terms Symbolic handling of actions G is a term-graph φ is a conjunction of disequations τ is a sequence of actions [G φ] [apply(g, τ) φ] Example: [o 2 : f (p 2 : a, q 2 : a, q 2 ) p 2 q 2 ] [apply(o 2 : f (p 2 : b, q 2 : a, r 2 ), o 2 3 q 2 ) p 2 q 2 ]

52 Graph Narrowing Rules Superposition rule (SUP) If: G is a term-graph [G ψ] τ SUP,ρ,θ [H ψ ] σ(τ) ρ is rewrite rule [L φ] R σ is a most general unifier of L and G such that: σ(l) and σ(g) are compatible The root of L unifies with a labeled node in G (non-variable unification) H = apply(σ(g) σ(l), σ(r)) θ = (σ, K ) with K = σ(l)\σ(g) ψ = σ(ψ) σ(φ). p affected p = q. by(σ(τ)),q K Ω

53 Graph Narrowing Rules Action rule: simplify (SIM) [apply(g, ɛ) ψ] τ SIM [G ψ] τ

54 Graph Narrowing Rules Action rule: execute (EXE) [apply(g, α.u) ψ] τ EXE [apply(α[g], u) ψ ] τ.α If: action α is not a node creation and [G ψ] is ready for action α.

55 Graph Narrowing Rules Action rule: new node (NEW) [apply(g, n +.u) ψ] τ NEW,σ [apply(n + [G], σ(u)) ψ ] τ.n+ If: σ = {n n } where n is a fresh effective node ψ = ψ p V N G (p n )

56 Graph Narrowing Rules Isolation rule with equality (EQU) [apply(g, α.u) ψ] τ EQU,σ [apply(σ(g), σ(α).σ(u)) σ(ψ)] σ(τ) If: there exists a node n affected by(α), m is not an α-isolated node in G and σ is a substitution (compatible with G) such that σ(n) = σ(m) o 2 : f (p 2, q 2 : a, r 2 ) σ [apply(o 2 : f (p 2 : a, q 2 : a, r 2 ), p 2 : b; o 2 3 q 2 )] {q2 p 2 } [apply(o 2 : f (p 2 : a, p 2, r 2 ), p 2 : b; o 2 3 q 2 )]

57 Graph Narrowing Rules Isolation rule with disequality (DIS) If: [apply(g, α.u) ψ] τ. DIS [apply(g, α.u) ψ n = m] τ there exists a node n affected by(α), m is not an α-isolated node in G o 2 : f (p 2, q 2 : a, r 2 ) σ [apply(o 2 : f (p 2 : a, q 2 : a, r 2 ), p 2 : b; o 2 3 q 2 )] [apply(o 2 : f (p 2 : a, q 2 : a, r 2 ), p 2 : b; o 2 3 q 2 ) p 2 q 2 ]

58 Computed Solutions [G 0 True] σ1 σn [G n φ] Computed Solution is : (σ 1 σ n, φ) Example: Goal o : equal(p : length(q), s(s(0))) = true Solution [q : cons(n 1, r : cons(n 2, q)) q r]

59 Graph Narrowing: Soundness and Completeness Proposition 1: The proposed narrowing rules are sound. If [G True] σ [H φ] then there exists a ground substitution θ satisfying φ such that: Gσθ Hθ Proposition 2: The proposed narrowing rules are complete. If Gσ H, σ being irreducible. Then, there exist two substitutions θ and γ and a term-graph G such that : [G True] θ[g φ] γ satifies φ σ = θγ G γ = H

60 Modal Logic and Graph Transformation motivations Specify graph shapes (data-structures) Circular list Balanced tree Graph properties can be specified within several logics, such as : Separation Logic, Monadic second order logic, Modal logics (e.g., LTL, CTL, µ-calculus, etc). Verification of graph transformation: Invariant Reachability Need to define new logics able to specify rule application and graph transformation.

61 Dynamic Logic Agents Knowledge Actions Evaluate a formula in a model Transform the considered model

62 A Modal Logic for Graph Rewriting G = φ G! R = φ where G! R is the normal form of G G! R = φ iff G = [R ]φ

63 A Modal Logic for Graph Rewriting : L gr Language Formulas : φ ::= p φ φ φ [α]φ Actions : α ::= a α α; α α α modifiers. [α]φ : After performing actions α, formula Φ holds.

64 Modifiers Add a new node Add a new label (to current node) remove a label from the current node Add the label a to the edges going from a Φ-node to a Ψ-node.... Graph modifiers : U n n φ? (ω := g φ) (ω := l φ) (a + (φ, ψ)) (a (φ, ψ))

65 Modifiers Example [p := g ][p := l ](p [a]( p q)) p a p, q a q p a q a q a q a q

66 Modal Logic: L gr Semantics (informally) G r = p iff p holds at node r G r = [a]ϕ iff G n = ϕ for all nodes n such that the edge r a n G. G r = [ω := g ][ω := l ] ϕ iff H r = ϕ, H is obtained from G by tagging the node r by ω (ω does not hold outside node r).

67 Modal Logic: L gr Semantics G r = [a (φ, ψ)]ϕ iff H r = ϕ, H is obtained from G by erasing the edges n a m, such that G n = φ and G m = ψ. G r = [a + (φ, ψ)]ϕ iff H r = ϕ, H is obtained from G by adding the edges n a m, such that G n = φ and G m = ψ. G r = [f?]ϕ iff G r = ϕ and f holds at node r. G r = [ nw]ϕ iff H nw = ϕ. H is obtained from G by adding a new node nw.

68 Examples of L gr Specified Properties Class of all a-cycle-free rooted termgraphs. [ω := g ][U][ω := l ][a + ]ω Class of all a-circular rooted termgraphs [ω := g ][U][ω := l ] a + ω. Class of all (a, b)-binary rooted termgraphs [ω := g ][U][ω := l ][a][π := g ][(a b) ][π := l ][U](ω [b][(a b) ]π). a Let R G (a) = {(n 1, n 2 ): the edge n 1 n2 G}. G = [ω := g ][U][ω := l ][a] ω iff R G (a) is irreflexive. Classes of circular lists, balanced trees,...

69 Hamiltonian Graphs The following formula expresses the existence of a Hamiltonian cycle. α stands for a 1... a n, where the a i s are the possible features used in the graph (F = {a 1,..., a n }): ω := g ; π := g ; ω := l ; π := l ; (α; ω?; ω := l ) (π [U] ω).

70 Decidability With * and without nw : the problem of model checking (G = Φ) is decidable.

71 Modal Logic L gr and Graph Rewriting Expressing pattern-matching in L gr Proposition: Let G r be a term-graph with root r (a distinguished node). There exists a -free action α G and a -free formula φ G such that for all finite rooted termgraphs G r, G r = α G φ G iff there exists a graph homomorphism from G to G r. We define the action α G and the formula φ G as follows: β G = (π 0 := g );... ; (π N 1 := g ), (N being the number of nodes in G) for all non-negative integers i, if i < N then γ i G = ( π 0... π i 1 )?; (π i := l ); U, α G = β G ; γ 0 G ;... ; γn 1 G,

72 Modal Logic L gr and Graph Rewriting We define the formula φ G as follows: for all non-negative integers i, if i < N then ψ i G = if Ln (i) is defined then U (π i L n (i)) else, for all non-negative integers i, j, if i, j < N then χ i,j G = if there exists an edge e E such that S(e) = i and T (e) = j then U (π i L e (e) π j ) else, φ G = ψg 0... ψn 1 G χ 0,0 G... χn 1,N 1 G.

73 Modal Logic L gr and Graph Rewriting Actions representing the right-hand sides can be expressed by the following elementary formulas : Action n : f (a 1 n 1,..., a k n k ) U; π n?; (f := l ); (a 1 + (π n, π n1 ));... ; (a k + (π n, π nk )). Action n a m (a (π n, )); (a + (π n, π m )). Action n m) (for a-edges) (λ a := g ); (λ a := g a π n ); (a (, π n )); (a + (λ a, π m )).

74 Modal Logic L gr and Graph Rewriting Firing a rule ρ = L R β ρ = α L ; α R Normal form of graph G r satisfies ϕ: Let R = ( β ρi ) G r = [R ]([R] ϕ) Rule ρ preserves the property ϕ: = (ϕ [β ρ ]ϕ)

75 Conclussion and perspectives Admissible termgraphs seem to be a good trade-off to ensure confluence and efficient strategies Cloning and algebraic approaches (sesqui-pushout) Narrowing Visual Programming and Termgraph Rewriting Proof Techniques Applications

A Heterogeneous Pushout Approach to Term-Graph Transformation

A Heterogeneous Pushout Approach to Term-Graph Transformation A Heterogeneous Pushout Approach to Term-Graph Transformation Dominique Duval 1, Rachid Echahed 2,andFrédéric Prost 2 1 LJK, Université degrenoble,france Dominique.Duval@imag.fr 2 LIG, CNRS, Université

More information

07 Equational Logic and Algebraic Reasoning

07 Equational Logic and Algebraic Reasoning CAS 701 Fall 2004 07 Equational Logic and Algebraic Reasoning Instructor: W. M. Farmer Revised: 17 November 2004 1 What is Equational Logic? Equational logic is first-order logic restricted to languages

More information

Introduction to Temporal Logic. The purpose of temporal logics is to specify properties of dynamic systems. These can be either

Introduction to Temporal Logic. The purpose of temporal logics is to specify properties of dynamic systems. These can be either Introduction to Temporal Logic The purpose of temporal logics is to specify properties of dynamic systems. These can be either Desired properites. Often liveness properties like In every infinite run action

More information

A Static Analysis Technique for Graph Transformation Systems

A Static Analysis Technique for Graph Transformation Systems A Static Analysis Technique for Graph Transformation Systems Paolo Baldan, Andrea Corradini, and Barbara König Dipartimento di Informatica, Università di Pisa, Italia {baldan,andrea,koenigb}@di.unipi.it

More information

Fundamental Theory for Typed Attributed Graph Transformation

Fundamental Theory for Typed Attributed Graph Transformation Fundamental Theory for Typed Attributed Graph Transformation Hartmut Ehrig, Ulrike Prange, and Gabriele Taentzer Technical University of Berlin, Germany ehrig ullip gabi@cs.tu-berlin.de Abstract. The concept

More information

Transformation of Corecursive Graphs

Transformation of Corecursive Graphs Transformation of Corecursive Graphs Towards M-Adhesive Categories of Corecursive Graphs Julia Padberg 10.2.2017 Padberg Transformation of Corecursive Graphs 10.2.2017 1 Motivation Table of Contents 1

More information

A Semantic Criterion for Proving Infeasibility in Conditional Rewriting

A Semantic Criterion for Proving Infeasibility in Conditional Rewriting A Semantic Criterion for Proving Infeasibility in Conditional Rewriting Salvador Lucas and Raúl Gutiérrez DSIC, Universitat Politècnica de València, Spain 1 Introduction In the literature about confluence

More information

Equational Logic. Chapter 4

Equational Logic. Chapter 4 Chapter 4 Equational Logic From now on First-order Logic is considered with equality. In this chapter, I investigate properties of a set of unit equations. For a set of unit equations I write E. Full first-order

More information

Temporal Logic. Stavros Tripakis University of California, Berkeley. We have designed a system. We want to check that it is correct.

Temporal Logic. Stavros Tripakis University of California, Berkeley. We have designed a system. We want to check that it is correct. EE 244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Fall 2016 Temporal logic Stavros Tripakis University of California, Berkeley Stavros Tripakis (UC Berkeley) EE 244, Fall 2016

More information

Parallel Independence in Hierarchical Graph Transformation

Parallel Independence in Hierarchical Graph Transformation Parallel Independence in Hierarchical Graph Transformation Annegret Habel 1 and Berthold Hoffmann 2 1 Carl-v.-Ossietzky-Universität Oldenburg, Germany habel@informatik.uni-oldenburg.de 2 Universitität

More information

Implementing -Reduction by. Hypergraph Rewriting. Sabine Kuske 1. Fachbereich Mathematik und Informatik. Universitat Bremen. D{28334 Bremen, Germany

Implementing -Reduction by. Hypergraph Rewriting. Sabine Kuske 1. Fachbereich Mathematik und Informatik. Universitat Bremen. D{28334 Bremen, Germany URL: http://www.elsevier.nl/locate/entcs/volume2.html 8 pages Implementing -Reduction by Hypergraph Rewriting abine Fachbereich Mathematik und Informatik Universitat Bremen D{28334 Bremen, Germany email:

More information

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams Literature Some pointers: H.R. Andersen, An Introduction to Binary Decision Diagrams, Lecture notes, Department of Information Technology, IT University of Copenhagen Tools: URL:

More information

A Graph Rewriting Semantics for the Polyadic π-calculus

A Graph Rewriting Semantics for the Polyadic π-calculus A Graph Rewriting Semantics for the Polyadic π-calculus BARBARA KÖNIG Fakultät für Informatik, Technische Universität München Abstract We give a hypergraph rewriting semantics for the polyadic π-calculus,

More information

Attribution of Graphs by Composition of M, N -adhesive Categories

Attribution of Graphs by Composition of M, N -adhesive Categories Attribution of Graphs by Composition of M, N -adhesive Categories Christoph Peuser and Annegret Habel Carl von Ossietzky Universität Oldenburg {peuser,habel}@informatik.uni-oldenburg.de Abstract. This

More information

On the Complexity of the Reflected Logic of Proofs

On the Complexity of the Reflected Logic of Proofs On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,

More information

Petri Net Transformations

Petri Net Transformations 1 Petri Net Transformations Hartmut Ehrig, Kathrin Hoffmann, Julia Padberg, Claudia Ermel, Ulrike Prange, Enrico Biermann and Tony Modica Institute for Software Technology and Theoretical Computer Science

More information

Chapter 4: Computation tree logic

Chapter 4: Computation tree logic INFOF412 Formal verification of computer systems Chapter 4: Computation tree logic Mickael Randour Formal Methods and Verification group Computer Science Department, ULB March 2017 1 CTL: a specification

More information

Automata-based Verification - III

Automata-based Verification - III COMP30172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20: email: howard.barringer@manchester.ac.uk March 2009 Third Topic Infinite Word Automata Motivation Büchi Automata

More information

Non- -overlappings TRSs are UN. Stefan Kahrs and Connor Smith University of Kent

Non- -overlappings TRSs are UN. Stefan Kahrs and Connor Smith University of Kent Non- -overlappings TRSs are UN Stefan Kahrs and Connor Smith University of Kent This is about: When is the equational theory of a TRS consistent (CON), when does it have unique normal forms (UN), How can

More information

Tree Automata and Rewriting

Tree Automata and Rewriting and Rewriting Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.jussieu.fr July 23, 2010 What are? Definition Tree Automaton A tree automaton

More information

A Constructor-Based Reachability Logic for Rewrite Theories

A Constructor-Based Reachability Logic for Rewrite Theories A Constructor-Based Reachability Logic for Rewrite Theories Stephen Skeirik, Andrei Stefanescu, Jose Meseguer October 10th, 2017 Outline 1 Introduction 2 Reachability Logic Semantics 3 The Invariant Paradox

More information

Universal Boolean Systems

Universal Boolean Systems TERMGRAPH 27 Universal Boolean Systems Denis Béchet 2 LINA Université de Nantes Nantes, France Sylvain Lippi 3 I3S Universit de Nice Sophia Antipolis, France Abstract Boolean interaction systems and hard

More information

Cheat Sheet Equational Logic (Spring 2013) Terms. Inductive Construction. Positions: Denoting Subterms TERMS

Cheat Sheet Equational Logic (Spring 2013) Terms. Inductive Construction. Positions: Denoting Subterms TERMS TERMS Cheat Sheet Equational Logic (Spring 2013) The material given here summarizes those notions from the course s textbook [1] that occur frequently. The goal is to have them at hand, as a quick reminder

More information

THEORY OF SYSTEMS MODELING AND ANALYSIS. Henny Sipma Stanford University. Master class Washington University at St Louis November 16, 2006

THEORY OF SYSTEMS MODELING AND ANALYSIS. Henny Sipma Stanford University. Master class Washington University at St Louis November 16, 2006 THEORY OF SYSTEMS MODELING AND ANALYSIS Henny Sipma Stanford University Master class Washington University at St Louis November 16, 2006 1 1 COURSE OUTLINE 8:37-10:00 Introduction -- Computational model

More information

Composition and Decomposition of DPO Transformations with Borrowed Context

Composition and Decomposition of DPO Transformations with Borrowed Context Composition and Decomposition of DP Transformations with Borrowed Context Paolo Baldan 1, Hartmut Ehrig 2, and Barbara König 3 1 Dipartimento di Informatica, niversità Ca Foscari di Venezia, Italy 2 Institut

More information

Automata, Logic and Games: Theory and Application

Automata, Logic and Games: Theory and Application Automata, Logic and Games: Theory and Application 1. Büchi Automata and S1S Luke Ong University of Oxford TACL Summer School University of Salerno, 14-19 June 2015 Luke Ong Büchi Automata & S1S 14-19 June

More information

Inequational Deduction as Term Graph Rewriting 1

Inequational Deduction as Term Graph Rewriting 1 TERMGRAPH Preliminary Version Inequational Deduction as Term Graph Rewriting Andrea Corradini and Fabio Gadducci Dipartimento di Informatica, Università di Pisa, Italy Wolfram Kahl 3 Department of Computing

More information

Rewriting, Explicit Substitutions and Normalisation

Rewriting, Explicit Substitutions and Normalisation Rewriting, Explicit Substitutions and Normalisation XXXVI Escola de Verão do MAT Universidade de Brasilia Part 1/3 Eduardo Bonelli LIFIA (Fac. de Informática, UNLP, Arg.) and CONICET eduardo@lifia.info.unlp.edu.ar

More information

Associative-commutative rewriting via flattening

Associative-commutative rewriting via flattening Associative-commutative rewriting via flattening Jean-Pierre Jouannaud LIX, École Polytechnique 91400 Palaiseau, France Email: jouannaud@lix.polytechnique.fr http://www.lix.polytechnique.fr/labo/jouannaud

More information

Finite and Algorithmic Model Theory II: Automata-Based Methods

Finite and Algorithmic Model Theory II: Automata-Based Methods Finite and Algorithmic Model Theory II: Automata-Based Methods Anuj Dawar University of Cambridge Computer Laboratory Simons Institute, 30 August 2016 Review We aim to develop tools for studying the expressive

More information

Intelligent Agents. Formal Characteristics of Planning. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University

Intelligent Agents. Formal Characteristics of Planning. Ute Schmid. Cognitive Systems, Applied Computer Science, Bamberg University Intelligent Agents Formal Characteristics of Planning Ute Schmid Cognitive Systems, Applied Computer Science, Bamberg University Extensions to the slides for chapter 3 of Dana Nau with contributions by

More information

Theorem 4.18 ( Critical Pair Theorem ) A TRS R is locally confluent if and only if all its critical pairs are joinable.

Theorem 4.18 ( Critical Pair Theorem ) A TRS R is locally confluent if and only if all its critical pairs are joinable. 4.4 Critical Pairs Showing local confluence (Sketch): Problem: If t 1 E t 0 E t 2, does there exist a term s such that t 1 E s E t 2? If the two rewrite steps happen in different subtrees (disjoint redexes):

More information

The State Explosion Problem

The State Explosion Problem The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis

More information

A Needed Narrowing Strategy

A Needed Narrowing Strategy Journal of the ACM, Volume 47, No. 4 (Jul. 2000) pp. 776-822 A Needed Narrowing Strategy SERGIO ANTOY Portland State University, Portland, Oregon RACHID ECHAHED Laboratoire LEIBNIZ, Institut IMAG, Grenoble,

More information

1 The decision problem for First order logic

1 The decision problem for First order logic Math 260A Mathematical Logic Scribe Notes UCSD Winter Quarter 2012 Instructor: Sam Buss Notes by: James Aisenberg April 27th 1 The decision problem for First order logic Fix a finite language L. Define

More information

Automata-based Verification - III

Automata-based Verification - III CS3172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20/22: email: howard.barringer@manchester.ac.uk March 2005 Third Topic Infinite Word Automata Motivation Büchi Automata

More information

Embedding and Confluence of Graph Transformations with Negative Application Conditions

Embedding and Confluence of Graph Transformations with Negative Application Conditions Embedding and Confluence of Graph Transformations with Negative Application Conditions Leen Lambers 1, Hartmut Ehrig 1, Ulrike Prange 1, and Fernando Orejas 2 1 Institute for Software Engineering and Theoretical

More information

Temporal logics and explicit-state model checking. Pierre Wolper Université de Liège

Temporal logics and explicit-state model checking. Pierre Wolper Université de Liège Temporal logics and explicit-state model checking Pierre Wolper Université de Liège 1 Topics to be covered Introducing explicit-state model checking Finite automata on infinite words Temporal Logics and

More information

Introduction to Kleene Algebras

Introduction to Kleene Algebras Introduction to Kleene Algebras Riccardo Pucella Basic Notions Seminar December 1, 2005 Introduction to Kleene Algebras p.1 Idempotent Semirings An idempotent semiring is a structure S = (S, +,, 1, 0)

More information

The Expressivity of Universal Timed CCP: Undecidability of Monadic FLTL and Closure Operators for Security

The Expressivity of Universal Timed CCP: Undecidability of Monadic FLTL and Closure Operators for Security The Expressivity of Universal Timed CCP: Undecidability of Monadic FLTL and Closure Operators for Security Carlos Olarte and Frank D. Valencia INRIA /CNRS and LIX, Ecole Polytechnique Motivation Concurrent

More information

Linear Temporal Logic and Büchi Automata

Linear Temporal Logic and Büchi Automata Linear Temporal Logic and Büchi Automata Yih-Kuen Tsay Department of Information Management National Taiwan University FLOLAC 2009 Yih-Kuen Tsay (SVVRL @ IM.NTU) Linear Temporal Logic and Büchi Automata

More information

Automata-Theoretic Model Checking of Reactive Systems

Automata-Theoretic Model Checking of Reactive Systems Automata-Theoretic Model Checking of Reactive Systems Radu Iosif Verimag/CNRS (Grenoble, France) Thanks to Tom Henzinger (IST, Austria), Barbara Jobstmann (CNRS, Grenoble) and Doron Peled (Bar-Ilan University,

More information

Propositional logic. Programming and Modal Logic

Propositional logic. Programming and Modal Logic Propositional logic Programming and Modal Logic 2006-2007 4 Contents Syntax of propositional logic Semantics of propositional logic Semantic entailment Natural deduction proof system Soundness and completeness

More information

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler Complexity Theory Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Reinhard

More information

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181. Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität

More information

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω

The non-logical symbols determine a specific F OL language and consists of the following sets. Σ = {Σ n } n<ω 1 Preliminaries In this chapter we first give a summary of the basic notations, terminology and results which will be used in this thesis. The treatment here is reduced to a list of definitions. For the

More information

Basic Algebraic Logic

Basic Algebraic Logic ELTE 2013. September Today Past 1 Universal Algebra 1 Algebra 2 Transforming Algebras... Past 1 Homomorphism 2 Subalgebras 3 Direct products 3 Varieties 1 Algebraic Model Theory 1 Term Algebras 2 Meanings

More information

On Term Graphs as an Adhesive Category

On Term Graphs as an Adhesive Category Electronic Notes in Theoretical Computer Science 127 (2005) 43 56 www.elsevier.com/locate/entcs On Term Graphs as an Adhesive Category Andrea Corradini 1 and Fabio Gadducci 2 Dipartimento di Informatica,

More information

Trace Diagnostics using Temporal Implicants

Trace Diagnostics using Temporal Implicants Trace Diagnostics using Temporal Implicants ATVA 15 Thomas Ferrère 1 Dejan Nickovic 2 Oded Maler 1 1 VERIMAG, University of Grenoble / CNRS 2 Austrian Institute of Technology October 14, 2015 Motivation

More information

The Maude-NRL Protocol Analyzer Lecture 3: Asymmetric Unification and Indistinguishability

The Maude-NRL Protocol Analyzer Lecture 3: Asymmetric Unification and Indistinguishability The Maude-NRL Protocol Analyzer Lecture 3: Asymmetric Unification and Catherine Meadows Naval Research Laboratory, Washington, DC 20375 catherine.meadows@nrl.navy.mil Formal Methods for the Science of

More information

An Abstract Decision Procedure for a Theory of Inductive Data Types

An Abstract Decision Procedure for a Theory of Inductive Data Types An Abstract Decision Procedure for a Theory of Inductive Data Types lark Barrett Igor Shikanian Department of omputer Science ourant Institute of Mathematical Sciences New York University esare Tinelli

More information

Design of Distributed Systems Melinda Tóth, Zoltán Horváth

Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Publication date 2014 Copyright 2014 Melinda Tóth, Zoltán Horváth Supported by TÁMOP-412A/1-11/1-2011-0052

More information

Propositional logic. Programming and Modal Logic

Propositional logic. Programming and Modal Logic Propositional logic Programming and Modal Logic 2006-2007 4 Contents Syntax of propositional logic Semantics of propositional logic Semantic entailment Natural deduction proof system Soundness and completeness

More information

LOGIC. Mathematics. Computer Science. Stanley N. Burris

LOGIC. Mathematics. Computer Science. Stanley N. Burris LOGIC for Mathematics and Computer Science Stanley N. Burris Department of Pure Mathematics University of Waterloo Prentice Hall Upper Saddle River, New Jersey 07458 Contents Preface The Flow of Topics

More information

Combining Propositional Dynamic Logic with Formal Concept Analysis

Combining Propositional Dynamic Logic with Formal Concept Analysis Proc. CS&P '06 Combining Propositional Dynamic Logic with Formal Concept Analysis (extended abstract) N.V. Shilov, N.O. Garanina, and I.S. Anureev A.P. Ershov Institute of Informatics Systems, Lavren ev

More information

Proceedings of the 12th International Workshop on Graph Transformation and Visual Modeling Techniques (GTVMT 2013)

Proceedings of the 12th International Workshop on Graph Transformation and Visual Modeling Techniques (GTVMT 2013) Electronic Communications of the EASST Volume 58 (2013) Proceedings of the 12th International Workshop on raph Transformation and Visual Modeling Techniques (TVMT 2013) Analysis of Hypergraph Transformation

More information

CTL-RP: A Computational Tree Logic Resolution Prover

CTL-RP: A Computational Tree Logic Resolution Prover 1 -RP: A Computational Tree Logic Resolution Prover Lan Zhang a,, Ullrich Hustadt a and Clare Dixon a a Department of Computer Science, University of Liverpool Liverpool, L69 3BX, UK E-mail: {Lan.Zhang,

More information

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw Applied Logic Lecture 1 - Propositional logic Marcin Szczuka Institute of Informatics, The University of Warsaw Monographic lecture, Spring semester 2017/2018 Marcin Szczuka (MIMUW) Applied Logic 2018

More information

Nominal Completion for Rewrite Systems with Binders

Nominal Completion for Rewrite Systems with Binders Nominal Completion for Rewrite Systems with Binders Maribel Fernández King s College London July 2012 Joint work with Albert Rubio Summary Motivations Nominal Rewriting Closed nominal rules Confluence

More information

A Semantic Criterion for Proving Infeasibility in Conditional Rewriting

A Semantic Criterion for Proving Infeasibility in Conditional Rewriting A Semantic Criterion for Proving Infeasibility in Conditional Rewriting Salvador Lucas Raúl Gutiérrez DSIC, Universitat Politècnica de València, Spain 6 th International Workshop on Confluence, IWC 2017

More information

HORSes: format, termination and confluence

HORSes: format, termination and confluence HORSes: format, termination and confluence Jean-Pierre Jouannaud INRIA-LIAMA and singhua Software Chair Joint on-going work with Jianqi Li School of Software, singhua University Project CoqLF NList Cross-discipline

More information

An Abstract Decision Procedure for Satisfiability in the Theory of Recursive Data Types

An Abstract Decision Procedure for Satisfiability in the Theory of Recursive Data Types An Abstract Decision Procedure for Satisfiability in the Theory of Recursive Data Types Clark Barrett 1 Igor Shikanian 1 Cesare Tinelli 2 1 New York University, barrett igor@cs.nyu.edu 2 The University

More information

Languages, logics and automata

Languages, logics and automata Languages, logics and automata Anca Muscholl LaBRI, Bordeaux, France EWM summer school, Leiden 2011 1 / 89 Before all that.. Sonia Kowalewskaya Emmy Noether Julia Robinson All this attention has been gratifying

More information

The Complexity of Computing the Behaviour of Lattice Automata on Infinite Trees

The Complexity of Computing the Behaviour of Lattice Automata on Infinite Trees The Complexity of Computing the Behaviour of Lattice Automata on Infinite Trees Karsten Lehmann a, Rafael Peñaloza b a Optimisation Research Group, NICTA Artificial Intelligence Group, Australian National

More information

Reduced Ordered Binary Decision Diagrams

Reduced Ordered Binary Decision Diagrams Reduced Ordered Binary Decision Diagrams Lecture #12 of Advanced Model Checking Joost-Pieter Katoen Lehrstuhl 2: Software Modeling & Verification E-mail: katoen@cs.rwth-aachen.de December 13, 2016 c JPK

More information

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Massimo Franceschet Angelo Montanari Dipartimento di Matematica e Informatica, Università di Udine Via delle

More information

Innermost Reductions Find All Normal Forms on Right-Linear Terminating Overlay TRSs

Innermost Reductions Find All Normal Forms on Right-Linear Terminating Overlay TRSs Innermost Reductions Find All Normal Forms on Right-Linear Terminating Overlay TRSs Masahiko Sakai,Kouji Okamoto,Toshiki Sakabe Graduate School of Information Science, Nagoya University, Furo-cho, Chikusa-ku,

More information

Dismatching and Local Disunification in EL

Dismatching and Local Disunification in EL Dismatching and Local Disunification in EL (Extended Abstract) Franz Baader, Stefan Borgwardt, and Barbara Morawska Theoretical Computer Science, TU Dresden, Germany {baader,stefborg,morawska}@tcs.inf.tu-dresden.de

More information

Database Theory VU , SS Complexity of Query Evaluation. Reinhard Pichler

Database Theory VU , SS Complexity of Query Evaluation. Reinhard Pichler Database Theory Database Theory VU 181.140, SS 2018 5. Complexity of Query Evaluation Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 17 April, 2018 Pichler

More information

Proving Termination of Graph Transformation Systems using Weighted Type Graphs over Semirings

Proving Termination of Graph Transformation Systems using Weighted Type Graphs over Semirings Proving Termination of Graph Transformation Systems using Weighted Type Graphs over Semirings H.J. Sander Bruggink, Barbara König, Dennis Nolte, and Hans Zantema GEBIT Solutions sander.bruggink@gebit.de

More information

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events Massimo Franceschet Angelo Montanari Dipartimento di Matematica e Informatica, Università di Udine Via delle

More information

Completeness for coalgebraic µ-calculus: part 2. Fatemeh Seifan (Joint work with Sebastian Enqvist and Yde Venema)

Completeness for coalgebraic µ-calculus: part 2. Fatemeh Seifan (Joint work with Sebastian Enqvist and Yde Venema) Completeness for coalgebraic µ-calculus: part 2 Fatemeh Seifan (Joint work with Sebastian Enqvist and Yde Venema) Overview Overview Completeness of Kozen s axiomatisation of the propositional µ-calculus

More information

Equivalence of Algebraic λ -calculi extended abstract

Equivalence of Algebraic λ -calculi extended abstract Equivalence of Algebraic λ -calculi extended abstract Alejandro Díaz-Caro LIG, Université de Grenoble, France Alejandro.Diaz-Caro@imag.fr Christine Tasson CEA-LIST, MeASI, France Christine.Tasson@cea.fr

More information

Computation Tree Logic (CTL) & Basic Model Checking Algorithms

Computation Tree Logic (CTL) & Basic Model Checking Algorithms Computation Tree Logic (CTL) & Basic Model Checking Algorithms Martin Fränzle Carl von Ossietzky Universität Dpt. of Computing Science Res. Grp. Hybride Systeme Oldenburg, Germany 02917: CTL & Model Checking

More information

Rules and derivations in an elementary logic course arxiv: v1 [cs.lo] 7 Jan 2016

Rules and derivations in an elementary logic course arxiv: v1 [cs.lo] 7 Jan 2016 Rules and derivations in an elementary logic course arxiv:160101483v1 [cslo] 7 Jan 2016 Gilles Dowek Inria, 23 avenue d Italie, CS 81321, 75214 Paris Cedex 13, France gillesdowek@inriafr When teaching

More information

Strong Joinability Analysis for Graph Transformation Systems in CHR

Strong Joinability Analysis for Graph Transformation Systems in CHR TERMGRAPH 2009 Strong Joinability Analysis for Graph Transformation Systems in CHR Frank Raiser 1 Thom Frühwirth 2 Institute for Software Engineering and Compiler Construction Ulm University Abstract The

More information

Model Theory of Modal Logic Lecture 5. Valentin Goranko Technical University of Denmark

Model Theory of Modal Logic Lecture 5. Valentin Goranko Technical University of Denmark Model Theory of Modal Logic Lecture 5 Valentin Goranko Technical University of Denmark Third Indian School on Logic and its Applications Hyderabad, January 29, 2010 Model Theory of Modal Logic Lecture

More information

Matching Logic: Syntax and Semantics

Matching Logic: Syntax and Semantics Matching Logic: Syntax and Semantics Grigore Roșu 1 and Traian Florin Șerbănuță 2 1 University of Illinois at Urbana-Champaign, USA grosu@illinois.edu 2 University of Bucharest, Romania traian.serbanuta@unibuc.ro

More information

Hierarchical Combination of Unification Algorithms (Extended Abstract)

Hierarchical Combination of Unification Algorithms (Extended Abstract) of Unification Algorithms (Extended Abstract) Serdar Erbatur 5, Deepak Kapur 1, Andrew M Marshall 2, Paliath Narendran 3 and Christophe Ringeissen 4 1 University of New Mexico (USA) 2 Naval Research Laboratory

More information

Polynomial-time Computation via Local Inference Relations

Polynomial-time Computation via Local Inference Relations Polynomial-time Computation via Local Inference Relations ROBERT GIVAN Purdue University and DAVID MCALLESTER AT&T Labs Research We consider the concept of a local set of inference rules. A local rule

More information

3-Valued Abstraction-Refinement

3-Valued Abstraction-Refinement 3-Valued Abstraction-Refinement Sharon Shoham Academic College of Tel-Aviv Yaffo 1 Model Checking An efficient procedure that receives: A finite-state model describing a system A temporal logic formula

More information

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30) Computational Logic Davide Martinenghi Free University of Bozen-Bolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic - sequent calculus To overcome the problems of natural

More information

CVO103: Programming Languages. Lecture 2 Inductive Definitions (2)

CVO103: Programming Languages. Lecture 2 Inductive Definitions (2) CVO103: Programming Languages Lecture 2 Inductive Definitions (2) Hakjoo Oh 2018 Spring Hakjoo Oh CVO103 2018 Spring, Lecture 2 March 13, 2018 1 / 20 Contents More examples of inductive definitions natural

More information

Semantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr

Semantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr Semantic Equivalences and the Verification of Infinite-State Systems Richard Mayr Department of Computer Science Albert-Ludwigs-University Freiburg Germany Verification of Infinite-State Systems 1 c 2004

More information

Sémantique des jeux asynchrones et réécriture 2-dimensionnelle

Sémantique des jeux asynchrones et réécriture 2-dimensionnelle Sémantique des jeux asynchrones et réécriture 2-dimensionnelle Soutenance de thèse de doctorat Samuel Mimram Laboratoire PPS (CNRS Université Paris Diderot) 1 er décembre 2008 1 / 64 A program is a text

More information

A brief introduction to Logic. (slides from

A brief introduction to Logic. (slides from A brief introduction to Logic (slides from http://www.decision-procedures.org/) 1 A Brief Introduction to Logic - Outline Propositional Logic :Syntax Propositional Logic :Semantics Satisfiability and validity

More information

Overview of Topics. Finite Model Theory. Finite Model Theory. Connections to Database Theory. Qing Wang

Overview of Topics. Finite Model Theory. Finite Model Theory. Connections to Database Theory. Qing Wang Overview of Topics Finite Model Theory Part 1: Introduction 1 What is finite model theory? 2 Connections to some areas in CS Qing Wang qing.wang@anu.edu.au Database theory Complexity theory 3 Basic definitions

More information

On simulations and bisimulations of general flow systems

On simulations and bisimulations of general flow systems On simulations and bisimulations of general flow systems Jen Davoren Department of Electrical & Electronic Engineering The University of Melbourne, AUSTRALIA and Paulo Tabuada Department of Electrical

More information

Polynomial-time Computation via Local Inference Relations

Polynomial-time Computation via Local Inference Relations Polynomial-time Computation via Local Inference Relations Robert Givan and David McAllester Robert Givan David McAllester Electrical & Computer Engineering P. O. Box 971 Purdue University AT&T Labs Research

More information

CS256/Winter 2009 Lecture #6. Zohar Manna

CS256/Winter 2009 Lecture #6. Zohar Manna CS256/Winter 2009 Lecture #6 Zohar Manna Chapter 1 Invariance: Proof Methods For assertion q and SPL program P show P Õ ¼ q (i.e., q is P-invariant) 6-1 Proving Invariances Definitions Recall: the variables

More information

A Temporal Dynamic Logic for Verifying Hybrid System Invariants

A Temporal Dynamic Logic for Verifying Hybrid System Invariants A Temporal Dynamic Logic for Verifying Hybrid System Invariants André Platzer 1,2 1 University of Oldenburg, Department of Computing Science, Germany 2 Carnegie Mellon University, Computer Science Department,

More information

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications

NICTA Advanced Course. Theorem Proving Principles, Techniques, Applications NICTA Advanced Course Theorem Proving Principles, Techniques, Applications λ 1 CONTENT Intro & motivation, getting started with Isabelle Foundations & Principles Lambda Calculus Higher Order Logic, natural

More information

Comp487/587 - Boolean Formulas

Comp487/587 - Boolean Formulas Comp487/587 - Boolean Formulas 1 Logic and SAT 1.1 What is a Boolean Formula Logic is a way through which we can analyze and reason about simple or complicated events. In particular, we are interested

More information

DSLTrans: A Turing Incomplete Transformation Language

DSLTrans: A Turing Incomplete Transformation Language DSLTrans: A Turing Incomplete Transformation Language Bruno Barroca, Levi Lúcio, Vasco Amaral, Roberto Félix, and Vasco Sousa CITI, Departamento de Informática, Faculdade de Ciencias e Tecnologia Universidade

More information

Quasi-Boolean Encodings and Conditionals in Algebraic Specification

Quasi-Boolean Encodings and Conditionals in Algebraic Specification Quasi-Boolean Encodings and Conditionals in Algebraic Specification Răzvan Diaconescu Institute of Mathematics Simion Stoilow of the Romanian Academy Abstract We develop a general study of the algebraic

More information

Decision Procedures for Satisfiability and Validity in Propositional Logic

Decision Procedures for Satisfiability and Validity in Propositional Logic Decision Procedures for Satisfiability and Validity in Propositional Logic Meghdad Ghari Institute for Research in Fundamental Sciences (IPM) School of Mathematics-Isfahan Branch Logic Group http://math.ipm.ac.ir/isfahan/logic-group.htm

More information

Element x is R-minimal in X if y X. R(y, x).

Element x is R-minimal in X if y X. R(y, x). CMSC 22100/32100: Programming Languages Final Exam M. Blume December 11, 2008 1. (Well-founded sets and induction principles) (a) State the mathematical induction principle and justify it informally. 1

More information

Clausal Presentation of Theories in Deduction Modulo

Clausal Presentation of Theories in Deduction Modulo Gao JH. Clausal presentation of theories in deduction modulo. JOURNAL OF COMPUTER SCIENCE AND TECHNOL- OGY 28(6): 1085 1096 Nov. 2013. DOI 10.1007/s11390-013-1399-0 Clausal Presentation of Theories in

More information

A Resolution Method for Modal Logic S5

A Resolution Method for Modal Logic S5 EPiC Series in Computer Science Volume 36, 2015, Pages 252 262 GCAI 2015. Global Conference on Artificial Intelligence A Resolution Method for Modal Logic S5 Yakoub Salhi and Michael Sioutis Université

More information