Skip to content
Snippets Groups Projects
Commit 7455d37d authored by Jaime Arias's avatar Jaime Arias
Browse files

refactor: ReachableBDD2

parent e4881d15
No related branches found
No related tags found
1 merge request!3Full refactoring applying some conventions
Pipeline #9219 passed with stage
......@@ -238,40 +238,33 @@ bdd RdPBDD::ReachableBDD1() const {
return m2;
}
bdd RdPBDD::ReachableBDD2() {
bdd M1;
bdd M2 = m0;
// double tps;
// double d = (double)clock() / (double)CLOCKS_PER_SEC;
bdd RdPBDD::ReachableBDD2() const {
bdd m2 = m0;
nb_iter = 0;
max_bdd_nodes = bdd_nodecount(m0);
while (M1 != M2) {
M1 = M2;
bdd Reached;
for (vector<Trans>::const_iterator i = relation.begin();
i != relation.end(); i++) {
bdd succ = (*i)(M2);
Reached = succ | Reached;
// cout << bdd_nodecount(succ) << endl;
// if(succ!=bddfalse)
bdd m1;
while (m1 != m2) {
m1 = m2;
bdd reached;
for (const auto &i : relation) {
reached = i(m2) | reached;
}
m2 = m2 | reached;
const int current_size = bdd_nodecount(m2);
if (max_bdd_nodes < current_size) {
max_bdd_nodes = current_size;
}
nb_iter++;
M2 = M2 | Reached;
int Current_size = bdd_nodecount(M2);
if (max_bdd_nodes < Current_size)
max_bdd_nodes = Current_size;
// cout<<"Iteration numero "<<NbIt<<" nb node de reached
// :"<<bdd_nodecount(M2)<<endl;
// //cout << bdd_nodecount(M2) << endl;
}
// cout << endl;
// tps = ((double)(clock()) / CLOCKS_PER_SEC) - d;
// cout<<"-----------------------------------------------------\n";
// cout << "CONSTRUCTION TIME " << tps << endl;
// cout<<"Max Intermediary BDD "<<MaxIntBdd<<endl;
// cout<<"Nombre d'iteration : "<<NbIt<<endl;
return M2;
return m2;
}
bdd RdPBDD::ReachableBDD3() {
// double tps;
// double d = (double)clock() / (double)CLOCKS_PER_SEC;
......
......@@ -63,7 +63,7 @@ class RdPBDD {
~RdPBDD() = default;
bdd ReachableBDD1() const;
bdd ReachableBDD2();
bdd ReachableBDD2() const;
bdd ReachableBDD3();
// SOG generation
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment