10 research outputs found
Deciding Circular-Arc Graph Isomorphism in Parameterized Logspace
We compute a canonical circular-arc representation for a given circular-arc
(CA) graph which implies solving the isomorphism and recognition problem for
this class. To accomplish this we split the class of CA graphs into uniform and
non-uniform ones and employ a generalized version of the argument given by
K\"obler et al (2013) that has been used to show that the subclass of Helly CA
graphs can be canonized in logspace. For uniform CA graphs our approach works
in logspace and in addition to that Helly CA graphs are a strict subset of
uniform CA graphs. Thus our result is a generalization of the canonization
result for Helly CA graphs. In the non-uniform case a specific set of ambiguous
vertices arises. By choosing the parameter to be the cardinality of this set
the obstacle can be solved by brute force. This leads to an O(k + log n) space
algorithm to compute a canonical representation for non-uniform and therefore
all CA graphs.Comment: 14 pages, 3 figure
On the Implicit Graph Conjecture
The implicit graph conjecture states that every sufficiently small,
hereditary graph class has a labeling scheme with a polynomial-time computable
label decoder. We approach this conjecture by investigating classes of label
decoders defined in terms of complexity classes such as P and EXP. For
instance, GP denotes the class of graph classes that have a labeling scheme
with a polynomial-time computable label decoder. Until now it was not even
known whether GP is a strict subset of GR. We show that this is indeed the case
and reveal a strict hierarchy akin to classical complexity. We also show that
classes such as GP can be characterized in terms of graph parameters. This
could mean that certain algorithmic problems are feasible on every graph class
in GP. Lastly, we define a more restrictive class of label decoders using
first-order logic that already contains many natural graph classes such as
forests and interval graphs. We give an alternative characterization of this
class in terms of directed acyclic graphs. By showing that some small,
hereditary graph class cannot be expressed with such label decoders a weaker
form of the implicit graph conjecture could be disproven.Comment: 13 pages, MFCS 201
Separating Algorithmic Thinking and Programming
We show how the first steps of algorithmic thinking and programming can be trained separately. The learner is not assumed to have any prior experience. A general framework and a sequence of training tasks is described and tested in practice with two 10th graders. Both were able to write relatively complex programs using only pen & paper within two days.
To train algorithmic thinking, computational problems are presented as games to the learner. Roughly speaking, a winning strategy corresponds to an algorithm which solves the problem. Thus, if the learner consistently wins the game for various instances then this indicates that they have found an algorithm. We describe a general mechanism to translate a computational problem into such a game. For the programming part, the learner is shown how a program can be constructed from traces. Programs are specified in a language which depends on the underlying model of computation (think of Turing machines, pushdown automata or instruction set architectures); such a model can be seen as a notional machine. The language itself is very simple yet broadly applicable due to the generality of our definition of model of computation
Logical Labeling Schemes
A labeling scheme is a space-efficient data structure for encoding graphs from a particular class. The idea is to assign each vertex of a graph a short label s.t. adjacency of two vertices can be determined by feeding their labels to an algorithm which returns true iff they are adjacent. For instance, planar and interval graphs have labeling schemes. The label decoding algorithm should be of low complexity since the time it takes to execute corresponds to the time to query an edge.
What graph classes have a labeling scheme if the label decoding algorithm must be very efficient, e.g. computable in constant time?
In order to investigate this question we introduce logical labeling schemes where the label decoding algorithm is expressed as a first-order formula and consider their properties such as the relation to regular labeling schemes. Additionally, we introduce a notion of reduction between graph classes in terms of boolean formulas and show completeness results
Separating Algorithmic Thinking and Programming
We describe an approach to teaching algorithmic thinking and programming and the first experiences that we made with it in practice. The idea is to present computational problems as a certain kind of game that the learner can play in order for them to develop a concrete idea of what constitutes an algorithm. The purpose of this is to emphasize that one can think of algorithms independently of a particular programming language. For the programming part a mini language called machine programs and a method to construct such programs from traces is described
Computational complexity aspects of implicit graph representations
Implicit graph representations are immutable data structures for restricted classes of graphs such as planar graphs. A graph class has an implicit representation if the vertices of every graph in this class can be assigned short labels such that the adjacency of two vertices can be decided by an algorithm which gets the two labels of these vertices as input. A representation of a graph in that class is then given by the set of labels of its vertices. The algorithm which determines adjacency is only allowed to depend on the graph class. Such representations are attractive because they are space-efficient and in many cases also allow for constant-time edge queries. Therefore they outperform less specialized representations such as adjacency matrices or lists and are even optimal in an asymptotic sense. In the first part of this thesis we investigate the limitations of such representations when constraining the complexity of an algorithm which decodes adjacency. First, we prove that imposing such computational constraints does indeed affect what graph classes have an implicit representation. Then we observe that the adjacency structure of almost all graph classes that are known to have an implicit representation can be described by formulas of first-order logic. The quantifier-free fragment of this logic can be characterized in terms of RAMs: a graph class can be expressed by a quantifier-free formula if and only if it has an implicit representation where edges can be queried in constant-time on a RAM without division. We provide two reduction notions for graph classes which reveal that trees and interval graphs are representative for certain fragments of this logic. We conclude this part by providing a big picture of the newly introduced classes and point out viable research directions. In the second part we consider the tractability of algorithmic problems on graph classes with implicit representations. Intuitively, if a graph class has an implicit representation with very low complexity then it should have a simple adjacency structure. Therefore it seems plausible to expect certain algorithmic problems to be tractable on such graph classes. We consider how realistic it is to expect an algorithmic meta-theorem of the form ``if a graph class X has an implicit representation with complexity Y then problem Z is tractable on X''. Our considerations quickly reveal that even for the most humble choices of Y and various Z this is either impossible or leads to the frontiers of algorithmic research. We show that the complexity classes of graph classes introduced in the previous chapter can be interpreted as graph parameters and therefore can be considered within the framework of parameterized complexity. We embark on a case study where Z is the graph isomorphism problem and Y is the quantifier-free, four-variable fragment of first order logic with only the order predicate on the universe. This leads to a problem that has been studied independently and resisted classification for over two decades: the isomorphism problem for circular-arc (CA) graphs. We examine how a certain method, which we call flip trick, can be applied to this problem. We show that for a broad class of CA graphs the isomorphism problem reduces to the representation problem and as a consequence can be solved in polynomial-time