wiki_research

personal research wiki
git clone https://a3nm.net/git/wiki_research/
Log | Files | Refs

commit 2d2ad7228a6d9691982621ee08a72e0367a69a34
parent b508197fc3be90990b0da7ea8122c3ee05801581
Author: Antoine Amarilli <a3nm@a3nm.net>
Date:   Sat, 21 Jun 2025 20:14:58 +0200

commit with codex

Diffstat:
core | 2+-
cq_minimization | 11+++++++++++
crpq | 19+++++++++++++------
crpq_containment | 2++
crpq_expansion | 11+++++++++++
crpq_fully_contracted | 6++++++
crpq_internal_variable | 5+++++
crpq_minimal | 10++++++++++
crpq_minimization | 14++++++++++++++
crpq_redundant_atom | 6++++++
crpq_segment | 8++++++++
embedding | 5+++++
graph_embedding | 2+-
homomorphism | 1+
minimization | 2+-
query_minimization | 9+++++++++
semantic_treewidth | 2+-
ucrpq | 10++++++++++
ucrpq_containment | 9+++++++++
ucrpq_minimization_problem | 15+++++++++++++++
ucrpq_strongly_minimal | 11+++++++++++
21 files changed, 150 insertions(+), 10 deletions(-)

diff --git a/core b/core @@ -18,6 +18,6 @@ The [core] of an [instance] A is a [subinstance] B of A such that there is no [h Up: [homomorphism] -See also: [chase_core] +See also: [chase_core], [CQ_minimization] Aliases: cores diff --git a/cq_minimization b/cq_minimization @@ -0,0 +1,11 @@ +# CQ minimization + +The *CQ minimization* problem is the [query_minimization] problem on [CQs] + +Can be done by a [greedy_algorithm], as explained in [morvan2025homomorphism] p17 among other places: iteratively remove [variables] while the resulting [query] (on an [induced_substructure]) is still [query_equivalent] + +The result is unique up to [isomorphism]: it is called the [core] of Q. It also minimizes the number of [atoms], the [pathwidth], and the [treewidth] + +Up: [query_minimization] + +Aliases: minimization_conjunctive_query diff --git a/crpq b/crpq @@ -1,13 +1,20 @@ # CRPQ -- [c2rpq] -- [ucrpq] -- [rpq] -- [conjunctive_query] +[Special_cases]: +- [RPQ] +- [CQ] -[Generalization]: [conjunctive_context_free_path_query] +[Generalizations]: +- [C2RPQ] +- [UCRPQ] +- [conjunctive_context_free_path_query] -- [crpq_containment] +[Computational_problems]: +- [CRPQ_containment] +- [CRPQ_minimization] + +Concepts: +- [CRPQ_expansion] Up: [graph_query_languages] diff --git a/crpq_containment b/crpq_containment @@ -5,3 +5,5 @@ [beaudou2023complexity] Up: [crpq], [query_containment] + +See also: [UCRPQ_containment] diff --git a/crpq_expansion b/crpq_expansion @@ -0,0 +1,11 @@ +# CRPQ expansion + +An *expansion* of a [CRPQ] Q is a [CQ] obtained from Q by replacing each [atom] A by a [path] for some [word] of the [formal_language] that labels A + +An *expansion* of a [UCRPQ] Q is an expansion of some disjunct of Q + +Up: [crpq] + +See also: [Crpq_minimization] + +Aliases: UCRPQ expansion diff --git a/crpq_fully_contracted b/crpq_fully_contracted @@ -0,0 +1,6 @@ +# CRPQ fully contracted + +A [CRPQ] is *fully contracted* if every [CRPQ_segment] consists of precisely one [atom] +- defined in [morvan2025homomorphism] p94 + +Up: [crpq_minimization] diff --git a/crpq_internal_variable b/crpq_internal_variable @@ -0,0 +1,5 @@ +# CRPQ internal variable + +A [variable] in a [CRPQ] which has [in_degree] 1 and [out_degree] 1 and is not an [output_variable] + +Up: [crpq_segment] diff --git a/crpq_minimal b/crpq_minimal @@ -0,0 +1,10 @@ +# CRPQ minimal + +A [CRPQ] Q is *minimal* if there is no [query_equivalent] [CRPQ] having less [atoms] than Q +- defined in [morvan2025homomorphism] p93 + +Corollary IV.2.9 of [morvan2025homomorphism]: every [strongly_minimal_CRPQ] is minimal + +Up: [crpq_minimization] + +Aliases: minimal CRPQ, minimal CRPQs diff --git a/crpq_minimization b/crpq_minimization @@ -0,0 +1,14 @@ +# Crpq minimization + +The [computational_problem] of computing from a [CRPQ] Q a [CRPQ_minimal] which is [query_equivalent] to Q + +Covered in [morvan2025homomorphism] + +Formal [decision_problem] for [UCRPQs]: [UCRPQ_minimization_problem] + +Notions: +- [CRPQ_fully_contracted] +- [CRPQ_non_redundant] +- [CRPQ_strongly_minimal] + +Up: [crpq], [query_minimization] diff --git a/crpq_redundant_atom b/crpq_redundant_atom @@ -0,0 +1,6 @@ +# Crpq redundant atom + +An [atom] in a [CRPQ] is *redundant* if removing it results in a [query_equivalent] [CRPQ] +- defined in [morvan2025homomorphism] p94 + +Up: [crpq_minimization] diff --git a/crpq_segment b/crpq_segment @@ -0,0 +1,8 @@ +# CRPQ segment + +A [crpq_segment] is a maximal path of [atoms] of a [CRPQ] where every intermediate [variable] is a [CRPQ_internal_variable] +- defined in [morvan2025homomorphism] p93 + +Up: [crpq_fully_contracted] + +Aliases: CRPQ segments diff --git a/embedding b/embedding @@ -0,0 +1,5 @@ +# Embedding + +An [injective] [homomorphism] + +Up: [homomorphism], [injective] diff --git a/graph_embedding b/graph_embedding @@ -9,4 +9,4 @@ Up: [graph] Aliases: graph embeddings -See also: [structure_embedding] +See also: [structure_embedding], [embedding] diff --git a/homomorphism b/homomorphism @@ -9,6 +9,7 @@ Variants: - [automorphism] - [endomorphism] - [morphism] +- [embedding] Up: [mathematics] diff --git a/minimization b/minimization @@ -1,6 +1,6 @@ # Minimization -- [minimization_conjunctive_query], cf [homomorphism] / [core] +- [query_minimization] - [minimization_automaton] - [automaton_minimal] diff --git a/query_minimization b/query_minimization @@ -1,7 +1,16 @@ # Query minimization +The [function_problem], given a [query] Q in a [query_language], of computing a [query] Q' (usually in the same language) which is [query_equivalent] to Q but is "smaller" +- usually smaller number of [atoms] +- but can be another measure, e.g., the [treewidth] + +This problem can be turned into a [decision_problem] by asking, given a [query] Q and integer k, whether there exists a query which is [query_equivalent] to Q but has at most k atoms + +For various [query_languages]: - [CQ_minimization] + - cf [homomorphism] / [core] - [CRPQ_minimization] +- [UCRPQ_minimization] Up: [query_problems] diff --git a/semantic_treewidth b/semantic_treewidth @@ -4,7 +4,7 @@ The semantic treewidth of a [query] Q in a certain [query_class] C is the smalle Can be studied for [query_classes] such as [CQs] or for [UC2RPQs] -Relevant papers: +Relevant [academic_papers]: - [figueira2023approximation], [journal_version] [figueira2024semantic]: - deciding whether a [UC2RPQ] is [query_equivalent] to a [query] of [treewidth] at most k is in [2EXPSPACE] diff --git a/ucrpq b/ucrpq @@ -0,0 +1,10 @@ +# UCRPQ + +A [disjunction] of [CRPQs] + +- [UCRPQ_minimization] +- [UCRPQ_containment] + +Up: [CRPQ] + +Aliases: UCRPQs diff --git a/ucrpq_containment b/ucrpq_containment @@ -0,0 +1,9 @@ +# UCRPQ containment + +The [query_containment] [computational_problem] for [UCRPQs] + +[Academic_papers]: +- Studied in [figeira2025semantic], e.g., Proposition 3.11 +- Reviewed in [morvan2025homomorphism] + +Up: [query_containment], [UCRPQ] diff --git a/ucrpq_minimization_problem b/ucrpq_minimization_problem @@ -0,0 +1,15 @@ +# UCRPQ minimization problem + +[Decision_problem] defined in [morvan2025homomorphism], p91: +- Input: a [UCRPQ] Q and integer k +- Output: is there a [query_equivalent] [UCRPQ] with at most k [atoms] which is equivalent to Q + +For [CRPQs], the problem is [EXPSPACE_hard] ([morvan2025homomorphism], Theorem IV.5.2) and in [2EXPSPACE] ([CRPQ_minimization_upper_bound], [morvan2025homomorphism], Theorem IV.3.1) + +For [UCRPQs], the problem is [EXPSPACE_complete] ([morvan2025homomorphism], Corollary IV.4.7) + +Different from [CRPQ_minimization] in the sense that there are [minimal_CRPQs] that admit a [query_equivalent] [UCRPQ] whose constituent [CRPQs] have fewer [atoms], cf [morvan2025homomorphism] Proposition IV.4.1 + +Up: [crpq_minimization], [decision_problem] + +Aliases: CRPQ minimization problem diff --git a/ucrpq_strongly_minimal b/ucrpq_strongly_minimal @@ -0,0 +1,11 @@ +# CRPQ strongly minimal + +A [UCRPQ] Q is *strongly minimal* if it has a [homomorphism_minimal] [UCRPQ_expansion] whose [core] has a number of [CRPQ_segments] equal to the number of [atoms] of Q + +By Corollary IV.2.9 of [morvan2025homomorphism]: every strongly minimal CRPQ is a [minimal_CRPQ]. But by Proposition IV.2.15 there are [minimal_CRPQs] that are not strongly minimal, for instance x -a^+-> x + +By Corollary IV.2.16 of [morvan2025homomorphism], it is [EXPSPACE_hard] to test whether a [UCRPQ] is strongly minimal + +Up: [crpq_minimization] + +Aliases: strongly minimal CRPQ, strongly minimal UCRPQ