|
18 | 18 | #ifndef BIVARIATE_H |
19 | 19 | #define BIVARIATE_H |
20 | 20 |
|
21 | | -#include "expr.h" |
22 | | - |
23 | | -expr *new_elementwise_mult(expr *left, expr *right); |
24 | | -expr *new_rel_entr_vector_args(expr *left, expr *right); |
25 | | -expr *new_quad_over_lin(expr *left, expr *right); |
26 | | - |
27 | | -expr *new_rel_entr_first_arg_scalar(expr *left, expr *right); |
28 | | -expr *new_rel_entr_second_arg_scalar(expr *left, expr *right); |
29 | | - |
30 | | -/* Matrix multiplication: Z = X @ Y */ |
31 | | -expr *new_matmul(expr *x, expr *y); |
32 | | - |
33 | | -/* Left matrix multiplication: A @ f(x) where A is a constant sparse matrix */ |
34 | | -expr *new_left_matmul(expr *u, const CSR_Matrix *A); |
35 | | - |
36 | | -/* Left matrix multiplication: A @ f(x) where A is a constant dense matrix |
37 | | - * (row-major, m x n). Uses CBLAS for efficient computation. */ |
38 | | -expr *new_left_matmul_dense(expr *u, int m, int n, const double *data); |
39 | | - |
40 | | -/* Right matrix multiplication: f(x) @ A where A is a constant matrix */ |
41 | | -expr *new_right_matmul(expr *u, const CSR_Matrix *A); |
42 | | - |
43 | | -expr *new_right_matmul_dense(expr *u, int m, int n, const double *data); |
44 | | - |
45 | | -/* Constant scalar multiplication: a * f(x) where a is a constant double */ |
46 | | -expr *new_const_scalar_mult(double a, expr *child); |
47 | | - |
48 | | -/* Constant vector elementwise multiplication: a ∘ f(x) where a is constant */ |
49 | | -expr *new_const_vector_mult(const double *a, expr *child); |
| 21 | +/* Compatibility header — includes all bivariate-related declarations. |
| 22 | + * Prefer including the specific header directly: |
| 23 | + * affine.h, bivariate_full_dom.h, bivariate_restricted_dom.h */ |
| 24 | +#include "affine.h" |
| 25 | +#include "bivariate_full_dom.h" |
| 26 | +#include "bivariate_restricted_dom.h" |
50 | 27 |
|
51 | 28 | #endif /* BIVARIATE_H */ |
0 commit comments