determines whether the entire pairing is stable

for(man=1;(stable && man<=n);man++)

{

wife = mate(man,mpairs);

individual = mostpreferred(man,mpref);

index = 1;

while(stable &&(individual != wife))

{

individualsmate = mate(individual,

wpairs);

if(prefers(individual,man,

individualsmate,wpriority))

stable = FALSE;

else

{

index++;

individual = nextpreferred(man,

index,mpref);

}

}

individual = mostpreferred(wife,wpref);

index = 1;

while(stable &&(individual != man))

{

individualsmate = mate(individual,

mpairs);

if(prefers(individual,wife,

individualsmate,mpriority))

stable = FALSE;

else

{

index++;

individual = nextpreferred(wife,

index,wpref);

}

}

}