Get "DNA" of one parent based on its children
Ok, I think I can answer somewhat usefully with the update.
It's helpful in this case to think in terms of sampling alleles. It's true that the cases that you give are not 100% unambiguous, but it is not true that we can't give a somewhat confident estimate. We can still make a statistical prediction of the most probable genotype.
The first thing to note is that you are working with pedigrees. That is, you have parents and multiple children. Pedigrees are great because they allow you to pool information across individuals.
The next thing to note is that your alleles are almost certainly not of uniform frequency in the population. In other words, If I sample a random cow from the herd, the probability of allele $A$ at some arbitrary locus is almost certainly not the same as the probability of allele $G$. You can use that information in inferring the most likely allele. Moreover, you can put a precise number on the probability of any given allele.
The simplest method I can think of is to use genotype likelihoods, to account for pedigree information, and to incorporate the background allele frequency as a prior probability (h/t Vadim for the Bayesian approach).
A likelihood is the probability of some dataset given a specific hypothesis. In other words, your data is your offspring genotypes and your hypothesis would be the different offspring.
In your first example, we can logically rule out alleles other than $AG$. (That's actually not true; you should account for the possibility of genotyping error, but we'll ignore that for now.)
In your second example, we can't logically rule out all but one genotype. But we can say some things nonetheless:

you have said that there are only 2 alleles per locus (i.e. $A$ and $G$ are the only possible alleles).
$A$ and $G$ have distinct frequencies in the population.
we now at least one paternal allele ($G$).

Let's take a simple case of the likelihood application, in which we say that frequency of $Pr(A) = 0.9$ and $Pr(G) = 0.1$ (I am making these numbers up). Now in the ambiguous case:
$$Pr(paternal=GG | offspring\_genotypes=GG,AG) = \\
Pr(offspring\_genotypes = GG,AG|paternal=GG) * Pr(paternal=GG) = \\
Pr(offspring=GG | paternal=GG, maternal=GG) \\
* Pr(offspring=AG | paternal=GG, maternal=AG) * Pr(paternal=GG)
$$
and
$$Pr(paternal=AG | offspring\_genotypes=GG,AG) = \\
Pr(offspring\_genotypes = GG,AG | paternal=AG) * Pr(paternal=AG) = \\
Pr(offspring=GG | paternal=AG, maternal=GG) \\
* Pr(offspring AG | paternal=AG, maternal=AG) * Pr(paternal=AG)
$$
Which evaluate to:
$Pr(paternal GG) = 1.0 * (0.5 * 0.5 + 0.5 * 0.5) * (0.1 * 0.1) = 0.005$
and
$Pr(paternal AG) = (1.0 * 0.5) * (0.5 * 0.5 + 0.5 * 0.5) * (0.5 * 0.1) = 0.0125$
You can see that there are multiple ways for the offspring to get genotypes in the paternal $AG$ case, which is what leads to the terms with addition. Note also that the $Pr(paternal genotype)$ at the end handles the genotype frequency, as all the other terms are conditioned on the parental genotypes.
So in this highly artificial example, we prefer genotype of $AG$ somewhat (note that these likelihoods do not sum to 1.0). But, if we were to alter the genotype frequencies to 50% frequency of each allele, we would get:
$Pr(paternal GG) = 1.0 * (0.5 * 0.5 + 0.5 * 0.5) * (0.5 * 0.5) = 0.125$
and
$Pr(paternal AG) = (1.0 * 0.5) * (0.5 * 0.5 + 0.5 * 0.5) * (0.5 * 0.5) = 0.0625$
and you would come to the opposite conclusion!
So it really matters what the background frequency is, if you choose to consider that term.
You could also think about genotyping error or whatever as part of these calculations.
I am certain that there is a more sophisticated way to do this, that takes better advantage of available information, etc. Maybe I've even made a mistake in the computation- but this is an approach that you might use to infer paternal genotypes.