The two marked sides of an isomorphism problem, as structures #
Every problem of the GI degree says “the two marked sides of the instance are
isomorphic”, and every reduction between two such problems runs one gadget on
the pattern side and the same gadget on the host side. The reductions built so
far (DescriptiveComplexity.Problems.DagIso) pay for that shape twice: each
characterization lemma is stated once for the pattern side and once, verbatim,
for the host side.
This file is the first half of the cure. It reads a marked binary relation
inside a structure as a FirstOrder.Language.graph-structure in its own right
(DescriptiveComplexity.sideStructure), and shows that the semantic condition
these problems use – DescriptiveComplexity.RelIsoOn, a bijection of the two
marked sets preserving the relation in both directions – is exactly an
isomorphism of those two structures
(DescriptiveComplexity.relIsoOn_iff_nonempty_sideEquiv).
The point is what it makes statable: a gadget can then be given on single
graphs, where the pattern/host distinction does not exist, and its correctness
asked for in the form “F G ≅ F H implies G ≅ H” – one statement instead of
two mirrored families. The forward implication is free, an interpretation being
functorial (DescriptiveComplexity.FOInterpretation.mapLEquiv).
Nothing here is specific to a vocabulary: the side is given by a unary
predicate and a binary one, so the same lemmas serve
FirstOrder.Language.twoGraphs (patV/patE) and
FirstOrder.Language.twoDags (patV/patArc), whose extra relations the
isomorphism ignores.
A marked relation as a graph #
The marked part of a binary relation, as a structure over the language of graphs: the universe is the marked set, and adjacency is the relation.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
Dependency graph
An isomorphism of the two sides, as structures over the language of graphs.
Equations
Instances For
Dependency graph
The generic property #
Some map is a bijection of the PV-vertices onto the HV-vertices
carrying PE-edges to HE-edges and back: an isomorphism of the two marked
graphs. Compare DescriptiveComplexity.SubgraphIsoOn, which asks only for an
injection and only for the forward implication.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
RelIsoOn transports along an equivalence commuting with the four
predicates.
Dependency graph
RelIsoOn transports along an equivalence, iff version.
Dependency graph
The property is isomorphism of the two marked graphs: a map of the
universe as in DescriptiveComplexity.RelIsoOn is the same thing as an
equivalence of the marked subsets carrying one adjacency relation to the
other.
Dependency graph
The two sides as structures #
The condition is an isomorphism of the two sides, as structures over the language of graphs. This is the form a gadget's correctness is stated against: on single graphs, where no pattern/host distinction exists.