Sets with Cardinality Constraints in Satisfiability Modulo Theories
Sets with Cardinality Constraints in Satisfiability Modulo Theories
Sets with Cardinality Constraints in Satisfiability Modulo Theories
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
6 Philippe Suter, Rob<strong>in</strong> Steiger, and Viktor Kuncak<br />
Proof. We construct a model M for φ by extend<strong>in</strong>g M 1 to the variables <strong>in</strong> V 2 \V S .<br />
(The other direction is immediate.) We show that there exists a permutation f<br />
on E such that f[v M2 ] = v M1 for each Venn region v ∈ venn(V S ). In other words,<br />
f is a bijection that projects the <strong>in</strong>terpretation <strong>in</strong> M 2 of all <strong>in</strong>tersections of the<br />
shared variables to their <strong>in</strong>terpretation <strong>in</strong> M 1 . We construct f as follows: for<br />
each Venn region v ∈ venn(V S ), let f v be a bijection from v M2 to v M1 . Note that<br />
f v always exists because v M1 and v M2 have the same card<strong>in</strong>ality, by ∼ VS . Let<br />
f ⋆ be ⋃ v∈venn(V S ) f v. Observe that f ⋆ is a bijection from U M2 to U M1 , because<br />
venn(V S ) forms a partition of U <strong>in</strong> both models. To obta<strong>in</strong> the desired f, we can<br />
extend f ⋆ to the doma<strong>in</strong> and range E by tak<strong>in</strong>g its union <strong>with</strong> any bijection from<br />
E \ U M2 to E \ U M1 . The model M = M 1 ∪ f[M 2 ] is a model of φ 1 (trivially)<br />
and of φ 2 (by Theorem 1), therefore, it is a model of φ.<br />
The follow<strong>in</strong>g result is a generalization of Theorem 2 for a conjunction of<br />
arbitrarily many constra<strong>in</strong>ts.<br />
Theorem 3. Let φ 1 , . . . , φ n be n QFBAPA formulas. Let V i denote vars(φ i ) for<br />
i ∈ {1, . . . , n}. Let<br />
V S =<br />
⋃<br />
V i ∩ V j<br />
1≤i