NQCoopBot := defect against X iff X is DefectBot, else cooperate with X
FairBot will cooperate with NQCoopBot, even though FairBot could fairly trivially safely defect.
PrudentBot will also cooperate with NQCoopBot, even though PrudentBot could fairly trivially safely defect.
However, the entire reason why PrudentBot exists is to try to overcome the shortcoming whereby FairBot will cooperate even in situations where the opponent fairly trivially cooperates regardless.
Is there a PrudentBot variant that doesn’t cooperate with NQCoopBot? (Aside from brittle approaches like ‘Will defect against X if either (X == NQCoopBot) or (PrudentBot would defect against X)’ that is.)
Consider the following bot:
NQCoopBot := defect against X iff X is DefectBot, else cooperate with X
FairBot will cooperate with NQCoopBot, even though FairBot could fairly trivially safely defect.
PrudentBot will also cooperate with NQCoopBot, even though PrudentBot could fairly trivially safely defect.
However, the entire reason why PrudentBot exists is to try to overcome the shortcoming whereby FairBot will cooperate even in situations where the opponent fairly trivially cooperates regardless.
Is there a PrudentBot variant that doesn’t cooperate with NQCoopBot? (Aside from brittle approaches like ‘Will defect against X if either (X == NQCoopBot) or (PrudentBot would defect against X)’ that is.)