#include <stdio.h>
#include <stdlib.h>
#include <polylib/polylib.h>
Go to the source code of this file.
Defines | |
#define | MAX_CACHE_SIZE 20 |
Functions | |
void | Factorial (int n, Value *fact) |
void | Binomial (int n, int p, Value *result) |
void | CNP (int a, int b, Value *result) |
void | Gcd (Value a, Value b, Value *result) |
int | First_Non_Zero (Value *p, unsigned length) |
Vector * | Vector_Alloc (unsigned length) |
void | Vector_Free (Vector *vector) |
void | Vector_Print (FILE *Dst, const char *Format, Vector *vector) |
Vector * | Vector_Read () |
void | Vector_Set (Value *p, int n, unsigned length) |
void | Vector_Exchange (Value *p1, Value *p2, unsigned length) |
void | Vector_Copy (Value *p1, Value *p2, unsigned length) |
void | Vector_Add (Value *p1, Value *p2, Value *p3, unsigned length) |
void | Vector_Sub (Value *p1, Value *p2, Value *p3, unsigned length) |
void | Vector_Or (Value *p1, Value *p2, Value *p3, unsigned length) |
void | Vector_Scale (Value *p1, Value *p2, Value lambda, unsigned length) |
void | Vector_AntiScale (Value *p1, Value *p2, Value lambda, unsigned length) |
void | Vector_Oppose (Value *p1, Value *p2, unsigned len) |
void | Inner_Product (Value *p1, Value *p2, unsigned length, Value *ip) |
void | Vector_Max (Value *p, unsigned length, Value *max) |
void | Vector_Min (Value *p, unsigned length, Value *min) |
void | Vector_Combine (Value *p1, Value *p2, Value *p3, Value lambda, Value mu, unsigned length) |
int | Vector_Equal (Value *Vec1, Value *Vec2, unsigned n) |
void | Vector_Min_Not_Zero (Value *p, unsigned length, int *index, Value *min) |
void | Vector_Gcd (Value *p, unsigned length, Value *min) |
void | Vector_Map (Value *p1, Value *p2, Value *p3, unsigned length, Value *(*f)(Value, Value)) |
void | Vector_Normalize (Value *p, unsigned length) |
void | Vector_Normalize_Positive (Value *p, int length, int pos) |
void | Vector_Reduce (Value *p, unsigned length, void(*f)(Value, Value *), Value *r) |
void | Vector_Sort (Value *vector, unsigned n) |
int | ConstraintSimplify (Value *old, Value *newp, int len, Value *v) |
int | Vector_IsZero (Value *v, unsigned length) |
Value * | value_alloc (int want, int *got) |
void | value_free (Value *p, int size) |
Variables | |
struct { | |
Value * p | |
int size | |
} | cache [MAX_CACHE_SIZE] |
int | cache_size = 0 |
|
Definition at line 741 of file vector.c. Referenced by value_free(). |
|
Definition at line 44 of file vector.c. References Factorial(), p, value_clear, value_division, value_init, value_multiply, and value_set_si. |
|
Definition at line 72 of file vector.c. References value_clear, value_division, value_init, value_multiply, and value_set_si. |
|
Definition at line 713 of file vector.c. References value_notone_p, value_one_p, value_pdivision, Vector_AntiScale(), and Vector_Gcd(). Referenced by Constraints2Polyhedron(), and p_simplify_constraints(). |
|
Definition at line 26 of file vector.c. References value_clear, value_init, value_multiply, and value_set_si. Referenced by Binomial(). |
|
Definition at line 120 of file vector.c. References p, and value_notzero_p. Referenced by Constraints2Polyhedron(), Constraints_Remove_parm_eqs(), ImplicitEqualities(), Remove_Redundants(), and Vector_Min_Not_Zero(). |
|
Definition at line 99 of file vector.c. References value_absolute, value_assign, value_clear, value_init, value_modulus, and value_notzero_p. Referenced by Lcm3(). |
|
Definition at line 367 of file vector.c. References value_addmul, and value_multiply. Referenced by lower_upper_bounds(), and test_Constraints_fullDimensionize(). |
|
Definition at line 748 of file vector.c. References cache, cache_size, p, value_init, and Vector_Set(). Referenced by Matrix_Alloc(), and Polyhedron_Alloc(). |
|
Definition at line 790 of file vector.c. References cache, cache_size, MAX_CACHE_SIZE, p, size, and value_clear. Referenced by Matrix_Free(), and Polyhedron_Free(). |
|
Definition at line 269 of file vector.c. References value_addto. |
|
Definition at line 137 of file vector.c. References errormsg1(), Vector::p, Vector::Size, and value_init. Referenced by DomainConstraintSimplify(), Orthogonal_Base(), Param_Polyhedron_Scale_Integer(), Polyhedron_Image_Enumerate(), Remove_Redundants(), SolveDiophantine(), and Vector_Read(). |
|
Definition at line 345 of file vector.c. References value_divexact. Referenced by ConstraintSimplify(), Gauss4(), mpolyhedron_simplify(), Orthogonal_Base(), Rays_Mult(), Rays_Mult_Transpose(), Vector_Normalize(), and Vector_Normalize_Positive(). |
|
Definition at line 417 of file vector.c. References value_addmul, value_assign, value_clear, value_init, and value_multiply. Referenced by Combine(), GaussSimplify(), and old_Polyhedron_Preprocess(). |
|
|
Definition at line 436 of file vector.c. References value_ne. Referenced by Remove_Redundants(). |
|
Definition at line 239 of file vector.c. References value_swap. Referenced by Chernikova(), Gauss4(), GaussSimplify(), hermite(), RaySort(), Remove_Redundants(), and SortConstraints(). |
|
Definition at line 162 of file vector.c. References Vector::p, Vector::Size, and value_clear. Referenced by DomainConstraintSimplify(), findHermiteBasis(), LatticeIntersection(), LatticePreimage(), main(), Param_Polyhedron_Scale_Integer(), Polyhedron_Image_Enumerate(), and Remove_Redundants(). |
|
Definition at line 481 of file vector.c. References min, p, value_absolute, value_clear, value_init, value_modulus, value_notone_p, value_notzero_p, and Vector_Min_Not_Zero(). Referenced by ConstraintSimplify(), Gauss4(), GaussSimplify(), MatInverse(), Matrix_Inverse(), mpolyhedron_simplify(), Orthogonal_Base(), Rays_Mult(), Rays_Mult_Transpose(), Vector_Normalize(), and Vector_Normalize_Positive(). |
|
Definition at line 730 of file vector.c. References value_notzero_p, value_set_si, and value_zero_p. Referenced by eliminable_vars(), and int_ker(). |
|
Definition at line 530 of file vector.c. References value_assign. |
|
Definition at line 382 of file vector.c. References max, p, value_assign, and value_maximum. |
|
Definition at line 399 of file vector.c. References min, p, value_assign, and value_minimum. |
|
Definition at line 452 of file vector.c. References First_Non_Zero(), min, p, value_absolute, value_assign, value_clear, value_init, value_lt, value_set_si, and value_zero_p. Referenced by Vector_Gcd(). |
|
Definition at line 551 of file vector.c. References p, value_clear, value_init, value_notone_p, Vector_AntiScale(), and Vector_Gcd(). Referenced by Combine(), GaussSimplify(), old_Polyhedron_Preprocess(), and Param_Polyhedron_Scale_Integer(). |
|
Definition at line 570 of file vector.c. References p, value_clear, value_init, value_neg_p, value_notone_p, value_oppose, Vector_AntiScale(), and Vector_Gcd(). Referenced by MatInverse(), and rat_prodmat(). |
|
Definition at line 356 of file vector.c. References value_oppose. Referenced by Gauss4(). |
|
Definition at line 307 of file vector.c. References value_orto. |
|
Definition at line 176 of file vector.c. References p, Vector::p, P_VALUE_FMT, Vector::Size, and value_print. Referenced by main(). |
|
Definition at line 198 of file vector.c. References errormsg1(), p, Vector::p, value_read, and Vector_Alloc(). |
|
Definition at line 587 of file vector.c. References p, and value_assign. |
|
Definition at line 326 of file vector.c. References value_multiply. Referenced by Param_Polyhedron_Scale_Integer(), and Remove_Redundants(). |
|
Definition at line 223 of file vector.c. References p, and value_set_si. Referenced by Constraints2Polyhedron(), Ehrhart_Quick_Apx_Full_Dim(), Empty_Polyhedron(), Enumerate_NoParameters(), Equalities_validityLattice(), FindSimple(), ImplicitEqualities(), left_hermite(), MatInverse(), Matrix_Extend(), Matrix_Inverse(), Polyhedron_Enumerate(), Polyhedron_Not_Empty(), Polyhedron_Scan(), PolyhedronLTQ(), Rays2Polyhedron(), Remove_Redundants(), right_hermite(), Universe_Polyhedron(), and value_alloc(). |
|
Definition at line 603 of file vector.c. References value_assign, value_clear, value_init, and value_lt. |
|
Definition at line 288 of file vector.c. References value_subtract. |
|
Referenced by value_alloc(), and value_free(). |
|
Definition at line 746 of file vector.c. Referenced by value_alloc(), and value_free(). |
|
|
Definition at line 744 of file vector.c. Referenced by GenParamPolyhedron(), Identity(), new_enode(), old_Polyhedron_Preprocess(), Polyhedron_Preprocess(), Polyhedron_Preprocess2(), and value_free(). |