summaryrefslogtreecommitdiff
path: root/omegalib/omega_lib/include/omega/pres_dnf.h
diff options
context:
space:
mode:
authorTuowen Zhao <ztuowen@gmail.com>2016-09-18 15:45:13 +0000
committerTuowen Zhao <ztuowen@gmail.com>2016-09-18 15:45:13 +0000
commit2fce43d484e4148ae858f410d51dcd9951d34374 (patch)
tree80c204799cd38349b3bb209d4d37962b11aa6222 /omegalib/omega_lib/include/omega/pres_dnf.h
parentf433eae7a1408cca20f3b72fb4c136d9b62de3b8 (diff)
downloadchill-2fce43d484e4148ae858f410d51dcd9951d34374.tar.gz
chill-2fce43d484e4148ae858f410d51dcd9951d34374.tar.bz2
chill-2fce43d484e4148ae858f410d51dcd9951d34374.zip
remove include & rename
Diffstat (limited to 'omegalib/omega_lib/include/omega/pres_dnf.h')
-rw-r--r--omegalib/omega_lib/include/omega/pres_dnf.h87
1 files changed, 0 insertions, 87 deletions
diff --git a/omegalib/omega_lib/include/omega/pres_dnf.h b/omegalib/omega_lib/include/omega/pres_dnf.h
deleted file mode 100644
index 93d5942..0000000
--- a/omegalib/omega_lib/include/omega/pres_dnf.h
+++ /dev/null
@@ -1,87 +0,0 @@
-#if ! defined _pres_dnf_h
-#define _pres_dnf_h 1
-
-#include <omega/pres_gen.h>
-
-namespace omega {
-
-//
-// Disjunctive Normal Form -- list of Conjuncts
-//
-class DNF {
-public:
- void print(FILE *out_file);
- void prefix_print(FILE *out_file, int debug = 1, bool parent_names_setup=false);
-
- bool is_definitely_false() const;
- bool is_definitely_true() const;
- int length() const;
-
- Conjunct *single_conjunct() const;
- bool has_single_conjunct() const;
- Conjunct *rm_first_conjunct();
- void clear();
- int query_guaranteed_leading_0s(int what_to_return_for_empty_dnf);
- int query_possible_leading_0s(int what_to_return_for_empty_dnf);
- int query_leading_dir();
-
-private:
- // all DNFize functions need to access the dnf builders:
- friend class F_And;
- friend class F_Or;
- friend class Conjunct;
- friend DNF * negate_conj(Conjunct *);
-
- friend class Rel_Body;
- friend_rel_ops;
-
- DNF();
- ~DNF();
-
- DNF* copy(Rel_Body *);
-
- void simplify();
- void make_level_carried_to(int level);
- void count_leading_0s();
-
- void add_conjunct(Conjunct*);
- void join_DNF(DNF*);
- void rm_conjunct(Conjunct *c);
-
- void rm_redundant_conjs(int effort);
- void rm_redundant_inexact_conjs();
- void DNF_to_formula(Formula* root);
-
-
- friend void remap_DNF_vars(Rel_Body *new_rel, Rel_Body *old_rel);
- void remap();
-
- void setup_names();
-
- void remove_inexact_conj();
-
- // These may need to get at the conjList itself:
- friend DNF* DNF_and_DNF(DNF*, DNF*);
- friend DNF* DNF_and_conj(DNF*, Conjunct*);
- friend DNF* conj_and_not_dnf(Conjunct *pos_conj, DNF *neg_conjs, bool weak);
-
- friend class DNF_Iterator;
-
- List<Conjunct*> conjList;
-};
-
-DNF* conj_and_not_dnf(Conjunct *pos_conj, DNF *neg_conjs, bool weak=false);
-
-//
-// DNF iterator
-//
-class DNF_Iterator : public List_Iterator<Conjunct*> {
-public:
- DNF_Iterator(DNF*dnf) : List_Iterator<Conjunct*>(dnf->conjList) {}
- DNF_Iterator() {}
- void curr_set(Conjunct *c) { *(*this) = c; }
-};
-
-} // namespace
-
-#endif