https://hal.archives-ouvertes.fr/hal-03445891
dilworthdecomposition.h
/***************************************************************************
* Copyright (C) 2007 by Sid Touati *
* Sid-nospamDOTTouati-nospam@inria.fr *
* Copyright INRIA and University of Versailles (France) *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#ifndef __dilworthdecomposition_H
#define __dilworthdecomposition_H
/*! \file dilworthdecomposition.h
\brief This is the C++ header file of Dilworth decomposition implementation. To be included for use.
*/
#include "LEDA/graph/graph.h"
#include "LEDA/core/set.h"
#include "LEDA/graph/graph_misc.h" /* Is_Acyclic */
#include "LEDA/graph/node_list.h"
#include "LEDA/graph/basic_graph_alg.h" /* transitive closure */
#include "LEDA/graph/mcb_matching.h" /* bipartie matching algorithm */
#include "LEDA/core/d_array.h" // d_array
using namespace LEDA;
using namespace std;
/* set->list conversion */
template<class T> list<T> set_to_list(const set<T> l);
/* list->set conversion */
template<class T> set<T> list_to_set(const list<T> l);
int MAXIMAL_ANTI_CHAIN(const graph &G, set<node>& MA);
int MINIMAL_CHAIN(const graph &G, node_array<int>& chain);
#endif