[
https://issues.apache.org/jira/browse/CALCITE-7205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18023418#comment-18023418
]
Julian Hyde commented on CALCITE-7205:
--------------------------------------
What you think of “Arrow” as the name of the core data structure? Functional
dependency emerges from it, but isn’t 1-1. You could also create variants like
“single arrow” and “multi arrow” if necessary.
We can also talk more about the algebraic properties of “->” (pronounced
“determines”) e.g. “a -> b” implies “(a, c) -> b” for all c. Because of those
properties, you would only create a few Arrow instances but could derive many
more determines relationships.
> Implement Core FD Algorithm Library for Functional Dependencies
> ---------------------------------------------------------------
>
> Key: CALCITE-7205
> URL: https://issues.apache.org/jira/browse/CALCITE-7205
> Project: Calcite
> Issue Type: Task
> Components: core
> Affects Versions: 1.40.0
> Reporter: Zhen Chen
> Assignee: Zhen Chen
> Priority: Minor
>
> This JIRA primarily provides foundational capabilities for *relational
> algebra and metadata reasoning*.
> *Main Implementations:*
> * Encapsulates functional dependency (FD) sets, supporting basic operations
> such as addition, deletion, and query.
> * Provides algorithms for closure computation, minimal cover, equivalence
> judgment, and candidate key discovery.
> * Supports efficient attribute reasoning and dependency reasoning,
> facilitating use by upper-layer optimizers and metadata modules.
> Please refer to the discussion in the PR for [more
> details|https://github.com/apache/calcite/pull/4540#discussion_r2384265382].
--
This message was sent by Atlassian Jira
(v8.20.10#820010)