I'm wondering how "haben" and "sein" are used in the future perfect tense.
Say
Ich werde gegessen haben
means "I will have eaten" and it uses "haben".
Then
Wann werden sie gegangen sein?
can mean "When will they have gone?" but it uses "sein".
Are the different usages fixed combinations (i.e. needs to memorize them all), or it's associated with certain type of words / actions (i.e. similar to "where" vs. "go to where")?