• No results found

So far our SB procedure only performs equisatisfiable transformations, and thus does not affect completeness. But, in order to reduce the discussed universes cardinality constraints —possibly encoded in Ax— a non completeness preserving transformation is further needed. Namely, the reduction of the background theory Cl(Ax)by all T-constructors axioms AxCon. We call this step freeness and denote the extension of the SB procedure with this step SB+.

Hereafter, F denotes the Skolem normal form of the negation of the original input formula Forgand FSBthe results of applying SB to F. We further assume without loss of generality that F :=H∧G with G is T-quantifier-free.

One can already see that SB+ is correct in the sense that if FSB is unsatisfiable modulo Cl(Ax∖AxCon)then F is unsatisfiable too modulo Cl(Ax)—i.e., Forgis valid.

However, if FSBis satisfiable modulo Cl(Ax∖ACon), we cannot transfer this result to F, because of the non guaranteed completeness of SB+. Therefore, it is curial to determine the complete fragment of SB+in order to use it in the general context.

Before starting with the description of the complete fragment of SB+, we give an example of a formula which is not in the SB+fragment of the set theory —i.e., RFOL with N=1. Let us consider the formula

F :=∀s : Rel1.∃x : Atom. e(∪1(A, B), x)∧ ¬e(s, x)

6.2 The SB+Complete Fragment 61

where A and B are constant sets. One can easy see that F is unsatisfiable —even modulo the empty theory, since instantiating s with∪1(A, B)is equivalent to f alse.

However, applying our SB+procedure to F results in

FSB:=∀s : Rel1.∃x : Atom.(e(A, x)∨e(B, x))∧ ¬e(s, x)

In the following, we define some auxiliary definitions and lemmas needed for the description and proof of the complete fragment of SB+.

Definition 16 (Structure enlargin w.r.t. AxCon). Suppose F has a structureℳ, we construct the structureℳLas follow:

SL:=

Definition 16 provides a tool for an isomorphic enlargementℳLof a given structure ℳwith respect to the T-universe. It targets: (1) the satisfaction of all constructor axioms in Axconand consequently the last condition of SB theories (see Definition 15);

(2) the preservation of the satisfaction of T-quantifier free formulas with respect to ℳ. These two properties of theℳLstructure are essential for the proof of the SB+ fragment.

Lemma 9. For each structure,Lis a structure for(VAi∈AxConAi).

62 Chapter 6 Semantics Blasting

Proof. It is sufficient to prove thatL|=Aifor an arbitrary AiAxCon. Let β : Var→ M¯Lbe an arbitrary variable assignment, then we need to prove that valML(e(coni(x), e)) = valMLi).

valML(e(coni(x), e))

⇐⇒val ML(e)(ML(coni)(β(x)), β(e)))

L

⇐⇒ML(e)(λe.valMLi), β(e)))

L

⇐⇒ [λe.valMLi)](β(e))

⇐⇒λ valMLi)

In order to discuss the preservation of the satisfaction of formulas withℳinℳL, we first need to stablish an embedding ofℳinℳL.

Definition 17 (ℳembedding inℳL). For each structureℳ, theℳLconstruction deduces a canonical embedding emb : ¯M→M¯LfromℳtoℳLwith:

emb(v):= (

λ ¯e.M(e)(v, ¯e) if v∈M¯T

v else

Lemma 10. For each structuresatisfying AxAxCon, the embedding emb ofinL

is injective.

Proof. The claim follows directly from the extensionality of the sort T with respect to its e in. Since T is extensional with respect to e modulo Cl(Ax)(see. Definition 15) and AxCononly contains T-constructor axioms, T is extensional with respect to e modulo Cl(Ax∖AxCon)and thus inℳ.

Lemma 11. For each structureof Ax, the embedding emb ofinLis even a bijection.

Proof. Because of lemma 10, it suffices to prove the surjectivity of emb. The surjectivity of emb, however, follows directly from the last condition on SB theories (see. Definition 15), sinceℳsatisfies Ax.

Lemma 12. For each T-quantifier and T-constructor free term s, valL(s) =emb(valM,β(s)). Proof. By induction on the complexity of s.

6.2 The SB+Complete Fragment 63

Case s= f , where α(f) =T:

valL(f)

val= ML(f)

ML

= λ ¯e.ML(e)(M(f), ¯e)

emb= emb(M(f))

val= emb(valℳ,β(f))

Case s=e(f , e), where α(f) =T:

valL(e(f , e))

val= ML(e)(valL(f), valL(e))

ML

= valL(f)(valL(e))

α( f )=T

= ℳL(f)(valL(e))

ML

= [λ ¯e.M(e)(M(f), ¯e)](valL(e))

=λ M(e)(M(f), valL(e))

val= valℳ,β(e(f , e))

emb= emb(valℳ,β(e(f , e)))

Otherwise w.l.o.g. s= f(t1:n)with f /∈ {e, coni}, n>0, and ti∈/TermTΣfor 1≤i≤n:

valL(f(t1:n))

val= ML(f)(valL(t1), . . . , valL(tn))

I H= ML(f)(emb(valℳ,β(t1)), . . . , emb(valℳ,β(tn)))

emb= ML(f)(valℳ,β(t1), . . . , valℳ,β(tn))

ML

= M(f)(valℳ,β(t1), . . . , valℳ,β(tn))

val= valℳ,β(f(t1:n))

emb= emb(valℳ,β(f(t1:n)))

Lemma 13. If a structuresatisfies Ax, then valL(s) =emb(valM,β(s))for β= λx.emb−1(β(x))and s an arbitrary term.

64 Chapter 6 Semantics Blasting

Proof. By induction on the complexity of s. Because of lemma 12, it suffices to consider the following cases:

Case s=x, a variable of type T:

valL(x)

val= β(x)

inj. emb

= emb(emb−1(β(x)))

β

= emb(β(x))

val= emb(valℳ,β(x))

Case s=coni(t1:n):

valL(coni(t1:n))

val= ℳL(coni)(valL(t1), . . . , valL(tn))

ML

= λ ¯e.valL¯e

ei[t1/x1, . . . , tn/xn])

I H= λ ¯e.emb(valℳ,βe¯ei[t1/x1, . . . , tn/xn]))

emb= λ ¯e.valℳ,βe¯ei[t1/x1, . . . , tn/xn])

M|=Ai

= λ ¯e.valℳ,βe¯e(e(coni(t1:n), e))

val= λ ¯e.M(e)(valℳ,β(coni(t1:n)), ¯e)

emb= emb(valℳ,β(coni(t1:n)))

Corollary 3 (Theory equalization). In order to show that a formula F modulo a theory Cl(S1)is equisatifiable to an other formula Fmodulo the theory Cl(S1∖S2), it is sufficient to show that(VΦ∈S2Φ)∧Fmodulo Cl(S1S2)is equisatifiable to Fmodulo Cl(S1S2).

6.2 The SB+Complete Fragment 65

Proof. This corollary is a simple result of the deduction theorem (ded-theo) applied to the satisfiability of F modulo Cl(S1).

Theorem 6 (The SB+completeness fragment). Let Cl(Ax)be a first-order theory admit-ting SB, and F :=H∧Ga first-order formula with G is T-quantifier-free. Then, F modulo Cl(Ax)is equisatisfiable to FSB:=SB(H)∧SB(G)modulo Cl(Ax∖AxCon)iff

Because of lemma 9,ℳLis a satisfying structure for Ax. It remains to prove thatℳL

is also a satisfying structure for SB(G)and SB(H). Since SB(G)is quantifier and T-constructor free, we get from lemma 12 that valL(SB(G)) =emb(valM,β(SB(G))). Sinceℳsatisfies(Ax∖AxCon), we get from lemma 10 that emb is injective and thus ℳLmust also be a model of SB(G). For SB(H), even though, it is T-constructors-free, we cannot use lemma 12 since it can contain T-quantifiers. Also lemma 13 cannot be used, sinceℳis not required to satisfy Ax. However, the claim holds from the conditions of the theorem, which require for this case thatℳL|=SB(H).

So far we have proved that our fragment conditions are sufficient (from right to left). In order to show that the conditions are essential, we consider two cases: (1) F and FSBare both unsatisfiable modulo Cl(Ax∖AxCon)and (2) Fand FSBare both satisfiable modulo Cl(Ax∖AxCon). The first case is trivial since explicitly covered by the first fragment condition. For the second case, we assume thatℳis a satisfying structure of Fand FSBand show that the second fragment conditionℳL|=SB(H)

66 Chapter 6 Semantics Blasting

must hold. ℳis especially a satisfying structure of Ax and SB(H). Because of lemma 13, we have that valL(SB(H)) =emb(valM,β(SB(H)))for arbitrary β and for β=λx.emb−1(β(x)). Since emb is injective —for this case even bijective— andℳ satisfies SB(H),ℳLsatisfies SB(H)too.

Theorem 6 provides an entire description of the SB+fragment which guarantees the equisatisfiability of our SB+transformation with respect to the input formula.

However, the conditions of the fragment are based rather on model checking than on SMT solving.