Parma_Polyhedra_Library::Smash_Reduction< D1, D2 > Class Template Reference
C++ Language Interface

This class provides the reduction method for the Smash_Product domain. More...

`#include <ppl.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`. More...
| ~Smash_Reduction ()
| Destructor.

## Detailed Description

### template<typename D1, typename D2>
class Parma_Polyhedra_Library::Smash_Reduction< D1, D2 >

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.

## Member Function Documentation

template<typename D1 , typename D2 >

void Parma_Polyhedra_Library::Smash_Reduction< D1, D2 >::product_reduce | ( | D1 & | d1,
|  | D2 & | d2
| ) |  |

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.

Parameters

  d1 | A pointset domain element;
  d2 | A pointset domain element;

The documentation for this class was generated from the following file:

- ppl.hh