This class provides the reduction method for the Smash_Product domain. More...
#include <Partially_Reduced_Product.defs.hh>
Public Member Functions | |
| Smash_Reduction () | |
| Default constructor. | |
| void | product_reduce (D1 &d1, D2 &d2) |
The smash reduction operator for propagating emptiness between the domain elements d1 and d2. | |
| ~Smash_Reduction () | |
| Destructor. | |
This class provides the reduction method for the Smash_Product domain.
The reduction classes are used to instantiate the Partially_Reduced_Product domain. This class propagates emptiness between its components.
Definition at line 101 of file Partially_Reduced_Product.defs.hh.
| Parma_Polyhedra_Library::Smash_Reduction< D1, D2 >::Smash_Reduction | ( | ) | [inline] |
Default constructor.
Definition at line 761 of file Partially_Reduced_Product.inlines.hh.
| Parma_Polyhedra_Library::Smash_Reduction< D1, D2 >::~Smash_Reduction | ( | ) | [inline] |
| void Parma_Polyhedra_Library::Smash_Reduction< D1, D2 >::product_reduce | ( | D1 & | d1, | |
| D2 & | d2 | |||
| ) | [inline] |
The smash reduction operator for propagating emptiness between the domain elements d1 and d2.
If either of the the domain elements d1 or d2 is empty then the other is also set empty.
| d1 | A pointset domain element; | |
| d2 | A pointset domain element; |
Definition at line 454 of file Partially_Reduced_Product.templates.hh.
References Parma_Polyhedra_Library::EMPTY, and Parma_Polyhedra_Library::swap().
Referenced by Parma_Polyhedra_Library::Congruences_Reduction< D1, D2 >::product_reduce(), and Parma_Polyhedra_Library::Constraints_Reduction< D1, D2 >::product_reduce().
1.6.3