@prefix this: . @prefix sub: . @prefix np: . @prefix rdf: . @prefix prov: . @prefix npx: . @prefix dc: . @prefix xsd: . sub:Head { this: a np:Nanopublication; np:hasAssertion sub:assertion; np:hasProvenance sub:provenance; np:hasPublicationInfo sub:pubinfo . } sub:assertion { a ; dc:description "analysis.py lists the first 20000 positive zeros of sin x + sin(a x) analytically from the two factor families, verifies |f| <= 2.9e-11 at each, and forms the A/B label word. It computes the continued fraction of theta = (a-1)/(a+1) (exactly, with period detection, for the seven quadratic surds; from the double's exact rational value for the others, keeping terms while the convergent denominator is below 200000), builds the substitution word s_n = s_{n-1}^{c_n} s_{n-2} to 200000 symbols (checked against the composition tau_{c_1}...tau_{c_n}(A)), and compares the sets of factors of length 1..24. For the quadratic cases it also checks that the composite substitution over one continued-fraction period fixes the tail word and that the preperiod substitutions map the tail onto the full word. Runtime about 12 s."; "Measured: 31 a-values (of 31) whose crossing word and substitution word have identical factor sets for all n <= 24 (n = 31, exact combinatorial comparison; zero positions accurate to ~1e-11, minimum separation between distinct zeros >= 7e-6 spacings). Interpretation: Wolfram (p. 146) says the relative arrangement of the crossing points is 'related to' the output of a generalized substitution system whose rule at each step comes from a term of the continued fraction of (a-1)/(a+1), with repetitive (hence nested) structure when a is a square root. The two 'regularly spaced families' are the zeros of the two factors of sin x + sin ax = 2 sin((1+a)x/2) cos((1-a)x/2); their spacings are in ratio theta = (a-1)/(a+1), so the merged labelled sequence is a Sturmian (mechanical) word and the natural substitution system is the standard one driven by the partial quotients of theta (the word's own slope theta/(1+theta) has continued fraction [0; c_1+1, c_2, ...], so the directive sequence is exactly the partial quotients of theta). 'Related to' is operationalised as equality of factor languages, the strongest sense in which a finite segment of a mechanical word can match a substitution word whose intercept is not specified. The test uses exact arithmetic for the quadratic surds' continued fractions and double precision elsewhere, with partial quotients used only while the convergent denominators are below 10 N."; "Claim test of wolfram2002-ch04-18: supports, confidence 0.9"; ; prov:wasAttributedTo ; "Planned datasets: sin-sum-zero-crossings-generator"; "claim-test/0.1.0"; "computational"; "Pre-registered. FAIL (refutes) if for any a there is some n <= 24 at which the factor sets differ, after excluding near-coincident zeros (two zeros closer than 1e-9 times the A spacing, which would make the ordering numerically undefined); or if any quadratic-irrational case has a non-eventually-periodic continued fraction or a tail that is not a fixed point of the period substitution. Partial agreement (factor sets equal only for some a, or only up to a smaller n without a numerical explanation) is 'mixed'."; "A first run reported mismatches for all seven quadratic surds; this was a bug in the test script (the exact continued-fraction routine returned only one period, which was not unrolled before building the word) and was fixed before the criterion was evaluated; the pre-registered criterion itself was not changed.", "Equality of factor languages (and complexity n+1) is the appropriate finite test because the substitution system fixes the slope but not the intercept of the mechanical word; the crossing word's intercept is fixed by the offset pi/(a-1) of the B family.", "The identification of 'the generalized substitution system' with the standard Sturmian construction (rule tau_c: A -> A^c B, B -> A at the step whose partial quotient is c) is the tester's; the book does not print the rule. The directive sequence is exactly the partial quotients of (a-1)/(a+1), as the book states, because the word's own slope theta/(1+theta) has continued fraction [0; c_1+1, c_2, c_3, ...].", "The result is for a > 1; by rescaling x the a < 1 case is the same with the roles of the families exchanged. Rational a (periodic curves) are outside the irrational scope tested and were not sampled."; "Pre-registered. Test set: a in {sqrt2, sqrt3, sqrt5, sqrt7, (1+sqrt5)/2, 1+sqrt2, 2+sqrt3} (quadratic irrationals), {pi, e, 2^(1/3), ln 10} and 20 pseudo-random a uniform in [1.05, 12] from numpy seed 20261031 (31 values). For each a: (1) take the first N = 20000 positive zeros of f(x) = sin x + sin(a x), each verified numerically (|f(x)| <= 1e-8), labelled A if it is a zero of sin((1+a)x/2) (spacing 2pi/(1+a)) and B if it is a zero of cos((1-a)x/2) (spacing 2pi/(a-1)); (2) build the substitution word s_1 = A^{c_1} B, s_n = s_{n-1}^{c_n} s_{n-2} (equivalently the composition tau_{c_1} ... tau_{c_n}(A)) to length >= 200000 from the continued fraction theta = [0; c_1, c_2, ...]. PASS (supports) if for every a and every n in 1..24 the set of length-n factors of the crossing word equals the set of length-n factors of the substitution word and has exactly n + 1 elements, and if for every quadratic-irrational a the continued fraction of theta is eventually periodic within 60 terms and the composite substitution over one period has the substitution word's tail as a fixed point (applying it to the first 2000 symbols of the tail reproduces a prefix of the tail)."; "Pre-registered. FAIL (refutes) if for any a there is some n <= 24 at which the factor sets differ, after excluding near-coincident zeros (two zeros closer than 1e-9 times the A spacing, which would make the ordering numerically undefined); or if any quadratic-irrational case has a non-eventually-periodic continued fraction or a tail that is not a fixed point of the period substitution. Partial agreement (factor sets equal only for some a, or only up to a smaller n without a numerical explanation) is 'mixed'."; "0.9"^^xsd:double; ; "supports"; "If the claim holds, the sequence of axis crossings of sin(x) + sin(a x) for a > 1, labelled by which of the two regularly spaced families each crossing belongs to, has exactly the same set of finite subwords as the word produced by the generalized substitution system whose n-th rule is tau_{c_n}: A -> A^{c_n} B, B -> A, where c_1, c_2, ... are the partial quotients of the continued fraction of theta = (a - 1)/(a + 1); and for quadratic-irrational a the partial quotients are eventually periodic, so the word is a fixed point of a fixed composite substitution (nested)."; "analysis.py lists the first 20000 positive zeros of sin x + sin(a x) analytically from the two factor families, verifies |f| <= 2.9e-11 at each, and forms the A/B label word. It computes the continued fraction of theta = (a-1)/(a+1) (exactly, with period detection, for the seven quadratic surds; from the double's exact rational value for the others, keeping terms while the convergent denominator is below 200000), builds the substitution word s_n = s_{n-1}^{c_n} s_{n-2} to 200000 symbols (checked against the composition tau_{c_1}...tau_{c_n}(A)), and compares the sets of factors of length 1..24. For the quadratic cases it also checks that the composite substitution over one continued-fraction period fixes the tail word and that the preperiod substitutions map the tail onto the full word. Runtime about 12 s."; "Pre-registered. Test set: a in {sqrt2, sqrt3, sqrt5, sqrt7, (1+sqrt5)/2, 1+sqrt2, 2+sqrt3} (quadratic irrationals), {pi, e, 2^(1/3), ln 10} and 20 pseudo-random a uniform in [1.05, 12] from numpy seed 20261031 (31 values). For each a: (1) take the first N = 20000 positive zeros of f(x) = sin x + sin(a x), each verified numerically (|f(x)| <= 1e-8), labelled A if it is a zero of sin((1+a)x/2) (spacing 2pi/(1+a)) and B if it is a zero of cos((1-a)x/2) (spacing 2pi/(a-1)); (2) build the substitution word s_1 = A^{c_1} B, s_n = s_{n-1}^{c_n} s_{n-2} (equivalently the composition tau_{c_1} ... tau_{c_n}(A)) to length >= 200000 from the continued fraction theta = [0; c_1, c_2, ...]. PASS (supports) if for every a and every n in 1..24 the set of length-n factors of the crossing word equals the set of length-n factors of the substitution word and has exactly n + 1 elements, and if for every quadratic-irrational a the continued fraction of theta is eventually periodic within 60 terms and the composite substitution over one period has the substitution word's tail as a fixed point (applying it to the first 2000 symbols of the tail reproduces a prefix of the tail)."; "false"^^xsd:boolean . . a ; dc:description "the mathematical objects the claim relates"; dc:license "generated by this test"; "Dataset: Zero crossings of sin(x) + sin(a x) for 31 values of a, and continued-fraction-driven substitution words, generated by analysis.py"; prov:wasDerivedFrom . } sub:provenance { a prov:SoftwareAgent; "delphisci claim tester (claude-fable-5.1; cursor/claim-tests-wolfram-nks-9241)"; prov:actedOnBehalfOf ; . a ; dc:identifier "claude-fable-5.1" . sub:assertion prov:wasAttributedTo ; prov:wasDerivedFrom ; prov:wasGeneratedBy sub:test . sub:plan prov:hadPlan . sub:test a prov:Activity; prov:qualifiedAssociation sub:plan; prov:wasAssociatedWith . } sub:pubinfo { this: dc:created "2026-11-08T16:24:31.924Z"^^xsd:dateTime; dc:creator ; dc:license ; npx:hasNanopubType ; npx:introduces ; "Claim test of wolfram2002-ch04-18: supports, confidence 0.9"; . sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyFHtPB6p0mCjDozxlOY9CmO3nBm7Te3jFbXyLmM+G1tGe47Da0jYIbhkl9Oo1ZjxmCa3LCwlEqK8gj6hEIcL4ahW30JXh9HycfKVk1bugkzMEV15tJdTzAU3sGMFnbNsn43xY2LFLy45tApkRm5byEiM7oRRrooIdwoQKnP4Wzq/bfAoJ9qvW+MGkelyOTd1jbSt+KfmT7xKmDfWzAHddUlWwMX2QJOLxDaffOteTop6ZRgPiNmPJKA/S62Gac9XtSYT3oDkZ6/nr5cxxNLpOyxTf5FPISiCe11xYO/unYjY+mwnOfA8yhJIyx1l0O9I0vpOpn+E5TvyHJV+oSTrvwIDAQAB"; npx:hasSignature "iEPv212t4cXAT39dykHHpFrVg5jgjUcVCrAj68rbxe0E3oqJXKyGEiT4t++WmAwj9TN2xIz/hE+0BRYGHeAiG6NSG4iz0AXRkRRxBJRct5YrIWNg6lld3XVl3L3LTaNsR5+HZWewsHTXVWYfvGSMixU5ZmFiFhtaIJ1aKFyDLw5cn5YXvdJqN10gTh2E9u9qg3pDsVNHSL537lfh4i3eL5JqFl6Bbp/77vD0D6EPlmJw3Oa9ljhqcY1IiNn7I60Pdw2Vy8jwpxedjcGPXnxmMaGkdhJtQynxeZpaolrRRR7lt7iVl1L80EAmoLV5HeqvgaESCzpakHU+xWuSpNqUoQ=="; npx:hasSignatureTarget this:; npx:signedBy . }