diff --git a/.gitignore b/.gitignore index d648bd5..ecbd044 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -/azove-*.tar.gz +/azove-2.0.tar.gz diff --git a/README.md b/README.md deleted file mode 100644 index 09a85d9..0000000 --- a/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# azove - -[Azove](http://people.mpi-inf.mpg.de/alumni/d1/2019/behle/azove.html) is a -tool designed for counting (without explicit enumeration) and enumeration of -`0/1` vertices. Given a polytope by a linear relaxation or facet description -`P = {x | Ax <= b}`, all `0/1` points lying in P can be counted or enumerated. -This is done by intersecting the polytope P with the unit-hypercube `[0,1] d`. -The integral vertices (no fractional ones) of this intersection will be -enumerated. If P is a `0/1` polytope, azove solves the vertex enumeration -problem. In fact it can also solve the `0/1` knapsack problem and the `0/1` -subset sum problem. diff --git a/azove-map.patch b/azove-map.patch deleted file mode 100644 index d38cd20..0000000 --- a/azove-map.patch +++ /dev/null @@ -1,81 +0,0 @@ ---- azove.cpp.orig 2020-03-18 16:24:44.740182853 -0600 -+++ azove.cpp 2020-03-18 16:36:01.379150406 -0600 -@@ -212,8 +212,8 @@ azove::~azove(){ - delete[] sigMDDnodeBase; - for(vector::iterator Vit = conBDDs.begin(); Vit != conBDDs.end(); ++Vit) - delete *Vit; -- for(vector<__gnu_cxx::hash_multimap >::iterator Vit = levels.begin(); Vit != levels.end(); ++Vit) -- for(__gnu_cxx::hash_multimap::iterator Lit = Vit->begin(); Lit != Vit->end(); ++Lit) -+ for(vector >::iterator Vit = levels.begin(); Vit != levels.end(); ++Vit) -+ for(unordered_multimap::iterator Lit = Vit->begin(); Lit != Vit->end(); ++Lit) - delete Lit->second; - } - -@@ -422,7 +422,7 @@ void azove::countPathsToLeaf1(void){ - rootNode->counter *= 2; - - for(unsigned int l=0; l::iterator it = levels[l].begin(); it != levels[l].end(); ++it){ -+ for(unordered_multimap::iterator it = levels[l].begin(); it != levels[l].end(); ++it){ - it->second->zeroEdge->counter += it->second->counter / 2; - it->second->oneEdge->counter += it->second->counter / 2; - } -@@ -437,9 +437,9 @@ void azove::countPathsToLeaf1(void){ - andBDDnode* azove::findNodeWithSameSuccessors(const int actLevel, const andBDDnode* actZeroEdge, const andBDDnode* actOneEdge){ - andBDDnode* foundNode = NULL; - -- pair<__gnu_cxx::hash_multimap::iterator, __gnu_cxx::hash_multimap::iterator> sameZeroSonsRange = levels[actLevel].equal_range((unsigned long int)actZeroEdge); -+ pair::iterator, unordered_multimap::iterator> sameZeroSonsRange = levels[actLevel].equal_range((unsigned long int)actZeroEdge); - -- for(__gnu_cxx::hash_multimap::iterator searchIt = sameZeroSonsRange.first; searchIt != sameZeroSonsRange.second; ++searchIt){ -+ for(unordered_multimap::iterator searchIt = sameZeroSonsRange.first; searchIt != sameZeroSonsRange.second; ++searchIt){ - if(actOneEdge == searchIt->second->oneEdge){ - foundNode = searchIt->second; - break; -@@ -465,7 +465,7 @@ void azove::outputBDD(void){ - cerr<<"levels of BDD"<::const_iterator it = levels[l].begin(); it != levels[l].end(); ++it) -+ for(unordered_multimap::const_iterator it = levels[l].begin(); it != levels[l].end(); ++it) - cerr<<*(it->second); - } - } -@@ -597,7 +597,7 @@ void azove::outputDotFile(const char* fi - for(unsigned int l=0; l::iterator it = levels[l].begin(); it != levels[l].end(); ++it){ -+ for(unordered_multimap::iterator it = levels[l].begin(); it != levels[l].end(); ++it){ - it->second->counter = abusedCounter++; - of<<"\""<second->counter<<"\";"<::iterator it = levels[l].begin(); it != levels[l].end(); ++it){ -+ for(unordered_multimap::iterator it = levels[l].begin(); it != levels[l].end(); ++it){ - of<<"\""<second->level<<"_"<second->counter<<"\" -> "; - if(it->second->oneEdge == leaf0Node) - of<<"\"leaf0\""; ---- azove.hpp.orig 2007-03-01 09:12:27.000000000 -0700 -+++ azove.hpp 2020-03-18 16:39:17.921850480 -0600 -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - - #include "conBDD.hpp" -@@ -75,7 +75,7 @@ private: - unsigned long int sigMDDnodeBaseCounter; - - //data structure for the andBDD -- std::vector<__gnu_cxx::hash_multimap > levels; -+ std::vector > levels; - - andBDDnode* rootNode; - andBDDnode* leaf0Node; diff --git a/azove-memory.patch b/azove-memory.patch deleted file mode 100644 index 68f8c13..0000000 --- a/azove-memory.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- azove.cpp.orig 2007-04-07 07:16:25.000000000 -0600 -+++ azove.cpp 2020-03-18 16:24:44.740182853 -0600 -@@ -300,6 +300,7 @@ void azove::buildConstraintBDDs(void){ - //----------------------------------------------------------------------------------- - - void azove::andBDDs(void){ -+#if 0 - FILE* pf = fopen("/proc/meminfo", "r"); - if(pf){ - unsigned int memtotal = 0; -@@ -324,10 +325,13 @@ void azove::andBDDs(void){ - fclose(pf); - } - else{ -+#endif - #define FIXED_MDDNODEBASESIZE 10000000 - sigMDDnodeBaseSize = FIXED_MDDNODEBASESIZE; -+#if 0 - cerr<<"/proc/meminfo not found! Using fixed number of signature nodes."< - 2.0-32 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Wed Jul 23 2025 Fedora Release Engineering - 2.0-31 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Thu Jan 16 2025 Fedora Release Engineering - 2.0-30 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Jul 17 2024 Fedora Release Engineering - 2.0-29 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Tue Jan 23 2024 Fedora Release Engineering - 2.0-28 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 2.0-27 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Tue Jan 16 2024 Jerry James - 2.0-26 -- Stop building for 32-bit x86 - -* Wed Jul 19 2023 Fedora Release Engineering - 2.0-26 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Wed Jan 18 2023 Fedora Release Engineering - 2.0-25 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Aug 11 2022 Jerry James - 2.0-24 -- Convert License tag to SPDX - -* Wed Jul 20 2022 Fedora Release Engineering - 2.0-24 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Wed Jan 19 2022 Fedora Release Engineering - 2.0-23 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Jul 21 2021 Fedora Release Engineering - 2.0-22 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jan 26 2021 Fedora Release Engineering - 2.0-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Mon Jul 27 2020 Fedora Release Engineering - 2.0-20 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Mar 18 2020 Jerry James - 2.0-19 -- Add -memory and -map patches -- Build with RPM_LD_FLAGS - -* Tue Jan 28 2020 Fedora Release Engineering - 2.0-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - * Wed Jul 24 2019 Fedora Release Engineering - 2.0-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild