From 11f09faf92b4b915316be0e5640e2e0e8cd806c8 Mon Sep 17 00:00:00 2001 From: Alex Auvolat--bernstein Date: Wed, 4 Dec 2013 17:35:16 +0100 Subject: Added heuristic. --- algos.c | 4 +- data/C64.9.clq | 1856 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ set_bitsets.c | 4 +- 3 files changed, 1860 insertions(+), 4 deletions(-) create mode 100644 data/C64.9.clq diff --git a/algos.c b/algos.c index 60e94fa..630a719 100644 --- a/algos.c +++ b/algos.c @@ -71,7 +71,7 @@ void max_clique_c(const graph g, set k, set c, set a, set *mc) { int heur = u; while (!is_set_empty(c_it)) { - int uprime = elt_of_set(c_it); + int uprime = elt_of_set_heur(c_it, heur); heur = uprime; set_remove_ip(uprime, c_it); @@ -89,7 +89,7 @@ void max_clique_c(const graph g, set k, set c, set a, set *mc) { set t = set_diff(a, graph_neighbours(g, u)); heur = u; while (!is_set_empty(t)) { - int x = elt_of_set(t); + int x = elt_of_set_heur(t, heur); heur = x; set k2 = set_add(x, k); diff --git a/data/C64.9.clq b/data/C64.9.clq new file mode 100644 index 0000000..d495777 --- /dev/null +++ b/data/C64.9.clq @@ -0,0 +1,1856 @@ +c FILE: C125.9.clq +c +c SOURCE: Generated by Michael Trick using +c ggen, a program by Craig Morgenstern +c +c DESCRIPTION: Cx.y is a random graph on x vertices +c with edge probability .y +c +c +c G(n,p) graph +c graph gen seed : 74328432 +c number of vertices : 125 +c max number of edges: 20000 +c edge probability : 0.900000 +c data structure : dense +c +c Graph Stats +c number of vertices : 125 +c nonisolated vertices: 125 +c number of edges : 6963 +c edge density : 0.898452 +c max degree : 119 +c avg degree : 111.41 +c min degree : 102 +p col 64 1831 +e 2 1 +e 3 1 +e 4 1 +e 4 2 +e 4 3 +e 5 1 +e 5 2 +e 5 3 +e 5 4 +e 6 1 +e 6 2 +e 6 3 +e 6 4 +e 6 5 +e 7 1 +e 7 2 +e 7 3 +e 7 4 +e 7 5 +e 7 6 +e 8 1 +e 8 2 +e 8 3 +e 8 4 +e 8 5 +e 8 6 +e 8 7 +e 9 1 +e 9 2 +e 9 3 +e 9 4 +e 9 5 +e 9 6 +e 9 7 +e 9 8 +e 10 1 +e 10 2 +e 10 3 +e 10 4 +e 10 5 +e 10 6 +e 10 7 +e 10 8 +e 10 9 +e 11 1 +e 11 2 +e 11 3 +e 11 4 +e 11 5 +e 11 6 +e 11 7 +e 11 8 +e 11 9 +e 11 10 +e 12 2 +e 12 3 +e 12 4 +e 12 5 +e 12 6 +e 12 7 +e 12 10 +e 12 11 +e 13 1 +e 13 3 +e 13 4 +e 13 5 +e 13 6 +e 13 7 +e 13 8 +e 13 9 +e 13 10 +e 13 11 +e 13 12 +e 14 1 +e 14 2 +e 14 3 +e 14 4 +e 14 5 +e 14 8 +e 14 9 +e 14 10 +e 14 11 +e 14 12 +e 15 1 +e 15 3 +e 15 4 +e 15 5 +e 15 7 +e 15 8 +e 15 9 +e 15 10 +e 15 13 +e 15 14 +e 16 1 +e 16 2 +e 16 4 +e 16 5 +e 16 6 +e 16 7 +e 16 8 +e 16 9 +e 16 10 +e 16 11 +e 16 12 +e 16 13 +e 16 14 +e 16 15 +e 17 1 +e 17 2 +e 17 3 +e 17 4 +e 17 5 +e 17 6 +e 17 7 +e 17 8 +e 17 9 +e 17 10 +e 17 11 +e 17 12 +e 17 13 +e 17 14 +e 17 15 +e 17 16 +e 18 1 +e 18 2 +e 18 3 +e 18 4 +e 18 5 +e 18 6 +e 18 7 +e 18 8 +e 18 9 +e 18 10 +e 18 11 +e 18 12 +e 18 13 +e 18 14 +e 18 15 +e 18 16 +e 18 17 +e 19 1 +e 19 2 +e 19 3 +e 19 4 +e 19 5 +e 19 6 +e 19 7 +e 19 8 +e 19 9 +e 19 10 +e 19 11 +e 19 12 +e 19 13 +e 19 14 +e 19 15 +e 19 16 +e 19 17 +e 19 18 +e 20 1 +e 20 3 +e 20 4 +e 20 6 +e 20 7 +e 20 8 +e 20 9 +e 20 11 +e 20 12 +e 20 13 +e 20 14 +e 20 15 +e 20 16 +e 20 17 +e 20 18 +e 21 1 +e 21 2 +e 21 3 +e 21 4 +e 21 5 +e 21 6 +e 21 7 +e 21 8 +e 21 9 +e 21 10 +e 21 11 +e 21 12 +e 21 13 +e 21 14 +e 21 15 +e 21 17 +e 21 18 +e 21 19 +e 21 20 +e 22 1 +e 22 2 +e 22 6 +e 22 7 +e 22 8 +e 22 9 +e 22 10 +e 22 11 +e 22 12 +e 22 13 +e 22 14 +e 22 15 +e 22 16 +e 22 17 +e 22 18 +e 22 19 +e 22 20 +e 22 21 +e 23 1 +e 23 2 +e 23 3 +e 23 4 +e 23 6 +e 23 7 +e 23 8 +e 23 9 +e 23 10 +e 23 11 +e 23 12 +e 23 13 +e 23 14 +e 23 15 +e 23 17 +e 23 18 +e 23 19 +e 23 20 +e 23 21 +e 24 1 +e 24 2 +e 24 3 +e 24 4 +e 24 5 +e 24 6 +e 24 7 +e 24 8 +e 24 9 +e 24 10 +e 24 11 +e 24 12 +e 24 13 +e 24 14 +e 24 15 +e 24 16 +e 24 17 +e 24 18 +e 24 19 +e 24 20 +e 24 22 +e 24 23 +e 25 1 +e 25 2 +e 25 3 +e 25 5 +e 25 6 +e 25 7 +e 25 8 +e 25 9 +e 25 10 +e 25 11 +e 25 12 +e 25 13 +e 25 14 +e 25 15 +e 25 17 +e 25 18 +e 25 19 +e 25 20 +e 25 22 +e 25 24 +e 26 1 +e 26 2 +e 26 3 +e 26 4 +e 26 5 +e 26 6 +e 26 7 +e 26 8 +e 26 10 +e 26 12 +e 26 13 +e 26 14 +e 26 15 +e 26 16 +e 26 17 +e 26 18 +e 26 19 +e 26 20 +e 26 21 +e 26 22 +e 26 23 +e 26 24 +e 26 25 +e 27 1 +e 27 2 +e 27 3 +e 27 4 +e 27 6 +e 27 7 +e 27 8 +e 27 9 +e 27 10 +e 27 11 +e 27 12 +e 27 13 +e 27 14 +e 27 15 +e 27 16 +e 27 17 +e 27 19 +e 27 20 +e 27 22 +e 27 23 +e 27 24 +e 27 25 +e 28 1 +e 28 2 +e 28 3 +e 28 4 +e 28 6 +e 28 7 +e 28 8 +e 28 9 +e 28 10 +e 28 11 +e 28 12 +e 28 13 +e 28 15 +e 28 16 +e 28 17 +e 28 18 +e 28 19 +e 28 20 +e 28 21 +e 28 22 +e 28 23 +e 28 24 +e 28 26 +e 28 27 +e 29 1 +e 29 2 +e 29 3 +e 29 4 +e 29 5 +e 29 6 +e 29 7 +e 29 8 +e 29 9 +e 29 11 +e 29 12 +e 29 13 +e 29 14 +e 29 15 +e 29 17 +e 29 18 +e 29 19 +e 29 20 +e 29 21 +e 29 22 +e 29 23 +e 29 24 +e 29 25 +e 29 26 +e 29 27 +e 29 28 +e 30 1 +e 30 2 +e 30 3 +e 30 4 +e 30 5 +e 30 6 +e 30 8 +e 30 9 +e 30 10 +e 30 11 +e 30 12 +e 30 13 +e 30 14 +e 30 15 +e 30 16 +e 30 19 +e 30 20 +e 30 22 +e 30 23 +e 30 24 +e 30 25 +e 30 26 +e 30 27 +e 30 28 +e 30 29 +e 31 1 +e 31 2 +e 31 5 +e 31 7 +e 31 8 +e 31 9 +e 31 10 +e 31 11 +e 31 12 +e 31 13 +e 31 14 +e 31 15 +e 31 16 +e 31 17 +e 31 18 +e 31 19 +e 31 20 +e 31 21 +e 31 23 +e 31 24 +e 31 25 +e 31 26 +e 31 29 +e 31 30 +e 32 1 +e 32 2 +e 32 3 +e 32 4 +e 32 5 +e 32 6 +e 32 7 +e 32 8 +e 32 10 +e 32 11 +e 32 12 +e 32 13 +e 32 14 +e 32 16 +e 32 17 +e 32 18 +e 32 19 +e 32 20 +e 32 21 +e 32 22 +e 32 24 +e 32 25 +e 32 26 +e 32 27 +e 32 28 +e 32 29 +e 32 30 +e 32 31 +e 33 1 +e 33 2 +e 33 3 +e 33 4 +e 33 6 +e 33 7 +e 33 8 +e 33 9 +e 33 11 +e 33 13 +e 33 14 +e 33 15 +e 33 16 +e 33 18 +e 33 19 +e 33 20 +e 33 21 +e 33 22 +e 33 23 +e 33 24 +e 33 25 +e 33 26 +e 33 27 +e 33 28 +e 33 29 +e 33 30 +e 33 31 +e 33 32 +e 34 1 +e 34 2 +e 34 5 +e 34 6 +e 34 7 +e 34 8 +e 34 9 +e 34 11 +e 34 12 +e 34 13 +e 34 14 +e 34 15 +e 34 16 +e 34 17 +e 34 18 +e 34 19 +e 34 20 +e 34 21 +e 34 22 +e 34 23 +e 34 24 +e 34 25 +e 34 26 +e 34 27 +e 34 28 +e 34 29 +e 34 30 +e 34 31 +e 34 33 +e 35 1 +e 35 2 +e 35 4 +e 35 5 +e 35 6 +e 35 7 +e 35 8 +e 35 9 +e 35 10 +e 35 11 +e 35 12 +e 35 13 +e 35 15 +e 35 16 +e 35 17 +e 35 18 +e 35 19 +e 35 21 +e 35 22 +e 35 23 +e 35 24 +e 35 26 +e 35 27 +e 35 28 +e 35 29 +e 35 30 +e 35 31 +e 35 32 +e 35 33 +e 35 34 +e 36 1 +e 36 2 +e 36 3 +e 36 4 +e 36 5 +e 36 6 +e 36 7 +e 36 8 +e 36 9 +e 36 10 +e 36 11 +e 36 12 +e 36 13 +e 36 14 +e 36 15 +e 36 16 +e 36 17 +e 36 18 +e 36 19 +e 36 20 +e 36 21 +e 36 22 +e 36 23 +e 36 24 +e 36 25 +e 36 26 +e 36 27 +e 36 28 +e 36 29 +e 36 30 +e 36 31 +e 36 32 +e 36 34 +e 36 35 +e 37 2 +e 37 3 +e 37 4 +e 37 5 +e 37 6 +e 37 7 +e 37 8 +e 37 9 +e 37 10 +e 37 11 +e 37 12 +e 37 13 +e 37 14 +e 37 15 +e 37 16 +e 37 17 +e 37 18 +e 37 19 +e 37 20 +e 37 21 +e 37 23 +e 37 24 +e 37 25 +e 37 27 +e 37 28 +e 37 29 +e 37 30 +e 37 31 +e 37 32 +e 37 33 +e 37 34 +e 37 35 +e 37 36 +e 38 1 +e 38 2 +e 38 3 +e 38 4 +e 38 6 +e 38 7 +e 38 8 +e 38 9 +e 38 10 +e 38 11 +e 38 12 +e 38 13 +e 38 14 +e 38 16 +e 38 17 +e 38 18 +e 38 19 +e 38 20 +e 38 22 +e 38 23 +e 38 24 +e 38 26 +e 38 27 +e 38 29 +e 38 30 +e 38 31 +e 38 32 +e 38 33 +e 38 34 +e 38 35 +e 38 36 +e 38 37 +e 39 1 +e 39 2 +e 39 3 +e 39 4 +e 39 5 +e 39 6 +e 39 7 +e 39 8 +e 39 9 +e 39 10 +e 39 11 +e 39 12 +e 39 13 +e 39 14 +e 39 15 +e 39 16 +e 39 17 +e 39 18 +e 39 19 +e 39 20 +e 39 21 +e 39 22 +e 39 23 +e 39 24 +e 39 25 +e 39 26 +e 39 27 +e 39 28 +e 39 29 +e 39 30 +e 39 31 +e 39 32 +e 39 33 +e 39 34 +e 39 35 +e 39 36 +e 39 37 +e 39 38 +e 40 1 +e 40 2 +e 40 3 +e 40 4 +e 40 5 +e 40 6 +e 40 7 +e 40 9 +e 40 10 +e 40 11 +e 40 12 +e 40 13 +e 40 14 +e 40 15 +e 40 17 +e 40 18 +e 40 19 +e 40 20 +e 40 21 +e 40 22 +e 40 23 +e 40 24 +e 40 25 +e 40 26 +e 40 27 +e 40 28 +e 40 29 +e 40 30 +e 40 31 +e 40 32 +e 40 33 +e 40 34 +e 40 35 +e 40 36 +e 40 38 +e 40 39 +e 41 1 +e 41 2 +e 41 3 +e 41 4 +e 41 5 +e 41 6 +e 41 7 +e 41 8 +e 41 9 +e 41 10 +e 41 11 +e 41 12 +e 41 13 +e 41 14 +e 41 15 +e 41 16 +e 41 17 +e 41 18 +e 41 19 +e 41 20 +e 41 21 +e 41 22 +e 41 24 +e 41 25 +e 41 26 +e 41 27 +e 41 28 +e 41 29 +e 41 30 +e 41 31 +e 41 32 +e 41 33 +e 41 34 +e 41 35 +e 41 36 +e 41 38 +e 41 39 +e 41 40 +e 42 2 +e 42 4 +e 42 5 +e 42 6 +e 42 7 +e 42 8 +e 42 9 +e 42 10 +e 42 11 +e 42 12 +e 42 13 +e 42 15 +e 42 16 +e 42 18 +e 42 19 +e 42 20 +e 42 21 +e 42 22 +e 42 23 +e 42 24 +e 42 26 +e 42 27 +e 42 28 +e 42 29 +e 42 30 +e 42 31 +e 42 32 +e 42 33 +e 42 35 +e 42 36 +e 42 37 +e 42 38 +e 42 39 +e 42 40 +e 42 41 +e 43 1 +e 43 2 +e 43 3 +e 43 4 +e 43 5 +e 43 6 +e 43 7 +e 43 8 +e 43 9 +e 43 10 +e 43 11 +e 43 13 +e 43 14 +e 43 15 +e 43 16 +e 43 18 +e 43 19 +e 43 20 +e 43 21 +e 43 22 +e 43 23 +e 43 24 +e 43 25 +e 43 26 +e 43 27 +e 43 28 +e 43 29 +e 43 30 +e 43 31 +e 43 32 +e 43 33 +e 43 34 +e 43 35 +e 43 36 +e 43 38 +e 43 39 +e 43 40 +e 43 41 +e 43 42 +e 44 1 +e 44 2 +e 44 3 +e 44 4 +e 44 5 +e 44 6 +e 44 7 +e 44 9 +e 44 10 +e 44 11 +e 44 12 +e 44 13 +e 44 14 +e 44 15 +e 44 17 +e 44 18 +e 44 19 +e 44 20 +e 44 21 +e 44 22 +e 44 23 +e 44 24 +e 44 25 +e 44 26 +e 44 28 +e 44 29 +e 44 31 +e 44 32 +e 44 33 +e 44 34 +e 44 35 +e 44 36 +e 44 37 +e 44 38 +e 44 39 +e 44 40 +e 44 41 +e 44 42 +e 44 43 +e 45 1 +e 45 2 +e 45 3 +e 45 4 +e 45 5 +e 45 6 +e 45 7 +e 45 8 +e 45 9 +e 45 10 +e 45 11 +e 45 12 +e 45 13 +e 45 14 +e 45 15 +e 45 16 +e 45 17 +e 45 18 +e 45 19 +e 45 20 +e 45 21 +e 45 22 +e 45 23 +e 45 24 +e 45 25 +e 45 26 +e 45 27 +e 45 28 +e 45 29 +e 45 30 +e 45 31 +e 45 32 +e 45 33 +e 45 34 +e 45 35 +e 45 36 +e 45 37 +e 45 38 +e 45 39 +e 45 40 +e 45 41 +e 45 42 +e 45 43 +e 45 44 +e 46 1 +e 46 2 +e 46 3 +e 46 4 +e 46 5 +e 46 6 +e 46 7 +e 46 8 +e 46 10 +e 46 11 +e 46 12 +e 46 13 +e 46 14 +e 46 15 +e 46 16 +e 46 17 +e 46 18 +e 46 19 +e 46 20 +e 46 21 +e 46 22 +e 46 23 +e 46 24 +e 46 25 +e 46 26 +e 46 27 +e 46 28 +e 46 30 +e 46 31 +e 46 32 +e 46 33 +e 46 34 +e 46 35 +e 46 36 +e 46 37 +e 46 39 +e 46 40 +e 46 41 +e 46 43 +e 46 44 +e 46 45 +e 47 1 +e 47 2 +e 47 3 +e 47 4 +e 47 5 +e 47 6 +e 47 7 +e 47 8 +e 47 9 +e 47 10 +e 47 11 +e 47 12 +e 47 13 +e 47 14 +e 47 15 +e 47 16 +e 47 17 +e 47 18 +e 47 19 +e 47 20 +e 47 21 +e 47 22 +e 47 23 +e 47 24 +e 47 25 +e 47 26 +e 47 27 +e 47 28 +e 47 29 +e 47 30 +e 47 31 +e 47 32 +e 47 33 +e 47 34 +e 47 35 +e 47 36 +e 47 37 +e 47 38 +e 47 39 +e 47 40 +e 47 41 +e 47 42 +e 47 43 +e 47 44 +e 47 45 +e 48 1 +e 48 2 +e 48 3 +e 48 5 +e 48 6 +e 48 7 +e 48 8 +e 48 9 +e 48 10 +e 48 11 +e 48 12 +e 48 14 +e 48 15 +e 48 16 +e 48 17 +e 48 18 +e 48 19 +e 48 20 +e 48 21 +e 48 22 +e 48 23 +e 48 24 +e 48 25 +e 48 26 +e 48 27 +e 48 29 +e 48 30 +e 48 31 +e 48 32 +e 48 33 +e 48 34 +e 48 35 +e 48 36 +e 48 38 +e 48 39 +e 48 40 +e 48 41 +e 48 42 +e 48 43 +e 48 44 +e 48 45 +e 48 46 +e 48 47 +e 49 1 +e 49 2 +e 49 3 +e 49 4 +e 49 5 +e 49 6 +e 49 7 +e 49 8 +e 49 9 +e 49 10 +e 49 11 +e 49 12 +e 49 13 +e 49 14 +e 49 15 +e 49 16 +e 49 17 +e 49 18 +e 49 19 +e 49 20 +e 49 21 +e 49 22 +e 49 23 +e 49 24 +e 49 25 +e 49 26 +e 49 27 +e 49 28 +e 49 29 +e 49 30 +e 49 31 +e 49 32 +e 49 33 +e 49 34 +e 49 35 +e 49 36 +e 49 37 +e 49 38 +e 49 39 +e 49 40 +e 49 42 +e 49 43 +e 49 44 +e 49 45 +e 49 46 +e 49 47 +e 49 48 +e 50 1 +e 50 2 +e 50 3 +e 50 4 +e 50 5 +e 50 6 +e 50 7 +e 50 8 +e 50 9 +e 50 10 +e 50 11 +e 50 12 +e 50 13 +e 50 14 +e 50 15 +e 50 16 +e 50 18 +e 50 19 +e 50 20 +e 50 21 +e 50 22 +e 50 24 +e 50 25 +e 50 26 +e 50 28 +e 50 29 +e 50 31 +e 50 32 +e 50 33 +e 50 34 +e 50 35 +e 50 37 +e 50 38 +e 50 39 +e 50 40 +e 50 41 +e 50 42 +e 50 43 +e 50 44 +e 50 45 +e 50 47 +e 50 48 +e 50 49 +e 51 1 +e 51 2 +e 51 3 +e 51 4 +e 51 5 +e 51 6 +e 51 7 +e 51 8 +e 51 9 +e 51 10 +e 51 12 +e 51 13 +e 51 14 +e 51 16 +e 51 17 +e 51 18 +e 51 19 +e 51 20 +e 51 21 +e 51 22 +e 51 23 +e 51 24 +e 51 25 +e 51 26 +e 51 27 +e 51 28 +e 51 29 +e 51 30 +e 51 31 +e 51 33 +e 51 34 +e 51 35 +e 51 37 +e 51 39 +e 51 40 +e 51 41 +e 51 43 +e 51 44 +e 51 45 +e 51 46 +e 51 47 +e 51 49 +e 51 50 +e 52 1 +e 52 2 +e 52 3 +e 52 4 +e 52 5 +e 52 6 +e 52 7 +e 52 8 +e 52 9 +e 52 10 +e 52 11 +e 52 12 +e 52 13 +e 52 14 +e 52 15 +e 52 16 +e 52 17 +e 52 19 +e 52 20 +e 52 21 +e 52 22 +e 52 23 +e 52 24 +e 52 25 +e 52 27 +e 52 28 +e 52 29 +e 52 30 +e 52 31 +e 52 32 +e 52 33 +e 52 34 +e 52 35 +e 52 36 +e 52 37 +e 52 38 +e 52 39 +e 52 40 +e 52 41 +e 52 42 +e 52 43 +e 52 44 +e 52 45 +e 52 47 +e 52 49 +e 52 50 +e 52 51 +e 53 3 +e 53 4 +e 53 5 +e 53 6 +e 53 7 +e 53 8 +e 53 9 +e 53 10 +e 53 11 +e 53 12 +e 53 13 +e 53 14 +e 53 15 +e 53 17 +e 53 18 +e 53 19 +e 53 20 +e 53 21 +e 53 22 +e 53 23 +e 53 24 +e 53 25 +e 53 26 +e 53 27 +e 53 28 +e 53 30 +e 53 31 +e 53 32 +e 53 33 +e 53 34 +e 53 35 +e 53 36 +e 53 37 +e 53 38 +e 53 39 +e 53 40 +e 53 41 +e 53 42 +e 53 43 +e 53 45 +e 53 46 +e 53 47 +e 53 48 +e 53 49 +e 53 50 +e 53 51 +e 53 52 +e 54 1 +e 54 2 +e 54 3 +e 54 4 +e 54 5 +e 54 6 +e 54 7 +e 54 8 +e 54 9 +e 54 11 +e 54 12 +e 54 13 +e 54 14 +e 54 15 +e 54 16 +e 54 17 +e 54 18 +e 54 19 +e 54 20 +e 54 21 +e 54 22 +e 54 23 +e 54 24 +e 54 25 +e 54 26 +e 54 27 +e 54 28 +e 54 29 +e 54 31 +e 54 32 +e 54 33 +e 54 34 +e 54 35 +e 54 36 +e 54 37 +e 54 38 +e 54 39 +e 54 40 +e 54 41 +e 54 42 +e 54 43 +e 54 44 +e 54 45 +e 54 46 +e 54 47 +e 54 48 +e 54 49 +e 54 50 +e 54 51 +e 54 52 +e 54 53 +e 55 1 +e 55 3 +e 55 4 +e 55 5 +e 55 6 +e 55 7 +e 55 8 +e 55 9 +e 55 10 +e 55 11 +e 55 12 +e 55 13 +e 55 14 +e 55 15 +e 55 16 +e 55 17 +e 55 18 +e 55 19 +e 55 20 +e 55 21 +e 55 22 +e 55 23 +e 55 24 +e 55 25 +e 55 26 +e 55 27 +e 55 28 +e 55 29 +e 55 30 +e 55 31 +e 55 32 +e 55 33 +e 55 34 +e 55 35 +e 55 36 +e 55 37 +e 55 38 +e 55 39 +e 55 40 +e 55 42 +e 55 43 +e 55 44 +e 55 45 +e 55 46 +e 55 47 +e 55 49 +e 55 50 +e 55 51 +e 55 52 +e 55 54 +e 56 4 +e 56 5 +e 56 6 +e 56 7 +e 56 8 +e 56 9 +e 56 10 +e 56 11 +e 56 12 +e 56 13 +e 56 14 +e 56 15 +e 56 16 +e 56 18 +e 56 19 +e 56 20 +e 56 21 +e 56 22 +e 56 23 +e 56 24 +e 56 25 +e 56 27 +e 56 28 +e 56 29 +e 56 30 +e 56 31 +e 56 32 +e 56 33 +e 56 34 +e 56 35 +e 56 37 +e 56 38 +e 56 40 +e 56 41 +e 56 42 +e 56 43 +e 56 45 +e 56 46 +e 56 47 +e 56 48 +e 56 49 +e 56 50 +e 56 51 +e 56 52 +e 56 53 +e 56 54 +e 57 1 +e 57 2 +e 57 4 +e 57 5 +e 57 6 +e 57 7 +e 57 8 +e 57 9 +e 57 10 +e 57 11 +e 57 12 +e 57 13 +e 57 14 +e 57 16 +e 57 17 +e 57 19 +e 57 20 +e 57 22 +e 57 23 +e 57 24 +e 57 25 +e 57 26 +e 57 28 +e 57 29 +e 57 30 +e 57 31 +e 57 32 +e 57 33 +e 57 34 +e 57 35 +e 57 36 +e 57 37 +e 57 38 +e 57 39 +e 57 40 +e 57 41 +e 57 42 +e 57 43 +e 57 45 +e 57 46 +e 57 47 +e 57 50 +e 57 51 +e 57 52 +e 57 54 +e 57 55 +e 57 56 +e 58 1 +e 58 2 +e 58 3 +e 58 4 +e 58 5 +e 58 6 +e 58 9 +e 58 10 +e 58 11 +e 58 12 +e 58 13 +e 58 14 +e 58 15 +e 58 16 +e 58 17 +e 58 18 +e 58 19 +e 58 20 +e 58 21 +e 58 22 +e 58 23 +e 58 24 +e 58 25 +e 58 26 +e 58 27 +e 58 28 +e 58 29 +e 58 30 +e 58 31 +e 58 32 +e 58 33 +e 58 35 +e 58 36 +e 58 37 +e 58 38 +e 58 39 +e 58 40 +e 58 41 +e 58 42 +e 58 43 +e 58 44 +e 58 45 +e 58 46 +e 58 47 +e 58 48 +e 58 49 +e 58 51 +e 58 52 +e 58 53 +e 58 54 +e 58 55 +e 58 56 +e 58 57 +e 59 1 +e 59 2 +e 59 3 +e 59 4 +e 59 5 +e 59 6 +e 59 7 +e 59 8 +e 59 9 +e 59 10 +e 59 12 +e 59 13 +e 59 14 +e 59 15 +e 59 16 +e 59 17 +e 59 18 +e 59 19 +e 59 20 +e 59 21 +e 59 22 +e 59 23 +e 59 24 +e 59 25 +e 59 26 +e 59 27 +e 59 28 +e 59 29 +e 59 30 +e 59 31 +e 59 32 +e 59 33 +e 59 34 +e 59 35 +e 59 36 +e 59 37 +e 59 38 +e 59 40 +e 59 41 +e 59 42 +e 59 43 +e 59 44 +e 59 45 +e 59 46 +e 59 47 +e 59 48 +e 59 50 +e 59 51 +e 59 52 +e 59 53 +e 59 54 +e 59 55 +e 59 56 +e 59 57 +e 59 58 +e 60 1 +e 60 2 +e 60 3 +e 60 4 +e 60 5 +e 60 6 +e 60 7 +e 60 8 +e 60 9 +e 60 10 +e 60 11 +e 60 12 +e 60 13 +e 60 14 +e 60 15 +e 60 16 +e 60 18 +e 60 20 +e 60 21 +e 60 22 +e 60 23 +e 60 24 +e 60 25 +e 60 26 +e 60 27 +e 60 28 +e 60 29 +e 60 30 +e 60 31 +e 60 32 +e 60 33 +e 60 34 +e 60 35 +e 60 37 +e 60 38 +e 60 39 +e 60 40 +e 60 41 +e 60 42 +e 60 43 +e 60 44 +e 60 45 +e 60 46 +e 60 47 +e 60 48 +e 60 49 +e 60 50 +e 60 51 +e 60 52 +e 60 53 +e 60 54 +e 60 55 +e 60 56 +e 60 57 +e 60 58 +e 60 59 +e 61 1 +e 61 2 +e 61 3 +e 61 4 +e 61 5 +e 61 6 +e 61 7 +e 61 8 +e 61 9 +e 61 10 +e 61 11 +e 61 12 +e 61 13 +e 61 14 +e 61 15 +e 61 16 +e 61 17 +e 61 18 +e 61 20 +e 61 21 +e 61 23 +e 61 24 +e 61 25 +e 61 26 +e 61 27 +e 61 28 +e 61 29 +e 61 30 +e 61 31 +e 61 32 +e 61 33 +e 61 34 +e 61 37 +e 61 38 +e 61 39 +e 61 40 +e 61 41 +e 61 43 +e 61 44 +e 61 45 +e 61 46 +e 61 48 +e 61 49 +e 61 50 +e 61 51 +e 61 53 +e 61 54 +e 61 55 +e 61 56 +e 61 57 +e 61 58 +e 61 59 +e 61 60 +e 62 1 +e 62 2 +e 62 3 +e 62 4 +e 62 5 +e 62 6 +e 62 7 +e 62 8 +e 62 9 +e 62 10 +e 62 11 +e 62 12 +e 62 13 +e 62 14 +e 62 15 +e 62 16 +e 62 17 +e 62 19 +e 62 20 +e 62 22 +e 62 23 +e 62 25 +e 62 26 +e 62 28 +e 62 29 +e 62 30 +e 62 31 +e 62 33 +e 62 35 +e 62 36 +e 62 37 +e 62 38 +e 62 39 +e 62 40 +e 62 41 +e 62 42 +e 62 43 +e 62 44 +e 62 45 +e 62 46 +e 62 48 +e 62 49 +e 62 50 +e 62 51 +e 62 52 +e 62 53 +e 62 54 +e 62 55 +e 62 56 +e 62 57 +e 62 58 +e 62 59 +e 62 60 +e 62 61 +e 63 1 +e 63 2 +e 63 3 +e 63 4 +e 63 5 +e 63 6 +e 63 7 +e 63 8 +e 63 9 +e 63 10 +e 63 11 +e 63 12 +e 63 13 +e 63 15 +e 63 16 +e 63 17 +e 63 18 +e 63 19 +e 63 20 +e 63 21 +e 63 22 +e 63 23 +e 63 24 +e 63 26 +e 63 27 +e 63 28 +e 63 29 +e 63 30 +e 63 31 +e 63 33 +e 63 34 +e 63 35 +e 63 36 +e 63 37 +e 63 38 +e 63 39 +e 63 40 +e 63 41 +e 63 43 +e 63 44 +e 63 45 +e 63 46 +e 63 47 +e 63 48 +e 63 49 +e 63 50 +e 63 52 +e 63 53 +e 63 54 +e 63 56 +e 63 57 +e 63 58 +e 63 59 +e 63 60 +e 63 61 +e 63 62 +e 64 1 +e 64 2 +e 64 3 +e 64 4 +e 64 5 +e 64 6 +e 64 7 +e 64 8 +e 64 10 +e 64 11 +e 64 12 +e 64 13 +e 64 15 +e 64 18 +e 64 19 +e 64 20 +e 64 21 +e 64 22 +e 64 23 +e 64 24 +e 64 26 +e 64 27 +e 64 29 +e 64 30 +e 64 31 +e 64 32 +e 64 33 +e 64 35 +e 64 36 +e 64 37 +e 64 38 +e 64 39 +e 64 40 +e 64 41 +e 64 42 +e 64 43 +e 64 44 +e 64 45 +e 64 46 +e 64 47 +e 64 48 +e 64 49 +e 64 50 +e 64 51 +e 64 52 +e 64 53 +e 64 54 +e 64 55 +e 64 56 +e 64 57 +e 64 58 +e 64 59 +e 64 60 +e 64 61 +e 64 62 +e 64 63 diff --git a/set_bitsets.c b/set_bitsets.c index fda7085..7eddcfd 100644 --- a/set_bitsets.c +++ b/set_bitsets.c @@ -138,8 +138,8 @@ int elt_of_set(const set s){ int elt_of_set_heur(const set s, int h){ int N=nbCells(s.N), i; - if(s.tab[h/SCOD]>>(h%SCOD+1) !=0) - return h + dyadic_val(s.tab[h/SCOD]>>(h%SCOD+1)) + 1; + if(s.tab[h/SCOD]>>(h%SCOD) !=0) + return h + dyadic_val(s.tab[h/SCOD]>>(h%SCOD)) ; for(i=0; i