Небольшой оффтоп, но вдруг пригодится.
Здесь можно обойтись без рекурсии. Операции в кольце вычетов производятся по модулю основания, т.е. результатом является остаток от деления (в вашем случае на 11). Но это даст нам диапазон [0,10], т.к. остаток деления 11 на 11 есть 0. Но 0 и 11 принадлежат к одному классу вычетов (имеют одинаковые остатки при делении на основание), а значит они эквивалентны, и мы можем заменить одно другим, тем самым получив диапазон [11, 1..10]:
z = 11 #основание
def ab(a,b):
res = (a + b) % z
if res == 0:
return z
else:
return res