polylib: eval_ehrhart.c File Reference

# eval_ehrhart.c File Reference

`#include <stdio.h>`
`#include <math.h>`
`#include <assert.h>`
`#include <stdlib.h>`
`#include <polylib/polylib.h>`

Go to the source code of this file.

## Functions
int | in_domain (Polyhedron *P, Value *list_args)
static double | compute_enode (enode *p, Value *list_args)
double | compute_evalue (evalue *e, Value *list_args)
Value * | compute_poly (Enumeration *en, Value *list_args)

## Function Documentation

static double compute_enode | ( | enode * | p,
|  | Value * | list_args |
| ) |  |  | `[static]`

Definition at line 92 of file eval_ehrhart.c.

References _enode::arr, compute_evalue(), m, periodic, polynomial, _enode::pos, _enode::size, _enode::type, value_assign, value_clear, value_init, value_pmodulus, and value_set_si.

Referenced by compute_evalue().

double compute_evalue | ( | evalue * | e,
|  | Value * | list_args |
| ) |  |  |

Definition at line 135 of file eval_ehrhart.c.

References compute_enode(), _evalue::d, value_notone_p, and value_notzero_p.

Referenced by compute_enode(), and compute_poly().

Value* compute_poly | ( | Enumeration * | en,
|  | Value * | list_args |
| ) |  |  |

Definition at line 158 of file eval_ehrhart.c.

References assert, compute_evalue(), polyhedron::Dimension, _enumeration::EP, in_domain(), _enumeration::next, Print_Domain(), print_evalue(), _enumeration::ValidityDomain, value_init, value_set_double, and value_set_si.

Referenced by check_poly(), main(), recurse(), and test_Constraints_fullDimensionize().

int in_domain | ( | Polyhedron * | P,
|  | Value * | list_args |
| ) |  |  |

Definition at line 43 of file eval_ehrhart.c.

References polyhedron::Constraint, polyhedron::Dimension, in_domain(), polyhedron::NbConstraints, polyhedron::next, POL_ENSURE_INEQUALITIES, value_addmul, value_assign, value_clear, value_init, value_neg_p, and value_notzero_p.

Referenced by check_poly(), compute_poly(), and in_domain().