on shostak s combination of decision procedures
play

On Shostaks Combination of Decision Procedures H. Rue, N. Shankar, - PowerPoint PPT Presentation

On Shostaks Combination of Decision Procedures H. Rue, N. Shankar, A. Tiwari ruess,shankar,tiwari @csl.sri.com http://www.csl.sri.com/ . Computer Science Laboratory SRI International 333 Ravenswood Menlo Park, CA 94025


  1. ❲ ✆ ❂ ✟ ✏ ✒ ✥ ✒ ✍ ❏ ✏ ❏ ✒ ✤ ✤ ✤ ✒ ✢ ✥ ❏ ✒ ✒ ✱ ❏ ✟ ✢ ❂ ✥ ✒ ❲ ✆ ✍ ❏ ☛ ✤ ❂ ✱ ✟ ✤ ❙ ❂ ✎ ❏ ✒ ✱ ✒ ✤ ✒ ✤ ✤ ❘ ✒ ❏ ✒ ✵ ✟ ✒ ☛ ✏ ❯ ❂ ✒ ✟ ✏ ❏ ✵ ✷ ✏ ✒ ❅ ✒ ✷ ✟ ❏ ✵ ✤ Abstract Congruence Closure Formalizing the procedure: : set of new constants, denoted by : Subset of used until now : ordering on : Finite sets of ground equations over : State of derivation : Initial state ✢✡❚ ❏❱❯ Extension: ✢✡❚ if , , and . ❏❱❯ Shostak’s Combination (p.17 of 121)

  2. ✟ ✢ ✒ ✒ ❂ ✢ ❏ ✆ ❘ ✥ ✒ ✏ ✟ ✒ ✒ ❂ ❏ ✏ ✟ ✯ ✆ ✯ ✢ ❂ ✒ ✏ ❘ ❘ ❙ ❏ ✟ ✏ ✥ ✒ ✥ ✒ ✆ ✯ ✢ ❂ ✒ ✥ ❲ ✍ ✥ ✯ ☛ ✏ ❂ ✒ ✟ ❏ ✏ ❏ ✆ ✯ ✢ ❂ ✒ ✥ ❲ ✍ ✟ ❏ ☛ ❚ ✢ ❂ ✒ ✥ Other Inference Rules ✢✡❚ Simplification: Orientation: if Deletion: Shostak’s Combination (p.18 of 121)

  3. ✒ ❘ ❘ ✏ ✥ ❳ ❏ ❏ ✒ ✍ ☛ ❳ ❏ ☛ ✒ ❂ ✒ ❏ ✟ ❚ ❏ ✥ ❏ ✒ ✒ ✟ ✏ ✥ ❘ ❏ ✒ ✯ ✍ ✢ ❂ ✒ ✒ ✟ ✯ ❏ ❆ ✏ ❳ ✢ ❘ ❏ ✢ ❂ ✒ ✒ ✟ ✏ ✥ ✯ ✒ ✒ ❏ ✯ ✢ ❂ ✒ ✒ ✟ ❘ ✯ ❏ ✒ ❏ ✒ ❘ ✍ ❏ ☛ ❘ ❂ ✒ ❘ ✟ ✥ ❘ ❙ ❏ ✏ ✏ ✥ ❂ Shostak’s Combination (p.19 of 121) if if Other Inference Rules ✢✡❚ ✢✡❚ Composition: Deduction: Collapse:

  4. ✆ ❂ ✮ Definition A ground rewrite system is an (abstract) congruence closure (over and ) for if Shostak’s Combination (p.20 of 121)

  5. ✵ ❏ ✆ ❂ ❏ ✯ ✏ ✮ ✟ ✵ ✯ Definition A ground rewrite system is an (abstract) congruence closure (over and ) for if 1. For every constant , there exists a term s.t. ❨❬❩ , Shostak’s Combination (p.20 of 121)

  6. ✯ ✟ ✆ ❂ ❪ ✯ ❚ ✮ ✯ ❚ ❏ ❏ ✵ ✏ ✯ ✵ Definition A ground rewrite system is an (abstract) congruence closure (over and ) for if 1. For every constant , there exists a term s.t. ❨❬❩ , 2. is a terminating and confluent rewrite system, there is no infinite rewrite sequence using , and whenever ❨❭❩ , it is also the case that * * * Shostak’s Combination (p.20 of 121)

  7. ❨ ❫ ❚ ✯ ✏ ✟ ✵ ✯ ✒ ❚ ❚ ❨ ❩ ✯ ✤ ❏ ✯ ✏ ✯ ✆ ❂ ✮ ✵ ❏ ✵ ✟ Definition A ground rewrite system is an (abstract) congruence closure (over and ) for if 1. For every constant , there exists a term s.t. ❨❬❩ , 2. is a terminating and confluent rewrite system, 3. and induce the same equational theory over , i.e., for all terms , we have: if and only if Shostak’s Combination (p.20 of 121)

  8. ✭ ✠ ✠ ✒ ✭ ✠ ✣ ✆ ✠ ✠ ✤ ✥ ✭ ✣ ✣ ✆ ✠ ✒ ✭ ✠ ✣ ✆ ✠ ✢ ✆ ❅ ✆ Example: Abstract Closure Let Then, Shostak’s Combination (p.21 of 121)

  9. ✱ ✒ ✱ ✒ ❏ ✱ ❏ ✺ ✒ ❏ ✺ ❏ ❇ ❏ ✠ ❇ ❏ ✒ ✭ ✒ ✒ ✣ ❏ ✱ ❏ ▼ ❏ ❏ ✭ ✒ ✠ ❅ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✭ ✠ ✥ ✤ ✒ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ◆ Example: Abstract Closure Let Then, ❏◗❑ ❏✰▼ ❏✰◆ ❏◗❖ ❏✰◆ ❏◗❑ ❏◗❖ Inference Rule Used: Extension, Simplification, Orientation Shostak’s Combination (p.21 of 121)

  10. ✺ ◆ ❏ ✱ ❏ ❏ ✒ ❏ ✺ ❏ ❇ ✒ ❏ ❇ ✒ ✱ ✭ ❏ ✒ ✣ ❏ ✱ ❏ ▼ ❏ ◆ ✒ ✒ ✱ ✒ ❏ ❏ ✭ ❅ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✥ ✠ ✤ ✺ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✭ ✒ Example: Abstract Closure Let Then, ❏◗❑ ❏✰▼ ❏✰◆ ❏◗❖ ❏✰◆ ❏◗❑ ❏◗❖ Inference Rule Used: Collapse Shostak’s Combination (p.21 of 121)

  11. ✒ ✭ ✱ ❏ ✺ ❏ ❏ ✺ ❏ ❇ ✒ ❏ ❇ ✺ ✒ ❏ ✒ ✒ ✣ ❏ ✱ ❏ ▼ ❏ ◆ ✒ ◆ ❏ ✒ ❏ ❏ ✱ ✒ ✭ ❅ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✥ ❏ ✤ ✺ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✭ ✠ ✱ Example: Abstract Closure Let Then, ❏◗❑ ❏✰▼ ❏✰◆ ❏◗❖ ❏✰◆ ❏◗❑ ❏◗❖ ❏▲❖ Inference Rule Used: Deduction Shostak’s Combination (p.21 of 121)

  12. ✒ ✭ ✱ ❏ ✺ ❏ ❏ ✺ ❏ ❇ ✒ ❏ ❇ ✺ ✒ ❏ ✒ ✒ ✣ ❏ ✱ ❏ ▼ ❏ ◆ ✒ ◆ ❏ ✒ ❏ ❏ ✱ ✒ ✭ ❅ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✥ ❏ ✤ ✺ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✭ ✠ ✱ Example: Abstract Closure Let Then, ❏◗❑ ❏✰▼ ❏✰◆ ❏◗❖ ❏✰◆ ❏◗❑ ❏◗❖ ❏▲❖ The final abstract congruence closure Shostak’s Combination (p.21 of 121)

  13. ✺ ❏ ✟ ❃ ❴ ❃ ✆ ✟ ✶ ✏ ● ❏ ✱ ❙ ✟ ❅ ❞ ❵ ❵ ❙ ✏ ❞ ✶ ❙ ✟ ❴ ✆ ✟ ✶ ✏ ✏ ✑ ❢ ✶ ❡ ❡ ✟ ✷ ✒ ❅ ✒ ✷ ✏ ✏ ✟ ❴ ❴ ✒ ✷ ✒ ❴ ✏ ✟ ✟ ✶ ✏ ✆ ❞ ✏ ✶ Correctness: Statement If is a finite set of equations of size , then 1. Any derivation starting from reaches a saturated state in a finite number of steps. 2. The set is an abstract congruence closure for . 3. and if is the longest ❙❛❵ ❏❝❜ chain induced by over , then . 4. Using a standard trick, can be bounded by ❉❋❊ . 5. For special cases, . Size of is the length of string representing is required to successfully orient all generated equations Shostak’s Combination (p.22 of 121)

  14. ❚ ✂ ✯ ✵ ✟ ❂ ✏ ✤ ✂ ❩ ❚ ✯ ✂ ❚ ✤ ❥ ❤ ❩ ✒ ✾ ✯ ❳ ❴ ✟ ❂ ✢ ❏ ✥ ✒ ✒ ✂ ❳ ✏ ✂ ✟ ✒ ✒ ✏ ❥ Correctness: Soundness/Completeness Extension: If is obtained from using Extension, then ❨❣❫✐❤ ❨❣❫ iff All other rules are standard Knuth-Bendix completion rules. Equations in can always be removed by extension, orientation, or deletion. Every rewrite rule in is decreasing in a suitable reduction ordering. By correctness of completion, is convergent. Shostak’s Combination (p.23 of 121)

  15. ✶ ✂ ❦ ❃ ❴ ❃ ✆ ✟ ✂ ✏ ❏ ✒ ✏ ✱ ✟ ❏ ✱ ✒✤ ✤ ✤ ✒ ❏ ✺ ✶ ❏ ✤ ❏ ✒ ✒ ✤ ❦ ❃ ❴ ❃ ✶ ✂ ✟ ❃ ❂ ❃ ✤ ❦ ✒ ❃ ❂ ❃ ✆ ✏ Correctness Proof: Complexity Number of -symbols in never increases and Extension always decreases it. . is increased by Extension alone. after all Extension steps, . . Consider a rewrite rule in . ❏❱❯ Superposition, Collapse, Composition inference rules simplify one of , or rewrite the LHS. ❏❱❯ Shostak’s Combination (p.24 of 121)

  16. ✂ ✒✤ ✆ ✟ ✶ ✏ ✤ ✂ ✤ ❙ ✟ ❏ ✱ ✤ ❴ ✤ ✒ ❇ ✏ ❏ ❏ ❧ ❙ ❏ ✱ ❙ ❃ ❃ ✺ ❃ ❞ ♣ ❧ ❦ ❦ ❃ ❴ ❃ ✶ ✱ ✂ ❂ ❦ ❃ ♦ ❦ ❙ ❃ ❂ ❃ ✆ ✟ ✶ ✏ ✤ ❏ Correctness Proof: Complexity Number of -symbols in never increases and Extension always decreases it. . is increased by Extension alone. after all Extension steps, . . Consider a rewrite rule in . ❏❱❯ If inferences are applied at each position, then ❏♥♠ Shostak’s Combination (p.24 of 121)

  17. ❃ ❃ ✟ ✶ ✏ ✒ ❦ ✂ ❴ ✆ ❃ ✟ ✶ ✏ ✤ ✂ ✤ ✒✤ ✟ ✆ ❂ ✱ ❃ ❞ ✏ ☎ q ❦ ❃ ❴ ✶ ❃ ✟ ✂ ❃ ❂ ❃ ❏ ❦ ✏ ❏ Correctness Proof: Complexity Number of -symbols in never increases and Extension always decreases it. . is increased by Extension alone. after all Extension steps, . . Consider a rewrite rule in . ❏❱❯ This rule contributes at most inferences. Shostak’s Combination (p.24 of 121)

  18. ✟ ✏ ❴ ❃ ❦ ✟ ✏ ✶ ✂ ✆ ❃ ❂ ❃ ✶ ❦ ❃ ✆ ❂ ❃ ✂ ✂ ✶ ❃ ❴ ❃ ❦ ❃ ❃ ✶ ❞ ❃ Correctness Proof: Complexity Number of -symbols in never increases and Extension always decreases it. . is increased by Extension alone. after all Extension steps, . . The set can contribute at most Superposition, Collapse, and Composition inferences. Shostak’s Combination (p.24 of 121)

  19. ✟ ✶ ✏ ✶ ❦ ❃ ❴ ❃ ✆ ✂ ✏ ✟ ✟ ✂ ❦ ❃ ❃ ✏ ✶ ❞ ✶ ✶ ✆ ✂ ✶ ✏ ✺ ✶ ✟ ❦ ❃ ❴ ❃ ✆ ❃ ✂ ❃ ❂ ❃ ✏ ❦ ❞ ❃ ❂ ✟ Correctness Proof: Complexity Number of -symbols in never increases and Extension always decreases it. . is increased by Extension alone. after all Extension steps, . . The set can contribute at most Superposition, Collapse, and Composition inferences. Number of Extension, Simplification, Orientation, and Deletion steps is . derivation length = . Shostak’s Combination (p.24 of 121)

  20. ✒ ❏ ✺ ❏ ✤ ✤ ✤ ✒ ✱ ✢ ❏ ✆ ✱ ✂ ❏ ❞ ❇ ❙ ✥ Efficient Variants Choosing at run-time so that is small: Consider the set of eight constants. ❏✰r ❏P◆ ❏◗❖ ❏◗❑ ❏✰▼ ❏✰r Shostak’s Combination (p.25 of 121)

  21. ✂ ✤ ❏ ❏ ✺ ❏ ✺ ✥ ❏ ✒ ✤ ✤ ✒ ✆ ✱ ❏ ✢ ✆ ✱ ✂ ❏ ❞ ❇ ❙ ✱ Efficient Variants Choosing at run-time so that is small: Consider the set of eight constants. ❏✰r Say we generate equations, which need to be oriented, in the following order: , ❏P◆ ❏◗❖ ❏◗❑ ❏✰▼ ❏✰r Shostak’s Combination (p.25 of 121)

  22. ❏ ✒ ✆ ✺ ❏ ✆ ✱ ❏ ❇ ❏ ✂ ✺ ✥ ❏ ✤ ✺ ✤ ✤ ✒ ✱ ❏ ✢ ✆ ✱ ✂ ❏ ❞ ❇ ❙ ❏ Efficient Variants Choosing at run-time so that is small: Consider the set of eight constants. ❏✰r Say we generate equations, which need to be oriented, in the following order: , , ❏P◆ ❏◗❖ ❏◗❑ ❏✰▼ ❏✰r Shostak’s Combination (p.25 of 121)

  23. ✆ ✒ ❏ ❏ ✺ ❏ ❇ ✱ ❏ ✆ ❏ ✂ ✺ ✥ ❏ ✤ ✆ ✤ ✤ ✒ ✱ ❏ ✢ ✆ ✱ ✂ ❏ ❞ ❇ ❙ ✺ Efficient Variants Choosing at run-time so that is small: Consider the set of eight constants. ❏✰r Say we generate equations, which need to be oriented, in the following order: , , , ❏P▼ ❏P◆ ❏P◆ ❏◗❖ ❏◗❑ ❏✰▼ ❏✰r Shostak’s Combination (p.25 of 121)

  24. ✺ ✥ ❏ ✆ ✺ ❏ ❏ ✺ ❏ ✆ ✱ ❏ ✆ ❏ ✂ ✱ ❏ ❇ ✆ ❙ ✆ ❞ ❖ ✂ ❏ ✢ ✒ ❏ ✱ ✒ ✤ ✤ ✤ ❇ Efficient Variants Choosing at run-time so that is small: Consider the set of eight constants. ❏✰r Say we generate equations, which need to be oriented, in the following order: , , , , ❏P▼ ❏P◆ ❏Pr ❏P◆ ❏◗❖ ❏◗❑ ❏✰▼ ❏✰r Shostak’s Combination (p.25 of 121)

  25. ✺ ❏ ✂ ❏ ✆ ❏ ✱ ✆ ✺ ✥ ✆ ❏ ❖ ✆ ❏ ❇ ✺ ❏ ✆ ✆ ❙ ❇ ❞ ❏ ✂ ✱ ✢ ✒ ❏ ✱ ✒ ✤ ✤ ✤ ❏ Efficient Variants Choosing at run-time so that is small: Consider the set of eight constants. ❏✰r Say we generate equations, which need to be oriented, in the following order: , , , , , ❏P▼ ❏P◆ ❏Pr ❏P◆ ❏▲❖ ❏P◆ ❏◗❖ ❏◗❑ ❏✰▼ ❏✰r Shostak’s Combination (p.25 of 121)

  26. ❏ ● ✆ ❏ ❇ ✏ ✆ ✏ ❏ ❖ ✆ ✶ ✟ ✆ ✱ ✟ ✆ ❏ ✺ ✆ ❏ ◆ ❞ ❇ ❏ ✺ ❏ ✺ ❏ ✤ ✂ ✤ ✤ ✺ ✒ ❏ ✥ ✢ ✆ ✱ ✂ ❞ ❏ ❙ ✱ ✆ ❏ ✒ Efficient Variants Choosing at run-time so that is small: Consider the set of eight constants. ❏✰r Say we generate equations, which need to be oriented, in the following order: , , , , , . ❏P▼ ❏P◆ ❏Pr ❏P◆ ❏▲❖ ❏P◆ ❏◗❖ ❏◗❑ ❏✰▼ ❏✰r Therefore, ❉❋❊ . Shostak’s Combination (p.25 of 121)

  27. ✟ ⑥ ❵ ❨ s✇ ✟ ③ ✏ ✏ ✥ ❂ ③ ⑥ ③ ✟ ❵ ④ ✉ ✂ ☛ ✆ ✟ ④ ❨ ☛ ③ ❂ ✇ ⑤ ✟ ❵ ❨ s✇ ✟ ✆ ❂ ❵ ✂ ❨ ✍ ❨ ✏ ✏ ✇ ⑤ s ✏ ✏ ① ❂ ④ ③ ✟ ❵ ❨ ✏ ❨ ② ❵ ✇ ❨ s✇ ✟ ☛ ✆ ✉✈ t s ❨ ⑤ ✏ ✏ ❨ ✶ ✟ ● ❊ ❉ ✶ ✟ ✍ ✂ ✍ ❵ ❨ ✏ ❨ ⑥ ③ ❵ ④ ✉ ✟ ④ Specialized Algorithms Shostak’s dynamic congruence closure: Downey-Sethi-Tarjan’s Algorithm: uses the trick with ✢⑧⑦ ❨⑨❵ Nelson and Oppen’s Algorithm: where NODed rule corresponds to superposition modulo . Shostak’s Combination (p.26 of 121)

  28. ✭ ❅ ✣ ✆ ✠ ✒ ✭ ✠ ✣ ✆ ✠ ✥ ✠ ✭ ✣ ✆ ✠ ✒ ✭ ✠ ✣ ✆ ✠ ✢ ✆ ✠ Example: Shostak’s CC Shostak’s Combination (p.27 of 121)

  29. ✭ ✠ ✒ ✠ ✆ ✣ ✠ ✭ ❏ ✠ ✱ ✒ ✭ ✱ ✒ ✣ ❏ ❅ ✣ ❏ ✭ ✆ ✢ ✠ ✆ ✣ ✠ ✒ ✆ ✠ ✆ ✣ ✠ ✭ ✥ ✠ ✱ Example: Shostak’s CC ❏P▼ ❏P▼ Shostak’s Combination (p.27 of 121)

  30. ✆ ✭ ✣ ✠ ✭ ✠ ❏ ✱ ✒ ✱ ✠ ✒ ✣ ❏ ✱ ❏ ❏ ✱ ❏ ❅ ✒ ✆ ✠ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✆ ✭ ✣ ✠ ✭ ✥ ✠ ✆ ✣ ✠ ✱ Example: Shostak’s CC ❏P▼ ❏P▼ Shostak’s Combination (p.27 of 121)

  31. ✒ ✆ ✭ ✺ ✒ ✣ ❏ ✱ ❏ ❏ ✱ ❏ ✱ ❏ ✱ ✱ ❏ ✱ ❏ ✺ ✒ ❏ ✺ ❏ ❇ ✒ ❅ ❏ ❇ ✠ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✭ ✠ ✥ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✭ ❏ Example: Shostak’s CC ❏P▼ ❏P▼ Shostak’s Combination (p.27 of 121)

  32. ❏ ✒ ✠ ✢ ❏ ✺ ❏ ❇ ❏ ❇ ✱ ❏ ✺ ❏ ✒ ✺ ❏ ✱ ❅ ❏ ✒ ❏ ❏ ❏ ✺ ❏ ✒ ✺ ❏ ✱ ✒ ✭ ✱ ❏ ❏ ✱ ❏ ✣ ✒ ❇ ✱ ✆ ✒ ✆ ✣ ✆ ✠ ✥ ✭ ✠ ✣ ✠ ✭ ✒ ✭ ✠ ✣ ✆ ✠ ✢ ✆ ✠ ✒ ✱ ✥ ❏ ✱ ❏ ✺ ✱ ❏ ✣ ✒ ✭ ✠ ✒ ✱ ❏ ✠ ✭ ✠ ✣ ✆ ❇ Shostak’s Combination (p.27 of 121) Example: Shostak’s CC ❏P▼ Final congruence closure ❏P▼ ❏P▼ ❏P▼

  33. ✭ ❅ ✣ ✆ ✠ ✒ ✭ ✠ ✣ ✆ ✠ ✥ ✠ ✭ ✣ ✆ ✠ ✒ ✭ ✠ ✣ ✆ ✠ ✢ ✆ ✠ Example: DST CC Shostak’s Combination (p.28 of 121)

  34. ✠ ✒ ✭ ✠ ❏ ✱ ✒ ✤ ✤ ✤ ❖ ✣ ❏ ❖ ✒ ❏ ✱ ✆ ❏ ◆ ✒ ❅ ✆ ✆ ✆ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✣ ✠ ✠ ✭ ✥ ✠ ✆ ✣ ✠ ✭ ✒ ❏ Shostak’s Combination (p.28 of 121) ❏▲❑ Example: DST CC ❏P◆

  35. ✤ ❏ ✱ ✒ ✤ ❅ ✤ ✒ ✣ ❏ ❖ ✒ ✱ ✠ ✆ ✒ ✒ ✆ ✆ ✺ ❏ ✱ ❏ ✒ ✒ ❏ ✭ ✺ ✣ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✠ ✠ ✭ ✥ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ❏ Shostak’s Combination (p.28 of 121) ❏✰◆ ❏▲❖ ❏✰▼ ❏▲❑ ❏✰◆ ❏P◆ ❏◗❖ Example: DST CC ❏P◆ ❏✰◆ ❏✰◆

  36. ✤ ❏ ✱ ✒ ✤ ✤ ❅ ✒ ✣ ❏ ❖ ✒ ✱ ✠ ✆ ✒ ✒ ✆ ✆ ✺ ❏ ✱ ❏ ✒ ✒ ❏ ✭ ✺ ✣ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✠ ✠ ✭ ✥ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ❏ Shostak’s Combination (p.28 of 121) ❏✰◆ ❏▲❖ ❏✰▼ ❏▲❑ ❏✰◆ ❏P◆ ❏◗❖ Example: DST CC ❏P◆ ❏✰◆ ❏✰◆ ❏◗❖ ❏◗❑

  37. ❖ ✒ ✤ ✤ ✒ ❇ ❏ ❅ ✒ ❏ ✱ ✆ ❏ ✒ ✒ ✆ ✺ ❏ ✱ ❏ ✒ ✣ ❏ ✺ ✒ ❏ ✺ ✤ ✱ ✒ ✭ ✆ ✢ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✥ ❏ ✠ ✆ ✣ ✠ ✭ ✒ ✠ ✆ ✣ ✠ ✭ ✠ ✆ Shostak’s Combination (p.28 of 121) ❏✰◆ ❏▲❖ ❏✰▼ ❏▲❑ ❏✰◆ ❏P◆ ❏◗❖ Example: DST CC ❏P◆ ❏✰◆ ❏▲❖ ❏✰◆ ❏◗❖ ❏▲❖ ❏◗❑

  38. ❏ ❏ ✒ ❏ ✆ ✺ ❅ ✒ ✺ ✱ ✒ ✒ ✒ ✱ ❏ ❏ ✆ ✺ ✣ ✒ ✒ ❇ ❏ ❏ ✒ ✱ ❏ ✠ ✢ ❇ ✒ ❏ ✒ ✒ ✭ ✺ ❏ ❏ ▼ ✒ ✆ ✒ ✆ ✣ ✆ ✠ ✥ ✭ ✠ ✣ ✠ ✭ ✒ ✭ ✠ ✣ ✆ ✠ ✢ ✆ ✠ ✒ ✱ ✤ ❏ ✒ ❖ ❏ ✥ ✒ ✤ ✤ ✠ ✒ ✱ ❏ ✠ ✭ ✠ ✣ ✆ ❇ Shostak’s Combination (p.28 of 121) ❏✰◆ ❏✰◆ ❏✰◆ ❏▲❖ ❏✰▼ ❏✰◆ ❏✰▼ ❏▲❑ ❏✰◆ ❏P◆ ❏◗❖ Example: DST CC ❏◗❑ Final congruence closure is: ❏▲❖ ❏▲❑ ❏P◆ ❏▲❖ ❏✰◆ ❏▲❖ ❏◗❖ ❏✰◆ ❏◗❖ ❏▲❖ ❏P◆ ❏◗❑ ❏▲❖

  39. ✂ ✂ ✛ ✛ ✂ ✂ Outline Abstract Congruence Closure Nelson-Oppen Combination (NO) Various Applications of NO Shostak Theories Shostak Combination Commented Bibliography Shostak’s Combination (p.29 of 121)

  40. ✱ ❂ ✱ ❂ ✺ ✱ ✒ ✺ ✺ ✱ ✱ ✺ ✺ Combination of Theories = : Theories over and = Deductive closure of Problem1. Is consistent? Problem2. Given satisfiability procedures for (quantifier-free) conjunction of literals in and , how to decide satisfiability in ? Problem3. What is the complexity of the combination procedure? Shostak’s Combination (p.30 of 121)

  41. ✏ ✝ ✽ ✢ ❂ ✝ ✤ ✄ ✆ ✄ ✆ ✘ ✼ ✘ ✆ ✼ ✒ ✝ ✆ ✄ ✟ ✤ ✘ ✒ ✝ ✒ ✄ ✾ ✝ ✥ ⑩ ✄ Stably-Infinite Theories A theory is stably-infinite if every satisfiable QFF is satisfiable in an infinite model. Example. Theories with only finite models are not stably infinite. Thus, theory induced by the axiom is not stably-infinite. Proposition. If is an equational theory, then is stably-infinite. Proof. If is a model, then is a model as well. Hence, by compactness, there is an infinite model. Proposition. The union of two consistent, disjoint, stably-infinite theories is consistent. Proof. Later! Shostak’s Combination (p.31 of 121)

  42. ✄ ♣ ☎ ✌ ✆ ✄ ✼ ☎ ✆ ✄ ✆ ❶ ✄ ✆ ✻ ✄ ♣ ✑ ✌ ♣ ✢ ✒ ♣ ✥ ✄ Convexity A theory is convex if whenever a conjunction of literals implies a disjunction of atomic formulas, it also implies one of the disjuncts. Example. The theory of integers over a signature containing is not convex. The formula implies , but it does not imply either or independently. Example. The theory of rationals over the signature is convex. Example. Equational theories are convex, but need not be stably-infinite. Shostak’s Combination (p.32 of 121)

  43. ❷ ❈ ✽ ✄ ✄ ✆ ❈ ✄ ❷ ❤ ✼ ❂ ✒ ✝ ✤ ❂ ✄ ✆ ✝ ✥ ✢ Convexity: Observation Proposition. A convex theory with no trivial models is stably-infinite. Proof. If not, then for some QFF , has only finite models. Thus, implies a disjunction , without implying any disjunct. Example. If is an equational theory, then has no trivial models, and hence it is stably-infinite. Shostak’s Combination (p.33 of 121)

  44. ✟ ✟ ✱ ✟ ❹ ❑ ✶ ✟ ☎ ✳ ✟ ✶ ✱ ✺ ✶ ✏ ✺ ✟ ✶ ✏ ✏ ✟ ✏ ✱ ✱ ✱ ✏ ✺ ✏ ✏ ✶ ✟ ✟ ✟ ✏ ✶ ✏ ✏ ✺ ✟ ✺ ✟ ✶ ✏ ✏ Nelson-Oppen Combination Result Theorem 1 Let and be consistent, stably-infinite theories over disjoint (countable) signatures. Assume satisfiability of (quantifier-free) conjunction of literals can be decided in and time respectively. Then, 1. The combined theory is consistent and stably infinite. 2. Satisfiability of (quantifier-free) conjunction of literals ❸❬❹ in can be decided in time. 3. If and are convex, then so is and satisfiability in is in time. Proof. Later. Shostak’s Combination (p.34 of 121)

  45. ✏ ✝ ✟ ✶ ♣ ● ✟ ✶ ✏ ✜ ✟ ✶ ✺ ✏ ✎ ✄ ❏ ❂ ✺ ✜ ✱ ✺ ✱ ❂ ✺ ❏ ✢ ✥ ✒ ♣ ✥ ✢ ✒ ♣ ✺ Examples Convexity is important for point (3) above. Signature Satisfiability ❉❋❊ NP-complete! Note that is not convex. We can allow a “add constant” operator in signature of . Atomic formulae are of the form , for some constant , and satisfiability can be tested by searching for negative cycles in a “difference graph”. For NP-completeness of the union theory, see [Pratt77]. Shostak’s Combination (p.35 of 121)

  46. ✥ ✱ ✏ ✆ ✱ ✄ ✻ ❇ ✢ ✄ ✄ ✟ ✒ ✢ ✄ ✺ ✒ ✄ ❇ ✥ ✆ ✺ ❺ ✄ ✱ ✻ ❈ ❇ ✱ ❂ ✺ ✄ ✆ ✱ ✻ ✏ ✺ ✄ ❈ ✻ ❈ ✺ ✄ ✟ ✱ ✺ Nelson-Oppen Result: Correctness Recall the theorem. The combination procedure: Initial State : is a conjunction of literals over . Purification : Preserving satisfiability, transform to , s.t. is over . Interaction : Guess a partition of into disjoint subsets. Express it as a conjunction of literals . Example. The partition is represented as . Component Procedures : Use individual procedures to decide if is satisfiable. Return : If both answer yes, return yes. No, otherwise. Shostak’s Combination (p.36 of 121)

  47. ✒ ✤ ❚ ☛ ✄ ✍ ❳ ✤ ✤ ✏ ✤ ✻ ✯ ✆ ✄ ❳ ❚ ☛ ✒ ✤ ✍ ☛ ✻ ✟ ✤ ✤ ✤ ✒ ❚ ✯ ✤ ✍ ✒ ✤ ✤ ✤ ✏ ✻ ✟ ✯ Separating Concerns: Purification Purification: if is not a variable. Proposition. Purification is satisfiability preserving: if is obtained from by purification, then is satisfiable in the union theory iff is satisfiable in the union theory. Proposition. Purification is terminating. Proposition. Exhaustive application results in conjunction where each conjunct is over exactly one signature. Shostak’s Combination (p.37 of 121)

  48. ✑ ✟ ✝ ✒ ✑ ✎ ✝ ✆ ✑ ✏ ✝ ✟ ✒ ✄ ✆ ✆ ✑ ✎ ✏ ✄ ❾ ❽ ❼ ❻ ✑ ✎ ✄ ✑ Purification: Illustration ❿➁➀ Shostak’s Combination (p.38 of 121)

  49. ✏ ✝ ❼ ❽ ❾ ❿ ❸ ✎ ✑ ✆ ✄ ✑ ✒ ✟ ✏ ✟ ✑ ✆ ✝ ✎ ✑ ✒ ✝ ✑ ✆ ✄ ✄ ✎ ✑ ❻ ❲ ❲ ✑ ✄ ✎ ✑ ❻ ❼ ❽ ❾ ✱ ✏ ✎ ✑ ✆ ✄ ✒ ✟ ✟ ✝ ✏ ✑ ✆ ✝ ✎ ✑ ✒ ✝ ✑ ✆ ✄ ✆ Shostak’s Combination (p.38 of 121) Purification: Illustration ❿➁➀

  50. ✆ ✺ ✝ ✟ ✒ ✑ ✄ ✆ ✑ ✎ ❲ ❻ ✄ ✆ ✑ ✝ ✒ ✑ ✎ ✝ ✟ ✏ ❼ ✏ ✆ ✟ ✆ ✱ ❲ ✆ ✑ ✎ ✄ ✄ ✑ ❽ ✝ ✒ ✑ ✎ ✝ ✆ ✑ ❲ ❾ ✑ ✝ ✏ ✑ ✑ ✏ ✝ ✟ ✒ ✑ ✄ ✆ ✎ ✝ ✏ ✺ ❾ ❽ ❼ ❻ ✑ ✎ ✄ ✆ ✎ ✟ ❽ ✒ ✑ ✄ ✆ ✑ ✎ ❸ ❿ ❾ ❼ ✑ ❻ ✏ ❲ ✟ ✄ ✆ ✑ ✝ ✒ ❲ Shostak’s Combination (p.38 of 121) Purification: Illustration ❿➃➂ , ❿➁➀

  51. ✆ ✆ ✑ ✎ ✺ ❲ ✄ ✆ ✑ ✝ ✒ ✑ ✎ ✝ ✑ ✄ ❲ ❾ ❽ ❼ ❻ ✏ ✝ ✟ ✒ ✑ ✄ ✟ ✆ ✑ ✎ ✎ ✏ ✺ ❲ ✆ ✏ ❲ ✟ ✆ ✱ ❲ ✆ ✑ ✄ ✒ ✄ ✆ ✑ ✝ ✒ ✑ ✎ ✝ ✆ ✑ ❇ ❲ ✑ ✺ ✝ ✑ ✑ ✝ ✒ ✑ ✎ ✝ ✆ ✑ ✏ ✝ ✟ ✒ ✄ ✄ ✆ ✑ ✎ ✏ ❇ ❾ ❽ ❼ ❻ ✑ ✎ ✄ ✆ ✟ ❲ ✟ ✄ ✆ ✑ ✝ ✒ ✑ ✎ ✝ ✆ ✑ ✏ ✝ ✒ ❲ ✑ ✄ ✆ ✑ ✎ ❸ ❿ ❾ ❽ ❼ ❻ ✏ ✟ Shostak’s Combination (p.38 of 121) Purification: Illustration ❿➃➂ , , ❿➁➀

  52. NO Procedure Soundness Each step is satisfiability preserving. Say is satisfiable (in the combination). Shostak’s Combination (p.39 of 121)

  53. ✱ ❦ ✻ ✺ NO Procedure Soundness Each step is satisfiability preserving. Say is satisfiable (in the combination). 1. Purification: is satisfiable. Shostak’s Combination (p.39 of 121)

  54. ✻ ❦ ✱ ✻ ✺ ❦ ✻ ✺ ✱ NO Procedure Soundness Each step is satisfiability preserving. Say is satisfiable (in the combination). 1. Purification: is satisfiable. 2. Interaction: for some partition , is satisfiable. Shostak’s Combination (p.39 of 121)

  55. ✻ ✱ ✻ ✺ ✻ ❦ ✱ ✻ ✺ ✱ ❦ ❦ ✺ ✻ NO Procedure Soundness Each step is satisfiability preserving. Say is satisfiable (in the combination). 1. Purification: is satisfiable. 2. Interaction: for some partition , is satisfiable. 3. Components Procedures: , and are both satisfiable in component theories. Therefore, if the procedure returns unsatisfiable, then the formula is indeed unsatisfiable. Shostak’s Combination (p.39 of 121)

  56. NO Procedure Correctness Suppose the procedure returns satisfiable. Shostak’s Combination (p.40 of 121)

  57. ✱ ✻ ✂ ✻ ✺ ✻ ✺ ✱ ✻ NO Procedure Correctness Suppose the procedure returns satisfiable. Let be the partition and and be models of and . Shostak’s Combination (p.40 of 121)

  58. ✏ ✺ ➄ ✄ ❦ ➅ ✂ ✆ ✻ ✺ ✻ ✄ ➆ ✻ ✱ ✻ ✱ ➄ ✟ ✄ ✿ ✂ ✂ NO Procedure Correctness Suppose the procedure returns satisfiable. Let be the partition and and be models of and . Component theories are stably-infinite, assume models are infinite (of same cardinality). Let be a bijection between and s.t. for each shared variable . We can do this of . Shostak’s Combination (p.40 of 121)

  59. ✱ ✱ ✄ ➄ ➆ ✒ ✤ ✂ ✤ ✒✤ ✻ ✱ ✏ ➅ ✟ ✭ ✒✤ ➅ ✟ ✟ ✱ ♦ ➄ ✟ ✿ ➄ ✤ ✆ ✏ ♠ ✭ ✒ ✤ ♦ ✄ ✱ ✻ ✂ ✻ ✺ ✻ ✱ ✱ ✻ ✱ ✻ ✺ ✺ ✻ ✺ ✻ ✂ ✆ ✟ ✏ ✿ ✄ ✟ ➄ ✱ ✭ ✏ ➄ ♠ ✂ ✏ ✏ ❦ ✭ NO Procedure Correctness Suppose the procedure returns satisfiable. Let be the partition and and be models of and . Component theories are stably-infinite, assume models are infinite (of same cardinality). Let be a bijection between and s.t. for each shared variable . We can do this of . Extend to by interpretations of symbols in : Such an extended is a model of Shostak’s Combination (p.40 of 121)

  60. ✒ ✠ ✄ ✱ ✄ ❇ ❑ ✄ ❑ ❇ ✭ ✭ ❇ ✄ ❇ ✒ ✄ ❑ ✠ ✺ ✺ ✭ ✄ ❈ ▼ ✭ ▼ ❈ ✻ ✠ ✱ ✠ ✠ ✱ ✭ ✱ ✄ ✺ ✄ ✺ ❑ Model Construction Picture Consider -models and of : . . . . . . Shostak’s Combination (p.41 of 121)

  61. ✒ ✠ ✄ ✱ ✄ ❇ ❑ ✄ ❑ ❇ ✭ ✭ ❇ ✄ ❇ ✒ ✄ ❑ ✠ ✺ ✺ ✭ ✄ ❈ ▼ ✭ ▼ ❈ ✻ ✠ ✱ ✠ ✠ ✱ ✭ ✱ ✄ ✺ ✄ ✺ ❑ Model Construction Picture Consider -models and of : . . . . . . Shostak’s Combination (p.41 of 121)

  62. ✒ ✠ ✄ ✱ ✄ ❇ ❑ ✄ ❑ ❇ ✭ ✭ ❇ ✄ ❇ ✒ ✄ ❑ ✠ ✺ ✺ ✭ ✄ ❈ ▼ ✭ ▼ ❈ ✻ ✠ ✱ ✠ ✠ ✱ ✭ ✱ ✄ ✺ ✄ ✺ ❑ Model Construction Picture Consider -models and of : . . . . . . Shostak’s Combination (p.41 of 121)

  63. ✒ ✠ ✄ ✱ ✄ ❇ ❑ ✄ ❑ ❇ ✭ ✭ ❇ ✄ ❇ ✒ ✄ ❑ ✠ ✺ ✺ ✭ ✄ ❈ ▼ ✭ ▼ ❈ ✻ ✠ ✱ ✠ ✠ ✱ ✭ ✱ ✄ ✺ ✄ ✺ ❑ Model Construction Picture Consider -models and of : . . . . . . Shostak’s Combination (p.41 of 121)

  64. ✒ ✠ ✄ ✱ ✄ ❇ ❑ ✄ ❑ ❇ ✭ ✭ ❇ ✄ ❇ ✒ ✄ ❑ ✠ ✺ ✺ ✭ ✄ ❈ ▼ ✭ ▼ ❈ ✻ ✠ ✱ ✠ ✠ ✱ ✭ ✱ ✄ ✺ ✄ ✺ ❑ Model Construction Picture Consider -models and of : . . . . . . Shostak’s Combination (p.41 of 121)

  65. ✒ ✠ ✄ ✱ ✄ ❇ ❑ ✄ ❑ ❇ ✭ ✭ ❇ ✄ ❇ ✒ ✄ ❑ ✠ ✺ ✺ ✭ ✄ ❈ ▼ ✭ ▼ ❈ ✻ ✠ ✱ ✠ ✠ ✱ ✭ ✱ ✄ ✺ ✄ ✺ ❑ Model Construction Picture Consider -models and of : . . . . . . Shostak’s Combination (p.41 of 121)

  66. ✒ ✠ ✄ ✱ ✄ ❇ ❑ ✄ ❑ ❇ ✭ ✭ ❇ ✄ ❇ ✒ ✄ ❑ ✠ ✺ ✺ ✭ ✄ ❈ ▼ ✭ ▼ ❈ ✻ ✠ ✱ ✠ ✠ ✱ ✭ ✱ ✄ ✺ ✄ ✺ ❑ Model Construction Picture Consider -models and of : . . . . . . Shostak’s Combination (p.41 of 121)

  67. ✶ ✏ ✏ ✟ ☎ ✳ ❸ ❹ ✟ ✱ ✟ ✏ ✏ ✺ ✟ ✶ NO Procedure Complexity Proposition. The non-deterministic procedure can be determinised to give a -time algorithm. Proof. Shostak’s Combination (p.42 of 121)

  68. ✏ ✺ ✱ ✻ ✺ ✟ ✏ ✶ ✏ ✶ ✟ ✏ ✶ ✶ ✟ ✱ ✟ ❹ ❸ ✳ ☎ ✟ ✏ ♣ NO Procedure Complexity Proposition. The non-deterministic procedure can be determinised to give a -time algorithm. Proof. 1. Number of purification steps and size of resulting is . Shostak’s Combination (p.42 of 121)

  69. ♣ ✏ ✟ ✶ ✺ ✻ ✱ ✟ ✶ ✶ ✏ ♣ ☎ ✳ ✏ ✏ ✏ ✶ ✟ ✺ ✏ ✶ ✟ ✱ ✟ ❹ ❸ ✳ ☎ ✟ ❸ ✶ NO Procedure Complexity Proposition. The non-deterministic procedure can be determinised to give a -time algorithm. Proof. 1. Number of purification steps and size of resulting is . 2. Number of partition of a set with variables: . Shostak’s Combination (p.42 of 121)

  70. ✶ ✏ ✶ ✶ ✱ ✻ ✺ ✟ ✟ ✱ ✏ ✏ ✶ ✶ ✟ ✟ ✶ ✏ ♣ ☎ ♣ ✺ ❸ ✟ ✏ ✟ ☎ ✳ ❸ ❹ ✟ ✱ ✶ ✟ ✏ ✺ ✟ ✶ ✏ ✏ ✏ ✶ ✳ NO Procedure Complexity Proposition. The non-deterministic procedure can be determinised to give a -time algorithm. Proof. 1. Number of purification steps and size of resulting is . 2. Number of partition of a set with variables: . 3. For each choices, the component procedures take and -time respectively. Shostak’s Combination (p.42 of 121)

  71. ✏ ❴ ✆ ✝ ❈ ❴ ❈ ✝ ✆ ❈ ✄ ✱ ✻ ❈ ✞ ✟ ❈ ✄ ✆ ✝ ✄ ✻ ✺ ✄ ✄ ✆ ✝ ✱ ✞ ✟ ✆ ✱ ✆ ✝ ✏ ✺ ☞ NO Deterministic Procedure Instead of guessing, we can deduce the equalities to be shared. The new combination procedure: Purification : As before. Interaction : Deduce an equality : Update . And vice-versa. Repeat until no further changes to get . Component Procedures : Use individual procedures to decide if is satisfiable. Note, iff is not satisfiable in . Shostak’s Combination (p.43 of 121)

  72. ❦ Deterministic Version: Correctness Each step is satisfiability preserving, soundness follows. Shostak’s Combination (p.44 of 121)

  73. ❦ ✂ ❈ ❴ Deterministic Version: Correctness Each step is satisfiability preserving, soundness follows. Assume that the theories are convex. Let be satisfiable. Shostak’s Combination (p.44 of 121)

  74. ✒ ✒ ✞ ❈ ✟ ✄ ✥ ❯ ✄ ❷ ✤ ✤ ✤ ✱ ❴ ✄ ✢ ✆ ✂ ✄ ❴ ❈ ♠ ✂ ✏ ✤ ❦ ❈ Deterministic Version: Correctness Each step is satisfiability preserving, soundness follows. Assume that the theories are convex. Let be satisfiable. If is the set of variables not yet identified, Shostak’s Combination (p.44 of 121)

  75. ❈ ✆ ✄ ❈ ✞ ✟ ❴ ✟ ✄ ❷ ✄ ✥ ♠ ✏ ✤ ✂ ♠ ❈ ✞ ❈ ❷ ❯ ❷ ✂ ❦ ✤ ✏ ✂ ♠ ❈ ❴ ✄ ✆ ✄ ✢ ✄ ✱ ✒ ✤ ✤ ✤ ✒ ❴ Deterministic Version: Correctness Each step is satisfiability preserving, soundness follows. Assume that the theories are convex. Let be satisfiable. If is the set of variables not yet identified, By convexity, ➇❋➈ Shostak’s Combination (p.44 of 121)

  76. ✤ ❷ ✆ ✄ ♠ ✏ ✟ ✂ ♠ ❈ ✞ ❈ ❴ ❷ ✄ ♠ ✟ ✄ ❷ ✆ ✄ ♠ ✏ ✤ ✂ ❦ ❈ ❷ ✟ ✻ ✱ ❦ ✂ ✏ ✂ ♠ ❈ ❴ ✄ ✂ ✆ ✢ ✄ ✒ ❴ ✤ ✤ ✤ ✒ ✄ ❯ ✥ ❷ ✄ ❈ ✞ ❈ ❴ Deterministic Version: Correctness Each step is satisfiability preserving, soundness follows. Assume that the theories are convex. Let be satisfiable. If is the set of variables not yet identified, By convexity, ➇❋➈ is satisfiable. ➇❋➈ The proof is now identical to the previous case. Shostak’s Combination (p.44 of 121)

  77. ✟ ✺ ✝ ✶ ❈ ✟ ✏ ✶ ❹ ✄ ❈ ✟ ✶ ✏ ✏ ✺ ✆ ✺ ✟ ✟ ✟ ✶ ❑ ❹ ✟ ✱ ✶ ✏ ✏ ✺ ✟ ✶ ✏ ✏ ✏ ✶ Deterministic Version: Complexity For convex theories, the combination procedure runs in time: 1. Identifying if an equality is implied by takes time. 2. Since there are possible equalities between variables, fixpoint is reached in iterations. Modularity of convexity: Unsatisfiability is signaled when any one procedures signals unsatisfiable. Shostak’s Combination (p.45 of 121)

  78. ✟ ✆ ✼ ✞ ➉ ✺ ✏ ✥ ✝ ✄ ✱ ✤ ✝ ✒ ✄ ✽ ✢ ❂ ❂ ➉ NO: Equational Theory Version 1. Equational theories are always consistent. 2. If is consistent, then this theory is also stably-infinite. 3. Equational theories are convex. (If , then consider the initial algebra induced by over an extended signature.) 4. Often decision procedures based on standard Knuth-Bendix completion can be used to deduce equalities. 5. Therefore, satisfiability procedures can be combined with only a polynomial time overhead. Shostak’s Combination (p.46 of 121)

  79. ✂ ✂ ✛ ✛ ✂ ✂ Outline Abstract Congruence Closure Nelson-Oppen Combination (NO) Various Applications of NO Shostak Theories Shostak Combination Commented Bibliography Shostak’s Combination (p.47 of 121)

  80. ❦ ✂ ✜ ❈ ✂ ❈ ✂ ✂ Application: Theory of Equality = (uninterpreted) = Deductive closure of axioms of equality is a stably-infinite equational theory. Congruence closure decides satisfiability of QFF in . congruence closure for disjoint can be combined in polynomial time. If congruence closure algorithm over a singleton is described using completion, we get an abstract congruence closure for the combination. Shostak’s Combination (p.48 of 121)

Recommend


More recommend