Eu entendo que para converter para BCNF, precisamos levar em consideração todas as violações e decompor conforme necessário com cada FD.
Por exemplo, se tivéssemos R(A,B,C,D) com FD's AB->C, B->D, C->A. Podemos calcular os fechamentos de cada um, {AB}+ = ABCD, {B}+ = BD, {C}+ = CA.
E depois de passar pelo algoritmo, uma decomposição válida em BCNF seria R1(B,D), R2(C,A), R3(B,C).
Onde estou confuso é que, embora essa decomposição pareça correta seguindo o algoritmo, como pode estar correta se a primeira dependência funcional AB-> C não parece ser satisfeita?