============================================================================== The plan of the second study, written before any text was read: the texts, the tests and, for the main ones, what would count as passing. Later additions are dated inside it. Printed as it was written; nothing has been changed. ============================================================================== # Further search for universals in stories: plan fixed before any reading Written 2026-10-11, before any text of the new sample had been read by a reader and before any count had been run on the non-English books or the motif catalogue. Everything below was decided in advance. Anything settled later is listed at the end under "Settled after the data were in", which is empty when this file is first saved. ## What is being asked The first study (README.md, "Plot universals") read 319 folk tales from 29 collections and found that what tales share is trouble and timing: a problem at the start, real trouble, tension that rises and is let go, a decisive ending. Four doubts hang over that answer, and one larger question. 1. Is it this sample? The verdict thresholds and the rise-then-release test were set after the first readings were in. A fresh sample from collections never used tests them cleanly. 2. Is it folk tales? The same instrument is put to other kinds of story: old written stories, films from many countries, literary short stories. 3. Is it the reader? An AI reader asked about trouble and tension may find them in anything. So the same reader is given texts that are not stories (dreams, diaries, encyclopedia lives), and tales whose scenes have been put in random order. Its timing is also compared with turning points marked by people in 99 film plots. 4. Is it English? The word-family timetable of the novel is counted again in novels written in ten other languages, among them classical Chinese fiction. 5. What else is shared? New candidates beyond the shape of fortune: cause, closure, what is at stake, the cast, repetition, the order of plot elements, and (from a human-coded catalogue of 958 societies) the content of stories. ## Texts for the readers All samples use numpy's default_rng with seed 20261011. | Kind | Source | Draw | |---|---|---| | Folk tales, second sample | Project Gutenberg collections not used in the first study (list: part2/data/ids_read2.txt, split reports in part2/split/) | 8 tales of 500 to 5,000 words at random from every collection that yields at least 8 | | Old written stories | Egyptian papyri (Petrie), Hebrew Bible narratives (KJV), Ovid (Riley), Jataka (Rhys Davids), Vetala tales (Ryder), Indo-Tibetan Buddhist tales (Schiefner), Mabinogion (Guest), Marie de France and other medieval French romances (Mason), Gesta Romanorum (Swan), Decameron (Rigg), Pu Songling (Giles), Tales of Old Japan (Mitford) | 6 of 500 to 5,000 words at random from each source that yields at least 6 | | Films around the world | CMU Movie Summary Corpus (42,306 Wikipedia plot summaries, 2012), films credited to a single country, summaries of 400 to 1,500 words | 6 at random from each of 18 strata: USA; UK; France; Italy; Spain; Germany; Nordic countries; Russia and USSR; India, Hindi; India, Tamil, Telugu, Malayalam and Kannada; Japan; Hong Kong; South Korea; China and Taiwan; Thailand; Philippines; Latin America; Middle East and Africa | | Films with human turning points | TRIPOD (Papalampidi, Keller and Lapata 2019): 99 Hollywood films, Wikipedia synopses with five turning points marked by people | all 99 | | Literary short stories | Chekhov, Joyce, Mansfield, Anderson, Lawrence, Turgenev, Maupassant, Chopin (Hemingway if the edition has titled stories) | 5 of 800 to 4,000 words at random from each author | | Dreams | DreamBank reports in English, 400 to 1,500 words | 40 at random, at most 2 from one dreamer series | | Diaries | Pepys, Dorothy Wordsworth, Walter Scott, Cook, Lewis and Clark, R. F. Scott, a nursing sister on the Western Front (1914-15), a Union enlisted man (Van Alstyne), Caroline Richards | 40 stretches of consecutive entries, 1,200 to 2,500 words, start entries at random, spread evenly over the diarists | | Lives | English Wikipedia (snapshot of 1 November 2023), biographies of people with a birth and a death date, prose of 600 to 3,000 words | 40 at random | | Scrambled tales | 40 tales drawn at random from the 319 of the first study | each read twice by the new reader, in different packs: once as printed, once with its eight scenes in a random order (never the original order) | Every text is cut into eight segments of equal length at paragraph or sentence breaks, with the code of the first study (src/prep_tales.py). A text that cannot give eight segments of fifteen words or more is dropped. Texts of all kinds are mixed at random into packs, so a reader meets them in no order and is not told what kind a text is. The two versions of a scrambled tale never share a pack. A second reader, a different model, reads 12 texts of each of eight kinds (96 in all; not the scrambled pairs). ## The reading form As in the first study (tales/READER_INSTRUCTIONS.md): per segment, fortune (-5..+5) and tension (0..5) at the end of the segment and an event line; per text, protagonist, kind, role, summary, shape, ending. Tone is dropped. New: - `link`, for segments 2 to 8: 2 = what happens is caused by, or is someone's response to, earlier events; 1 = it only comes next in time; 0 = unconnected to what came before. - `storylike` 0..4: how far the text is a story rather than a record. - `goal` (what the protagonist is mainly trying to get or keep): survival, love, family, wealth, status, justice, knowledge, pleasure, other, none. `goal_outcome`: achieved, partly, failed, none. - `closure`: closed, partial, open. `resolved_by`: wit, force, virtue, help, luck, opponent_error, other, unresolved. - `cast` (number of characters who matter to the plot), `single_protagonist`, `repeats` (how many times the most-repeated kind of episode is run through; 1 if nothing repeats), `underdog`, `contrast`, `single_strand`, `changed`, `surprise`. - The sixteen plot elements of the first study plus `confrontation` and `revelation`, each recorded as the number of the segment where it first happens (0 if absent). ## Tests ### A. The first study's scoreboard on the second folk sample (confirmatory) Definitions exactly as in src/tales_analyze.py, shuffles as there (1,000 orderings of a tale's own moves kept on the scale; 1,000 orderings of its eight tension ratings): 1. Starts with a problem: element `lack_or_harm` present. 2. Real trouble: fortune reaches -2 or lower. 3. Decisive ending: last fortune at +3 or higher, or -3 or lower. 4. It resolves: last tension below the peak (against the shuffle). 5. Tension rises, then lets go: peak above the opening level and last below the peak (shuffle). 6. Tension peaks late: mean position of the peak in the second half (shuffle). 7. A late turn: the biggest single move ends in the last quarter (shuffle). 8. Ends at an extreme: the last scene is the highest or lowest point (shuffle). 9. Down before up, and 10. a late low point: expected to do no better than the shuffle. 11. Happy ending, and 12. one shape: expected not to be general. A finding of the first study counts as confirmed if, in the second sample alone, it gets the same verdict word under the same thresholds: nearly always is 95% or more; usually is 80% or more and at least 60% in every region; a real lean beats the shuffle overall (p below 0.01), in at least six of the seven regions and in a clear majority of collections; no more than chance is p above 0.05. Regions are the seven of the first study; Southeast Asia, Tibet and Mongolia count with East Asia. ### B. Other kinds of story Tests 1 to 8 are run in each kind (old written stories, films around the world, the 99 Hollywood films, literary short stories) and reported kind by kind, with the shuffle for 4 to 8. The films are also broken down by the six world regions of their strata. Literary short stories are included as a deliberate hard case: writers of that school set out to avoid plot. ### C. Stories against non-stories For each of tests 1 to 8 and each new candidate (F), the share among stories (both folk samples, old written stories, films, literary stories; and each kind alone) is set beside the share among non-stories (dreams, diaries, lives; and each alone). A candidate is called a mark of stories if (a) it holds in at least 80% of the folk tales and at least 60% of every kind of story, and (b) its share among the pooled non-stories is at least 20 points lower than among the pooled stories, with a 95% bootstrap interval for the difference that excludes zero. A candidate that meets (a) but not (b) is reported as common to stories and non-stories alike: that is evidence that it belongs to any account of events, or to the reader, and not to stories. Literary stories failing (a) alone is reported as such. ### D. Scrambled tales (is the reader following the text?) For the 40 tales read both ways by the same reader: - D1. Do ratings follow content? Correlation between the tension given to a scene when the tale is read as printed and the tension given to the same scene when it turns up in a scrambled order; the same for fortune. - D2. Does the reader impose an arc? Tests 4 to 8 computed in the order the scrambled text was presented. If the reader follows content they should fall to about what shuffling the as-printed ratings gives. If the reader supplies a rise and release of its own they will stay near the as-printed figures. Reported as: as printed, scrambled text, shuffled ratings. ### E. The reader against people (99 films) Each TRIPOD synopsis has five turning points marked by people at a sentence: opportunity, change of plans, point of no return, major setback, climax. Where a film has several annotation sets the mean position is used. The segment holding a turning point is compared with the reader's ratings: - E1. The reader's tension peak (any segment sharing the maximum) is the segment of the human climax or next to it. - E2. The reader's biggest single fall in fortune ends in the segment of the human major setback or next to it. - E3. The reader's lowest point of fortune is in the segment of the major setback or next to it. Each rate is compared with the rate when films are paired at random (the reader's ratings of one film against the human turning points of another, 2,000 pairings), which keeps the usual positions and removes the film. Also reported from the human data alone: where each turning point falls. ### F. New candidates (shares by kind and by region; exploratory, definitions fixed here) - F1 a causal chain: at least five of the seven links are rated 2. - F2 closure: `closure` is closed. - F3 an aim: `goal` is not none. - F4 one protagonist: `single_protagonist`. F5 a small cast: `cast` is 5 or fewer (and its median). - F6 repetition: `repeats` is 2 or more. Pattern number: among texts with `repeats` of 3 or more, the share with exactly 3 and with exactly 4, by region. - F7 the underdog; F8 contrast; F9 a single strand; F10 the protagonist is changed; F11 a surprise. - F12 a short list of stakes: the share of texts whose `goal` is survival, love, family, wealth or status, and whether those five cover at least 80% of the tales in every region. - F13 what makes a text read as a story: `storylike` regressed on tests 1 to 8 and F1 to F3 across all texts; reported as the difference each feature makes with the others held fixed. ### G. Is there one order of events? (Propp's claim) For the elements with a place in time, each pair is scored by how often the first comes before the second among texts that have both in different segments. Two tests: - G1. Across regions: each region's ranking of the elements by mean position is correlated (Spearman) with the ranking from all the other regions pooled; the lowest of the seven is given. - G2. Within tales: the share of tales whose own elements stand in the pooled order (Kendall tau above zero against the consensus ranking from the other regions), against the same tales with the positions dealt out at random among the elements each tale has. Run on the second folk sample and, separately, on the other kinds of story. ### H. How much of plot is shared, how much is local On both folk samples together (first-study readings for the first; second-sample readings for the second; the reader of the second sample also re-reads 40 first-sample tales as printed, which measures any drift between the two readers). - H1. Share of the variation in the fortune and tension curves that lies between regions, between collections within a region, and among tales within a collection (multivariate, sums of squares), with a permutation test in which collections keep their tales and regions are dealt out at random to collections. - H2. Can the region be told from the plot? A classifier is trained on all collections but one and guesses the region of the tales of the held-out collection, from (a) the fortune and tension curves only, (b) the plot elements only, (c) both. Accuracy against chance (region labels permuted across collections, 500 times). ### I. Other languages Books: every Project Gutenberg text in French, Finnish, German, Dutch, Italian, Spanish, Hungarian, Portuguese, Chinese and Swedish that the catalogue files under language and literature and that src/ext_groups.py classes as fiction, with at least 10,000 words (Chinese: 20,000 characters). Originals and translations are not told apart. Word families are written once for each language, before any count, in part2/src/families.py, as translations of nine of the English lists: home and family, travel, fear and danger, fighting, secrets out, death, tears, love and marriage, joy. Counted in 100 equal slices; a book that uses a family fewer than 30 times is left out of that row. Predictions, each from the English timetable (7,215 novels), tested language by language with a 95% bootstrap interval over books: - I1 home and family words run above the book's own rate in the first tenth. - I2 death, I3 tears, I4 love and marriage, I5 secrets out: above the book's rate in the last tenth. - I6 fear and danger, I7 fighting: more between 40% and 80% of the book than in its first 40%. - I8 joy: above the book's rate in the last 2%. - I9 the words darken: with the word-happiness lists that exist for French, German, Spanish, Portuguese and Chinese (labMT, Dodds and colleagues 2015), the share of books whose straight-line trend between 2% and 98% is downward, against one word-shuffled copy of each book. - I10 the last pages lift: the final 2% is brighter than the tenth before it. A prediction counts as holding in a language when the interval lies on the predicted side. The headline is the count of languages, out of those with at least 100 books, in which each holds. ### J. What stories contain: the world motif catalogue Data: Y. Berezkin's catalogue as released by Michalopoulos and Xue (2021): which of 2,564 motifs is recorded in each of 958 societies, with each society's place. Descriptive, no shuffle needed: - J1. How widespread is the most widespread motif, and how many motifs are in at least half of the societies? - J2. How many motifs are found on every continent (at least one society; and at least a tenth of the societies of each)? - J3. Do neighbours share more? Overlap of motif sets (Jaccard) for pairs of societies against the distance between them, with societies of fewer than 50 recorded motifs left out. - J4. Share of motifs found in both the Old World and the Americas. - J5. The same for Berezkin's two halves of the catalogue: cosmology and origins (codes A to I) against adventures and tricksters (J to N). ## What is reported whatever happens Every test above appears in the page or its tables with its number, including those that fail. The second reader's agreement is given for every field. Readers' own reports of protocol breaches are counted and published. ## Added on 2026-10-11 at 05:45 UTC, still before any reading Nothing had been read by any reader when these were added. The motif catalogue (J) had been counted by then, as planned; it does not involve the readers. ### K. Reading without hindsight In the first study the reader finished a tale before rating its scenes, so the ratings of early scenes may have been coloured by knowing the end. The 40 tales of test D are therefore also given as openings: the first k of the eight scenes, for k = 1 to 7 (280 openings), each to a fresh reader who is told only that the text breaks off. The fortune and tension given to scene k by the reader who saw nothing after it make the tale's curve without hindsight; its eighth point is taken from the reading of the whole tale. - K1. Agreement, scene by scene, between the ratings without hindsight and those of the reader of the whole tale (correlation, and mean difference at each scene). - K2. Tests 4 to 8 on the curves without hindsight, against the shuffle, beside the same tests on the whole-tale readings of the same 40 tales. - K3. How soon the ending shows: after each opening the reader guesses whether the protagonist will end better, worse or the same (`expect`). The share of right guesses at each k, against always guessing the commonest ending. Tales that the reader of the whole text marks as well known (`known` = 2) are also reported apart. ### The form, made final (part2/read/READER_INSTRUCTIONS.md) - `known` (0, 1, 2): whether the reader recognises the text. - `resolved_by` gains `own_error` (the protagonist's own folly, vice or mistake). - `changed` means changed inside (has learned something, or changed in character, belief or outlook); a change of wealth, rank, form or marital state is already covered by `ending`. - The readers are not told what kind a text is; they are told that some texts are records, some are disjointed and some break off, and to rate each as it stands. ### Sampling details fixed while writing part2/src/prep_texts.py - A text is eligible only if it gives eight segments of fifteen words or more, so nothing is dropped after a draw. Each kind is drawn from its own random stream of seed 20261011. - Films: summaries with leftover wiki markup (braces, double brackets, angle brackets, links) are left out, as are the films that are in TRIPOD. Germany includes West and East Germany. An Indian film counts as Hindi, or as southern, only if its language credits name one of the two groups and not the other. - Dreams: reports with square brackets (collectors' insertions) are left out. Lives: the 40 are the first 40 people of a list of 44 drawn at random from the snapshot (a racehorse is skipped). - Diaries: of Lewis and Clark only Lewis's entries are used (Clark's days are printed twice). - Literary stories: an author with fewer than five eligible stories gives what there is. - J: beside the planned counts, the same counts among the best recorded societies, and the overlap measured as shared motifs over the smaller of the two lists, are given as checks on how far gaps in the record drive the answer. These were added while the code was written. ### Other languages: which part of a book is counted (added about 05:50 UTC, before any count) The English timetable was counted on "clean-cut" novels: the text from the first chapter heading to the line that says THE END, so that title pages, contents, publishers' lists and notes cannot make an effect at the edges. Predictions I1 to I5, I8 and I10 are all about the edges, so the same cut is the main analysis here: a book is used if a first-chapter heading is found in its opening 15% of lines and an end line (FIN, ENDE, EINDE, FINE, FIM, LOPPU, VÉGE, SLUT) in its closing 10%, and only the text between them is counted. All fiction of 10,000 words or more, uncut, is given beside it as the check. Chinese texts on Project Gutenberg carry no such matter and no end line, and are counted whole. A language enters the headline count if it has at least 100 clean-cut novels (Chinese: 100 whole texts). Word lists: part2/src/families.py, in which an entry ending in an asterisk matches any word that begins with it (needed for Finnish and Hungarian case endings); for Chinese the entries are characters or two-character words counted wherever they occur. Changed at 05:56 UTC, just before the count of the word families was started (05:56:31 UTC): a check of how often the two markers are found (150 books a language, markers only) showed that an end line is printed in about 30% of the French, Italian, Spanish and Portuguese books but in under 5% of the German, Finnish, Hungarian and Swedish ones. So the main analysis uses the trimmed text: from the first chapter heading (required) to the end line if there is one, otherwise to the first heading of back matter in the closing tenth (a contents list, notes, errata, an afterword), otherwise to the end of the file. The strict clean cut (end line found) and the whole text are both given beside it. A language enters the headline with at least 100 trimmed novels. ### After the pilot (06:12 UTC, before any text of the sample was read) The form was tried by both readers on six texts that are not in the sample (a first-study tale as printed, another one scrambled, an opening, a dream, a diary stretch, a life). All twelve rating files passed the checker and the two readers gave nearly the same fortune and tension curves. One field was read too loosely: `repeats` came back as 7 and 8 for the encyclopedia life (its jobs) and as 2 to 5 for the dream and the diary. The wording in the reader instructions was therefore tightened, with no change to the definition of F6: an episode is a stretch of action with its own beginning and end that is told over again with a different person, place or result; things that merely recur as time passes (days, meals, journeys, letters, jobs, moves) do not count. Nothing else in the form was changed. The pilot ratings are kept in part2/read/pilot/ and are used in no test. ### Details fixed while writing part2/src/analyze_read.py (06:16 UTC, before any reading) The script was written and run end to end on made-up ratings before any text of the sample was read. Choices it had to make, none of which changes a test above: - A and B use the first study's own functions (src/tales_analyze.py) and its verdict rules (src/build_tales_page.py), unchanged. There a tension curve that is flat is left out of tests 4 to 6. In C, where stories are set beside texts that may have no tension at all, a flat curve counts as not showing the pattern. - C and F use only readings made with the new form. Folk tales there are the second sample together with the 40 first-sample tales read again as printed. - D2 is given with a fourth row: the as-printed ratings put into the order in which the scrambled text showed the scenes. If the reader follows content, the scrambled reading should match this row; the shuffle of the first study moves a tale's steps, not its scenes, so it is the looser comparison. - E is given for "the same segment or next to it", as planned, and also for the same segment only, because the climax nearly always falls in the last two segments. - G uses the fourteen elements that have a place in time (not supernatural, deserved, explains an origin, states a moral). A tale enters G2 if it has at least three of them in at least two different segments. - H2 uses a linear discriminant written out in numpy (ridge of 0.1 on the pooled covariance, equal priors), reports accuracy balanced over regions, and centres each sample's ratings on its own mean because the two samples had different readers. H1 also tests collections within regions (tales dealt out at random among the collections of their region). - F13 is an ordinary least-squares fit with a bootstrap interval over texts. ### The sample as fixed (06:31 UTC, before any text of the sample was read) Six helpers cut the books into single stories and reported on each book (part2/split/ split_report_C.md to H.md). From their reports, before any reading: - Left out, 39 stories (part2/split/exclude_reasons.json): two Egyptian tales with no ending and one that holds the translator's summary of an episode; 15 slices of Ovid that open inside a speech; 14 stories that continue another story and do not stand alone; two in which the author's commentary is woven through the story; four Gesta Romanorum tales with modern verse or a seventeenth-century source; one Sinhalese tale in which a two-column riddle came out interleaved. - Kept although doubtful, because the book prints them as stories: six Pawnee "hero stories" that are lives of real men, six Tlingit clan histories, a Lao piece that describes an enchanted place, six loosely narrative pieces by Maupassant, and second tellings of one tale by other narrators. - The Gesta Romanorum book (58655) turned out to be a retelling of 1845, not Swan's translation; it is kept and labelled so. Translator's braces in Riley's Ovid are removed. - Sources that fell out by the rules above: the Mabinogion (two tales of 500 to 5,000 words), Allen's Korean tales (three), Cowan's Maori book (no separate stories) and Hemingway (the 1924 edition has no titled stories). Lawrence and Turgenev give four stories each. The sample: 1,031 texts, 1,220,229 words, in 110 packs. Folk tales, second sample: 240 from 30 collections (Europe 32, West Asia 16, South Asia 32, East Asia 48, Oceania 24, Africa 40, Americas 48). Old written stories: 66 from 11 sources. Literary stories: 38 by 8 authors. Films around the world: 108. Hollywood films: 99. Dreams, diaries, lives: 40 each. First-study tales: 40 as printed, 40 scrambled, 280 openings. Second reader: 96 texts in 12 packs. The full table is part2/out/sample_table.txt. ## Settled after the data were in Everything above this heading was written before any text of the sample was read. What follows was settled afterwards, in the order it happened, and is printed on the page as well. None of it changes a test, a definition or a threshold of the plan. - At 07:06 UTC, with 397 of the 1,031 first-reader readings and all 96 second-reader readings in, the collection and analysis scripts were run once on the partial readings, with 200 shuffles, to check that they run on real ratings and so that this page could be drafted while the reading went on. No test, definition or threshold was changed as a result, and none of those interim numbers is used. - At 07:34 UTC a check on test I was added (src/lang_robust.py): catalogue entries that are one volume of a longer novel, or a second copy of a title already counted, are dropped and I1 to I10 are run again with the same functions and the same seed. It was added after the planned results of test I were known, because the Chinese sample turned out to hold eight parts of one novel and twelve second copies. The planned result stays the headline and the stricter one is given beside it. - The words used for chance (clearly above with p below 0.01, weakly above with p up to 0.05, otherwise no better) were fixed in the plan for test A only. Using the same words for tests B, E, G, H and K was decided while the page was written, before the full readings were analysed. - In test D the plan named the shuffled ratings as the yardstick. The page also counts on how many of the five tension tests the scrambled reading lies nearer to the as-printed ratings put into the scrambled order than to the as-printed figure. That way of summing up was chosen while the page was written, after the partial look of 07:06. - The headings and summing-up sentences of this page are written by rules (page/fills_*.py), each with the condition it rests on beside it. Those rules were drafted on the 07:06 partial run and on made-up ratings, before the full readings were analysed. They are wording, not tests, and the ledger gives every number whatever the wording says. - All 1,127 rating files passed the format check at the first collection, at 07:52 UTC. No text was read again, and no rating file was changed, replaced or left out. The full analysis was then run, with 1,000 shuffles (500 for test H); a second run that only stores more decimals is described below. - From 08:08 UTC, after the full analysis had been seen, six checks were added (src/extra_checks.py; group X in the ledger): the marks among the stories the reader said it did not know well; test D tale by tale, and the rating of whichever scene is read last; the guesses of test K3 split by whether the reader knew the story; the happy ending by region in the two samples; how high the tension goes in each kind of text; and each mark in each kind of record. None is a planned test and none changes a planned result. They were added because the planned results raised these doubts: the reader said it knew many of the stories well, the scrambled reading showed more rise and release than content alone would give, and two kinds of record showed a rise and a release nearly as often as stories do. - After the full analysis the wording of the page was revised where the results called for more caution: the paragraphs on single kinds of record and on the size of the tension, the section on scrambled tales (whose draft had answered “it does not” before the numbers were in), the second reader’s disagreement over a problem at the start, the heading over the other kinds of story, the paragraph on the order of events (which now gives the figures for dreams, diaries and lives), the paragraph on the films (which now gives the same-scene figures in words as well as in the figure), and the summing-up. No test, threshold or result was changed. - At 08:33 UTC the full analysis was run a second time on the same rating files, with the same seed and the same shuffles, for one reason. The first run stored shares to three or four decimals, so a share stored as 0.865 could not be told from one that is exactly 86.5%, and the draft page rounded a few such values one way in a sentence and the other way in a figure. The second run stores six decimals, and a value that falls exactly on a half is now rounded up everywhere. All 2,010 counts, names and verdicts are identical in the two runs. Of the 5,053 decimal numbers, 5,051 agree to the precision the first run stored; the other two (the upper end of one interval and one average over kinds, both of which the script works out from shares it has already rounded) differ in the fifth decimal place. The page uses the second run. Both result files and the comparison are kept (out/read_analysis_run1.json, out/read_analysis.json, out/compare_runs.txt). The added checks were rerun the same way and show no difference.