Arguably, in GP the independent regressors are the initial variables (i.e., the columns of your regression dataset), which are supplied as terminal nodes. It sounds odd to me to call a tree branch an independent regressor, as it is a transformation of the initial variables.
Note that, in general, your initial variables may not be independent at all. You may want to do some data preprocessing to select the initial variables before trying to generate a regression model.
I am not aware of adjusted R squared computation in Genetic Programming. The easiest approach to me is to use the formula provided in, e.g., https://www.quora.com/What-is-the-difference-between-R-squared-and-Adjusted-R-squared , considering K = number of different initial variables of the GP solution tree. You should think if this makes sense, and which information it provides you.
The predicted R squared is calculated as the normal one, but on data that has not been used by the training phase. In other words, you split your dataset into two, training and test data, use GP on the training data to find a good model (tree), compute the predicted R squared of such model on the test data.
You want the model evolved in the training phase to commit little error on the training, without being overly complicated (i.e., small number of nodes and low K), as simpler models typically generalize better. Look at multi-objective GP for regression.
Your argument for the initial variables being the independent regressors makes sense rather than using the 'no. of branches'. But I think taking the no. of variables in the final GP model should be considered. Suppose a GP model is to be built for 20 variables but say only 13 of them show up in the fittest GP structure. In that case don't you feel no. of independent regressors should be 13 and NOT 20. Of course as you suggest "some data preprocessing to select the initial variables before trying to generate a regression model" (and some variable sensitivity analysis) is perhaps a good way to ensure (but not necessarily guaranteed -- GP being a black box) that all initially selected variables make it to the fittest GP structure.
Sorry for not explaining that clearly enough. That is exactly what I meant:
"considering K = number of different initial variables of the GP solution tree" (that is, 13 in your example).
What do you mean by "GP being a black box"? The final solution, e.g., a tree, can be inspected and read. This is called a white-box model, as you can understand what is going on (unless the number of nodes is so big that it becomes hardly understandable what the tree means). You can easily count the number of unique independent variables.
Also, why would you want to ensure that all the initial variables end up in the final solution? The fact that they are independent does not mean that they are meaningful for the variable to regress.
E.g., let's say you want to regress people height. You have four variable variables: age, race, country of origin, favorite color. Probably, race and country of origin are strongly interdependent, and you may want to only use one of the two (let's say race). Age, race and favorite color are reasonably independent, but favorite color is not a meaningful variable for height. So, ideally, your final model should only use age and race. If it uses favorite color, it is likely overfitting to some noise in your training data, and you will see a lower score in the predicted R squared when testing the model on the test data.