Zum Hauptinhalt springen

Kepler: lex und natura

Eine Famulus-Pilotdemo: Kookkurrenz und Gegenprobe

Autor:in
Zugehörigkeit

Gerd Graßhoff

Philosophisches Institut, Humboldt-Universität zu Berlin

Veröffentlichungsdatum

23. September 2026

Zusammenfassung

In welchen lateinischen Sätzen Keplers stehen die Lemmata lex und natura zusammen, und hält die Zahl einer SQL-Gegenprobe stand? Zwei Blöcke lesen dieselbe Menge auf zwei Wegen.

Das Register vom 12. August 2026, Zählmodus canonical, Sprache la: 45 Sätze in 16 Dokumenten von kepler-prim, keine in kepler-sec. Das Golden-Manifest R2 setzt den Floor auf mindestens 15 Sätze und mindestens 16 Dokumente. Der Floor steht im Oracle. Die Zahl 45 steht in der Instruktion als die ungekappte Lesung. Kepler ist der Sammlungsanker und kein Kookkurrenz-Lemma. naturalis bleibt draußen, weil der kanonische Modus das Adjektivlemma nicht zu natura schlägt. Die verwandte Zeile golden-42a5201285 zählt Briefe und ist hier nicht gebunden.

1 Frage 1. In welchen Sätzen stehen lex und natura zusammen?

Der Block sucht die gemeinsamen Vorkommen in den lateinischen Schriften.

Sätze in Keplers lateinischen Schriften, in denen die Lemmata lex und natura gemeinsam vorkommen. Zählmodus canonical. Die Register-Wahrheit der ungekappten Lesung ist 45 Sätze in 16 Dokumenten.

Partitur
---
id: lex-natura
lemmata: [lex, natura]
counting_mode: canonical
subtask: cooccurrence
display: textkarten
oracle:
  n_sentences: {min: 15}
  n_documents: {min: 16}
artefacts:
  - name: kwic
    kind: kwic
    file: kwic.json
---
Sätze in Keplers lateinischen Schriften, in denen die Lemmata lex und natura
gemeinsam vorkommen. Zählmodus canonical. Die Register-Wahrheit der ungekappten
Lesung ist 45 Sätze in 16 Dokumenten.

45 Sätze, 16 Dokumente.

bestanden

- [kepler-prim/kgw-01] illam facio, quàm par est; nec si primi authores legem quandam suis ratiocinijs arbitrarijs à rerum natura sunt mutuati, propterea vicissim tota reliqua coelestium natura sese subjecit his eorum ratio

- [kepler-prim/kgw-01] Qui hoc affirmant, pars naturae coelorum consulentes, lege circulari hoc factum esse pronunciant: ut ita causa sit, cur ex descensu, nexus, et quodammodo prognatus fuerit contrarius ascensus.

- [kepler-prim/kgw-01] Moderator itaque totius naturae non in hoc Solem et Lunam ciet, ut deliquium jungat aequinoctio; sed ne Solem Lunamque non cieat, suâ quemlibet lege: non refugit deliquium jungere aequinoctio.

- [kepler-prim/kgw-06] Esto enim systema quàm optimè tensum, ad naturae leges hactenus explicatas, pulsentur G. a. et b. rogentur omnes homines, quotquot audiunt, utrum intervallorum horum sit majus, nescire se dicent; nec

- [kepler-prim/kgw-06] Haec cùm sit natura hujus sectionis, quae ad quinquanguli demon- strationem concurrit; cùmque Creator Deus ad illam conformaverit leges generationis; ad genuinam quidem et seipsâ solâ perfectam propor

- [kepler-prim/kgw-06] ligatis; et quemadmodum transpositis numeris pereat concentus, ita si Processus forenses et exsecutio potiores habeantur Legibus, si Magi- stratus prior aequitate, civitatis harmoniam turbari: id quid

- [kepler-prim/kgw-07] Vbi vt quisque pollet ingenio, ita plurimas apparentiarum diversitates salvat et efficit per unam ali-quam sibique perpetuò similem motuum formam, aut figuram corporum; demonstrationis suae methodum o

- [kepler-prim/kgw-07] Cùm verò in principio libelli, quando de Hypothesibus quaestio fuit, legem hanc praescripseris astronomo, vt non quidvis pro libitu ponat, sed positiones suas etiam comprobet Naturae consultis, quaero

- [kepler-prim/kgw-07] Ex adverso figura Elliptica itineris planetarij, legesque motuum, quibus talis figura, sapiunt potiùs naturam staterae seu necessitatem materialem, quàm conceptum et destinationem mentis, vt infra pat

- [kepler-prim/kgw-15] Sed catj religionis inventores dam; vel ut populo religionem persuaderent, utilem imperio, quam ipsj causarum peritj vilipenderent: Vel etiam contraria ratione, quae paulo longiore verborum ambitu ind

- [kepler-prim/kgw-15] Hanc pertinacissimis laboribus tantisper tractaui vt denique sese naturae legibus accommodet, itaque, quod hanc attinet, de Astro- nomia sine hypothesibus constituta gloriari possim.

- [kepler-prim/kgw-15] Nec ♄ est abscissor sua natura, sed imaginatione facultatis vitalis in nato homine, quae characterem caelestem in esse et fieri (·radice et directione·) in se suscepit, eumque ad finem vitae circumfer

- [kepler-prim/kgw-04] 1 per confermarmi maggiormente il possesso di grazia tanto pregiata da me, prego V. S. Ill.ma à fargli intendere per mia parte, come conforme alla credenza di sua Sig.ria Ill.ma ho demonstratione cert

- [kepler-prim/kgw-04] de legibus die Stelle an: Memento vero vim omnem atque motum a superioribus in nos descendentem, semper ad bonum suapte natura conducere.

- [kepler-prim/kgw-08] 104 Principiò non planè negabo, pestilentiam nonnullos Cometarum Naturae lege sequi, tunc nimirum, si cauda, quae defluxus est a capite, Terram contingit; id verò esset in coniunctione Cometae cum Sol

- [kepler-prim/kgw-08] Adeoque non erat opus 30 Cometâ ad praesignificandum id, quod naturae legibus breui futurum praeuideri potuit: at ad ea, quae mortis eius occasione essent euentura, 136 plane persuadeor nos à Cometa v

Das Urteil besteht, wenn die Satzzahl mindestens 15 und die Dokumentzahl mindestens 16 ist. Ein Lauf unter dem Floor ist abweichend.

2 Frage 2. Hält die Zahl einer unabhängigen SQL-Gegenprobe stand?

Dieselbe Menge, gelesen aus lemma_index.parquet und stz_sentences. Die Satzidentität ist das Tripel (doc_id, pidx, sent_idx). Der Block hängt an der Kookkurrenz.

Lies dieselben lateinischen Sätze direkt aus dem Lemma-Index und stz_sentences. Die Satzidentität ist das Tripel (doc_id, pidx, sent_idx).

Partitur
---
id: lex-natura-gegenprobe
depends_on: [lex-natura]
display: tabelle
duckdb:
  - alias: stz
    path: $PDAI_COLLECTIONS/kepler-prim/kepler-prim_stanza.duckdb
    read_only: true
  - alias: lemma
    path: $PDAI_COLLECTIONS/kepler-prim/lemma_index.parquet
    read_only: true
partiturs:
  - id: duckdb-read
    input:
      sql: |
        WITH hits AS (
          SELECT doc_id, pidx, sent_idx
          FROM read_parquet('$PDAI_COLLECTIONS/kepler-prim/lemma_index.parquet')
          WHERE lemma IN ('lex', 'natura') AND upos = 'NOUN'
          GROUP BY doc_id, pidx, sent_idx
          HAVING count(DISTINCT lemma) = 2
        )
        SELECT s.doc_id, s.pidx, s.sent_idx, s.text
        FROM stz.stz_sentences AS s
        JOIN hits AS h
          USING (doc_id, pidx, sent_idx)
        WHERE s.lang = 'la'
    artefact: gegenprobe
artefacts:
  - name: gegenprobe
    kind: table
    file: gegenprobe.json
oracle:
  n_sentences: {min: 15}
---
Lies dieselben lateinischen Sätze direkt aus dem Lemma-Index und stz_sentences.
Die Satzidentität ist das Tripel (doc_id, pidx, sent_idx).

43 Sätze.

bestanden

upos = 'NOUN' hält naturalis draußen. Die Verbindung ist kurzlebig und nur lesend.

3 Wie ein Block läuft

Die eingeklappte Partitur des Blocks ist seine Präambel.

Präambel Ablauf
subtask: cooccurrence Partitur ai-query-phase1, inputs.subtask
lemmata, counting_mode inputs
collections, language, locked aus famulus.yml Setting
partiturs[].id: duckdb-read SQL auf den Anhängen, kein Conductor
depends_on manifest.json des ersten Blocks
oracle Floor in verdict.json, keine Gleichheit mit 45
Instruktion goal

4 Das Projekt

Ein Projekt ist ein Ordner. famulus.yml gilt für jeden Block, die .fam-Datei ist der Text. Was der Runner schreibt, liegt unter _famulus/.

kepler-lex-naturae/
  famulus.yml
  lex-naturae.fam
  famulus.lock
  _famulus/store/lex-naturae/index.json
  _famulus/store/lex-naturae/lex-natura/current.json
  _famulus/store/lex-naturae/lex-natura/v0001/{trace,report,verdict,result,manifest}.json
  _famulus/store/lex-naturae/lex-natura/v0001/artefacts/kwic.json
  _famulus/store/lex-naturae/lex-natura-gegenprobe/v0001/artefacts/gegenprobe.json
Datei Inhalt Schreibt Liest
famulus.yml Sammlung, Sprache, Modell Autor Runner
lex-naturae.fam Frage, Erklärung, Block Autor Viewer, Lektor, Quarto
famulus.lock gelesene Versionen Runner Runner, Prüfung
…/index.json Blöcke und Artefakte Runner Viewer, Quarto
…/<block>/current.json aktuelle Version Runner Viewer, Verweise
…/vNNNN/result.json Antwort, Messwerte, Darstellung Runner Viewer, Quarto
…/vNNNN/verdict.json Urteil gegen den Floor Runner Viewer
…/vNNNN/manifest.json Eingabe-Hash, Version, Status Runner Runner
…/vNNNN/artefacts/ KWIC und Gegenprobe, mit Kopf famulus Runner Viewer, Quarto

rerun: if-stale führt einen Block nur aus, wenn er noch nie lief oder sich eine seiner Eingaben geändert hat: Präambel, Instruktion, famulus.yml, gelesene Dateien oder die Version eines gelesenen Artefakts. Bringt ein neuer Lauf dasselbe Ergebnis, bleibt die Version, und die nachfolgenden Blöcke laufen nicht erneut.

Eine Anmerkung im Lektor trifft die Zeilen über data-pos und schreibt in genau diese .fam-Datei zurück.