In connection with a GAP computation involving the Mathieu
groups M24 and M23, Derek Holt asked for theoretical results
giving the rank of a free subgroup of a free product.
Such a result exists for the finite index case, when the
free factors are finite (which is the case in his example).
Use rational euler characteristics. For a finite group G, this is defined as \chi(G)=1/|G|. For a free product you have \chi(A*B)=\chi(A)+\chi(B)-1. Hence if G is the free product of three cyclic groups of order 3 we have \chi(G)=1/3 + 1/3 + 1/3 - 2 = -1. For subgroups of finite index H\subseteq G we have the rule \chi(H)=|G:H|.\chi(G), so for the kernel K of Derek's map G --> M23 we have \chi(K)=|M23|.\chi(G) = -|M23|. Finally, the euler characteristic of a free group of rank r is \chi(F_r)=1-r, so we recover Derek's result: rank(K)=1-\chi(K)=|M23|+1.