Model Completeness, Covers and Superposition Diego Calvanese 1 , - - PowerPoint PPT Presentation

model completeness covers and superposition
SMART_READER_LITE
LIVE PREVIEW

Model Completeness, Covers and Superposition Diego Calvanese 1 , - - PowerPoint PPT Presentation

Model Completeness, Covers and Superposition Diego Calvanese 1 , Silvio Ghilardi 2 , Alessandro Gianola 1 , Marco Montali 1 , Andrey Rivkin 1 1 KRDB Research Centre for Knowledge and Data Free University of Bozen-Bolzano, Italy 2 Dipartimento di


slide-1
SLIDE 1

Model Completeness, Covers and Superposition

Diego Calvanese1, Silvio Ghilardi2, Alessandro Gianola1, Marco Montali1, Andrey Rivkin1

1 KRDB Research Centre for Knowledge and Data

Free University of Bozen-Bolzano, Italy

2 Dipartimento di Matematica

Universit` a degli Studi di Milano, Italy

June 19, 2019

Alessandro Gianola Model Completeness and Superposition June 19, 2019 1 / 21

slide-2
SLIDE 2

Outline

1

Motivation

2

Array-based Artifact-Centric Systems

3

Verification of SASs and Covers

4

Covers of EUF and Superposition Calculus

5

Conclusions

Alessandro Gianola Model Completeness and Superposition June 19, 2019 2 / 21

slide-3
SLIDE 3

Motivation

  • Traditional Model Checking techniques focus on verification of

temporal properties in dynamic finite-state systems:

Alessandro Gianola Model Completeness and Superposition June 19, 2019 3 / 21

slide-4
SLIDE 4

Motivation

  • Traditional Model Checking techniques focus on verification of

temporal properties in dynamic finite-state systems: Advantage Software systems abstracted into finite-state automata.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 3 / 21

slide-5
SLIDE 5

Motivation

  • Traditional Model Checking techniques focus on verification of

temporal properties in dynamic finite-state systems: Advantage Software systems abstracted into finite-state automata. Drawback How to express manipulation of or conditions on data?

Alessandro Gianola Model Completeness and Superposition June 19, 2019 3 / 21

slide-6
SLIDE 6

Motivation

  • Traditional Model Checking techniques focus on verification of

temporal properties in dynamic finite-state systems: Advantage Software systems abstracted into finite-state automata. Drawback How to express manipulation of or conditions on data?

  • The research areas of Data Management and Knowledge

Representation traditionally investigate static aspects of the domain

  • f interest, disregarding dynamic aspects.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 3 / 21

slide-7
SLIDE 7

Motivation

  • Traditional Model Checking techniques focus on verification of

temporal properties in dynamic finite-state systems: Advantage Software systems abstracted into finite-state automata. Drawback How to express manipulation of or conditions on data?

  • The research areas of Data Management and Knowledge

Representation traditionally investigate static aspects of the domain

  • f interest, disregarding dynamic aspects.
  • Our context: Business Processes enriched with real data.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 3 / 21

slide-8
SLIDE 8

Motivation

  • Traditional Model Checking techniques focus on verification of

temporal properties in dynamic finite-state systems: Advantage Software systems abstracted into finite-state automata. Drawback How to express manipulation of or conditions on data?

  • The research areas of Data Management and Knowledge

Representation traditionally investigate static aspects of the domain

  • f interest, disregarding dynamic aspects.
  • Our context: Business Processes enriched with real data.
  • To bridge the gap existing between those two approaches is

challenging: expressing and verifying properties that simultaneously account for the data and the dynamic perspective.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 3 / 21

slide-9
SLIDE 9

Motivation

  • Traditional Model Checking techniques focus on verification of

temporal properties in dynamic finite-state systems: Advantage Software systems abstracted into finite-state automata. Drawback How to express manipulation of or conditions on data?

  • The research areas of Data Management and Knowledge

Representation traditionally investigate static aspects of the domain

  • f interest, disregarding dynamic aspects.
  • Our context: Business Processes enriched with real data.
  • To bridge the gap existing between those two approaches is

challenging: expressing and verifying properties that simultaneously account for the data and the dynamic perspective.

  • Thanks to the presence of data, the resulting models are

intrinsically infinite-state.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 3 / 21

slide-10
SLIDE 10

Motivation

  • Infinite-state model checking requires a declarative approach: sets of

(reachable) states and transitions are represented symbolically.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 4 / 21

slide-11
SLIDE 11

Motivation

  • Infinite-state model checking requires a declarative approach: sets of

(reachable) states and transitions are represented symbolically.

  • Precise computations of the set of reachable states require some form
  • f quantifier elimination.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 4 / 21

slide-12
SLIDE 12

Motivation

  • Infinite-state model checking requires a declarative approach: sets of

(reachable) states and transitions are represented symbolically.

  • Precise computations of the set of reachable states require some form
  • f quantifier elimination.
  • Gulwani and Musuvathi [ESOP, 2008] introduced the notion of a

cover, which provides precise computation of reachable states.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 4 / 21

slide-13
SLIDE 13

Motivation

  • Infinite-state model checking requires a declarative approach: sets of

(reachable) states and transitions are represented symbolically.

  • Precise computations of the set of reachable states require some form
  • f quantifier elimination.
  • Gulwani and Musuvathi [ESOP, 2008] introduced the notion of a

cover, which provides precise computation of reachable states.

  • They showed that covers exist for EUF and proved that its

computation becomes tractable with only unary free function symbols.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 4 / 21

slide-14
SLIDE 14

Our contributions

  • We provide a new approach to verification of data-aware processes,

where models are formalized using Array-based Systems, via SMT-techniques.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 5 / 21

slide-15
SLIDE 15

Our contributions

  • We provide a new approach to verification of data-aware processes,

where models are formalized using Array-based Systems, via SMT-techniques.

  • We adapt the backward reachability procedure in order to assess

safety properties of data-aware processes. This requires the development of Quantifier Elimination algorithms for specific theories known as model completions.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 5 / 21

slide-16
SLIDE 16

Our contributions

  • We provide a new approach to verification of data-aware processes,

where models are formalized using Array-based Systems, via SMT-techniques.

  • We adapt the backward reachability procedure in order to assess

safety properties of data-aware processes. This requires the development of Quantifier Elimination algorithms for specific theories known as model completions.

  • We prove that computing covers for a theory is equivalent to

eliminating quantifiers in its model completion.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 5 / 21

slide-17
SLIDE 17

Our contributions

  • We provide a new approach to verification of data-aware processes,

where models are formalized using Array-based Systems, via SMT-techniques.

  • We adapt the backward reachability procedure in order to assess

safety properties of data-aware processes. This requires the development of Quantifier Elimination algorithms for specific theories known as model completions.

  • We prove that computing covers for a theory is equivalent to

eliminating quantifiers in its model completion.

  • We show that covers for EUF can be computed through a

constrained version of the Superposition Calculus, equipped with appropriate settings and reduction strategies.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 5 / 21

slide-18
SLIDE 18

Outline

1

Motivation

2

Array-based Artifact-Centric Systems

3

Verification of SASs and Covers

4

Covers of EUF and Superposition Calculus

5

Conclusions

Alessandro Gianola Model Completeness and Superposition June 19, 2019 6 / 21

slide-19
SLIDE 19

Artifact-Centric Systems

Artifact-Centric Systems enrich traditional process-centric paradigm with data (artifact = information model + lifecycle model).

Alessandro Gianola Model Completeness and Superposition June 19, 2019 7 / 21

slide-20
SLIDE 20

Artifact-Centric Systems

Artifact-Centric Systems enrich traditional process-centric paradigm with data (artifact = information model + lifecycle model). They can be formalized using three components:

Alessandro Gianola Model Completeness and Superposition June 19, 2019 7 / 21

slide-21
SLIDE 21

Artifact-Centric Systems

Artifact-Centric Systems enrich traditional process-centric paradigm with data (artifact = information model + lifecycle model). They can be formalized using three components:

  • a read-only database (DB);

Alessandro Gianola Model Completeness and Superposition June 19, 2019 7 / 21

slide-22
SLIDE 22

Artifact-Centric Systems

Artifact-Centric Systems enrich traditional process-centric paradigm with data (artifact = information model + lifecycle model). They can be formalized using three components:

  • a read-only database (DB);
  • an artifact working memory (e.g., artifact variables + artifact

relations);

Alessandro Gianola Model Completeness and Superposition June 19, 2019 7 / 21

slide-23
SLIDE 23

Artifact-Centric Systems

Artifact-Centric Systems enrich traditional process-centric paradigm with data (artifact = information model + lifecycle model). They can be formalized using three components:

  • a read-only database (DB);
  • an artifact working memory (e.g., artifact variables + artifact

relations);

  • actions (also called services).

Alessandro Gianola Model Completeness and Superposition June 19, 2019 7 / 21

slide-24
SLIDE 24

Artifact-Centric Systems

Artifact-Centric Systems enrich traditional process-centric paradigm with data (artifact = information model + lifecycle model). They can be formalized using three components:

  • a read-only database (DB);
  • an artifact working memory (e.g., artifact variables + artifact

relations);

  • actions (also called services).

Alessandro Gianola Model Completeness and Superposition June 19, 2019 7 / 21

slide-25
SLIDE 25

Artifact-Centric Systems

Artifact-Centric Systems enrich traditional process-centric paradigm with data (artifact = information model + lifecycle model). They can be formalized using three components:

  • a read-only database (DB);
  • an artifact working memory (e.g., artifact variables + artifact

relations);

  • actions (also called services).

We formalize Artifact-Centric Systems in an array-based formal model. This encoding allows us to exploit the powerful machinery provided by SMT-techniques.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 7 / 21

slide-26
SLIDE 26

DB schemas

DB schemas model the read-only DB component of Artifact-Centric Systems, incorporating primary keys and foreign keys dependencies

Alessandro Gianola Model Completeness and Superposition June 19, 2019 8 / 21

slide-27
SLIDE 27

DB schemas

DB schemas model the read-only DB component of Artifact-Centric Systems, incorporating primary keys and foreign keys dependencies

Definition

A DB schema is a pair (Σ, T), where:

  • Σ is a DB signature, that is, a finite multi-sorted signature whose
  • nly symbols are equality, unary functions, and constants;
  • T is a DB theory, that is, a set of universal Σ-sentences.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 8 / 21

slide-28
SLIDE 28

DB schemas

DB schemas model the read-only DB component of Artifact-Centric Systems, incorporating primary keys and foreign keys dependencies

Definition

A DB schema is a pair (Σ, T), where:

  • Σ is a DB signature, that is, a finite multi-sorted signature whose
  • nly symbols are equality, unary functions, and constants;
  • T is a DB theory, that is, a set of universal Σ-sentences.

We associate to a DB signature Σ a characteristic graph G(Σ) capturing the dependencies induced by functions over sorts.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 8 / 21

slide-29
SLIDE 29

DB schemas

DB schemas model the read-only DB component of Artifact-Centric Systems, incorporating primary keys and foreign keys dependencies

Definition

A DB schema is a pair (Σ, T), where:

  • Σ is a DB signature, that is, a finite multi-sorted signature whose
  • nly symbols are equality, unary functions, and constants;
  • T is a DB theory, that is, a set of universal Σ-sentences.

We associate to a DB signature Σ a characteristic graph G(Σ) capturing the dependencies induced by functions over sorts. Example:

Alessandro Gianola Model Completeness and Superposition June 19, 2019 8 / 21

slide-30
SLIDE 30

Array-based Artifact-Centric Systems: a simplified version

Simplified version of Artifact-Centric Systems in the array-based setting: Simple Artifact Systems (SAS).

Alessandro Gianola Model Completeness and Superposition June 19, 2019 9 / 21

slide-31
SLIDE 31

Array-based Artifact-Centric Systems: a simplified version

Simplified version of Artifact-Centric Systems in the array-based setting: Simple Artifact Systems (SAS). A SAS is a tuple S = Σ, T, x, ι(x), τ(x, x′) where (Σ, T) is a (read-only) DB schema, x are individual variables (for artifact variables, i.e. the working memory). The Σ-formula ι represents the initialization of S, whereas the Σ-formula τ models the transitions (actions) of S.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 9 / 21

slide-32
SLIDE 32

Array-based Artifact-Centric Systems: a simplified version

Simplified version of Artifact-Centric Systems in the array-based setting: Simple Artifact Systems (SAS). A SAS is a tuple S = Σ, T, x, ι(x), τ(x, x′) where (Σ, T) is a (read-only) DB schema, x are individual variables (for artifact variables, i.e. the working memory). The Σ-formula ι represents the initialization of S, whereas the Σ-formula τ models the transitions (actions) of S. Example of ι and τ in a SAS:

ι := (Applicant = undef ∧ JobPos = undef) τ := ∃UserID, JobID

  • UserID = undef ∧ JobID = undef ∧ Applicant = undef∧

JobPos = undef ∧ Applicant′ := UserID ∧ JobPos′ := JobID)

  • Alessandro Gianola

Model Completeness and Superposition June 19, 2019 9 / 21

slide-33
SLIDE 33

Array-based Artifact-Centric Systems: a simplified version

Simplified version of Artifact-Centric Systems in the array-based setting: Simple Artifact Systems (SAS). A SAS is a tuple S = Σ, T, x, ι(x), τ(x, x′) where (Σ, T) is a (read-only) DB schema, x are individual variables (for artifact variables, i.e. the working memory). The Σ-formula ι represents the initialization of S, whereas the Σ-formula τ models the transitions (actions) of S. Example of ι and τ in a SAS:

ι := (Applicant = undef ∧ JobPos = undef) τ := ∃UserID, JobID

  • UserID = undef ∧ JobID = undef ∧ Applicant = undef∧

JobPos = undef ∧ Applicant′ := UserID ∧ JobPos′ := JobID)

  • Alessandro Gianola

Model Completeness and Superposition June 19, 2019 9 / 21

slide-34
SLIDE 34

Array-based Artifact-Centric Systems: a simplified version

Simplified version of Artifact-Centric Systems in the array-based setting: Simple Artifact Systems (SAS). A SAS is a tuple S = Σ, T, x, ι(x), τ(x, x′) where (Σ, T) is a (read-only) DB schema, x are individual variables (for artifact variables, i.e. the working memory). The Σ-formula ι represents the initialization of S, whereas the Σ-formula τ models the transitions (actions) of S. Example of ι and τ in a SAS:

ι := (Applicant = undef ∧ JobPos = undef) τ := ∃UserID, JobID

  • UserID = undef ∧ JobID = undef ∧ Applicant = undef∧

JobPos = undef ∧ Applicant′ := UserID ∧ JobPos′ := JobID)

  • Alessandro Gianola

Model Completeness and Superposition June 19, 2019 9 / 21

slide-35
SLIDE 35

Outline

1

Motivation

2

Array-based Artifact-Centric Systems

3

Verification of SASs and Covers

4

Covers of EUF and Superposition Calculus

5

Conclusions

Alessandro Gianola Model Completeness and Superposition June 19, 2019 10 / 21

slide-36
SLIDE 36

Backward Reachability: intuition

Alessandro Gianola Model Completeness and Superposition June 19, 2019 11 / 21

slide-37
SLIDE 37

Verification of safety in a SAS S

A safety formula for S is a generic quantifier-free formula υ(x) (intuitively, υ(x) describes undesired states of S).

Alessandro Gianola Model Completeness and Superposition June 19, 2019 12 / 21

slide-38
SLIDE 38

Verification of safety in a SAS S

A safety formula for S is a generic quantifier-free formula υ(x) (intuitively, υ(x) describes undesired states of S). We say that S is safe with respect to υ iff there is no DB-instance M of (Σ, T), no k ≥ 0 and no assignment in M to the variables x0, . . . , xk s.t. ι(x0) ∧ τ(x0, x1) ∧ · · · ∧ τ(xk−1, xk) ∧ υ(xk) is true in M (here the xi are renamed copies of the x).

Alessandro Gianola Model Completeness and Superposition June 19, 2019 12 / 21

slide-39
SLIDE 39

Verification of safety in a SAS S

A safety formula for S is a generic quantifier-free formula υ(x) (intuitively, υ(x) describes undesired states of S). We say that S is safe with respect to υ iff there is no DB-instance M of (Σ, T), no k ≥ 0 and no assignment in M to the variables x0, . . . , xk s.t. ι(x0) ∧ τ(x0, x1) ∧ · · · ∧ τ(xk−1, xk) ∧ υ(xk) is true in M (here the xi are renamed copies of the x). Safety problem for S: given a safety formula υ, decide if S is safe wrt υ.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 12 / 21

slide-40
SLIDE 40

Verification of safety in a SAS S

A safety formula for S is a generic quantifier-free formula υ(x) (intuitively, υ(x) describes undesired states of S). We say that S is safe with respect to υ iff there is no DB-instance M of (Σ, T), no k ≥ 0 and no assignment in M to the variables x0, . . . , xk s.t. ι(x0) ∧ τ(x0, x1) ∧ · · · ∧ τ(xk−1, xk) ∧ υ(xk) is true in M (here the xi are renamed copies of the x). Safety problem for S: given a safety formula υ, decide if S is safe wrt υ.

Theorem

Backward search is effective, correct and complete (the last one w.r.t. detecting unsafety) for solving safety problems for SASs

Alessandro Gianola Model Completeness and Superposition June 19, 2019 12 / 21

slide-41
SLIDE 41

Verification of safety in a SAS S

A safety formula for S is a generic quantifier-free formula υ(x) (intuitively, υ(x) describes undesired states of S). We say that S is safe with respect to υ iff there is no DB-instance M of (Σ, T), no k ≥ 0 and no assignment in M to the variables x0, . . . , xk s.t. ι(x0) ∧ τ(x0, x1) ∧ · · · ∧ τ(xk−1, xk) ∧ υ(xk) is true in M (here the xi are renamed copies of the x). Safety problem for S: given a safety formula υ, decide if S is safe wrt υ.

Theorem

Backward search is effective, correct and complete (the last one w.r.t. detecting unsafety) for solving safety problems for SASs The proof requires Quantifier Elimination!

Alessandro Gianola Model Completeness and Superposition June 19, 2019 12 / 21

slide-42
SLIDE 42

Why is Quantifier Elimination needed?

  • Backward search computes symbolic pre-images of sets of states. This

computation produces new existentially quantified “data” variables:

Alessandro Gianola Model Completeness and Superposition June 19, 2019 13 / 21

slide-43
SLIDE 43

Why is Quantifier Elimination needed?

  • Backward search computes symbolic pre-images of sets of states. This

computation produces new existentially quantified “data” variables:

◮ A state formula has the form φ := ψ(x); Alessandro Gianola Model Completeness and Superposition June 19, 2019 13 / 21

slide-44
SLIDE 44

Why is Quantifier Elimination needed?

  • Backward search computes symbolic pre-images of sets of states. This

computation produces new existentially quantified “data” variables:

◮ A state formula has the form φ := ψ(x); ◮ A transition formula has the form

τ := ∃d γ(d, x) ∧

i x′ i = Fi(d, x)

;

Alessandro Gianola Model Completeness and Superposition June 19, 2019 13 / 21

slide-45
SLIDE 45

Why is Quantifier Elimination needed?

  • Backward search computes symbolic pre-images of sets of states. This

computation produces new existentially quantified “data” variables:

◮ A state formula has the form φ := ψ(x); ◮ A transition formula has the form

τ := ∃d γ(d, x) ∧

i x′ i = Fi(d, x)

;

◮ Pre(τ, φ) := ∃x′(τ(x, x′) ∧ φ(x′)). Alessandro Gianola Model Completeness and Superposition June 19, 2019 13 / 21

slide-46
SLIDE 46

Why is Quantifier Elimination needed?

  • Backward search computes symbolic pre-images of sets of states. This

computation produces new existentially quantified “data” variables:

◮ A state formula has the form φ := ψ(x); ◮ A transition formula has the form

τ := ∃d γ(d, x) ∧

i x′ i = Fi(d, x)

;

◮ Pre(τ, φ) := ∃x′(τ(x, x′) ∧ φ(x′)).

  • Therefore, during the run of the algorithm the tail of existential

quantifiers can grow dramatically: this can affect not only the performance, but also correctness (regressability) and termination.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 13 / 21

slide-47
SLIDE 47

Why is Quantifier Elimination needed?

  • Backward search computes symbolic pre-images of sets of states. This

computation produces new existentially quantified “data” variables:

◮ A state formula has the form φ := ψ(x); ◮ A transition formula has the form

τ := ∃d γ(d, x) ∧

i x′ i = Fi(d, x)

;

◮ Pre(τ, φ) := ∃x′(τ(x, x′) ∧ φ(x′)).

  • Therefore, during the run of the algorithm the tail of existential

quantifiers can grow dramatically: this can affect not only the performance, but also correctness (regressability) and termination.

  • Hence, we need to handle these quantifiers: in order to do that, we

compute quantifier elimination in the model completion T ⋆ of DB theories T.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 13 / 21

slide-48
SLIDE 48

Why is Quantifier Elimination needed?

  • Backward search computes symbolic pre-images of sets of states. This

computation produces new existentially quantified “data” variables:

◮ A state formula has the form φ := ψ(x); ◮ A transition formula has the form

τ := ∃d γ(d, x) ∧

i x′ i = Fi(d, x)

;

◮ Pre(τ, φ) := ∃x′(τ(x, x′) ∧ φ(x′)).

  • Therefore, during the run of the algorithm the tail of existential

quantifiers can grow dramatically: this can affect not only the performance, but also correctness (regressability) and termination.

  • Hence, we need to handle these quantifiers: in order to do that, we

compute quantifier elimination in the model completion T ⋆ of DB theories T.

Remark

Detecting unsafe conditions in T or in T ⋆ are equivalent problems!

Alessandro Gianola Model Completeness and Superposition June 19, 2019 13 / 21

slide-49
SLIDE 49

Model completions, Covers and Uniform Interpolation

Fix a theory T and an existential formula ∃e φ(e, y).

  • We call a residue of ∃e φ(e, y) any quantifier-free formula in

Res(∃e φ) = {θ(y, z) | T | = φ(e, y) → θ(y, z)}. A quantifier-free formula ψ(y) is a T-cover of ∃e φ(e, y) iff ψ(y) ∈ Res(∃e φ) and ψ(y) implies (modulo T) all the other formulae in Res(∃e φ).

Alessandro Gianola Model Completeness and Superposition June 19, 2019 14 / 21

slide-50
SLIDE 50

Model completions, Covers and Uniform Interpolation

Fix a theory T and an existential formula ∃e φ(e, y).

  • We call a residue of ∃e φ(e, y) any quantifier-free formula in

Res(∃e φ) = {θ(y, z) | T | = φ(e, y) → θ(y, z)}. A quantifier-free formula ψ(y) is a T-cover of ∃e φ(e, y) iff ψ(y) ∈ Res(∃e φ) and ψ(y) implies (modulo T) all the other formulae in Res(∃e φ).

  • We say that a theory T has uniform quantifier-free interpolation iff

every existential formula ∃e φ(e, y) has a T-cover.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 14 / 21

slide-51
SLIDE 51

Model completions, Covers and Uniform Interpolation

Fix a theory T and an existential formula ∃e φ(e, y).

  • We call a residue of ∃e φ(e, y) any quantifier-free formula in

Res(∃e φ) = {θ(y, z) | T | = φ(e, y) → θ(y, z)}. A quantifier-free formula ψ(y) is a T-cover of ∃e φ(e, y) iff ψ(y) ∈ Res(∃e φ) and ψ(y) implies (modulo T) all the other formulae in Res(∃e φ).

  • We say that a theory T has uniform quantifier-free interpolation iff

every existential formula ∃e φ(e, y) has a T-cover. It is clear that if T has uniform quantifier-free interpolation, then it has ordinary quantifier-free interpolation.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 14 / 21

slide-52
SLIDE 52

Model completions, Covers and Uniform Interpolation

Fix a theory T and an existential formula ∃e φ(e, y).

  • We call a residue of ∃e φ(e, y) any quantifier-free formula in

Res(∃e φ) = {θ(y, z) | T | = φ(e, y) → θ(y, z)}. A quantifier-free formula ψ(y) is a T-cover of ∃e φ(e, y) iff ψ(y) ∈ Res(∃e φ) and ψ(y) implies (modulo T) all the other formulae in Res(∃e φ).

  • We say that a theory T has uniform quantifier-free interpolation iff

every existential formula ∃e φ(e, y) has a T-cover. It is clear that if T has uniform quantifier-free interpolation, then it has ordinary quantifier-free interpolation.

Theorem

Suppose that T is a universal theory. Then, T has a model completion T ∗ iff T has uniform quantifier-free interpolation. If this happens, T ∗ is axiomatized by the infinitely many sentences ∀y (ψ(y) → ∃e φ(e, y)), where ∃e φ(e, y) is a primitive formula and ψ is a cover of it.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 14 / 21

slide-53
SLIDE 53

Outline

1

Motivation

2

Array-based Artifact-Centric Systems

3

Verification of SASs and Covers

4

Covers of EUF and Superposition Calculus

5

Conclusions

Alessandro Gianola Model Completeness and Superposition June 19, 2019 15 / 21

slide-54
SLIDE 54

Preprocessing of formulae

  • Flattening of terms:

Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-55
SLIDE 55

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-56
SLIDE 56

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-57
SLIDE 57

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-58
SLIDE 58

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

For example, f(t(y), e) = e, where f is a function symbol and t a generic term, is an e-flat literal.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-59
SLIDE 59

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

For example, f(t(y), e) = e, where f is a function symbol and t a generic term, is an e-flat literal.

  • Given two e-flat terms t, u, E(t, u) is defined as follows:

Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-60
SLIDE 60

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

For example, f(t(y), e) = e, where f is a function symbol and t a generic term, is an e-flat literal.

  • Given two e-flat terms t, u, E(t, u) is defined as follows:

◮ E(t, u) fails if t is e-free and u is not e-free (or vice versa); Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-61
SLIDE 61

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

For example, f(t(y), e) = e, where f is a function symbol and t a generic term, is an e-flat literal.

  • Given two e-flat terms t, u, E(t, u) is defined as follows:

◮ E(t, u) fails if t is e-free and u is not e-free (or vice versa); ◮ E(t, u) fails if t ≡ ei and (either t ≡ f(t1, . . . , tk) or u ≡ ej for i = j); Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-62
SLIDE 62

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

For example, f(t(y), e) = e, where f is a function symbol and t a generic term, is an e-flat literal.

  • Given two e-flat terms t, u, E(t, u) is defined as follows:

◮ E(t, u) fails if t is e-free and u is not e-free (or vice versa); ◮ E(t, u) fails if t ≡ ei and (either t ≡ f(t1, . . . , tk) or u ≡ ej for i = j); ◮ E(t, u) = ∅ if t ≡ u; Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-63
SLIDE 63

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

For example, f(t(y), e) = e, where f is a function symbol and t a generic term, is an e-flat literal.

  • Given two e-flat terms t, u, E(t, u) is defined as follows:

◮ E(t, u) fails if t is e-free and u is not e-free (or vice versa); ◮ E(t, u) fails if t ≡ ei and (either t ≡ f(t1, . . . , tk) or u ≡ ej for i = j); ◮ E(t, u) = ∅ if t ≡ u; ◮ E(t, u) = {t = u} if t and u are different but both e-free; Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-64
SLIDE 64

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

For example, f(t(y), e) = e, where f is a function symbol and t a generic term, is an e-flat literal.

  • Given two e-flat terms t, u, E(t, u) is defined as follows:

◮ E(t, u) fails if t is e-free and u is not e-free (or vice versa); ◮ E(t, u) fails if t ≡ ei and (either t ≡ f(t1, . . . , tk) or u ≡ ej for i = j); ◮ E(t, u) = ∅ if t ≡ u; ◮ E(t, u) = {t = u} if t and u are different but both e-free; ◮ E(t, u) fails if none of t, u is e-free, t ≡ f(t1, . . . , tk) and

u ≡ g(u1, . . . , ul) for f ≡ g;

Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-65
SLIDE 65

Preprocessing of formulae

  • Flattening of terms:

◮ definition of e-free terms; ◮ definition of e-flat terms; ◮ an e-flat literal is a literal of the form t = a or a = b, where t is an

e-flat term and a, b are either e-free terms or variables from e.

For example, f(t(y), e) = e, where f is a function symbol and t a generic term, is an e-flat literal.

  • Given two e-flat terms t, u, E(t, u) is defined as follows:

◮ E(t, u) fails if t is e-free and u is not e-free (or vice versa); ◮ E(t, u) fails if t ≡ ei and (either t ≡ f(t1, . . . , tk) or u ≡ ej for i = j); ◮ E(t, u) = ∅ if t ≡ u; ◮ E(t, u) = {t = u} if t and u are different but both e-free; ◮ E(t, u) fails if none of t, u is e-free, t ≡ f(t1, . . . , tk) and

u ≡ g(u1, . . . , ul) for f ≡ g;

◮ E(t, u) = E(t1, u1) ∪ · · · ∪ E(tk, uk) if none of t, u is e-free,

t ≡ f(t1, . . . , tk), u ≡ f(u1, . . . , uk) and none of the E(ti, ui) fails.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 16 / 21

slide-66
SLIDE 66

Constrained Superposition Calculus

The rules of our Constrained Superposition Calculus (constr-SC) follow (each rule applies provided the E subprocedure called by it does not fail):

Alessandro Gianola Model Completeness and Superposition June 19, 2019 17 / 21

slide-67
SLIDE 67

Constrained Superposition Calculus

The rules of our Constrained Superposition Calculus (constr-SC) follow (each rule applies provided the E subprocedure called by it does not fail):

Alessandro Gianola Model Completeness and Superposition June 19, 2019 17 / 21

slide-68
SLIDE 68

Constrained Superposition Calculus

The rules of our Constrained Superposition Calculus (constr-SC) follow (each rule applies provided the E subprocedure called by it does not fail): Remark: termination requires a precise application strategy for the rules.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 17 / 21

slide-69
SLIDE 69

Termination and Correctness

There are in principle infinitely many e-flat terms that can be generated during saturation. However, thanks to the application strategy, we prove:

Alessandro Gianola Model Completeness and Superposition June 19, 2019 18 / 21

slide-70
SLIDE 70

Termination and Correctness

There are in principle infinitely many e-flat terms that can be generated during saturation. However, thanks to the application strategy, we prove:

Proposition

The saturation of the initial set of e-flat constrained literals always terminates after finitely many steps.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 18 / 21

slide-71
SLIDE 71

Termination and Correctness

There are in principle infinitely many e-flat terms that can be generated during saturation. However, thanks to the application strategy, we prove:

Proposition

The saturation of the initial set of e-flat constrained literals always terminates after finitely many steps. Relying on model-theoretic techniques and the completeness theorem of standard SC, we get:

Alessandro Gianola Model Completeness and Superposition June 19, 2019 18 / 21

slide-72
SLIDE 72

Termination and Correctness

There are in principle infinitely many e-flat terms that can be generated during saturation. However, thanks to the application strategy, we prove:

Proposition

The saturation of the initial set of e-flat constrained literals always terminates after finitely many steps. Relying on model-theoretic techniques and the completeness theorem of standard SC, we get:

Theorem

Suppose that constr-SC, taking as input the primitive e-flat formula ∃e φ(e, y), gives as output the quantifier-free formula ψ(y). Then the latter is a cover of ∃e φ(e, y).

Alessandro Gianola Model Completeness and Superposition June 19, 2019 18 / 21

slide-73
SLIDE 73

Termination and Correctness

There are in principle infinitely many e-flat terms that can be generated during saturation. However, thanks to the application strategy, we prove:

Proposition

The saturation of the initial set of e-flat constrained literals always terminates after finitely many steps. Relying on model-theoretic techniques and the completeness theorem of standard SC, we get:

Theorem

Suppose that constr-SC, taking as input the primitive e-flat formula ∃e φ(e, y), gives as output the quantifier-free formula ψ(y). Then the latter is a cover of ∃e φ(e, y). This also proves the existence of the model completion of EUF. Notice also that EUF suffices to represent DB theories of our Artifact Systems

Alessandro Gianola Model Completeness and Superposition June 19, 2019 18 / 21

slide-74
SLIDE 74

Outline

1

Motivation

2

Array-based Artifact-Centric Systems

3

Verification of SASs and Covers

4

Covers of EUF and Superposition Calculus

5

Conclusions

Alessandro Gianola Model Completeness and Superposition June 19, 2019 19 / 21

slide-75
SLIDE 75

Conclusions

  • We formalized Artifact-centric Systems in array-based systems in
  • rder to exploit a suitable version of the backward reachability

procedure to attack verification problem of safety properties.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 20 / 21

slide-76
SLIDE 76

Conclusions

  • We formalized Artifact-centric Systems in array-based systems in
  • rder to exploit a suitable version of the backward reachability

procedure to attack verification problem of safety properties.

  • We developed quantifier elimination procedures in model

completions in order to retain soundness and completeness of the backward search.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 20 / 21

slide-77
SLIDE 77

Conclusions

  • We formalized Artifact-centric Systems in array-based systems in
  • rder to exploit a suitable version of the backward reachability

procedure to attack verification problem of safety properties.

  • We developed quantifier elimination procedures in model

completions in order to retain soundness and completeness of the backward search.

  • We showed how quantifier elimination in model completions and

covers are strictly related.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 20 / 21

slide-78
SLIDE 78

Conclusions

  • We formalized Artifact-centric Systems in array-based systems in
  • rder to exploit a suitable version of the backward reachability

procedure to attack verification problem of safety properties.

  • We developed quantifier elimination procedures in model

completions in order to retain soundness and completeness of the backward search.

  • We showed how quantifier elimination in model completions and

covers are strictly related.

  • We computed covers for EUF adopting a constrained version of

the Superposition Calculus with appropriate application strategies.

Alessandro Gianola Model Completeness and Superposition June 19, 2019 20 / 21

slide-79
SLIDE 79

THANKS FOR YOUR ATTENTION!

Alessandro Gianola Model Completeness and Superposition June 19, 2019 21 / 21