Bayesian evaluation for the likelihood of Christ's resurrection (Part 42)

Next, consider the factor of 24 that we used, as the ratio between the level of evidence for Jesus's resurrection, and that of the runner-up. This, too, was a very conservative estimate, which favors the skeptic's case.

You'll recall that the runners-up were Aristeas and Krishna, with Apollonius falling not too far behind. In previously reviewing each of these cases, I noted that I was being quite generous in granting them their level of evidence. I felt that there was essentially no evidence, but wanted to express the fact that at least someone had said something - so I somewhat arbitrarily assigned the "some people say..." level of evidence as 1/10th of a single, solid, historic person's sincere testimony. Then, the three people named above then got a multiplier on top of that to account for some additional details.

Of course, this is an overestimate of the "some people say..." level of evidence. Would you believe ten people with "some people say..." stories, over a single person who's giving a sincere, personal testimony? Consider some thought experiments. What would you think of ten people who say, "a friend of a friend whose uncle works for the US government tells me that some people say that the president has been contacted by aliens"? How would that compare with a single witness who sincerely and consistently says "I was there when the aliens contacted the president. It really happened"? If you were a journalist, which source would you cite in your article? If you needed more information, who would you talk to?

Another way to see that the "some people say..." level of evidence is relatively worthless is to observe how common it is. Indeed, this is tied in with the fact that the great number of such evidence throughout history works as evidence FOR the resurrection. We have seen that there is at least 50, and likely hundreds or thousands of such "some people say..." reports for a resurrection. In contrast, none of these non-Christian accounts has even a single, historical person claiming that they personally witnessed the resurrection. This speaks to the relative worth of a single personal testimony over hundreds or thousands of "some people say..." reports.

And remember that this whole time, for the Christian case, we've only been considering the people mentioned in 1 Corinthians 15. This doesn't give many people the full weight their testimonies deserve (John, for example, should be counted more like Peter than just a member of the Twelve), and doesn't take some groups of people (like the women at the cross) into account at all.

All told, the level of evidence for Jesus's resurrection is far greater than 24 times that of the runner up. Using 24 as the factor is a very conservative, pro-skeptical choice.

I've also touched upon the number of "outliers" - the number of resurrection reports with a "some people say..." level of evidence. I've cited 50 such reports, and have used 50 in the calculation as the number of outliers. But as I mentioned, this is a vast underestimate. It comes from a very limited subsample of all the stories in world, reachable by a few minutes with Google in English. The true number of such outliers could easily be in the hundreds or thousands. So this, too, was chosen to favor the skeptical case. In reality, the actual number of outliers would favor the resurrection.

There's still more. Note that, for the "skeptic's distribution", we've integrated out to infinity to get the probability of it explaining the level of evidence for Jesus's resurrection. Strictly speaking, this is an improper way to calculate the Bayesian likelihood. The correct way would be to calculate the probability for the "skeptic's distribution" getting the ACTUAL level of evidence for Jesus's resurrection, rather than calculating the probability of it EXCEEDING that level of evidence. Of course, doing it correctly makes the likelihood smaller, because you're giving up all of that probability out to infinity in the long tail.

The Christian hypothesis must face the same treatment, of course. So its Bayesian likelihood would also drop. But this will not as detrimental as it is for the "skeptic's distribution", because the Christian hypothesis more narrowly focuses the distribution of evidence around the actual value. That is to say, if Jesus did really rise from the dead, it's quite likely for that to have left the amount of evidence that we actually find, while there's good reasons for it to be not that much greater. On the other hand, a long-tailed "skeptic's distribution" would extend on out to infinity - with the consequence that it must pay when the band narrows to the actual amount of evidence we have.

You can argue that the "skeptic's distribution" need not extend on out to infinity - but that just means you're arguing that the "skeptic's distribution" does not follow a power law, instead following another distribution with a stubbier tail. So either the "skeptic's distribution" does worse because it's actually a "stubbier" distribution than a power law, or because it loses its probability mass when we force it to focus around the amount of evidence we actually have in history. In any case, our previous calculation was one that favored the skeptic's case.

Lastly, it's very important to realize that our entire argument about the "skeptic's distribution" only takes the AMOUNT of evidence into account. It argues that no possible effect - not even the ones with a near-total dependence in the evidence (e.g. conspiracy theories) - could falsely generate the amount of evidence for Jesus's resurrection.

Of course, Jesus's resurrection has more than just the sheer AMOUNT of testimonies going for it. We have not yet considered any of the evidence that Christianity has that specifically counters hypotheses like conspiracy theories. These evidence must be considered on top of the mere existence of the numerous testimonies to Jesus's resurrection.

Now, recall that nearly all of the remaining possibility for the skeptic was in crackpot theories like conspiracies. So these evidence against crackpot theories apply nearly their entire weight against the remaining probability for the skeptic. Considering these anti-crackpot evidence would strongly shift the conclusion towards Christianity.

So we see that "even odds" for Jesus's resurrection really is a minimum. It's a value derived by severely discounting and ignoring huge realms of evidence for the resurrection, while granting the skeptic's case every reasonable allowance. The actual odds would be far more favorable towards Christianity.

Next week, we calculate what such "actual odds" may realistically be.


You may next want to read:
Human laws, natural laws, and the Fourth of July
History, moral progress, and moral perfection (part 2)
Another post, from the table of contents

Bayesian evaluation for the likelihood of Christ's resurrection (Part 41)

We have established that the resurrection has, at a minimum, even odds of having taken place. Let us retrace our steps and demonstrate that this is, in fact, the minimum.

Looking back, we see that our first decision was to choose a power law distribution as the "skeptic's distribution". As we mentioned when we made the choice, this is the most pro-skeptical choice we can make that fits the facts. Power law distributions have one of the longest possible tails, which can decay very slowly. They're fully capable of a "black swan" event. Furthermore, they're ubiquitous in human behavior, in that they're naturally generated when an increase in a value depends on the value itself. For this reason, the distributions of personal wealth, city sizes, and website popularity all follow a power law distribution. It's therefore appropriate to use it to model the buildup of evidence through possibilities like conspiracy theories or religious mass delusions.

However, there are excellent reasons to believe that the true "skeptic's distribution" will die off more quickly than a power law distribution, especially when we extend it to 24 times the maximum observed value. You see, few power law distributions can actually extend off to infinity - some external factor will intervene to cut off the distribution at very large values.

Consider city sizes, which we just mentioned. The population of cities follows a power law, and this holds up pretty well as long as we consider populations up to tens of millions of people. However, if we try to extend this out to infinity, the distribution no longer holds. We run into external factors which limit city sizes, such as the total population of humanity or the logistics of city growth in a given geography. For example, the largest city in South Korea is Seoul, with about 10 million people. A city 24 times larger than that would have over 200 million people - much larger than the total population of South Korea, which is only 50 million. Such a South Korean city cannot exist - not because its probability would be too small according to the power law distribution, but because it runs into external factors, like the fact that a city cannot be larger than the country to which it belongs. That is to say, the power law distribution for city sizes is limited, or cut off, at the long tail.

You can imagine similar arguments for personal wealth and website popularity. An individual cannot actually have "all the money in the world", and a website cannot be linked from more websites than the number that actually exist. Likewise, naturalistically generated evidence for resurrection stories cannot follow a power law distribution out to infinity. Other, external factors will cut off or strongly attenuate the probability as such resurrection stories gains more momentum.

For this reason, the true "skeptic's distribution" is almost certainly something that looks like a power law over the actually existing samples, but decays more quickly thereafter. A number of distributions - like a log-normal distribution or a power law with an exponential cutoff - follow this behavior. In each case, these other distributions with their "shorter" tails would help the resurrection case. So adopting a generalized Pareto distribution, which is a genuine power law all the way out to infinity, was therefore the most pro-skeptical choice we could have made.

Next, we considered evenly-spaced shape parameters, in intervals of 0.02, for our distribution. That is to say, we chose a uniform distribution over the shape parameter as our prior. Again, this almost certainly unduly favors skepticism. Consider what such a prior distribution means: the true shape parameter would be 1000 times more likely to be between 1000 and 2000 than between 0 and 1. It would be infinitely more likely to be greater than 1 than to be less than 1. Remember that a larger shape parameter favors the skeptic's case, and we have chosen a prior that favors these larger values. It is only through the weight of the evidence that this prior distribution gets reigned in, but choosing such a biased prior still biases the end results.

The more common and reasonable choice of prior in such circumstances is to consider shape parameters which increase linearly in their logarithms. For example, we may consider shape parameters like 0.01, 0.1, 1, 10, 100, and so on. The idea is that we don't know what the order of magnitude of the shape parameter would be, and therefore consider each order of magnitude equally. Of course, such a prior favors the smaller shape parameters compared to the uniform distribution that we actually used, meaning that it helps the case for the resurrection. So once again, our choice of evenly-spaced shape parameters was the most pro-skeptical choice we could have made.

Next, we considered the maximum value of 1e9 samples drawn from our "skeptic's distribution". That value of 1e9 was chosen as the number of "reportable deaths" in world history. That is, this is the number of deaths that had a chance to be witnessed, documented, or told about in a story. It excludes those deaths where nobody could have made a statement about that death, even if a genuine resurrection took place.

But a moment's reflection shows that this number is too small. Only 1e9 - one billion - "reportable deaths" in world history? More people than that have died just in the last century, and virtually all of these deaths have been "reportable" according to the definition above. Surely a more realistic figure would easily be above 1e10.

This is important, because this sets an upper bound on the probability of generating a Jesus-level resurrection report. A report with the most evidence out of 1e9 samples has a probability of about 1e-9 of being generated. The most evidence out of 1e10 samples would correspondingly have a probability around 1e-10. We then calculate the chances of generating a report with 24 times more evidence.

It's clear that the larger the number of samples, the smaller the probability of generating a report with a level of evidence comparable to the maximal sample. The probability of beating that by a factor of 24 is smaller still. So, the more samples we use, the smaller the probability for the "skeptic's distribution" generating a Jesus-level resurrection report. In other words, using 1e9 as the number of "reportable deaths" was a pro-skeptical choice. The true value is definitely much larger - easily above 1e10. And using this true value would only strengthen the case for the resurrection.

In the next post, we will continue going over more reasons why our previous calculation gives the minimum possible probability value for the resurrection.


You may next want to read:
Christians, read your Bibles
Come visit my church
Another post, from the table of contents

Bayesian evaluation for the likelihood of Christ's resurrection (Part 40)

In the previous post, we demonstrated that the likelihood for Christ's resurrection came down to the number of "outliers" we can find in world history - where "outliers" are the other, non-Christian "resurrection" reports with at least a "some people say..." level of evidence behind them. The more such low-evidence cases we find, the more firmly it establishes that low level as the likely maximum for a naturalistically generated resurrection report. The high level of evidence for the resurrection of Jesus Christ then become correspondingly less explicable by naturalistic means, so the resurrection itself becomes more likely.

So, how many such "outliers" can we find? Here is a partial list, including the ones we have already covered:

Aristeas (ancient Greek Poet)
Apollonius of Tyana (Greek philosopher)
Krishna (Hindu god)
Zalmoxis (ancient Greek god)
Osiris (ancient Egyptian god)
Dionysus (ancient Greek god)
Bodhidharma (Buddhist monk)
Puhua (Buddhist monk)
Horus (ancient Egyptian god)
Ba'al (Canaanite god)
Melqart (Phoenician god)
Adonis (ancient Greek god)
Eshmun (Phoenician god)
Tammuz (Sumerian god)
Attis (Phrygian god)
Baldr (Norse god)
Quetzalcoatl (Aztec god)
Izanami-no-Mikoto (goddess in Japanese mythology)
Ishtar (Mesopotamian goddess)
Eurydice (nymph in Greek mythology)
Persephone (ancient Greek goddess)
Asclepius (ancient Greek god/healer)
Hippolytus, son of Theseus (character in Greek mythology)
Cyclopes (character in Greek mythology)
Achilles (ancient Greek hero)
Memnon (ancient Greek hero)
Castor (character in Roman mythology)
Alcmene (character in Greek mythology)
Heracles (ancient Greek hero)
Melicertes (character in Greek mythology)
Romulus (mythic founder of Rome)
Cleitus (character in Greek mythology)
Cycnus, son of Ares (character in Greek mythology)
Cycnus, king of Kolonai (character in Greek mythology)
Cycnus, friend of Phaethon (character in Greek mythology)
Cycnus, son of Apollo (character in Greek mythology)
Odin (Norse god)
Augustus (Roman emperor)
Peregrinus Proteus (Greek philosopher)
Rabbit Boy (character in native American mythology)
Arrow Boy (character in native American mythology)
Man-eagle (character in native American mythology)
Judah the Prince (Jewish rabbi)
Kabir (Indian mystic poet)
He Xiangu (Chinese immortal)
Li Tieguai (Chinese immortal)
Zhang Guolao (Chinese immortal)
People resurrected by Zhongli Quan (associates of a Chinese immortal)
Ye Fashan (Chinese immortal)
Sabbatai Zevi (Jewish rabbi, messiah claimant)

I'm going to stop here - not because I've exhausted such "outliers", but because this is quite enough. The above list contains 50 people who are claimed to have been "resurrected" in some form, with about a "some people say..." level of evidence behind them. And as we saw previously, 50 outliers is enough to reduce the probability for a naturalistic explanation to around 4e-12.

Now, recall that the Christian explanation for the level of evidence for Christ's resurrection is of order unity. Recall also that the prior against the resurrection was set at 1e-11. Combining all this gives a Bayes' factor of greater than 1e11 against a prior of 1e-11 - that is, Jesus's resurrection has better than even odds of having occurred.

Notice that the procedure that got us here outlines the worst case scenario for the resurrection. For example, I stopped the above list of "outliers" 50 only because it was getting tedious to write more. The above list was obtained with just a little bit of Googling, mostly from stories that are readily available online, accessible to a culturally western, English-speaking audience. How many such "outliers" are there in total, throughout all of world history? I would easily imagine it to be in the hundreds, if not thousands.

So, "better than even odds" is the absolute least that can be said for Christ's resurrection. The next post will go back over the procedure that got us to this point - and demonstrate that, in fact, the worst case scenario for the resurrection had been assumed at every point.


You may next want to read:
"Simon, son of John, do you love me?"
Can God make a rock so heavy that he cannot lift it?
Another post, from the table of contents

Bayesian evaluation for the likelihood of Christ's resurrection (Part 39)

This is a jupyter notebook. It contains the python code which generates the relationship between the number of "outliers" (as previously defined) and the probability of naturalistically generating a Jesus-level resurrection report. resurrection_calculation

First, we import some modules:

In [1]:
%matplotlib inline
import numpy as np
import pandas as pd
from scipy.stats import genpareto

Next, we write the function to simulating getting the maximum value out of n samples from a given distribution:

In [2]:
def max_out_of_n_from_dist(dist, out_of_n=1e9):
    manageable_n = 100000
    if out_of_n <= manageable_n:
        return dist.rvs(out_of_n).max()
    else:
        top_percentiles = \
            np.random.rand(manageable_n) * manageable_n / out_of_n
        return dist.isf(top_percentiles).max()

Next, we consider generalized Pareto distributions with the shape parameters between 0.02 to 2.1, in increasing intervals of 0.02. That is, we consider shape paramters of 0.02, 0.04, 0.06 ... 2.1.

We then simulate getting the maximum value out of 1e9 samples drawn from these distributions. We next calculate how many "outliers" would exist given that maximum value and that distribution. Lastly, we calculate the probability of drawing a sample whose value is 24 times greater than the maximum value. This is the probability of "naturally" generating a Jesus-level resurrection report for that distribution.

We repeat this 10000 times for each of the 105 shape parameters between 0.02 and 2.1, and put it all in a table. The result is a table with 1050000 rows, whose columns are the shape parameter, the number of outliers, and the probability of drawing a sample 24 times greater than the maximum.

The following code gives us this results table.

In [3]:
sample_size = int(1e9)
genpareto_shapes = np.linspace(0.02, 2.1, 105)
shape_params = []
prob_24max = []
n_outliers_estimation = []

for shape_param in genpareto_shapes:
    dist = genpareto(shape_param, scale=1, loc=0)
    for i in range(10000):
        shape_params.append(shape_param)
        max_val = max_out_of_n_from_dist(dist, sample_size)
        prob_24max.append(dist.sf(max_val * 24))
        p_outlier = (dist.sf(max_val * 0.2) - dist.sf(max_val)) \
            / dist.cdf(max_val)
        n_outliers_estimation.append(
            int(round(p_outlier * sample_size)))

genpareto_results_df = pd.DataFrame({
    "shape_params":shape_params, 
    "prob_24max":prob_24max,
    "n_outliers":n_outliers_estimation,
})

#save to .csv, as generating this takes a while
genpareto_results_df.to_csv(
    "genpareto_results_df.csv", encoding="utf-8")

Let's load up the results and see the first few rows:

In [4]:
genpareto_results_df = pd.read_csv(
    "genpareto_results_df.csv", encoding="utf-8"
).drop("Unnamed: 0", 1)
In [5]:
print genpareto_results_df.shape
genpareto_results_df.head()
(1050000, 3)
Out[5]:
n_outliers prob_24max shape_params
0 6579077 1.547543e-57 0.02
1 7069940 3.123026e-57 0.02
2 6141769 7.974702e-58 0.02
3 6608791 1.616688e-57 0.02
4 3459940 4.204358e-60 0.02

So, let's say that in reality, there are only 10 "outliers". Now, this does not narrow down the possibilities to a single shape parameter. Just due to chance, you can get 10 "outliers" from a shape parameter of 0.5, and also from a shape parameter of 1.5. However, the 10 "outliers" does narrow things down enough to give us a distribution over shape parameters. This is an improvement over our prior knowledge about the shape parameters, which was that we had no idea what it might be.

How could we get this posterior distribution of the shape parameters? All we need to do is to take the subset of the results table where the number of outliers is exactly 10, and look at the shape parameters. This satisfies Bayes' theorem, and gives us a posterior distribution that looks like this:

In [14]:
genpareto_results_df[genpareto_results_df["n_outliers"] == 10]\
    ["shape_params"].hist(bins=99).set_xlabel("shape parameters")
Out[14]:
<matplotlib.text.Text at 0x12e4bb38>

Let's continue with the same reasoning. The probability of generating a Jesus-level resurrection report, averaged over the shape parameters in the distribution above, would simply be the average of that probability over the subset of the results table where the number of outliers is exactly 10:

In [7]:
genpareto_results_df[genpareto_results_df["n_outliers"] == 10]\
    ["prob_24max"].mean()
Out[7]:
8.840657596227429e-11

Note that, for the distribution over shape parameters, we run into the upper limit of 2.1. Meaning that the actual distribution extends to higher values of the shape parameter, and the probability of achieving a Jesus-level resurrection report would actually be higher.

Of course, there's almost certainly more than 10 "outliers" in world history. So this will not matter for our actual calculation. But it does show us that we have to be careful about bumping into the edges of our range of shape parameters. We also have to worry about the decay rate of the distribution over shape parameters, as it goes off to the right. Thankfully, it turns out that it decays quickly enough that we can simply ignore it after a certain point. The probability density beyond a shape parameter of 2.1 is negligible once we go a little bit beyond 10 "outliers". Demonstrating this is left as an exercise for the reader.

So, what if there are more outliers, like 50? That would make for the following posterior distribution over shape parameters:

In [8]:
genpareto_results_df[genpareto_results_df["n_outliers"] == 50]\
    ["shape_params"].hist(bins=100).set_xlabel("shape parameter")
Out[8]:
<matplotlib.text.Text at 0xc03cba8>

And the probablity of generating a Jesus-level resurrection report would be:

In [9]:
genpareto_results_df[genpareto_results_df["n_outliers"] == 50]\
    ["prob_24max"].mean()
Out[9]:
4.428207171511614e-12

What if there are 250 outliers? Then the distribution over shape parameters looks like this:

In [10]:
genpareto_results_df[genpareto_results_df["n_outliers"] == 250]\
    ["shape_params"].hist(bins=100)
Out[10]:
<matplotlib.axes._subplots.AxesSubplot at 0x10e1c780>

And the probablity of generating a Jesus-level resurrection report would be:

In [11]:
genpareto_results_df[genpareto_results_df["n_outliers"] == 250]\
    ["prob_24max"].mean()
Out[11]:
1.5911343547015349e-13

We can clearly see that the number of "outliers" controls the probability of generating a Jesus-level resurrection report. Here is how the two quantities are related:

In [12]:
outliers_p24max = genpareto_results_df[
    genpareto_results_df["n_outliers"] < 100
].groupby("n_outliers")["prob_24max"].mean()

outliers_p24max.reset_index().plot(
    kind="scatter", x="n_outliers", y="prob_24max",
    xlim=(0,100), ylim=(0, 2e-10)
)
Out[12]:
<matplotlib.axes._subplots.AxesSubplot at 0xd5254a8>

The abnormal values around n_outliers < 5 is due to the "shape parameter exceeding 2.1" problem mentioned earlier. It quickly becomes a non-issue as the number of outliers increases.

Looking at the rest of the graph, we see that the probability of generating a Jesus-level resurrection report drops as the number of "outliers" increases. Having MORE non-Christian resurrection reports (that is, having more "outliers") makes the skeptic LESS able to explain Jesus's resurrection, and therefore makes it MORE likely - exactly as we said before.


So, the question now just comes down to this: how many "outliers" can we find in world history? Recall that anyone with a "some people say..." level of evidence for their resurrection counts as an outlier. The more such people we can find, the more firmly Christ's resurrection is established. Can we find enough such people to overcome the low prior probability against a resurrection?

We'll get to that in the next post.


You may next want to read:
Basic Bayesian reasoning: a better way to think (Part 1)
The role of evidence in the Christian faith
Another post, from the table of contents