1
SQLIntermediate#normalization
Boyce-Codd Normal Form is a stricter 3NF: for every functional dependency X → Y, X must be a super key. It removes anomalies that 3NF can still allow with overlapping candidate keys.
teacher_subject(student, subject, teacher) with teacher → subject violates BCNF. Split into teacher(teacher, subject) and student_teacher(student, teacher).