Moonshine.jl: a Julia package for genome-scale model-based ancestral recombination graph inference
Abstract
The ancestral recombination graph (ARG) is the model of choice in statistical genetics to model population ancestries. Software capable of simulating ARGs on a genome scale within a reasonable amount of time are now widely available for most practical use cases. While the inverse problem of inferring ancestries from a sample of haplotypes has seen major progress in the last decade, it does not enjoy the same level of advancement as its counterpart. Up until recently, even moderately sized samples could only be handled using heuristics. In recent years, the possibility of model-based inference for datasets closer to "real world" scenarios has become a reality, largely due to the development of threading-based samplers. This article introduces Moonshine.jl, a Julia package that has the ability, among other things, to infer ARGs for samples of thousands of human haplotypes of sizes on the order of hundreds of megabases within a reasonable amount of time. On recent hardware, our package is able to infer an ARG for samples of densely haplotyped (over one marker/kilobase) human chromosomes of sizes up to 10000 in well under a day on data simulated by msprime. Scaling up simulation on a compute cluster is straightforward thanks to a strictly single-threaded implementation. While model-based, it does not resort to threading but rather places restrictions on probability distributions typically used in simulation software in order to enforce sample consistency. In addition to being efficient, a strong emphasis is placed on ease of use and integration into the biostatistical software ecosystem.
Links & Resources
Authors
Cite This Paper
Fournier, P., Larribe, F. (2025). Moonshine.jl: a Julia package for genome-scale model-based ancestral recombination graph inference. arXiv preprint arXiv:2511.21124.
Patrick Fournier and Fabrice Larribe. "Moonshine.jl: a Julia package for genome-scale model-based ancestral recombination graph inference." arXiv preprint arXiv:2511.21124 (2025).