Solution (source code)

= Solution

Abbreviate the <database attributes> by $E,C,B,S,T,O$ for `EventId`, `ConfId`, `BuildingId`, `StartTime`, `EndTime` and `ConfOrganizer`. Write $\mathcal A=\{E,C,B,S,T,O\}$ for the full <relational schema>.

The explicit event assumptions give the <functional dependency>
$$
EC\to BSTO.
$$
I additionally interpret the conference's organizer as a single organizer for the whole conference, giving $C\to O$. This is the natural reading of `ConfOrganizer`, but it is stronger than saying only that each event has one organizer. Under this interpretation a compact generating basis of <functional dependencies> is
$$
\boxed{F=\{EC\to BST,\ C\to O\}.}
$$
There is no premise that an `EventId` is globally unique, that a conference has one building, or that a start time determines an end time. In particular, the single-room requirement for one subtype in part (a) must not be imposed on this entire <database relation>.

To specify \b[all] non-trivial <functional dependencies> without listing every augmented version, the <attribute closure> is
$$
X^+=\begin{cases}
\mathcal A,&\{E,C\}\subseteq X,\\
X\cup\{O\},&C\in X,\ E\notin X,\\
X,&C\notin X.
\end{cases}
$$
Exactly the <functional dependencies> $X\to Y$ with $Y\subseteq X^+$ and $Y\not\subseteq X$ are non-trivial consequences of the assumptions. In particular, $EC$ is the only <candidate key>: both $E$ and $C$ must be present because neither is generated from other <database attributes>.

Every <functional dependency> implies the corresponding <multivalued dependency>. Thus $C\twoheadrightarrow O$ and, by complementation, $C\twoheadrightarrow EBST$ hold. Also $EC\twoheadrightarrow Y$ holds for every $Y\subseteq\mathcal A$, with the usual trivial cases omitted. A complete compact description, including all augmented and complemented cases, is
$$
\boxed{F\models X\twoheadrightarrow Y\quad\Longleftrightarrow\quad
Y\subseteq X^+\ \text{or}\ \mathcal A\setminus(X\cup Y)\subseteq X^+.}
$$
For a non-trivial <multivalued dependency>, additionally require $Y\not\subseteq X$ and $X\cup Y\ne\mathcal A$. To see the criterion, if either side of the split is determined by $X$, swapping that side requires no new <database tuple>. Conversely, if both sides contain a <database attribute> outside $X^+$, choose two <database tuples> agreeing exactly on $X^+$. They satisfy every <functional dependency> in $F$, but a mixed <database tuple> required by the proposed <multivalued dependency> is neither of them. The two-row <database relation> is therefore a counterexample.

There is no independent many-valued fact such as buildings freely combining with event times. For example, two events of one conference might have $(E,B,S,T)=(e_1,b_1,s_1,t_1)$ and $(e_2,b_2,s_2,t_2)$. A <multivalued dependency> $C\twoheadrightarrow B$ would require the building to be swappable independently of the event and its times, which these assumptions do not require and the event <functional dependency> may forbid.

Since $C$ is not a <superkey>, $C\to O$ violates <Boyce-Codd normal form>. The corresponding non-trivial <multivalued dependency> $C\twoheadrightarrow O$ violates <fourth normal form>. Use the decomposition
$$
\boxed{\begin{aligned}
\mathsf{ConferenceOrganizer}&(C,O),\\
\mathsf{EventSchedule}&(E,C,B,S,T).
\end{aligned}}
$$
Their common <database attribute> is $C$, which determines the whole first component. Consequently the decomposition is a <lossless-join decomposition>: each event joins to exactly its own conference's organizer, producing no spurious <database tuples>.

In the first component, the only basic non-trivial <functional dependency> is $C\to O$, whose determinant is a <candidate key>. In the second it is $EC\to BST$, again with a <candidate key> determinant. No independent non-trivial <multivalued dependencies> with determinants that are not <superkeys> are implied in either component, so both are in <fourth normal form>, and therefore in <Boyce-Codd normal form>. This reaches the strongest normal form tested here. The decomposition is a <dependency-preserving decomposition>: $C\to O$ is enforced in the first component, $EC\to BST$ in the second, and together they imply $EC\to O$.

If only the explicitly stated event-level organizer uniqueness is assumed, omit $C\to O$. The basis is then just $EC\to BSTO$; $X^+=\mathcal A$ when $EC\subseteq X$ and $X^+=X$ otherwise. Under those weaker assumptions the original <database relation> is already in <fourth normal form> and <Boyce-Codd normal form>, so no decomposition is necessary. In particular, separating $(C,O)$ under that reading could create extra <database tuples> when different events of one conference have different organizers.