#include <coconut_config.h>
#include <stdarg.h>
#include <stdio.h>
#include <interval.h>
#include <dag.h>
#include <visitor.h>
#include <semantics.h>
#include <evaluator.h>
#include <basic_alltype.h>
#include <g_algo.h>
#include <fstream>
#include <cerrno>
#include <string>
#include <utility>
#include <values.h>
#include <linalg.h>
#include <api_debug.h>
#include <expression.hpp>
Go to the source code of this file.
Classes | |
class | coco::expression_node |
The base class for a node in the expression DAGs. More... | |
Namespaces | |
namespace | coco |
the main namespace of the COCONUT API | |
Defines | |
#define | EXPR_LASTARG NULL |
Operator types of standard expressions | |
These definitions define the standard operator types for the expression_node class. In the operator descriptions is used for the value of the th child of the node, while stands for the value of the th child of the node multiplied by the th entry of the coeffs array. | |
#define | EXPRINFO_GHOST 0 |
#define | EXPRINFO_CONSTANT -1 |
#define | EXPRINFO_VARIABLE -2 |
#define | EXPRINFO_SUM -3 |
#define | EXPRINFO_MEAN -4 |
#define | EXPRINFO_PROD -5 |
#define | EXPRINFO_MAX -6 |
#define | EXPRINFO_MIN -7 |
#define | EXPRINFO_MONOME -8 |
#define | EXPRINFO_SCPROD -9 |
#define | EXPRINFO_NORM -10 |
#define | EXPRINFO_INVERT -11 |
#define | EXPRINFO_SQUARE -12 |
#define | EXPRINFO_SQROOT -13 |
#define | EXPRINFO_ABS -14 |
#define | EXPRINFO_INTPOWER -15 |
#define | EXPRINFO_EXP -16 |
#define | EXPRINFO_LOG -17 |
#define | EXPRINFO_SIN -18 |
#define | EXPRINFO_COS -19 |
#define | EXPRINFO_GAUSS -20 |
#define | EXPRINFO_POLY -21 |
#define | EXPRINFO_POW -22 |
#define | EXPRINFO_DIV -23 |
#define | EXPRINFO_ATAN2 -24 |
#define | EXPRINFO_LIN -25 |
#define | EXPRINFO_QUAD -26 |
#define | EXPRINFO_RE -27 |
#define | EXPRINFO_IM -28 |
#define | EXPRINFO_ARG -29 |
#define | EXPRINFO_CPLXCONJ -30 |
#define | EXPRINFO_LOOKUP -31 |
#define | EXPRINFO_PWLIN -32 |
#define | EXPRINFO_SPLINE -33 |
#define | EXPRINFO_PWCONSTLC -34 |
#define | EXPRINFO_PWCONSTRC -35 |
#define | EXPRINFO_IN -36 |
#define | EXPRINFO_IF -37 |
#define | EXPRINFO_AND -38 |
#define | EXPRINFO_OR -39 |
#define | EXPRINFO_NOT -40 |
#define | EXPRINFO_IMPLIES -41 |
#define | EXPRINFO_COUNT -42 |
#define | EXPRINFO_ALLDIFF -43 |
#define | EXPRINFO_HISTOGRAM -44 |
#define | EXPRINFO_LEVEL -45 |
#define | EXPRINFO_NEIGHBOR -46 |
#define | EXPRINFO_NOGOOD -47 |
#define | EXPRINFO_EXPECTATION -48 |
#define | EXPRINFO_INTEGRAL -49 |
#define | EXPRINFO_DET -50 |
#define | EXPRINFO_COND -51 |
#define | EXPRINFO_PSD -52 |
#define | EXPRINFO_MPROD -53 |
#define | EXPRINFO_FEM -54 |
#define | EXPRINFO_CMPROD -55 |
#define | EXPRINFO_CGFEM -56 |
#define | EXPRINFO_UNDEFINED -57 |
#define | EXPRINFO_NUMOFPREDEF -(EXPRINFO_UNDEFINED) |
Typedefs | |
typedef interval | coco::rhs_t |
typedef std::vector< void * > | coco::evaluator_v |
Enumerations | |
enum | coco::e_expression_type { coco::ex_bound = 1, coco::ex_linear = 1<<1, coco::ex_quadratic = 1<<2, coco::ex_polynomial = 1<<3, coco::ex_other = 1<<4, coco::ex_kj = 1<<7, coco::ex_org = 1<<8, coco::ex_redundant = 1<<9, coco::ex_notredundant = 1<<10, coco::ex_active_lo = 1<<11, coco::ex_inactive_lo = 1<<12, coco::ex_active_hi = 1<<13, coco::ex_inactive_hi = 1<<14, coco::ex_active = ex_active_lo|ex_active_hi, coco::ex_inactive = ex_inactive_lo|ex_inactive_hi, coco::ex_integer = 1<<15, coco::ex_exists = 1<<16, coco::ex_forall = 1<<17, coco::ex_free = 1<<18, coco::ex_stochastic = 1<<19, coco::ex_convex = 1<<20, coco::ex_concave = 1<<21, coco::ex_inequality = 1<<28, coco::ex_equality = 1<<29, coco::ex_leftbound = 1<<30, coco::ex_rightbound = 1<<31, coco::ex_atmlin = ex_bound|ex_linear, coco::ex_atmquad = ex_atmlin|ex_quadratic, coco::ex_atmpoly = ex_atmquad|ex_polynomial, coco::ex_nonlin = ex_quadratic|ex_polynomial|ex_other, coco::ex_nonbnd = ex_linear|ex_nonlin, coco::ex_any = ex_atmlin|ex_nonlin, coco::ex_bothbound = ex_leftbound|ex_rightbound } |
Definition in file expression.h.
#define EXPR_LASTARG NULL |
Definition at line 362 of file expression.h.