|< < 34 > >|
closure(R: relation, S: set of columns): assert S ⊆ R.columns C = S for each FD X → Y of R: if X ⊆ C and not(Y ⊆ C): C = C ∪ Y return C