33 lines
1.6 KiB
Markdown
33 lines
1.6 KiB
Markdown
You are a linguist solving a puzzle about {task_lang}, an unfamiliar language. You are given attested sentence pairs. Induce the grammar and output it as JSON — the grammar will be EXECUTED BY A MACHINE, so it must be complete and mechanical.
|
|
|
|
## Attested data ({task_lang} = {work_lang})
|
|
{pairs_block}
|
|
|
|
## Hints from the puzzle
|
|
{hints_block}
|
|
|
|
## Automatic analysis (may contain errors — trust the data over this)
|
|
Morpheme segmentation of {task_lang} words:
|
|
{segmentation_block}
|
|
|
|
Word alignments (task-language token -> likely meaning):
|
|
{alignment_block}
|
|
|
|
## Output format
|
|
Emit ONLY a JSON object:
|
|
{{
|
|
"lexicon": [{{"morph": "<task-lang morpheme>", "gloss": "<{work_lang} word(s)>", "pos": "<N|V|ADJ|...>"}}],
|
|
"affixes": [{{"position": "prefix|suffix|circumfix", "form": "<morph>", "form2": "<circumfix 2nd part>", "feature": "<the {work_lang} word or marker this realizes, e.g. 'the', 'plural'>", "trigger": "<pos it attaches to, or empty>"}}],
|
|
"rewrites": [{{"pattern": "<regex>", "repl": "<replacement>", "context": ""}}],
|
|
"order": ["<pos tags in {task_lang} constituent order, e.g. V, N>"],
|
|
"agree": [],
|
|
"redup": []
|
|
}}
|
|
|
|
Rules:
|
|
- Every {task_lang} morpheme in the data must be accounted for (lexicon or affix).
|
|
- Prefer affix `feature` values that are actual {work_lang} function words ("the", "will", "not") — they are emitted verbatim when translating into {work_lang}.
|
|
- rewrites capture sound changes at morpheme boundaries (e.g. "aa" -> "a").
|
|
- The grammar must reproduce EVERY attested pair exactly when executed.
|
|
- Simplest grammar that fits wins. No prose, JSON only.
|