Answer
See explanation
Work Step by Step
We decompose the given relation:
STUDENT(StudentNumber, StudentName)
PK: StudentNumber
Purpose: one row per student (single-valued student attributes).
Normal form: BCNF (hence 4NF).
SIBLING(SiblingID, SiblingName, Major)
PK: SiblingID (surrogate key)
Purpose: one row per sibling, storing sibling attributes including their major.
Normal form: BCNF and 4NF (no nontrivial FDs or MVDs beyond key).
STUDENT_SIBLING(StudentNumber, SiblingID)
PK: composite (StudentNumber, SiblingID) (or make SiblingID unique and use SiblingID alone if each sibling belongs to exactly one student)
FKs: StudentNumber → STUDENT, SiblingID → SIBLING
Purpose: relates students to their siblings (a student may have many siblings; siblings could be shared if appropriate).
Normal form: BCNF and 4NF.
Why this works: siblings are now full entities with their own Major attribute, so you can ask “what is the major of Alice’s sibling Tom?” without duplicating student-major info or creating anomalies. Each relation has a clear key and contains only attributes that depend on that key, so BCNF/4NF hold.