© Popular Mechanics

1 Introduction

Vocal communication is essential to survival and reproduction in many species, as it enables individuals to convey critical information related to predation, resource access, courtship, and social relationships (1). More complex signals, which vary across multiple dimensions, can encode greater amounts of information (2), and redundancy increases the likelihood of successful transmission between signalers and receivers (3). However, elaborate and sustained vocalizations carry considerable costs, including heightened predation risk (4) and increased energetic demands, sometimes up to 2-8 times the resting metabolic rate in certain species (5). Consequently, vocal communication systems experience selection for efficiency (6)—optimizing the benefits they convey relative to the costs of producing them (7, 8)—a concept closely related to the “principle of least effort” in linguistics (9).

One of the simplest ways to increase efficiency is by reducing vocalization time (4). Individuals who convey the same information in less time incur lower metabolic costs (10) and are less likely to be detected by predators and potential prey (4). Vocalization time can evolve in response to factors that alter the relative costs and benefits of communication, like group size (11), as well as physical features that affect vocal production (12). Within species, vocalization time may also change over generations through cultural evolution (i.e., via social learning) (13), and within individuals during ontogeny (14) or as a flexible response to anthropogenic noise (1518), in a way that optimizes efficiency.

In human language, efficiency is often quantified through two linguistic laws that directly relate to vocalization time: Menzerath’s law and Zipf’s law of abbreviation. Imagine a set of sequences (e.g., sentences, words, songs), each composed of multiple elements (e.g., words, phonemes, notes). Menzerath’s law predicts that longer sequences (e.g., songs, words) will be composed of shorter elements (e.g., notes, phonemes) (19). In other words, when production costs increase in one domain (e.g., sequence length) they decrease in another (e.g., element duration). Zipf’s law of abbreviation predicts that more frequently used elements (e.g., notes, phonemes, words) will be shorter in duration (9). Both laws result in an overall reduction in vocalization time, and mathematical modeling work indicates that they emerge from pressure for more efficient communication (2022).

Outside of human language, Menzerath’s law and Zipf’s law of abbreviation have been observed in an increasing number of species, including gibbons (23), African penguins (24), and house finches (25). Comparative studies assessing both Menzerath’s law and Zipf’s law of abbreviation within the same species, however, reveal an interesting discrepancy: the former is always found (2334), whereas the latter only appears in around half of cases (23, 24, 3134). As others have noted, this discrepancy may stem from the laws reflecting different mechanisms or constraints (29, 35).

One hypothesis for this pattern is that Menzerath’s law has primarily physical origins, driven by natural selection for a more efficient vocal apparatus. Menzerath’s law in humans appears to be stronger in spoken than in written language (22, 36), deafened canaries and zebra finches produce songs consistent with the law without hearing adult models (37), and African penguins display the law without engaging in vocal learning (24). In contrast, Zipf’s law of abbreviation may result from a more a complex combination of factors (7). Physical efficiency appears to be important, as common words are shorter and have more easily articulated phoneme sequences (38), but predictability and informativeness may also play a role. Experiments with artificial languages show that Zipfian abbreviation emerges when participants are under pressure to be both informative and fast (39), speakers shorten words when their meaning is predictable from context (40), and information content may predict word length more than frequency in some conditions (41). The two laws, then, may have very different prerequisites. Menzerath’s law might arise wherever vocalizations occur in sequences, regardless of whether learning is involved. In contrast, Zipf’s law of abbreviation may require that elements form distinct categories that vary in predictability and convey meaningful information.

Communicative efficiency is relatively understudied in cetaceans. To my knowledge, Menzerath’s law has only been observed in bottlenose dolphins (31, 33), and Zipf’s law of abbreviation has only been observed in humpback whales and bottlenose dolphins (31, 33, 42). Given cetaceans’ extensive reliance on learned vocalizations for complex social behavior—from courtship in baleen whales to individual recognition and coordination in toothed whales (43)—they offer a valuable research model for efficiency in non-human communication. Additionally, the breadth of data on cetacean vocalizations makes it possible to conduct a meta-analysis, assessing the prevalence and strength of Menzerath’s law and Zipf’s law of abbreviation in a wide range of species using previously published datasets. To-date, comprehensive meta-analyses of these two laws in vocal communication have only been done for human speech, where both appear to be statistical universals (22, 35), and birdsong, where Menzerath’s law is widespread (37) but Zipf’s law of abbreviation is quite rare (44). The aims of this meta-analysis were to (1) determine the prevalence of Menzerath’s law and Zipf’s law of abbreviation in cetaceans, and to (2) directly compare the strength of the laws in cetaceans with spoken human language data—in other words, assess whether vocal efficiency in cetaceans is “language-like”.

In studies of Menzerath’s law in vocal communication, duration is typically measured in one of two ways: (1) from the start to the end of a sound, or (2) from the start of one sound to the start of the next. The first method, which captures only the vocalization time and excludes pauses, is widely used for animal communication (20, 23, 26, 32, 34, 37). I refer to this as the element duration—the difference between a sound’s start and end time. The second method measures the vocalization time including the pause before the next sound. This approach has been used for marmosets (45), bottlenose dolphins (31), and is standard for human speech (22, 36, 46), which is fairly continuous. Large spoken language corpora, such as Glissando (36), Buckeye (22), and DoReCo (46), include the small gaps between phonemes in their duration measurements. More broadly, this measure is the “go-to” for studies of rhythm in humans and animals (47). Following the rhythm literature, I refer to this as the inter-onset interval—the difference between the start of one sound and the start of the next. A couple of studies in treefrogs (27) and geladas (20) have assessed Menzerath’s law using only the pauses between sounds, to supplement analyses of element durations, but this approach is rare and will not be used in this study.

In cetacean vocalizations, element durations are typically used when sequences consist of distinct notes, calls, or elements, with information thought to be encoded in acoustic features like frequency, bandwidth, and timbre (analogous to birdsong, second and third row of Figure 1). In contrast, inter-onset intervals are used when sequences are made up of uniform clicks or pulses, where the rhythmic timing is thought to encode information (analogous to human drumming, fourth and fifth row of Figure 1). It is worth noting that the latter case is quite different from human language (first row of Figure 1), where inter-onset intervals are used because gaps between phonemes are either absent or minimal. However, regardless of the measurement used—element durations or inter-onset intervals—Menzerath’s law reflects the same underlying principle: “the greater the whole the smaller its parts” (19, 48). In other words, when longer sequences are made up of smaller components, the total vocalization time is reduced. A recent study in marmosets illustrates this concept: when individuals were rewarded for producing an increasing number of vocalizations, they maximized their vocal efficiency by reducing both the element durations and inter-onset intervals of their call sequences (45). In this study, the distributions of element durations and inter-onset intervals in whale vocal sequences exhibit the same shape (Supplementary Information), and Menzerath’s law is only slightly different when computed from intervals in both whales (Table 2) and humans (Supplementary Information).

Spectrograms of an English sentence (first row), humpback whale song (second row), killer whale call sequence (third row), Commerson's dolphin burst pulse (fourth row), and sperm whale codas (fifth row) that were included in this study. These recordings include all vocalization types included in Table \@ref(tab:table-datasets). The levels of hierarchy in each vocalization are labeled with text and white bars. The element durations (in humpback whales and killer whales) span from the beginning to the end of a sound, whereas the inter-onset intervals (in Commerson's dolphins and sperm whales) span from the beginning of a sound to the beginning of the next sound. Given the fairly continuous nature of human speech, durations of phonemes and words in the DoReCo corpus are measured from the beginning of a sound to the beginning of the next sound, identically to inter-onset intervals (see [Materials & Methods] for details).

Figure 1: Spectrograms of an English sentence (first row), humpback whale song (second row), killer whale call sequence (third row), Commerson’s dolphin burst pulse (fourth row), and sperm whale codas (fifth row) that were included in this study. These recordings include all vocalization types included in Table 1. The levels of hierarchy in each vocalization are labeled with text and white bars. The element durations (in humpback whales and killer whales) span from the beginning to the end of a sound, whereas the inter-onset intervals (in Commerson’s dolphins and sperm whales) span from the beginning of a sound to the beginning of the next sound. Given the fairly continuous nature of human speech, durations of phonemes and words in the DoReCo corpus are measured from the beginning of a sound to the beginning of the next sound, identically to inter-onset intervals (see Materials & Methods for details).

2 Results

In total, this analysis includes 610,219 elements and intervals from 65,511 sequences, 24 studies, and 16 species (see Table 1). All datasets were suitable for assessing Menzerath’s law. In contrast, Zipf’s law of abbreviation makes predictions about types of elements, and thus requires elements to be categorized into types (29). Only 8 datasets in 5 species were suitable for assessing Zipf’s law of abbreviation (see Table 1), all of which measured element durations rather than inter-onset intervals.

As a comparison with the whale data, I also analyzed spoken language data from DoReCo—a corpus of ~500,000 annotated words (with phonemes) from 51 languages that focuses on small and endangered languages (49) and has been used in previous studies of Menzerath’s law and Zipf’s law of abbreviation (35).

Table 1: The datasets included in this analysis, with whether they are open access, the vocalization category, and whether the sequences are comprised of element durations or inter-onset intervals. All datasets were appropriate for assessing Menzerath’s law, and the subset that were also appropriate for Zipf’s law of abbreviation are denoted in the final column.

Group

Species

Dataset

Open

Vocalization

Type

ZLA

Baleen Whale

Blue Whale

Lewis et al. (2018)

Yes

Songs

Elements

Yes

Bowhead Whale

Erbs et al. (2021)

No

Songs

Elements

Yes

Common Minke Whale

Martin et al. (2022)

Yes

Call Sequences

Intervals

No

Fin Whale

Romagosa et al. (2024)

Yes

Songs

Intervals

No

Wood & Širović (2022)

Yes

Songs

Intervals

No

Best et al. (2022)

Yes

Songs

Intervals

No

Humpback Whale

Schall et al. (2021)

Yes

Songs

Elements

Yes

Schall et al. (2022)

Yes

Songs

Elements

Yes

Owen et al. (2019)

Yes

Phrases

Elements

Yes

North Pacific Right Whale

Crance et al. (2019)

No

Songs

Elements

No

Sei Whale

Macklin et al. (2024)

No

Call Sequences

Elements

No

Cerchio & Weir (2022)

Yes

Call Sequences

Elements

Yes

Toothed Whale

Bottlenose Dolphin

Stepanov et al. (2023)

No

Burst Pulses

Intervals

No

Commerson’s Dolphin

Martin et al. (2021)

No

Burst Pulses

Intervals

No

Heaviside’s Dolphin

Martin et al. (2018)

No

Burst Pulses

Intervals

No

Hector’s Dolphin

Nielsen et al. (2024)

No

Burst Pulses

Intervals

No

Killer Whale

Selbmann et al. (2023)

Yes

Call Sequences

Elements

Yes

Sharpe et al. (2017)

No

Calls

Elements

Yes

Narrow-Ridged Finless Porpoise

Terada et al. (2022)

No

Burst Pulses

Intervals

No

Peale’s Dolphin

Martin et al. (2024)

No

Burst Pulses

Intervals

No

Risso’s Dolphin

Arranz et al. (2016)

Yes

Burst Pulses

Intervals

No

Sperm Whale

Hersh et al. (2022)

Yes

Codas

Intervals

No

Vachon et al. (2022)

Yes

Codas

Intervals

No

Gero et al. (2016)

Yes

Codas

Intervals

No

2.1 Menzerath’s Law

The main model used to test Menzerath’s law was a linear model with the log-transformed element duration or inter-onset interval as the outcome variable, the log-transformed sequence length (i.e., number of element durations or inter-onset intervals in the sequence) as a fixed effect, and sequence ID as a varying intercept to account for the repeated measurements of durations within sequences. This model is directly derived from the Menzerath-Altmann law—a precise and more robust mathematical form of Menzerath’s law (48, 50) (see Materials & Methods for details). Some species had multiple datasets, in which case the study ID was included as a second varying intercept. Here is the main model in Wilkinson notation—standard R model syntax.

\[\begin{equation} \ln(\textrm{duration}) \sim \ln(\textrm{length}) + (1|\textrm{sequence}) \tag{1} \end{equation}\]

The strength of Menzerath’s law in baleen and toothed whale species, computed using Equation (1), can be seen in Figures 2 and 3, respectively (see Supplementary Information for the same plots with transformed axes to match the statistical model). In all baleen whale species, except for the North Pacific right whale, there is a negative relationship between sequence length and element durations or inter-onset intervals consistent with Menzerath’s law. The results are more mixed for the toothed whale species, where only five of the nine exhibit Menzerath’s law. All three dolphins in the Cephalorhynchus genus, as well as killer whales, display a neutral or positive relationship between sequence length and element durations or inter-onset intervals.

#load libraries and data
library(ggtree)
cetaceans <- ape::read.tree("data/phylo_lloyd_2021.tre")

#create table of mysticetes tips
myst_tips <- data.frame(scientific = c("Megaptera_novaeangliae", #humpback
                                       "Balaenoptera_musculus", #blue
                                       "Balaenoptera_physalus", #fin
                                       "Balaenoptera_acutorostrata", #minke
                                       "Balaena_mysticetus", #bowhead
                                       "Eubalaena_japonica", #right
                                       "Balaenoptera_borealis"), #sei whale
                        common = c("Humpback Whale\n(Megaptera novaeangliae)",
                                   "Blue Whale\n(Balaenoptera musculus)",
                                   "Fin Whale\n(Balaenoptera physalus)",
                                   "Common Minke Whale\n(Balaenoptera acutorostrata)",
                                   "Bowhead Whale\n(Balaena mysticetus)",
                                   "North Pacific Right Whale\n(Eubalaena japonica)",
                                   "Sei Whale\n(Balaenoptera borealis)"),
                        img = c("humpback", "blue", "fin", "minke", "bowhead", "right", "sei"))

#create table of odontocete tips
odon_tips <- data.frame(scientific = c("Physeter_macrocephalus", #sperm
                                       "Orcinus_orca", #killer
                                       "Neophocaena_phocaenoides", #narrow-ridged finless porpoise (replaced species name with indo-pacific finless porpoise bc does not exist in phylo)
                                       "Grampus_griseus", #rissos dolphin
                                       "Tursiops_truncatus", #bottlenose dolphin
                                       "Cephalorhynchus_heavisidii", #heavisides dolphin
                                       "Cephalorhynchus_eutropia", #commersons dolphin (replaced species name with close relative bc does not exist in phylo)
                                       "Lagenorhynchus_albirostris", #peales dolphin (replaced species name with close relative bc does not exist in phylo)
                                       "Cephalorhynchus_hectori"), #hectors dolphin
                        common = c("Sperm Whale\n(Physeter macrocephalus)",
                                   "Killer Whale\n(Orcinus orca)",
                                   "Narrow-Ridged Finless Porpoise\n(Neophocaena asiaeorientalis)",
                                   "Risso's Dolphin\n(Grampus griseus)",
                                   "Bottlenose Dolphin\n(Tursiops truncatus)",
                                   "Heaviside's Dolphin\n(Cephalorhynchus heavisidii)",
                                   "Commerson's Dolphin\n(Cephalorhynchus commersonii)",
                                   "Peale's Dolphin\n(Lagenorhynchus australis)",
                                   "Hector's Dolphin\n(Cephalorhynchus hectori)"),
                        img = c("sperm", "killer", "narrow", "rissos", "dolphin", "heavisides", "commersons", "peales", "hectors"))

#subset the original phylogeny to only include the relevant species
mysticetes <- ape::keep.tip(cetaceans, myst_tips$scientific)
odonticetes <- ape::keep.tip(cetaceans, odon_tips$scientific)

#match up the tip labels with the image files
mysticetes$tip.label <- myst_tips$common[match(mysticetes$tip.label, myst_tips$scientific)]
mysticetes$file <- paste0("imgs/", myst_tips$img[match(mysticetes$tip.label, myst_tips$common)], ".svg")
odonticetes$tip.label <- odon_tips$common[match(odonticetes$tip.label, odon_tips$scientific)]
odonticetes$file <- paste0("imgs/", odon_tips$img[match(odonticetes$tip.label, odon_tips$common)], ".svg")

#generate colors for each species
colors <- hues::iwanthue(nrow(myst_tips)+nrow(odon_tips), hmin = 0, hmax = 360, cmin = 0, cmax = 180, lmin = 50, lmax = 60)
#hues::iwanthue(nrow(myst_tips)+nrow(odon_tips), hmin = 0, hmax = 360, cmin = 30, cmax = 80, lmin = 35, lmax = 80)
#set.seed(12)
set.seed(3)
#set.seed(12345)
#set.seed(123)
#set.seed(1234)
colors <- colors[sample(1:(nrow(myst_tips)+nrow(odon_tips)))]

#construct un-annotated phylogeny plot for mysticetes
myst_phylo_plot <- ggtree(mysticetes, branch.length = "none", layout = "roundrect")
myst_phylo_plot$data$file <- c(mysticetes$file, rep(NA, nrow(myst_phylo_plot$data) - nrow(myst_tips)))
myst_phylo_plot <- myst_phylo_plot + 
  geom_tiplab(aes(image = file, color = label), geom = "image", offset = 9, size = 0.06, align = TRUE) + xlim(NA, 13.5) + 
  geom_tiplab(aes(color = label), geom = "label", family = "Avenir", parse = FALSE, align = TRUE, size = 2.5) + 
  scale_color_manual(values = colors[1:nrow(myst_tips)]) + theme(legend.position = "none") + ylim(0.5, nrow(myst_tips))

#construct un-annotated phylogeny plot for odontocetes
odon_phylo_plot <- ggtree(odonticetes, branch.length = "none", layout = "roundrect")
odon_phylo_plot$data$file <- c(odonticetes$file, rep(NA, nrow(odon_phylo_plot$data) - nrow(odon_tips)))
odon_phylo_plot <- odon_phylo_plot + 
  geom_tiplab(aes(image = file, color = label), geom = "image", offset = 21, size = 0.05, align = TRUE) + xlim(NA, 28) + 
  geom_tiplab(aes(color = label), geom = "label", family = "Avenir", parse = FALSE, align = TRUE, size = 2.5) + 
  scale_color_manual(values = colors[(nrow(myst_tips)+1):(nrow(myst_tips)+nrow(odon_tips))]) + theme(legend.position = "none") + ylim(0.5, nrow(odon_tips))

#create plot labels for mysticetes
myst_labels <- c(label_maker(bowhead_data, intervals = TRUE),
                 label_maker(right_data),
                 label_maker(minke_data, intervals = TRUE),
                 label_maker(sei_data),
                 label_maker(blue_data),
                 label_maker(fin_data, intervals = TRUE),
                 label_maker(humpback_data))

#create plot labels for odontocetes
odon_labels <- c(label_maker(sperm_data, intervals = TRUE),
                 label_maker(narrow_data, intervals = TRUE),
                 label_maker(killer_data),
                 label_maker(peales_data, intervals = TRUE),
                 label_maker(bottlenose_data, intervals = TRUE),
                 label_maker(rissos_data, intervals = TRUE),
                 label_maker(heavisides_data, intervals = TRUE),
                 label_maker(commersons_data, intervals = TRUE),
                 label_maker(hectors_data, intervals = TRUE))

#add annotations to mysticetes
myst_phylo_plot <- myst_phylo_plot + annotate("text", label = myst_labels, x = rep(max(myst_phylo_plot$data$x), length(myst_labels)), y = (1:length(myst_labels))-0.35, hjust = 0, family = "Avenir", size = 2.2, lineheight = 0.8)
myst_phylo_plot <- myst_phylo_plot + annotate("text", label = "Baleen Whales (Mysticetes)", x = min(myst_phylo_plot$data$x)-0.65, y = myst_phylo_plot$data$y[which.min(myst_phylo_plot$data$x)], angle = 90, family = "Avenir", size = 3)

#add annotations to odontocetes
odon_phylo_plot <- odon_phylo_plot + annotate("text", label = odon_labels, x = rep(max(odon_phylo_plot$data$x), length(odon_labels)), y = (1:length(odon_labels))-0.35, hjust = 0, family = "Avenir", size = 2.2, lineheight = 0.8)
odon_phylo_plot <- odon_phylo_plot + annotate("text", label = "Toothed Whales (Odontocetes)", x = min(odon_phylo_plot$data$x)-1.4, y = odon_phylo_plot$data$y[which.min(odon_phylo_plot$data$x)], angle = 90, family = "Avenir", size = 3)

#match up the colors between phylogeny and menzerath's law plots based on the labels
color_matching <- data.frame(species = c(myst_phylo_plot$data$label[-which(is.na(myst_phylo_plot$data$label))], odon_phylo_plot$data$label[-which(is.na(odon_phylo_plot$data$label))]), color_code = colors[c(as.numeric(factor(mysticetes$tip.label)), as.numeric(factor(odonticetes$tip.label))+nrow(myst_tips))])

#create menzerath's law plots for each species
blue_plot <- menz_plot(data = blue_data, model = blue_models, color = color_matching$color_code[grep("Blue ", color_matching$species)])
bowhead_plot <- menz_plot(data = bowhead_data, model = bowhead_models, intervals = TRUE, color = color_matching$color_code[grep("Bowhead ", color_matching$species)])
fin_plot <- menz_plot(data = fin_data, model = fin_models, intervals = TRUE, color = color_matching$color_code[grep("Fin ", color_matching$species)])
humpback_plot <- menz_plot(data = humpback_data, model = humpback_models, color = color_matching$color_code[grep("Humpback ", color_matching$species)])
minke_plot <- menz_plot(data = minke_data, model = minke_models, intervals = TRUE, color = color_matching$color_code[grep("Minke ", color_matching$species)])
right_plot <- menz_plot(data = right_data, model = right_models, color = color_matching$color_code[grep("Right ", color_matching$species)])
sei_plot <- menz_plot(data = sei_data, model = sei_models, color = color_matching$color_code[grep("Sei ", color_matching$species)])
killer_plot <- menz_plot(data = killer_data, model = killer_models, color = color_matching$color_code[grep("Killer ", color_matching$species)], effects_axis = c(-0.6, 0.4))
sperm_plot <- menz_plot(data = sperm_data, model = sperm_models, intervals = TRUE, color = color_matching$color_code[grep("Sperm ", color_matching$species)], effects_axis = c(-0.6, 0.4))
narrow_plot <- menz_plot(data = narrow_data, model = narrow_models, intervals = TRUE, color = color_matching$color_code[grep(" Porpoise", color_matching$species)], effects_axis = c(-0.6, 0.4))
rissos_plot <- menz_plot(data = rissos_data, model = rissos_models, intervals = TRUE, color = color_matching$color_code[grep("Risso's ", color_matching$species)], effects_axis = c(-0.6, 0.4))
bottlenose_plot <- menz_plot(data = bottlenose_data, model = bottlenose_models, intervals = TRUE, color = color_matching$color_code[grep("Bottlenose ", color_matching$species)], effects_axis = c(-0.6, 0.4))
heavisides_plot <- menz_plot(data = heavisides_data, model = heavisides_models, intervals = TRUE, color = color_matching$color_code[grep("Heaviside's ", color_matching$species)], effects_axis = c(-0.6, 0.4))
commersons_plot <- menz_plot(data = commersons_data, model = commersons_models, intervals = TRUE, color = color_matching$color_code[grep("Commerson's ", color_matching$species)], effects_axis = c(-0.6, 0.4))
peales_plot <- menz_plot(data = peales_data, model = peales_models, intervals = TRUE, color = color_matching$color_code[grep("Peale's ", color_matching$species)], effects_axis = c(-0.6, 0.4))
hectors_plot <- menz_plot(data = hectors_data, model = hectors_models, intervals = TRUE, color = color_matching$color_code[grep("Hector's ", color_matching$species)], effects_axis = c(-0.6, 0.4))

#create and save full phylogeny plot for mysticetes
png("plots/myst_phylo.png", width = 6, height = nrow(myst_tips), units = "in", res = 600)
#svglite::svglite(filename = "plots/myst_phylo.svg", width = 6, height = nrow(myst_tips))
right_panel <- cowplot::plot_grid(humpback_plot, fin_plot, blue_plot, sei_plot, minke_plot, right_plot, bowhead_plot, NULL,
                                  ncol = 1, rel_heights = c(rep(1, nrow(myst_tips)), 0.35))
bottom_row <- cowplot::plot_grid(myst_phylo_plot, right_panel, rel_widths = c(1, 1))
bottom_row
dev.off()

#create and save full phylogeny plot for odontocetes
png("plots/odon_phylo.png", width = 6, height = nrow(odon_tips), units = "in", res = 600)
#svglite::svglite("plots/odon_phylo.svg", width = 6, height = nrow(odon_tips))
right_panel <- cowplot::plot_grid(hectors_plot, commersons_plot, heavisides_plot, rissos_plot, bottlenose_plot, peales_plot, killer_plot, narrow_plot, sperm_plot, NULL,
                                  ncol = 1, rel_heights = c(rep(1, nrow(odon_tips)), 0.35))
bottom_row <- cowplot::plot_grid(odon_phylo_plot, right_panel, rel_widths = c(1, 1))
bottom_row
dev.off()
The baleen whale (Mysticete) species included in the study (left), alongside the distribution of element durations or inter-onset intervals and sequence lengths (middle) and the slope of Menzerath's law (right). Each point in the distribution plots (middle) marks the mean element duration or inter-onset interval, but the slopes on the right were computed from the full set of elements/intervals. The bars in the slope plots (right) mark the 95% confidence intervals around the point estimates.

Figure 2: The baleen whale (Mysticete) species included in the study (left), alongside the distribution of element durations or inter-onset intervals and sequence lengths (middle) and the slope of Menzerath’s law (right). Each point in the distribution plots (middle) marks the mean element duration or inter-onset interval, but the slopes on the right were computed from the full set of elements/intervals. The bars in the slope plots (right) mark the 95% confidence intervals around the point estimates.

Interestingly, the North Pacific right whales have four distinct clusters of sequences in Figure 2, which directly correspond to the four song types identified by Crance et al. (51). The strong positive relationship between sequence length and element duration appears to be driven by the distribution of these clusters. Menzerath’s law makes no predictions about different categories of sequences, but it is worth noting that when Equation (1) is computed separately on each song type the results vary (GS1-PF estimate: -0.11, 95% CI: [-0.17, -0.05]; GS4-DG estimate: 0.01, 95% CI: [-0.03, 0.04]; GS3-PU estimate: -0.03, 95% CI: [-0.05, 0]; GS2-TP estimate: 0.06, 95% CI: [0.04, 0.08]). Note that the GS* abbreviations are the North Pacific right whale song types, as named by Crance et al. (51).

For humpback and killer whales, I also assessed Menzerath’s law using data from a higher level of analysis (i.e., one step up in the structural hierarchy). In humpback whales, I found that the length of songs negatively predicted the duration of phrases (estimate = -0.25, 95% CI: [-0.333, -0.167], using Equation (1)), similar to the pattern for notes within phrases. Interestingly, in killer whales I found that the length of call sequences negatively predicted the duration of calls (estimate = -0.043, 95% CI: [-0.082, -0.004], Equation (1)), even though the situation is reversed for elements within calls (Figure 3).

The toothed whale (Odontocete) species included in the study (left), alongside the distribution of element durations or inter-onset intervals and sequence lengths (middle) and the slope of Menzerath's law (right). Each point in the distribution plots (middle) marks the mean element duration or inter-onset interval, but the slopes on the right were computed from the full set of elements/intervals. The bars in the slope plots (right) mark the 95% confidence intervals around the point estimates.

Figure 3: The toothed whale (Odontocete) species included in the study (left), alongside the distribution of element durations or inter-onset intervals and sequence lengths (middle) and the slope of Menzerath’s law (right). Each point in the distribution plots (middle) marks the mean element duration or inter-onset interval, but the slopes on the right were computed from the full set of elements/intervals. The bars in the slope plots (right) mark the 95% confidence intervals around the point estimates.

Additionally, I fit a second model that included the position of each element or inter-onset interval in the sequence as a fixed effect, following previous studies of Menzerath’s law in non-human animals (20, 23, 29, 33, 37, 52). Position was normalized between 0 and 1 using the function \((n - 1)/(l - 1)\), where \(n\) is the position of the element or interval and \(l\) is the length of the sequence (37). The purpose of this model was to assess whether Menzerath’s law is driven by a shortening of elements or intervals over the course of the sequence, or a tendency to begin long sequences with shorter elements or intervals.

\[\begin{equation} \ln(\textrm{duration}) \sim \ln(\textrm{length}) + \textrm{position} + (1|\textrm{sequence}) \tag{2} \end{equation}\]

Figure 4 shows a direct comparison between the strength of Menzerath’s law in the whale data and the spoken human language data (i.e., phonemes within words) from the DoReCo corpus (49), alongside the influence of the position of elements or inter-onset intervals on their duration computed using Equations (1) and (2). The same results for words within sentences can be seen in the Supplementary Information. The 11 whale species that adhere to Menzerath’s law express it to at least a similar extent as the human languages, and sometimes to a much greater extent (e.g., humpback whales). The effect of the position of elements and intervals on their duration is much more variable. Human languages tend to have a positive relationship between position and inter-onset intervals, which means that intervals are lengthened as sequences progress. Whales, on the other hand, appear to shorten elements and intervals over the course of sequences (see Table 2), but this varies dramatically across species.

Interestingly, there are several exceptions to Menzerath’s law in the human language data. Arapaho exhibits a positive effect of word length on the inter-onset intervals of phonemes (Figure 4), and Tabasaran, Sanzhi Dargwa, Pnar, English (recorded in southern England), Yongning Na, and Cabécar show no effect of sentence length on the inter-onset intervals of words (Supplementary Information). These exceptions come from a wide variety of language families (e.g., Algic, Nakh-Daghestanian, Austroasiatic, Indo-European, Sino-Tibetan, Chibchan) from North America, Europe, and Asia.

#get labels for plotting
human_dataset_labels <- list.files("data/doreco/")
human_dataset_labels <- substr(human_dataset_labels[grep("doreco", human_dataset_labels)], 1, 15)
human_dataset_labels <- as.character(sapply(human_dataset_labels, function(x){gsub(" DoReCo dataset.*", "", gsub("^The ", "", readLines(paste0("data/doreco/", x, "_extended/", x, "_dataset-info.txt")[1])[1]))}))

#extract effects for phonemes in words
phonemes_in_words_effects <- lapply(phonemes_in_words, extract_freq_effects)

#reformat words data in a format that is plottable
phonemes_in_words_plot_data <- data.frame(cbind(do.call(rbind, lapply(phonemes_in_words_effects, function(x){x$length})), do.call(rbind, lapply(phonemes_in_words_effects, function(x){x$position}))))
colnames(phonemes_in_words_plot_data) <- c("length_lower", "length_median", "length_upper", "position_lower", "position_median", "position_upper")
phonemes_in_words_plot_data$label <- human_dataset_labels
phonemes_in_words_plot_data <- phonemes_in_words_plot_data[order(phonemes_in_words_plot_data$length_median, decreasing = TRUE), ]
phonemes_in_words_plot_data$label[which(phonemes_in_words_plot_data$label == "Nǁng")] <- "Nllng" #special characters

#compute effects for whale data
whales_effects <- lapply(list(sperm_models, humpback_models, fin_models, killer_models, blue_models, minke_models, bowhead_models, right_models, narrow_models, heavisides_models, commersons_models, peales_models, hectors_models, rissos_models, bottlenose_models, sei_models), extract_freq_effects)

#reformat whale data in a format that is plottable
whales_plot_data <- data.frame(cbind(do.call(rbind, lapply(whales_effects, function(x){x$length})), do.call(rbind, lapply(whales_effects, function(x){x$position}))))
colnames(whales_plot_data) <- c("length_lower", "length_median", "length_upper", "position_lower", "position_median", "position_upper")
whales_plot_data$label <- c("Sperm Whale", "Humpback Whale", "Fin Whale", "Killer Whale", "Blue Whale", "Common Minke Whale", "Bowhead Whale", "North Pacific Right Whale", "Narrow-Ridged Finless Porpoise", "Heaviside's Dolphin", "Commerson's Dolphin", "Peale's Dolphin", "Hector's Dolphin", "Risso's Dolphin", "Bottlenose Dolphin", "Sei Whale")
whales_plot_data <- whales_plot_data[order(whales_plot_data$length_median, decreasing = TRUE), ]

#reorder everything for a single axis
whales_plot_data$x <- 1:nrow(whales_plot_data)
whales_plot_data$group <- c(1, 2, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 2, 2, 2, 1) #1 is elements, 2 is intervals
phonemes_in_words_plot_data$x <- (max(whales_plot_data$x)+1):(max(whales_plot_data$x)+nrow(phonemes_in_words_plot_data))
phonemes_in_words_plot_data$group <- 3

#combine whale data with word data
combined_words_plot_data <- rbind(phonemes_in_words_plot_data, whales_plot_data)

#generate plot of phonemes in words against whales, for length
combined_words_length_plot <- ggplot(combined_words_plot_data) + 
  geom_linerange(aes(x = x, ymin = length_lower, ymax = length_upper, color = factor(group))) + 
  geom_hline(aes(yintercept = 0), lty = "dashed") + 
  geom_vline(aes(xintercept = nrow(whales_plot_data) + 0.5), lty = "dotted") + 
  scale_y_continuous(limits = c(min(combined_words_plot_data$length_lower)*1.05, max(combined_words_plot_data$length_upper)*1.05), 
                     #name = expression("95% CI for "~italic("b")~"(Strength of Menzerath's Law)")) + 
                     name = "Effect of Length on Duration") + 
  scale_x_continuous(breaks = combined_words_plot_data$x, labels = combined_words_plot_data$label, name = NULL, limits = c(0, nrow(combined_words_plot_data) + 1), expand = c(0, 0)) + 
  scale_color_manual(values = c("#D55E00", "#009E73", "#0072B2"), labels = c("Whales (ED)", "Whales (IOI)", "Humans (IOI)"), name = "Taxa") + 
  theme_linedraw(base_size = 8, base_family = "Avenir") + theme(axis.text.x = element_text(angle = 90, hjust = 0.99, vjust = 0.5), panel.grid.major.x = element_blank(), panel.grid.minor.x = element_blank())

#generate plot of phonemes in words against whales, for position
combined_words_position_plot <- ggplot(combined_words_plot_data) + 
  geom_linerange(aes(x = x, ymin = position_lower, ymax = position_upper, color = factor(group))) + 
  geom_hline(aes(yintercept = 0), lty = "dashed") + 
  geom_vline(aes(xintercept = nrow(whales_plot_data) + 0.5), lty = "dotted") + 
  scale_y_continuous(limits = c(min(combined_words_plot_data$position_lower)*1.05, max(combined_words_plot_data$position_upper)*1.05), 
                     #name = expression("95% CI for "~italic("b")~"(Strength of Menzerath's Law)")) + 
                     name = "Effect of Position on Duration") + 
  scale_x_continuous(breaks = combined_words_plot_data$x, labels = combined_words_plot_data$label, name = NULL, limits = c(0, nrow(combined_words_plot_data) + 1), expand = c(0, 0)) + 
  scale_color_manual(values = c("#D55E00", "#009E73", "#0072B2"), labels = c("Whales (ED)", "Whales (IOI)", "Humans (IOI)"), name = "Taxa") + 
  theme_linedraw(base_size = 8, base_family = "Avenir") + theme(axis.text.x = element_text(angle = 90, hjust = 0.99, vjust = 0.5), panel.grid.major.x = element_blank(), panel.grid.minor.x = element_blank())

#export plot of phonemes in words
png("plots/word_level_effects.png", width = 8, height = 6, units = "in", res = 600)
#svglite::svglite("plots/word_level_effects.svg", width = 8, height = 6)
cowplot::plot_grid(cowplot::plot_grid(combined_words_length_plot + theme(axis.text.x = element_blank(), legend.position = "none"), combined_words_position_plot + theme(legend.position = "none"), ncol = 1, align = "v", rel_heights = c(0.66, 1)), cowplot::get_legend(combined_words_length_plot), nrow = 1, rel_widths = c(1, 0.12))
dev.off()
The 95% confidence intervals for the effect of sequence length (top; computed from Equation \@ref(eq:lengthmodel)) and position (bottom; computed from Equation \@ref(eq:positionmodel)) on element duration and inter-onset intervals for the 16 whale species and 51 human languages. The human language data are comprised of phonemes within words. The colors correspond to the taxonomic group and whether the data are element durations (ED) or inter-onset intervals (IOI).

Figure 4: The 95% confidence intervals for the effect of sequence length (top; computed from Equation (1)) and position (bottom; computed from Equation (2)) on element duration and inter-onset intervals for the 16 whale species and 51 human languages. The human language data are comprised of phonemes within words. The colors correspond to the taxonomic group and whether the data are element durations (ED) or inter-onset intervals (IOI).

Finally, I assessed broader cross-species trends in Menzerath’s law with expanded forms of Equation (1) and (2) applied to all species at once—Equation (3) and (4) below. Interactions between length and position and the following two features were added: (1) the group the species comes from, to determine whether the effect varies between Mysticetes and Odontocetes, and (2) the type of vocalization, to determine whether the effect is stronger for element durations or inter-onset intervals. Group and type were not added as separate fixed effects (outside of the interactions) because the z-scoring of duration within species removes species differences (see Materials & Methods). Sequence and study were included as varying intercepts. The effect of sequence length on elements and intervals does not have significant phylogenetic signal (\(K\) = 0.32; \(p\) = 0.45), computed using the method of Ives et al. (53) as implemented in the phytools package (2.1.1) in R (v4.3.1) (54), so I did not include phylogeny in the modeling.

\[\begin{align*} \ln(\textrm{duration}) & \sim \ln(\textrm{length}) \\ & + \ln(\textrm{length}) : \textrm{group} + \ln(\textrm{length}) : \textrm{type} \\ & + (1|\textrm{sequence}) + (1|\textrm{study}) \tag{3} \end{align*}\]

\[\begin{align*} \ln(\textrm{duration}) & \sim \ln(\textrm{length}) \\ & + \ln(\textrm{length}) : \textrm{group} + \ln(\textrm{length}) : \textrm{type} \\ & + \textrm{position} \\ & + \textrm{position} : \textrm{group} + \textrm{position} : \textrm{type} \\ & + (1|\textrm{sequence}) + (1|\textrm{study}) \tag{4} \end{align*}\]

Of the two models used to assess cross-species trends, the one that included both length and position best fit the data (Equation (4); \(\Delta AIC\) = 1847). The results of this model can be seen in Table 2. Overall, there is a strong negative effect of sequence length on element durations and inter-onset intervals, which is consistent with Menzerath’s law. The interaction between this effect and data type is positive, suggesting that Menzerath’s law is slightly weaker when data are comprised of inter-onset intervals rather than elements. Additionally, there is a negative effect of position on element durations and inter-onset intervals, indicating that elements and intervals tend to shorten as sequences progress. The interactions between position, group, and type suggest two things: toothed whales (Odontocetes) shorten later elements and intervals to a greater extent, and elements tend to get shortened more than intervals over the course of sequences. Importantly, these interactions are strong enough to neutralize the effect of position in some conditions. For example, the overall effect of position on duration in a baleen whale species (Mysticete, group = 0) with interval data (type = 1) would be only -0.005 (95% CI: [-0.018, 0.008]).

Table 2: The estimated effect of each predictor and interaction (indented and marked with :) on element durations and inter-onset intervals in sequences. Length is the sequence length (in number of elements or intervals), position is the normalized position of each element or interval in the sequence, group is whether the species is a baleen (0) or toothed (1) whale, and type is whether the data are comprised of element durations (0) or inter-onset intervals (1). 2.5% and 97.5% denote the lower and upper bounds of the 95% confidence intervals. Asterisks mark 95% CIs that do not overlap zero, interpreted here as evidence for a strong effect.

Predictor

Effect

2.5%

97.5%

Length

-0.341

-0.363

-0.318

*

: Group

-0.005

-0.028

0.019

: Type

0.090

0.058

0.122

*

Position

-0.067

-0.073

-0.061

*

: Group

-0.036

-0.040

-0.032

*

: Type

0.062

0.055

0.069

*

2.2 Zipf’s Law of Abbreviation

Unlike Menzerath’s law, Zipf’s law of abbreviation is a qualitative law that simply predicts that common types of elements will have shorter duration than rare ones (22). To assess Zipf’s law of abbreviation, I followed previous studies in using a lognormal model with duration as the outcome variable, count as a fixed effect, and the type of element as a varying intercept to account for the repeated measurements of durations within each type (25). Note that only duration is log-transformed in this model, but the results are qualitatively the same if count is also log-transformed. Some species had multiple datasets, in which case the study ID was included as a varying intercept.

\[\begin{equation} \ln(\textrm{duration}) \sim \textrm{count} + (1|\textrm{type}) \tag{5} \end{equation}\]

The strength of Zipf’s law of abbreviation in the five whale species considered, computed using Equation (5), can be found Figure 5 (see Supplementary Information for the same plot with transformed axes to match the statistical model). The negative relationship between element duration and count is only found in blue whales and humpback whales. Blue whales from the northeast Pacific population analyzed in this study only use two call types in sequences (A and B calls) (55), so I confirmed Zipf’s law of abbreviation in that species using a simpler lognormal model with duration as the outcome variable and whether the element is of the more common type (B calls) as a fixed effect (binary: 1/0). An element coming from the more common type negatively predicts duration (estimate = -0.208, 95% CI: [-0.284, -0.132], supporting the result shown in Figure 5.

For humpback whales, I also assessed Zipf’s law of abbreviation using data from a higher level of analysis (i.e., one step up in the structural hierarchy). Common phrases tend to be shorter in duration (estimate = -0.086, 95% CI: [-0.124, -0.049], using Equation (5)), similar to the pattern for notes within phrases.

#load libraries and data
library(ggtree)
cetaceans <- ape::read.tree("data/phylo_lloyd_2021.tre")

#create table of tips
zla_tips <- data.frame(scientific = c("Megaptera_novaeangliae", #humpback
                                      "Balaenoptera_musculus", #blue
                                      "Balaena_mysticetus", #bowhead
                                      "Orcinus_orca", #killer
                                      "Balaenoptera_borealis"), #sei whale
                       common = c("Humpback Whale\n(Megaptera novaeangliae)",
                                  "Blue Whale\n(Balaenoptera musculus)",
                                  "Bowhead Whale\n(Balaena mysticetus)",
                                  "Killer Whale\n(Orcinus orca)",
                                  "Sei Whale\n(Balaenoptera borealis)"),
                       img = c("humpback", "blue", "bowhead", "killer", "sei"))

#subset the original phylogeny to only include the relevant species
cetaceans <- ape::keep.tip(cetaceans, zla_tips$scientific)

#match up the tip labels with the image files
cetaceans$tip.label <- zla_tips$common[match(cetaceans$tip.label, zla_tips$scientific)]
cetaceans$file <- paste0("imgs/", zla_tips$img[match(cetaceans$tip.label, zla_tips$common)], ".svg")

#construct un-annotated phylogeny plot for cetaceans
#colors in following order to match myst plot: blue, bowhead, humpback, killer, sei
zla_phylo_plot <- ggtree(cetaceans, branch.length = "none", layout = "roundrect")
zla_phylo_plot$data$file <- c(cetaceans$file, rep(NA, nrow(zla_phylo_plot$data) - nrow(zla_tips)))
zla_phylo_plot <- zla_phylo_plot + 
  geom_tiplab(aes(image = file, color = label), geom = "image", offset = 9, size = 0.1, align = TRUE) + xlim(NA, 13.5) + 
  geom_tiplab(aes(color = label), geom = "label", family = "Avenir", parse = FALSE, align = TRUE, size = 2.5) + 
  scale_color_manual(values = c("#5F8B99", "#BE722D", "#CD655B", "#D23DE6", "#657CE2")) + theme(legend.position = "none") + ylim(0.5, nrow(zla_tips))

#create plot labels
zla_labels <- c(zla_label_maker(killer_data),
                zla_label_maker(bowhead_data),
                zla_label_maker(humpback_data),
                zla_label_maker(sei_data),
                zla_label_maker(blue_data))

#add annotations to mysticetes
zla_phylo_plot <- zla_phylo_plot + annotate("text", label = zla_labels, x = rep(max(zla_phylo_plot$data$x), length(zla_labels)), y = (1:length(zla_labels))-0.35, hjust = 0, family = "Avenir", size = 2.2, lineheight = 0.8)

#create zipf's law plots for each species
blue_plot <- zla_plot(blue_data, zla_fit(blue_data), color = "#5F8B99", ylims = c(10, 20))
bowhead_plot <- zla_plot(bowhead_data, zla_fit(bowhead_data), color = "#BE722D")
humpback_plot <- zla_plot(humpback_data, zla_fit(humpback_data), color = "#CD655B")
killer_plot <- zla_plot(killer_data, zla_fit(killer_data), color = "#D23DE6")
sei_plot <- zla_plot(sei_data, zla_fit(sei_data), color = "#657CE2")

#create and save full phylogeny plot
png("plots/zla_phylo.png", width = 6, height = nrow(zla_tips), units = "in", res = 600)
#svglite::svglite("plots/zla_phylo.svg", width = 6, height = nrow(zla_tips))
right_panel <- cowplot::plot_grid(blue_plot, sei_plot, humpback_plot, bowhead_plot, killer_plot, NULL,
                                  ncol = 1, rel_heights = c(rep(1, nrow(zla_tips)), 0.35))
bottom_row <- cowplot::plot_grid(zla_phylo_plot, right_panel, rel_widths = c(1, 1))
bottom_row
dev.off()
The whale species included in the study (left), alongside the distribution of element durations and counts (middle) and the slope of Zipf's law of abbreviation (right). Each point in the distribution plots (middle) marks the mean duration of elements, but the slopes on the right were computed from the full set of elements. The bars in the slope plots (right) mark the 95% confidence intervals around the point estimates.

Figure 5: The whale species included in the study (left), alongside the distribution of element durations and counts (middle) and the slope of Zipf’s law of abbreviation (right). Each point in the distribution plots (middle) marks the mean duration of elements, but the slopes on the right were computed from the full set of elements. The bars in the slope plots (right) mark the 95% confidence intervals around the point estimates.

#get labels for plotting
human_dataset_labels <- list.files("data/doreco/")
human_dataset_labels <- substr(human_dataset_labels[grep("doreco", human_dataset_labels)], 1, 15)
human_dataset_labels <- as.character(sapply(human_dataset_labels, function(x){gsub(" DoReCo dataset.*", "", gsub("^The ", "", readLines(paste0("data/doreco/", x, "_extended/", x, "_dataset-info.txt")[1])[1]))}))
human_dataset_labels[which(human_dataset_labels == "Nǁng")] <- "Nllng" #special characters

#extract effects for phonemes in words
phonemes_effects <- data.frame(do.call(rbind, lapply(1:length(phonemes_zla), function(x){c(confint(phonemes_zla[[x]], parm = "count", method = "Wald")[1], summary(phonemes_zla[[x]])$coefficients[2, 1], confint(phonemes_zla[[x]], parm = "count", method = "Wald")[2])})))
colnames(phonemes_effects) <- c("lower", "median", "upper")
phonemes_effects$label <- human_dataset_labels
phonemes_effects <- phonemes_effects[order(phonemes_effects$median, decreasing = TRUE), ]

#compute effects for whale data
whales_effects <- data.frame(do.call(rbind, lapply(list(humpback_models_zla, bowhead_models_zla, sei_models_zla, blue_models_zla, killer_models_zla), function(x){c(confint(x, parm = "count", method = "Wald")[1], summary(x)$coefficients[2, 1], confint(x, parm = "count", method = "Wald")[2])})))
colnames(whales_effects) <- c("lower", "median", "upper")
whales_effects$label <- c("Humpback Whale", "Bowhead Whale", "Sei Whale", "Blue Whale", "Killer Whale")
whales_effects <- whales_effects[order(whales_effects$median, decreasing = TRUE), ]

#reorder everything for a single axis
whales_effects$x <- 1:nrow(whales_effects)
whales_effects$group <- 1 #1 for elements, 2 for intervals
phonemes_effects$x <- (max(whales_effects$x)+1):(max(whales_effects$x)+nrow(phonemes_effects))
phonemes_effects$group <- 3

#combine whale data with phonemes data
combined_plot_data <- rbind(phonemes_effects, whales_effects)

#generate plot of phonemes in words against whales, for length
combined_plot <- ggplot(combined_plot_data) + 
  geom_linerange(aes(x = x, ymin = lower, ymax = upper, color = factor(group))) + 
  geom_hline(aes(yintercept = 0), lty = "dashed") + 
  geom_vline(aes(xintercept = nrow(whales_effects) + 0.5), lty = "dotted") + 
  scale_y_continuous(limits = c(min(combined_plot_data$lower)*1.05, max(combined_plot_data$upper)*1.05), 
                     name = "Effect of Count on Duration") + 
  scale_x_continuous(breaks = combined_plot_data$x, labels = combined_plot_data$label, name = NULL, limits = c(0, nrow(combined_plot_data) + 1), expand = c(0, 0)) + 
  #scale_color_manual(values = c("#D55E00", "#009E73", "#0072B2"), labels = c("Whales (ED)", "Whales (IOI)", "Humans (IOI)"), name = "Taxa") + 
  scale_color_manual(values = c("#D55E00", "#0072B2"), labels = c("Whales (ED)", "Humans (IOI)"), name = "Taxa") + 
  theme_linedraw(base_size = 8, base_family = "Avenir") + theme(axis.text.x = element_text(angle = 90, hjust = 0.99, vjust = 0.5), panel.grid.major.x = element_blank(), panel.grid.minor.x = element_blank())

#export plot of phonemes in words
png("plots/phoneme_effects_zla.png", width = 8, height = 3.5, units = "in", res = 600)
#svglite::svglite("plots/phoneme_effects_zla.svg", width = 8, height = 3.5)
combined_plot
dev.off()

Figure 6 shows a direct comparison between the strength of Zipf’s law of abbreviation in the whale data and the spoken human language data (i.e., phonemes) from the DoReCo corpus (49), computed using Equation (5). The same results for words within can be seen in the Supplementary Information. Only humpback whales exhibit Zipf’s law of abbreviation to a similar extent as the human languages, while blue whales are much closer to neutrality.

The 95% confidence intervals for the effect of count on element duration (computed from Equation \@ref(eq:zipfmodel) for the five whale species and 51 human languages. The human language data are comprised of phonemes. The colors correspond to the taxonomic group and whether the data are element durations (ED) or inter-onset intervals (IOI).

Figure 6: The 95% confidence intervals for the effect of count on element duration (computed from Equation (5) for the five whale species and 51 human languages. The human language data are comprised of phonemes. The colors correspond to the taxonomic group and whether the data are element durations (ED) or inter-onset intervals (IOI).

I assessed cross-species trends in Zipf’s law of abbreviation with an expanded form of Equation (5) applied to all species at once—Equation (6) below. An interaction between count and the group the species comes from was added, to determine whether the effect varies between Mysticetes and Odontocetes. Group was not added as a separate fixed effect (outside of the interaction) because the z-scoring of duration within species removes species differences (see Materials & Methods). Study was included as a varying intercept.

\[\begin{equation} \ln(\textrm{duration}) \sim \textrm{count} + \textrm{count} : \textrm{group} + (1|\textrm{type}) + (1|\textrm{study}) \tag{6} \end{equation}\]

Table 3: The estimated effect of each predictor and interaction (indented and marked with :) on the duration of elements. Count is the number of times that each type of element is found in each dataset, and group is whether the species is a baleen (0) or toothed (1) whale. 2.5% and 97.5% denote the lower and upper bounds of the 95% confidence intervals. Asterisks mark 95% CIs that do not overlap zero, interpreted here as evidence for a strong effect.

Predictor

Effect

2.5%

97.5%

Count

-0.135

-0.162

-0.109

*

: Group

0.250

0.216

0.285

*

The results of the model used to assess overall trends in Zipf’s law of abbreviation (Equation (6)) can be seen in Table 3. Overall, there is a strong negative effect of count on the duration of elements, which is consistent with Zipf’s law of abbreviation, although this effect is probably driven primarily by humpback whales and blue whales. The interaction between this effect and the group the data come from is positive, suggesting that Zipf’s law of abbreviation is weaker in Odontocetes. However, the only Odontocete species in this model is the killer whale, so this result may not generalize to a larger sample.

3 Discussion

3.1 Menzerath’s Law

The vocalizations of 11 of the 16 whale species included in this analysis adhere to Menzerath’s law, suggesting that they have undergone compression for increased efficiency in time. Among these 11 species, the strength of Menzerath’s law is comparable to, and sometimes far greater than, what is observed in spoken human language data. In the main text, I compared the whale sequences to phonemes within words, but the results are similar for words within sentences (see Supplementary Information). For two species, humpback whales and killer whales, I was able to analyze sequences at two levels of analysis. Humpback whales exhibit Menzerath’s law for both notes within phrases and phrases within songs. Killer whales, on the other hand, only exhibit Menzerath’s law at the level of call sequences, as opposed to the elements comprising calls. When data from all 16 whale species are included in a single analysis, there is strong evidence for both Menzerath’s law and for an effect of position—elements and intervals tend to be shortened over the course of sequences.

Several species produce vocalizations that do not adhere to Menzerath’s law—killer whales (at the level of elements within calls), North Pacific right whales, and the three Cephalorhynchus dolphin species. The fact that killer whale vocalizations exhibit Menzerath’s law in their call sequences, but not elements within calls, suggests that the former may be the more relevant level of analysis for communication. The results from the North Pacific right whales are more puzzling. The data used in this study are from the first documented recordings of song in any right whale species (51), and are comprised of four song types with fairly dramatic differences in sequence lengths and interval durations (see clusters in Figure 2). When Menzerath’s law is assessed separately on each song type, two display the expected negative relationship, one displays a neutral relationship, and one displays a positive relationship between sequence length and interval duration. One speculative explanation for the mixed results in North Pacific right whales is that the songs may be in an early stage of cultural evolution, either for the first time or as part of recovery from endangerment. Crance et al. (51) found only one clear case of different animals producing the same song type, and linguistic laws may emerge from repeated cultural transmission between individuals (39). The three Cephalorhynchus species in this study—Hector’s dolphins, Commerson’s dolphins, and Heaviside’s dolphins—all produce burst pulses with both narrowband high-frequency and broadband clicks (5658). The former are thought to be used for echolocation and cryptic communication (above the hearing range of killer whales), whereas the latter are used for long-range communication (58). One potential explanation for the absence of Menzerath’s law in Cephalorhynchus is that the crypsis of narrowband high-frequency clicks is more important than their efficiency. Another interesting detail is that Heaviside’s and Hector’s dolphins sometimes produce temporally-patterned burst pulses with much more rhythmic variation during social interactions (56, 59). A preliminary analysis of patterned burst pulses from Heaviside’s dolphins (59) shows that they do adhere to Menzerath’s law (see Supplementary Information), suggesting that they may experience more information compression than burst pulses with more consistent intervals. Patterned burst pulses may be a good candidate for future studies of communication in Cephalorhynchus, although more documentation of these relatively rare vocalizations is needed.

On a related note, Menzerath’s law does not appear to be universal in spoken language at the level of phonemes in words (Figure 4) or words within sentences (Supplementary Information), which is consistent with previous work on clauses in written sentences (60) and syllables in written words (50). Menzerath’s law in language, then, appears to be a statistical tendency rather than an absolute universal.

The shortening of elements and intervals later in sequences is an unexpected finding, as the opposite pattern is often (but not always) observed in birdsong (29, 37) and human language (50) (see Figure 4). In fact, “final lengthening” is a well-studied linguistic phenomenon in which vowels are lengthened right before word, phrase, and sentence boundaries (46, 61). One account for final lengthening is that it initially evolved to minimize the cost of switching from exhaling to inhaling between elements, and has subsequently been elaborated via cultural evolution to make the boundaries between elements easier to perceive (62). Both toothed and baleen whales have specialized adaptations that allow them to vocalize while holding their breath (12, 63), which may release them from the specific motor constraints that drive final lengthening.

Another explanation comes from primates, where coppery titi monkeys, eastern grey gibbons, and geladas shorten some aspects of their vocalizations over the course of sequences (elements for the first two, intervals for the third) (20, 52). Longer vocalizations are more energetically costly (64), which is probably why humans and other mammals shorten their vocalizations as they fatigue (65). Gustison et al. (20) and Clink and Lau (52) hypothesize that vocal shortening later in sequences reflects this simple energetic constraint, and that it may even explain Menzerath’s law in some species. Other work in humans and birds supports the idea that Menzerath’s law has physical origins (22, 36, 37)—a development that some have described as “liberating” after decades of debate about the origins of linguistic laws (66). Menzerath’s law in humans appears to be stronger in spoken than in written language (22, 36), deafened canaries and zebra finches produce songs consistent with the law without hearing adult models (37), and African penguins display the law without engaging in vocal learning (24). If Gustison et al. (20) and Clink and Lau (52) are correct, then the presence of vocal shortening may point to a physical origin for Menzerath’s law in whale communication.

3.2 Zipf’s Law of Abbreviation

The vocalizations of humpback whales and blue whales also adhere to Zipf’s law of abbreviation, suggesting that they have undergone additional compression for efficiency in time. Of these two species, only humpback whales exhibit Zipf’s law of abbreviation to the extent observed in spoken human language data. In the main text, I compared the whale elements to phonemes, but the results are similar for words (see Supplementary Information). Interestingly, humpback whales also exhibit Zipf’s law of abbreviation at a higher level of analysis—phrases, the sequences of notes that make up songs. When data from all five whale species are included in a single analysis, there is strong evidence for Zipf’s law of abbreviation, but this is probably driven primarily by humpback whales and blue whales. Note that Zipf’s law of abbreviation requires that elements are categorized into types, so it could only be assessed in five of the 16 species included in this study.

Previous studies looking at both laws in the same species indicate that Zipf’s law of abbreviation is not usually found without Menzerath’s law (23, 24, 3134), while Menzerath’s law often exists on its own (2630). A similar pattern appears to be present in cetaceans, where four of the five species with categorized elements exhibit Menzerath’s law, but only two of those four also exhibit Zipf’s law of abbreviation. As described in the Introduction, this discrepancy may be due to differences in the mechanisms or constraints underlying the two laws. Menzerath’s law may be rooted in physical constraints (22, 36, 37), whereas Zipf’s law of abbreviation may reflect additional pressure for informativeness and predictability (39, 41). Based on this logic, one might expect species that exhibit Zipf’s law of abbreviation to have more complex vocalizations with more learned content, but this is not necessarily the case in cetaceans. Humpback whales and bowhead whales both have complex, hierarchically-structured songs (67, 68), but only humpback whales appear to exhibit the law. Similarly, blue whales from the northeast Pacific population exhibit the law despite producing very simple sequences comprised of only two call types (55).

3.3 Other Considerations

A variety of factors can counteract compression in vocal communication (21), including transmission range, noise, and sexual selection. In some terrestrial mammals, including bats, marmosets, and geladas, linguistic laws appear in short- but not in long-range vocalizations (20, 69). This pattern likely reflects a trade-off (70)—increased duration and redundancy enhance the transmission success of long-range signals at the expense of production cost (69). Interestingly, no clear relationship exists between transmission range and the strength of Menzerath’s law or Zipf’s law of abbreviation across cetacean species, though I was unable to quantitatively confirm this due to limited data. It is possible that the enhanced speed and range of underwater sound (71) reduce the need for cetaceans to sacrifice efficiency for the transmissibility of long-range signals. In noisy environments, beluga whales (15), bottlenose dolphins (16), killer whales (17), and humpback whales (18) have all been observed to increase vocalization time to boost transmission success. Lastly, vocalization time itself can be a target of sexual selection. For instance, female humpback whales may prefer males who sing longer and more complex songs (72). Selection should lead to adaptive compromises among all of the costs and benefits associated with vocal communication (6), including those mentioned above.

Importantly, the physical mechanisms of underwater vocal production in cetaceans have just recently been investigated in detail (12, 63), and there are some key differences between Mysticetes and Odontocetes. Mysticetes produce sound with their larynx, whereas Odontocetes rely on their nasal passages (12, 63). Both groups appear to recycle air as they vocalize, but Odontocetes do so more rapidly because of the smaller volume of the nasal passages (63). These differences may partly explain why Odontocetes exhibit more final shortening in their vocal sequences than Mysticetes. It is also unclear how life underwater might shift the relative pressures on elements and intervals. To my knowledge, there has been very little work on the metabolic costs of changing the durations of elements and intervals in cetaceans. One study conducted with two captive bottlenose dolphins found that the metabolic cost of vocalizing increased with the duration of elements, but was unaffected by the durations of the intervals between elements (10). This finding suggests that elements may be subject to more constraints than intervals, which is consistent with the result that Menzerath’s law is slightly stronger in elements, but this is necessarily speculative. Much more work needs to be done on how vocal production varies across aquatic mammals, with a focus on the differences in the physical constraints that they are subject to (71).

3.4 Conclusion

The findings of this study contribute to an emerging consensus that whale communication, like birdsong, shares remarkable structural parallels with human language (31, 7378). 11 of the 16 species analyzed exhibit Menzerath’s law, with effect sizes comparable to or even greater than those observed in human speech. Two of the five species with categorized element types adhere to Zipf’s law of abbreviation, with one having an effect size comparable to human speech. On average, whales also tend to shorten elements and intervals towards the end of sequences, although this varies by species. Overall, Menzerath’s law is widespread while Zipf’s law of abbreviation is relatively rare. This discrepancy aligns with findings in songbirds and other animals (23, 24, 3134, 37, 44), and may point to differences in the mechanisms driving the two laws (29, 35). Notably, humpback whales exhibit both laws across two levels of analysis—notes within phrases and phrases within songs.

A parallel analysis of human speech data from 51 languages reveals multiple exceptions to Menzerath’s law at the levels of phonemes within words and words within sentences, while Zipf’s law of abbreviation appears to be universal across these levels. Previous studies of these two laws in human speech have focused on one or two languages (22, 36) or converted spoken data from nine languages into written formats (35).

It is important to recognize that similarity in form does not necessarily imply similarity in function. Language-like structure can emerge from pressures for efficiency even when communication carries no semantic meaning (25). While some cetacean species have the capacity to convey a great deal of information (78), researchers should be wary of over-interpreting structural similarities with language (79). Further comparisons with music—which shares many language-like features without conveying semantic meaning (80)—may also help illuminate the diverse forms and functions of communication across whale species (47).

4 Materials & Methods

#fit models to datasets
#singular fit errors occur because the random effects terms are estimated near zero
#not a problem, especially as it seems to occur only with the null models
sperm_models <- menz_fit(sperm_data)
humpback_models <- menz_fit(humpback_data)
humpback_phrase_models <- menz_fit(humpback_phrase_data)
fin_models <- menz_fit(fin_data)
killer_models <- menz_fit(killer_data)
killer_sequence_models <- menz_fit(killer_sequence_data)
blue_models <- menz_fit(blue_data)
minke_models <- menz_fit(minke_data)
bowhead_models <- menz_fit(bowhead_data)
right_models <- menz_fit(right_data)
narrow_models <- menz_fit(narrow_data)
rissos_models <- menz_fit(rissos_data)
bottlenose_models <- menz_fit(bottlenose_data)
heavisides_models <- menz_fit(heavisides_data)
heavisides_patterned_models <- menz_fit(heavisides_patterned_data)
commersons_models <- menz_fit(commersons_data)
peales_models <- menz_fit(peales_data)
hectors_models <- menz_fit(hectors_data)
sei_models <- menz_fit(sei_data)
#load phylogenetic data
cetaceans <- ape::read.tree("data/phylo_lloyd_2021.tre")

#create table of all tips
ceta_tips <- data.frame(scientific = c("Megaptera_novaeangliae", #humpback
                                       "Balaenoptera_musculus", #blue
                                       "Balaenoptera_physalus", #fin
                                       "Balaenoptera_acutorostrata", #minke
                                       "Balaena_mysticetus", #bowhead
                                       "Eubalaena_japonica", #right
                                       "Balaenoptera_borealis", #sei whale
                                       "Physeter_macrocephalus", #sperm
                                       "Orcinus_orca", #killer
                                       #"Phocoena_phocoena", #narrow-ridged finless porpoise (replaced species name with harbor porpoise bc does not exist in phylo)
                                       "Grampus_griseus", #rissos dolphin
                                       "Tursiops_truncatus", #bottlenose dolphin
                                       "Cephalorhynchus_heavisidii", #heavisides dolphin
                                       #"Cephalorhynchus_eutropia", #commersons dolphin (replaced species name with close relative bc does not exist in phylo)
                                       #"Lagenorhynchus_albirostris", #peales dolphin (replaced species name with close relative bc does not exist in phylo)
                                       "Cephalorhynchus_hectori"), #hectors dolphin
                        common = c("humpback",
                                   "blue",
                                   "fin",
                                   "minke",
                                   "bowhead",
                                   "right",
                                   "sei",
                                   "sperm",
                                   "killer",
                                   #"narrow",
                                   "rissos",
                                   "bottlenose",
                                   "heavisides",
                                   #"commersons",
                                   #"peales",
                                   "hectors"))

#subset the original phylogeny to only include the relevant species
cetaceans <- ape::keep.tip(cetaceans, ceta_tips$scientific)

#overwrite with common name abbreviation for easy matching
cetaceans$tip.label <- ceta_tips$common[match(cetaceans$tip.label, ceta_tips$scientific)]

#format model estimates and standard errors for computing the phylogenetic signal
phylo_sig_data <- data.frame(est = c(summary(sperm_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(humpback_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(fin_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(killer_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(blue_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(minke_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(bowhead_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(right_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(narrow_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(rissos_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(bottlenose_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(heavisides_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(commersons_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(peales_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(hectors_models$actual$reduced_scaled)$coef[2, 1],
                                     summary(sei_models$actual$reduced_scaled)$coef[2, 1]),
                             err = c(summary(sperm_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(humpback_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(fin_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(killer_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(blue_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(minke_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(bowhead_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(right_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(narrow_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(rissos_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(bottlenose_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(heavisides_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(commersons_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(peales_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(hectors_models$actual$reduced_scaled)$coef[2, 2],
                                     summary(sei_models$actual$reduced_scaled)$coef[2, 2]),
                             species = c("sperm", "humpback", "fin", "killer", "blue", "minke", "bowhead", "right", 
                                         "narrow", 
                                         "rissos", "bottlenose", "heavisides", 
                                         "commersons", "peales", 
                                         "hectors", "sei"))

  #compute and save phylogenetic signal with a p-value
  phylo_signal <- phytools::phylosig(cetaceans, x = phylo_sig_data$est[match(cetaceans$tip.label, phylo_sig_data$species)], se = phylo_sig_data$err[match(cetaceans$tip.label, phylo_sig_data$species)],  method = "K", test = TRUE)
  save(phylo_signal, file = "models/phylo_signal.RData")
#store locations of human datasets
human_datasets <- list.files("data/doreco/")
human_datasets <- substr(human_datasets[grep("doreco", human_datasets)], 1, 15)

#get labels for plotting
human_dataset_labels <- as.character(sapply(human_datasets, function(x){gsub(" DoReCo dataset.*", "", gsub("^The ", "", readLines(paste0("data/doreco/", x, "_extended/", x, "_dataset-info.txt")[1])[1]))}))

#store the actual phonemic data files for each language
human_datasets <- paste0("data/doreco/", human_datasets, "_extended/", human_datasets, "_ph.csv")

#compile dataset of phonemes in words and phonemes in sentences
phonemes <- parallel::mclapply(human_datasets, read_phonemes, mc.cores = 7)

#run menzerath models on all of the datasets at the word level
#cannot parallelize because menz_fit includes parallelization
#if inf cumsum error happens you need to increase the multiple in the null model window calculation
phonemes_in_words <- lapply(1:length(phonemes), function(g){menz_fit(data = phonemes[[g]]$words, cores = 1)})

#run menzerath models on all of the datasets at the sentence level
words_in_sentences <- lapply(1:length(phonemes), function(g){menz_fit(data = phonemes[[g]]$sentences, cores = 1)})

#save phonemic data
save(phonemes, file = "data/doreco/phonemes.RData")
save(phonemes_in_words, file = "models/phonemes_in_words.RData")
save(words_in_sentences, file = "models/words_in_sentences.RData")
#combine data from all species to be analyzed in a single model
all_species_data <- list(sperm = sperm_data, humpback = humpback_data, fin = fin_data, killer = killer_data, blue = blue_data, minke = minke_data, bowhead = bowhead_data, right = right_data, narrow = narrow_data, rissos = rissos_data, bottlenose = bottlenose_data, heavisides = heavisides_data, commersons = commersons_data, peales = peales_data, hectors = hectors_data, sei = sei_data)

#groups: 0 for mysticetes, 1 for odontocetes; types: 0 for elements, 1 for intervals
groups <- c(1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0)
types <- c(1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0)

#check for convergence
summary(all_species_model$base)$optinfo$conv$lme4$messages

#run model
#positive interaction means that 1 has weaker ML than 0
all_species_model <- menz_compare(all_species_data, groups, types)

#return 
save(all_species_model, file = "models/all_species_model.RData")
#load files for zla models
files <- list.files("data/processed_zla/")[grep(".RData", list.files("data/processed_zla/"))]
for(i in 1:length(files)){load(paste0("data/processed_zla/", files[i]))}

#run zla models
humpback_models_zla <- zla_fit(humpback_data)
humpback_phrase_models_zla <- zla_fit(humpback_phrase_data)
sei_models_zla <- zla_fit(sei_data)
bowhead_models_zla <- zla_fit(bowhead_data)
killer_models_zla <- zla_fit(killer_data)
blue_models_zla <- zla_fit(blue_data)

#killer whale and blue whale models have singular fits from random effects with one observation
#they converged, but here are some extra analyses to confirm effects
zla_fit(killer_data$sharpe_2017)
zla_fit(killer_data$selbmann_2023)
blue_models_zla_simple <- lm(scale(log(duration)) ~ type, data = blue_data) #two types can be run as a t-test style linear model
#store locations of human datasets
human_datasets <- list.files("data/doreco/")
human_datasets <- substr(human_datasets[grep("doreco", human_datasets)], 1, 15)

#get labels for plotting
human_dataset_labels <- as.character(sapply(human_datasets, function(x){gsub(" DoReCo dataset.*", "", gsub("^The ", "", readLines(paste0("data/doreco/", x, "_extended/", x, "_dataset-info.txt")[1])[1]))}))

#store the actual phonemic data files for each language
human_datasets <- paste0("data/doreco/", human_datasets, "_extended/", human_datasets, "_ph.csv")

#compile dataset of phonemes in words and phonemes in sentences
phonemes <- parallel::mclapply(human_datasets, zla_read_phonemes, mc.cores = 7)

#run zla models on all of the phoneme
#cannot parallelize because menz_fit includes parallelization
phonemes_zla <- lapply(1:length(phonemes), function(g){zla_fit(data = phonemes[[g]]$phonemes)})

#run zla models on all of the words
words_zla <- lapply(1:length(phonemes), function(g){zla_fit(data = phonemes[[g]]$words)})

#save phonemic data
save(phonemes, file = "data/doreco/phonemes_zla.RData")
save(phonemes_zla, file = "models/phonemes_zla.RData")
save(words_zla, file = "models/words_zla.RData")
#combine data from all species to be analyzed in a single model
all_species_data <- list(humpback = humpback_data, killer = killer_data, blue = blue_data, bowhead = bowhead_data, sei = sei_data)

#groups: 0 for mysticetes, 1 for odontocetes
groups <- c(0, 1, 0, 0, 0)

#run model
#positive interaction means that 1 has weaker ML than 0
all_species_model_zla <- zipf_compare(all_species_data, groups)

#check for convergence
summary(all_species_model_zla)$optinfo$conv$lme4$messages

#return 
save(all_species_model_zla, file = "models/all_species_model_zla.RData")

4.1 Data

Cetacean vocal sequences have different names in different species (e.g., songs, codas, burst-pulses), and there is substantial variation in research effort across taxa, so I used a mixture of different strategies to compile a convenience sample of candidate datasets. For heavily studied species I was able to find papers by using species-specific search term combinations like {“humpback whale” AND “song sequences”} and {“sperm whale” AND “codas”} on Google Scholar. For less represented taxa, like dolphins and porpoises, I also searched for datasets directly on repositories like Dryad, Zenodo, and Figshare. Within odontocetes (i.e., toothed whales), who produce clicks for echolocation, I only included vocalizations that have a known or hypothesized communication function (e.g., sperm whale codas, dolphin burst-pulses) (58, 81).

In total, I found 44 studies that reported the durations of elements, or the intervals between elements, within vocal sequences. 14 of these had open data that were suitable for analysis. I emailed the corresponding authors of the remaining studies and was granted access to 10 closed datasets that were suitable for analysis. The final 24 datasets can be seen in Table 1 (31, 51, 5558, 67, 68, 8196). For each dataset, I analyzed sequences as they were defined by the original authors. Three of the datasets, two in humpback whales (85, 86) and one in killer whales (90), were analyzed separately because they measured the durations of higher-level units (e.g., for the humpbacks, phrases within songs rather than notes within phrases).

The phrase-level humpback whale dataset (67) was the only one that did not include the durations of individual elements or intervals in sequences. Instead, Owen et al. (67) report the sequences as strings of element categories, with a separate file that logs the durations of many different elements from each category. For this dataset, I interpolated the sequences with the median duration of each element category. Supplementary analysis with human language data suggests that interpolation with median values systematically reduces the strength of Menzerath’s law, which should lead to more conservative conclusions (see Supplementary Information). One clear outlier was removed from one of the other humpback whale datasets (85)—a phrase with a duration of 752 seconds (the next longest in that category is 16.9 seconds, with a median of 9.3 seconds).

The phylogeny in Figures 2 and 3 comes from a metatree of Cetacea comprised of both molecular and morphological data (97). As the phylogeny was primarily for visualization purposes, I assigned three species that do not appear in the metatree to close relatives in the same genus: the narrow-ridged finless porpoise (Neophocaena asiaeorientalis) to the Indo-Pacific finless porpoise (Neophocaena phocaenoides), the Commerson’s dolphin (Cephalorhynchus commersonii) to the Chilean dolphin (Cephalorhynchus eutropia), and the Peale’s dolphin (Lagenorhynchus australis) to the white-beaked dolphin (Lagenorhynchus albirostris).

For the DoReCo spoken language dataset (49), the only pre-processing was removing everything marked as an “exceptional speech event” (i.e., singing, disfluencies). For the main analysis, I followed Menzerath (19) in using data on phonemes within words, but the results for words within sentences can be found in the Supplementary Information.

Element durations and inter-onset intervals were measured slightly differently across the datasets. Most element durations were measured manually from spectrograms (51, 55, 67, 68, 85, 86, 89, 90, 96), with one dataset processed semi-automatically using PAMlab (88). The approaches for measuring inter-onset intervals were more varied. Some datasets were processed manually (83, 87, 94), while others used automated methods through custom pipelines, MATLAB, or Raven Pro (31, 82, 84, 92). Several studies did not specify the method used for measuring intervals (5658, 81, 91, 93, 95). The spoken language data from DoReCo were annotated semi-automatically using WebMAUS (46). Researchers used different strategies for automatically identifying onsets, such as: when cumulative energy in the signal reached 5% (82), when maximum energy occurred within a specific frequency range (84), or when a sliding time window detected above-threshold kurtosis (31). For more details, refer to the original source for each dataset.

There are two notes about the datasets used to assess Zipf’s law of abbreviation. First, only one of the two sei whale datasets separated out the calls into types (89), which is why the other is excluded (88). Second, even though the two killer whale datasets focus on different levels of analysis (i.e., elements in calls vs. calls in call sequences) both of them have labelled call types, which is why both are included (90, 96).

4.2 Model Fitting

All models were fit using the lme4 (v1.1-35.1) package in R (v4.3.1) with the BOBYQA optimizer. To avoid the many problems associated with p-values (98), I report mean estimates and 95% Wald confidence intervals, and interpret intervals that do not overlap zero as indicating a strong effect. To enable direct comparison of fixed effects across different models, I used maximum likelihood and z-scored the sequence lengths and element or interval durations within species and languages. All reported models were manually checked for convergence.

I focus on the Menzerath-Altmann law—a precise and more robust mathematical form of Menzerath’s law (48, 50). Here is the standard form of the Menzerath-Altmann law where \(y\) is the duration of elements within a sequence comprised of \(x\) elements, and \(a\), \(b\), and \(c\) are parameters controlling the shape of the relationship.

\[\begin{equation} y = ax^{b}e^{cx} \;\;\textrm{(full model)} \tag{7} \end{equation}\]

\(c\) is usually close to 0 when this model is fit to empirical data (37), leading to a reduced model that is its most common form in contemporary linguistics (60).

\[\begin{equation} y = ax^{b} \;\;\textrm{(reduced model)} \tag{8} \end{equation}\]

With some simple algebra we can convert Equation (7) and Equation (8) into linear models.

\[\begin{equation} \ln(y) = \ln(a) + b\ln(x) + cx \;\;\textrm{(full model)} \tag{9} \end{equation}\]

\[\begin{equation} \ln(y) = \ln(a) + b\ln(x) \;\;\textrm{(reduced model)} \tag{10} \end{equation}\]

I will use Equation (10) to enable direct comparison with previous studies of the Menzerath-Altmann law in non-human animals (20, 23, 24, 29, 31, 33, 37, 52), and because the inclusion of \(x\) twice in Equation (9) leads to severe multicollinearity.

In Equation (10), \(y\) is usually the mean duration of elements within sequences, but I will use the full distribution of element durations within sequences (25). This leads to similar estimates of \(a\) and \(b\) in linguistic corpora, helps to avoid spurious “regression to the mean” effects (20, 99, 100), and better captures uncertainty in the models (25). I also follow other work in excluding single-element sequences (i.e., with a length of one) from the analysis, which have been shown to depart from Menzerath’s law (22, 28, 36, 50).

I originally planned to compare the patterns in the real data with simulated data from a null model that is thought to account for production constraints (37), as I recently did for house finch song (25), but analyses of language data suggest that it is far too conservative of a null model. More details about this exploratory analysis can be found in the Supplementary Information.

Several previous studies of Menzerath’s law in non-human communication have also included individual identity as a varying intercept (23, 52). I did not include individual identity in the models because it is not available in any of the included datasets is rarely included in linguistics studies (22).

All details about Zipf’s law of abbreviation can be found in the Results.

Acknowledgments

I would like to thank all first authors who contributed data to this study, either directly (via personal correspondence) or indirectly (by publishing open data): Leah Lewis, Florence Erbs, Miriam Romagosa, Megan Wood, Paul Best, Elena Schall, Clare Owen, Cameron Martin, Jessica Crance, Gabrielle Macklin, Arthur Stepanov, Morgan Martin, Nicoline Nielsen, Anna Selbmann, Deborah Sharpe, Tomoyoshi Terada, Patricia Arranz, Taylor Hersh, Felicia Vachon, and Shane Gero.

Data & Code Availability

The analysis code, and all datasets that were made open access by the original authors, can be found on GitHub (https://github.com/masonyoungblood/whale_efficiency) and in the HTML form of the manuscript (https://masonyoungblood.github.io/whale_efficiency/). For access to the other datasets that are not publicly available, please reach out to the original authors (see Table 1).

References

1.
R. M. Seyfarth, D. L. Cheney, T. Bergman, J. Fischer, K. Zuberbühler, K. Hammerschmidt, The central importance of information in studies of animal communication. Animal Behaviour 80, 3–8 (2010).
2.
W. T. Fitch, The evolution of speech: a comparative review. Trends in Cognitive Sciences 4, 258–267 (2000).
3.
E. A. Hebets, A. B. Barron, C. N. Balakrishnan, M. E. Hauber, P. H. Mason, K. L. Hoke, A systems approach to animal communication. Proc. R. Soc. B. 283, 20152889 (2016).
4.
S. Semple, M. J. Hsu, G. Agoramoorthy, Efficiency of coding in macaque vocal communication. Biol. Lett. 6, 469–471 (2010).
5.
A. G. Ophir, S. B. Schrader, J. F. Gillooly, Energetic cost of calling: general constraints and species‐specific differences. J of Evolutionary Biology 23, 1564–1569 (2010).
6.
J. A. Endler, Some general comments on the evolution and design of animal communication systems. Phil. Trans. R. Soc. Lond. B 340, 215–225 (1993).
7.
E. Gibson, R. Futrell, S. P. Piantadosi, I. Dautriche, K. Mahowald, L. Bergen, R. Levy, How efficiency shapes human language. Trends in Cognitive Sciences 23, 389–407 (2019).
8.
T. Gruber, M. Chimento, L. M. Aplin, D. Biro, Efficiency fosters cumulative culture across species. Phil. Trans. R. Soc. B 377, 20200308 (2022).
9.
G. Zipf, Human Behavior and the Principle of Least Effort: An Introducton to Human Ecology (Addison-Wesley, Cambridge, 1949).
10.
D. P. Noren, M. M. Holt, R. C. Dunkin, T. M. Williams, The metabolic cost of communicative sound production in bottlenose dolphins ( Tursiops truncatus ). Journal of Experimental Biology, jeb.083212 (2013).
11.
L. J. May-Collado, I. Agnarsson, D. Wartzok, Phylogenetic review of tonal sound production in whales in relation to sociality. BMC Evol Biol 7, 136 (2007).
12.
C. P. H. Elemans, W. Jiang, M. H. Jensen, H. Pichler, B. R. Mussman, J. Nattestad, M. Wahlberg, X. Zheng, Q. Xue, T. W. Fitch, Evolutionary novelties underlie sound production in baleen whales. Nature 627, 123–129 (2024).
13.
D. L. Moseley, J. N. Phillips, E. P. Derryberry, D. A. Luther, Evidence for differing trajectories of songs in urban and rural populations. Behavioral Ecology 30, 1734–1742 (2019).
14.
J. M. Zeh, D. L. Adcock, V. Perez-Marrufo, D. A. Cusano, J. Robbins, J. E. Tackaberry, F. H. Jensen, M. Weinrich, A. S. Friedlaender, D. N. Wiley, S. E. Parks, Acoustic behavior of humpback whale calves on the feeding ground: Comparisons across age and implications for vocal development. PLoS ONE 19, e0303741 (2024).
15.
V. Lesage, C. Barrette, M. C. S. Kingsley, B. Sjare, The effect of vessel noise on the vocal behavior of belugas in the St. Lawrence river estuary, Canada. Marine Mammal Science 15, 65–84 (1999).
16.
P. M. Sørensen, A. Haddock, E. Guarino, K. Jaakkola, C. McMullen, F. H. Jensen, P. L. Tyack, S. L. King, Anthropogenic noise impairs cooperation in bottlenose dolphins. Current Biology 33, 749–754.e4 (2023).
17.
A. D. Foote, R. W. Osborne, A. R. Hoelzel, Whale-call response to masking boat noise. Nature 428, 910–910 (2004).
18.
K. M. Fristrup, L. T. Hatch, C. W. Clark, Variation in humpback whale (Megaptera novaeangliae) song length in relation to low-frequency sound broadcasts. The Journal of the Acoustical Society of America 113, 3411–3424 (2003).
19.
P. Menzerath, Die Architektonik Des Deutschen Wortschatzes (Dümmler, Bonn, 1954).
20.
M. L. Gustison, S. Semple, R. Ferrer-i-Cancho, T. J. Bergman, Gelada vocal sequences follow Menzerath’s linguistic law. Proc. Natl. Acad. Sci. U.S.A. 113 (2016).
21.
R. Ferrer-i-Cancho, A. Hernández-Fernández, D. Lusseau, G. Agoramoorthy, M. J. Hsu, S. Semple, Compression as a universal principle of animal behavior. Cogn Sci 37, 1565–1578 (2013).
22.
I. G. Torre, B. Luque, L. Lacasa, C. T. Kello, A. Hernández-Fernández, On the physical origin of linguistic laws and lognormality in speech. R. Soc. open sci. 6, 191023 (2019).
23.
24.
L. Favaro, M. Gamba, E. Cresta, E. Fumagalli, F. Bandoli, C. Pilenga, V. Isaja, N. Mathevon, D. Reby, Do penguins’ vocal sequences conform to linguistic laws? Biol. Lett. 16, 20190589 (2020).
25.
M. Youngblood, Language-like efficiency and structure in house finch song. Proceedings of the Royal Society B 291, 20240250 (2024).
26.
27.
K. Deng, Y.-X. He, X.-P. Wang, T.-L. Wang, J.-C. Wang, Y.-H. Chen, J.-G. Cui, Hainan frilled treefrogs’ calls partially conform to Menzerath–Altmann’s law, but oppose Zipf’s law of abbreviation. Animal Behaviour 213, 51–59 (2024).
28.
R. Heesen, C. Hobaiter, R. Ferrer-i-Cancho, S. Semple, Linguistic laws in chimpanzee gestural communication. Proceedings of the Royal Society B: Biological Sciences 286, 20182900 (2019).
29.
R. N. Lewis, A. Kwong, M. Soma, S. R. De Kort, R. T. Gilman, “Java sparrow song conforms to Menzerath’s Law but not Zipf’s Law of Abbreviation” (preprint, Animal Behavior and Cognition, 2023); https://doi.org/10.1101/2023.12.13.571437.
30.
A. Safryghin, C. Cross, B. Fallon, R. Heesen, R. Ferrer-i-Cancho, C. Hobaiter, Variable expression of linguistic laws in ape gesture: a case study from chimpanzee sexual solicitation. Royal Society Open Science 9, 220849 (2022).
31.
A. Stepanov, H. Zhivomirov, I. Nedelchev, P. Stateva, “Bottlenose dolphins’ broadband clicks are structured for communication” (preprint, Animal Behavior and Cognition, 2023); https://doi.org/10.1101/2023.01.11.523588.
32.
D. Valente, C. De Gregorio, L. Favaro, O. Friard, L. Miaretsoa, T. Raimondi, J. Ratsimbazafy, V. Torti, A. Zanoli, C. Giacoma, M. Gamba, Linguistic laws of brevity: conformity in Indri indri. Anim Cogn 24, 897–906 (2021).
33.
A. A. Vradi, Dolphin communication. A quantitative linguistics approach,” thesis, Universitat Politècnica de Catalunya (2021).
34.
C. Zhang, Z. Zheng, J. R. Lucas, Y. Wang, X. Fan, X. Zhao, J. Feng, C. Sun, T. Jiang, Do bats’ social vocalizations conform to Zipf’s law and the Menzerath-Altmann law? iScience 27, 110401 (2024).
35.
M. Stave, L. Paschen, F. Pellegrino, F. Seifart, Optimization of morpheme length: a cross-linguistic assessment of Zipf’s and Menzerath’s laws. Linguistics Vanguard 7, 20190076 (2021).
36.
A. Hernández-Fernández, I. G. Torre, J.-M. Garrido, L. Lacasa, Linguistic laws in speech: The case of Catalan and Spanish. Entropy 21, 1153 (2019).
37.
L. S. James, C. Mori, K. Wada, J. T. Sakata, Phylogeny and mechanisms of shared hierarchical patterns in birdsong. Current Biology 31, 2796–2808.e9 (2021).
38.
K. Mahowald, I. Dautriche, E. Gibson, S. T. Piantadosi, Word Forms Are Structured for Efficient Use. Cognitive Science 42, 3116–3134 (2018).
39.
40.
K. Mahowald, E. Fedorenko, S. T. Piantadosi, E. Gibson, Info/information theory: Speakers choose shorter words in predictive contexts. Cognition 126, 313–318 (2013).
41.
S. T. Piantadosi, H. Tily, E. Gibson, Word lengths are optimized for efficient communication. Proc. Natl. Acad. Sci. U.S.A. 108, 3526–3529 (2011).
42.
43.
V. M. Janik, Cetacean vocal learning and communication. Current Opinion in Neurobiology 28, 60–65 (2014).
44.
R. T. Gilman, C. Durrant, L. Malpas, R. N. Lewis, “Does Zipf’s law of abbreviation shape birdsong?” (preprint, Animal Behavior and Cognition, 2023); https://doi.org/10.1101/2023.12.06.569773.
45.
C. Risueno-Segovia, D. Dohmen, Y. B. Gultekin, T. Pomberger, S. R. Hage, Linguistic law-like compression strategies emerge to maximize coding efficiency in marmoset vocal communication. Proc. R. Soc. B. 290, 20231503 (2023).
46.
L. Paschen, S. Fuchs, F. Seifart, Final Lengthening and vowel length in 25 languages. Journal of Phonetics 94 (2022).
47.
T. A. Hersh, A. Ravignani, H. Whitehead, Cetaceans are the next frontier for vocal rhythm research. Proc. Natl. Acad. Sci. U.S.A. 121, e2313093121 (2024).
48.
G. Altmann, Prolegomena to Menzerath’s law. Glottometrika 2, 1–10 (1980).
49.
F. Seifart, L. Paschen, M. Stave, Language Documentation Reference Corpus (DoReCo), version 1.2 (2022); https://doi.org/10.34847/nkl.7cbfq779.
50.
I. G. Torre, Ł. Dębowski, A. Hernández-Fernández, Can Menzerath’s law be a criterion of complexity in communication? PLoS ONE 16, e0256133 (2021).
51.
J. L. Crance, C. L. Berchok, D. L. Wright, A. M. Brewer, D. F. Woodrich, Song production by the North Pacific right whale, Eubalaena japonica. The Journal of the Acoustical Society of America 145, 3467–3479 (2019).
52.
53.
A. R. Ives, P. E. Midford, T. Garland, Within-species variation and measurement error in phylogenetic comparative methods. Systematic Biology 56, 252–270 (2007).
54.
55.
L. A. Lewis, J. Calambokidis, A. K. Stimpert, J. Fahlbusch, A. S. Friedlaender, M. F. McKenna, S. L. Mesnick, E. M. Oleson, B. L. Southall, A. R. Szesciorka, A. Širović, Context-dependent variability in blue whale acoustic behaviour. R. Soc. open sci. 5, 180241 (2018).
56.
N. A. Nielsen, S. M. Dawson, S. Torres Ortiz, M. Wahlberg, M. J. Martin, Hector’s dolphins (Cephalorhynchus hectori) produce both narrowband high-frequency and broadband acoustic signals. The Journal of the Acoustical Society of America 155, 1437–1450 (2024).
57.
M. J. Martin, S. Torres Ortiz, M. V. Reyes Reyes, A. Marino, M. Iñíguez Bessega, M. Wahlberg, Commerson’s dolphins (Cephalorhynchus commersonii) can relax acoustic crypsis. Behav Ecol Sociobiol 75, 100 (2021).
58.
M. J. Martin, T. Gridley, S. H. Elwen, F. H. Jensen, Heaviside’s dolphins (Cephalorhynchus heavisidii) relax acoustic crypsis to increase communication range. Proc. R. Soc. B. 285, 20181178 (2018).
59.
M. J. Martin, S. H. Elwen, R. Kassanjee, T. Gridley, To buzz or burst-pulse? The functional role of Heaviside’s dolphin, Cephalorhynchus heavisidii, rapidly pulsed signals. Animal Behaviour 150, 273–284 (2019).
60.
R. Hou, C.-R. Huang, H. S. Do, H. Liu, A study on correlation between Chinese sentence and constituting clauses based on the Menzerath-Altmann Law. Journal of Quantitative Linguistics 24, 350–366 (2017).
61.
F. Seifart, J. Strunk, S. Danielsen, I. Hartmann, B. Pakendorf, S. Wichmann, A. Witzlack-Makarevich, N. P. Himmelmann, B. Bickel, The extent and degree of utterance-final word lengthening in spontaneous speech from 10 languages. Linguistics Vangaurd 7, 20190063 (2021).
62.
T. Matzinger, W. T. Fitch, Voice modulatory cues to structure across languages and species. Philosophical Transactions of the Royal Society B 376, 20200393 (2021).
63.
P. T. Madsen, U. Siebert, C. P. H. Elemans, Toothed whales use distinct vocal registers for echolocation and communication. Science 379, 928–933 (2023).
64.
M. M. Holt, D. P. Noren, R. C. Dunkin, T. M. Williams, Vocal performance affects metabolic rate in dolphins: implications for animals communicating in noisy environments. Journal of Experimental Biology, jeb.122424 (2015).
65.
E. Vannoni, A. G. McElligott, Fallow bucks get hoarse: vocal fatigue as a possible signal to conspecifics. Animal Behaviour 78, 3–10 (2009).
66.
M. Benešová, D. Faltýnek, L. H. Zámečník, Explain the law: When the evidence is not enough. Linguistic Frontiers, doi: 10.2478/lf-2020-0013 (2021).
67.
C. Owen, L. Rendell, R. Constantine, M. J. Noad, J. Allen, O. Andrews, C. Garrigue, M. M. Poole, D. Donnelly, N. Hauser, E. C. Garland, Migratory convergence facilitates cultural transmission of humpback whale song. Royal Society Open Science 6 (2019).
68.
F. Erbs, M. Van Der Schaar, J. Weissenberger, S. Zaugg, M. André, Contribution to unravel variability in bowhead whale songs and better understand its ecological significance. Sci Rep 11, 168 (2021).
69.
R. Ferrer-i-Cancho, A. Hernández-Fernández, The failure of the law of brevity in two new world primates. Statistical caveats. Glottotheory 4 (2013).
70.
S. Semple, R. Ferrer-i-Cancho, M. L. Gustison, Linguistic laws in biology. Trends in Ecology & Evolution 37, 53–66 (2022).
71.
F. Ladich, H. Winkler, Acoustic communication in terrestrial and aquatic vertebrates. Journal of Experimental Biology 220, 2306–2317 (2017).
72.
E. C. Garland, J. A. Allen, F. Eichenberger, C. Garrigue, C. Bonneville, D. Steel, E. L. Carroll, Does female choice for song complexity drive sexual selection in humpback whales? The Journal of the Acoustical Society of America 154, A88–A88 (2023).
73.
E. C. Garland, L. Rendell, L. Lamoni, M. M. Poole, M. J. Noad, Song hybridization events during revolutionary song change provide insights into cultural transmission in humpback whales. Proceedings of the National Academy of Sciences of the United States of America 114, 7822–7829 (2017).
74.
R. Suzuki, J. R. Buck, P. L. Tyack, Information entropy of humpback whale songs. Journal of the Acoustical Society of America 119 (2006).
75.
H. Pines, “Mapping the phonetic structure of humpback whale song units: extraction, classification, and Shannon-Zipf confirmation of sixty sub-units” (Victoria, Canada, 2018; https://pubs.aip.org/asa/poma/article/995051), p. 010003.
76.
J. A. Allen, E. C. Garland, R. A. Dunlop, M. J. Noad, Network analysis reveals underlying syntactic features in a vocally learnt mammalian display, humpback whale song. Proc. R. Soc. B. 286, 20192014 (2019).
77.
G. Begus, R. Sprouse, A. Leban, M. Silva, S. Gero, Vowels and Diphthongs in sperm whales. OSF [Preprint] (2023). https://doi.org/10.31219/osf.io/285cs.
78.
P. Sharma, S. Gero, R. Payne, D. F. Gruber, D. Rus, A. Torralba, J. Andreas, Contextual and combinatorial structure in sperm whale vocalisations. Nat Commun 15, 3617 (2024).
79.
L. Rendell, Are we really about to talk to whales?, The Conversation (2024). https://theconversation.com/are-we-really-about-to-talk-to-whales-229778.
80.
M. Rohrmeier, W. Zuidema, G. A. Wiggins, C. Scharff, Principles of structure building in music, language and animal song. Philos Trans R Soc B 370, 20140097 (2015).
81.
T. A. Hersh, S. Gero, L. Rendell, M. Cantor, L. Weilgart, M. Amano, S. M. Dawson, E. Slooten, C. M. Johnson, I. Kerr, R. Payne, A. Rogan, R. Antunes, O. Andrews, E. L. Ferguson, C. A. Hom-Weaver, T. F. Norris, Y. M. Barkley, K. P. Merkens, E. M. Oleson, T. Doniol-Valcroze, J. F. Pilkington, J. Gordon, M. Fernandes, M. Guerra, L. Hickmott, H. Whitehead, Evidence from sperm whale clans of symbolic marking in non-human cultures. Proc. Natl. Acad. Sci. U.S.A. 119, e2201692119 (2022).
82.
M. Romagosa, S. Nieukirk, I. Cascão, T. A. Marques, R. Dziak, J.-Y. Royer, J. O’Brien, D. K. Mellinger, A. Pereira, A. Ugalde, E. Papale, S. Aniceto, G. Buscaino, M. Rasmussen, L. Matias, R. Prieto, M. A. Silva, Fin whale song evolution in the North Atlantic. eLife 13, e83750 (2024).
83.
M. Wood, A. Širović, Characterization of fin whale song off the Western Antarctic Peninsula. PLoS ONE 17, e0264214 (2022).
84.
P. Best, R. Marxer, S. Paris, H. Glotin, Temporal evolution of the Mediterranean fin whale song. Sci Rep 12, 13565 (2022).
85.
E. Schall, K. Thomisch, O. Boebel, G. Gerlach, S. Mangia Woods, I. T. Roca, I. Van Opzeeland, Humpback whale song recordings suggest common feeding ground occupation by multiple populations. Sci Rep 11, 18806 (2021).
86.
E. Schall, D. Djokic, E. C. Ross-Marsh, J. Oña, J. Denkinger, J. Ernesto Baumgarten, L. Rodrigues Padovese, M. R. Rossi-Santos, M. I. Carvalho Gonçalves, R. Sousa-Lima, R. Hucke-Gaete, S. Elwen, S. Buchan, T. Gridley, I. Van Opzeeland, Song recordings suggest feeding ground sharing in Southern Hemisphere humpback whales. Sci Rep 12, 13924 (2022).
87.
C. R. Martin, R. A. Guazzo, T. A. Helble, G. C. Alongi, I. N. Durbach, S. W. Martin, B. M. Matsuyama, E. E. Henderson, North Pacific minke whales call rapidly when calling conspecifics are nearby. Front. Mar. Sci. 9, 897298 (2022).
88.
G. F. Macklin, H. B. Moors-Murphy, M. L. Leonard, Characteristics and spatiotemporal variation of sei whale (Balaenoptera borealis) downsweeps recorded in Atlantic Canada. The Journal of the Acoustical Society of America 155, 145–155 (2024).
89.
S. Cerchio, C. R. Weir, Mid-frequency song and low-frequency calls of sei whales in the Falkland Islands. R. Soc. open sci. 9, 220738 (2022).
90.
A. Selbmann, P. J. O. Miller, P. J. Wensveen, J. Svavarsson, F. I. P. Samarra, Call combination patterns in Icelandic killer whales (Orcinus orca). Sci Rep 13, 21771 (2023).
91.
T. Terada, T. Morisaka, I. Wakabayashi, M. Yoshioka, Communication sounds produced by captive narrow-ridged finless porpoises (Neophocaena asiaeorientalis). J Ethol 40, 245–256 (2022).
92.
M. J. Martin, S. T. Ortiz, M. Wahlberg, C. R. Weir, Peale’s dolphins (Lagenorhynchus australis) are acoustic mergers between dolphins and porpoises. Journal of Experimental Marine Biology and Ecology 572, 151977 (2024).
93.
P. Arranz, S. L. DeRuiter, A. K. Stimpert, S. Neves, A. S. Friedlaender, J. A. Goldbogen, F. Visser, J. Calambokidis, B. L. Southall, P. L. Tyack, Discrimination of fast click series produced by tagged Risso’s dolphins (Grampus griseus) for echolocation or communication. Journal of Experimental Biology, jeb.144295 (2016).
94.
95.
S. Gero, H. Whitehead, L. Rendell, Individual, unit and vocal clan level identity cues in sperm whale codas. R. Soc. open sci. 3, 150372 (2016).
96.
D. L. Sharpe, M. Castellote, P. R. Wade, L. A. Cornick, Call types of Bigg’s killer whales (Orcinus orca) in western Alaska: using vocal dialects to assess population structure. Bioacoustics 28, 74–99 (2017).
97.
98.
V. Amrhein, S. Greenland, B. McShane, Retire statistical significance. Nature 567, 305–307 (2019).
99.
J. Milička, Menzerath’s law: Is it just regression toward the mean? Glottometrics 55, 1–16 (2023).
100.
R. Ferrer-i-Cancho, A. Hernández-Fernández, J. Baixeries, Ł. Dębowski, J. Mačutek, When is Menzerath-Altmann law mathematically trivial? a new approach. Statistical Applications in Genetics and Molecular Biology 13 (2014).