variables vars;
} state;
-typedef enum { ROOT, L, U, R, D } path_elt;
+typedef struct lurd {
+ char c;
+ struct lurd *next;
+} lurd_t;
typedef struct {
BDD bdd;
variables vars;
- path_elt origin;
+ lurd_t *lrd;
} state_t;
typedef struct trans {
state *encode_goal(sokoban_screen *screen);
+int check_goal(BDD s, BDD g, BDDSET vars);
+
+int check_visited(BDD s, BDD v, BDDSET vars);
+
+lurd_t *lappend(lurd_t *l, char c);
+
int test_relprod();
#endif