Results 1 
6 of
6
A linear time algorithm for embedding graphs in an arbitrary surface
 SIAM J. Discrete Math
, 1999
"... Ljubljana, February 2, 2009A simpler linear time algorithm for embedding graphs into an arbitrary surface and the genus of graphs of bounded treewidth ..."
Abstract

Cited by 56 (10 self)
 Add to MetaCart
Ljubljana, February 2, 2009A simpler linear time algorithm for embedding graphs into an arbitrary surface and the genus of graphs of bounded treewidth
Certifying Algorithms
, 2010
"... A certifying algorithm is an algorithm that produces, with each output, a certificate or witness (easytoverify proof) that the particular output has not been compromised by a bug. A user of a certifying algorithm inputs x, receives the output y and the certificate w, and then checks, either manual ..."
Abstract

Cited by 10 (2 self)
 Add to MetaCart
A certifying algorithm is an algorithm that produces, with each output, a certificate or witness (easytoverify proof) that the particular output has not been compromised by a bug. A user of a certifying algorithm inputs x, receives the output y and the certificate w, and then checks, either manually or by use of a program, that w proves that y is a correct output for input x. In this way, he/she can be sure of the correctness of the output without having to trust the algorithm. We put forward the thesis that certifying algorithms are much superior to noncertifying algorithms, and that for complex algorithmic tasks, only certifying algorithms are satisfactory. Acceptance of this thesis would lead to a change of how algorithms are taught and how algorithms are researched. The widespread use of certifying algorithms would greatly enhance the reliability of algorithmic software. We survey the state of the art in certifying algorithms and add to it. In particular, we start a
Elimination of local bridges
 Math. Slovaca
, 1997
"... Let K be a subgraph of G. It is shown that if G is 3–connected modulo K then it is possible to replace branches of K by other branches joining same pairs of main vertices of K such that G has no local bridges with respect to the new subgraph K. A linear time algorithm is presented that either perfor ..."
Abstract

Cited by 8 (8 self)
 Add to MetaCart
Let K be a subgraph of G. It is shown that if G is 3–connected modulo K then it is possible to replace branches of K by other branches joining same pairs of main vertices of K such that G has no local bridges with respect to the new subgraph K. A linear time algorithm is presented that either performs such a task, or finds a Kuratowski subgraph K5 or K3,3 in a subgraph of G formed by a branch e and local bridges on e. This result is needed in linear time algorithms for embedding graphs in surfaces.
Efficient Extraction of Multiple Kuratowski Subdivisions (TR)
, 2007
"... Abstract. A graph is planar if and only if it does not contain a Kuratowski subdivision. Hence such a subdivision can be used as a witness for nonplanarity. Modern planarity testing algorithms allow to extract a single such witness in linear time. We present the first linear time algorithm which is ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
Abstract. A graph is planar if and only if it does not contain a Kuratowski subdivision. Hence such a subdivision can be used as a witness for nonplanarity. Modern planarity testing algorithms allow to extract a single such witness in linear time. We present the first linear time algorithm which is able to extract multiple Kuratowski subdivisions at once. This is of particular interest for, e.g., BranchandCut algorithms which require multiple such subdivisions to generate cut constraints. The algorithm is not only described theoretically, but we also present an experimental study of its implementation. 1
Certifying Algorithms
"... A certifying algorithm is an algorithm that produces, with each output, a certificate or witness (easytoverify proof) that the particular output has not been compromised by a bug. A user of a certifying algorithm inputs x, receives the output y and the certificate w, and then checks, either manual ..."
Abstract
 Add to MetaCart
A certifying algorithm is an algorithm that produces, with each output, a certificate or witness (easytoverify proof) that the particular output has not been compromised by a bug. A user of a certifying algorithm inputs x, receives the output y and the certificate w, and then checks, either manually or by use of a program, that w proves that y is a correct output for input x. In this way, he/she can be sure of the correctness of the output without having to trust the algorithm. We put forward the thesis that certifying algorithms are much superior to noncertifying algorithms, and that for complex algorithmic tasks, only certifying algorithms are satisfactory. Acceptance of this thesis would lead to a change of how algorithms are taught and how algorithms are researched. The widespread use of certifying algorithms would greatly enhance the reliability of algorithmic software. We survey the state of the art in certifying algorithms and add to it. In particular, we start a