added lpp
[libfirm] / ir / lpp / lpp_test.c
1 /**
2  * @file   lpp_test.c
3  * @date   20.07.2005
4  * @author Sebastian Hack
5  *
6  * Small test program for lpp solving
7  *
8  * Copyright (C) 2005 Universitaet Karlsruhe
9  * Released under the GPL
10  */
11
12 #include "lpp.h"
13 #include "lpp_net.h"
14
15 int main(int argc, char *argv[])
16 {
17   int i;
18   lpp_t *lpp = new_lpp("test", lpp_minimize);
19
20   lpp_add_cst(lpp, "a", lpp_equal, 1.0);
21
22   lpp_add_var(lpp, "x", lpp_binary, 1.0);
23   lpp_add_var(lpp, "y", lpp_binary, 1.0);
24
25   lpp_set_factor(lpp, "a", "x", 1.0);
26   lpp_set_factor(lpp, "a", "y", 1.0);
27   lpp_set_log(lpp, stdout);
28
29   lpp_solve_net(lpp, argc > 1 ? argv[1] : "localhost", argc > 2 ? argv[2] : "dummy");
30
31   for(i = 0; i < lpp->var_next; ++i) {
32     lpp_name_t *name = lpp->vars[i];
33     printf("%10s %4d %10f\n", name->name, name->nr, name->value);
34   }
35
36   return 0;
37 }