ICM Meta-grammar
Prototype d'une méta-grammaire de la musique classique indienne, tirée des traités, où chaque règle cite le passage qui la fonde.
expérimental licence CC0-1.0
ICM est le prototype d’un concept : tirer des traités une méta-grammaire de la musique classique indienne, où rien n’est affirmé sans sa citation. Le premier essai porte sur un traité, la Bṛhaddeśī de Mātaṅga (vers 750, édition de Prem Lata Sharma, IGNCA 1992), dont il tire des concepts, des règles et une grammaire exécutable. Sa limite principale : une seule source est traitée de bout en bout ; les deux autres sont extraites mais pas encore affichées, et la relecture humaine de l’OCR en est à 276 cas sur 974.
Le site se lit sans rien installer ; il n’y a rien à écouter, c’est un travail sur les textes. Le code est privé.
Des pages du traité à la grammaire, sans perdre la preuve
Le site suit un chemin en cinq étapes. Les pages OCR, texte sanskrit et traduction anglaise en regard ; les affirmations, chaque énoncé du texte avec sa citation littérale ; les concepts, qui regroupent les mentions d’une même notion ; les règles génératives, ce que le texte affirme d’un concept ; enfin la grammaire formelle : types, constantes, opérations et contraintes.
À chaque étape, un élément porte l’identifiant de la règle ou de l’affirmation dont il vient. Une valeur plausible que rien ne cite ne s’invente pas : elle va dans une liste UNRESOLVED, qui compte 84 entrées.
Commencer
Ouvrez « Critical editions », puis la Bṛhaddeśī : 274 folios en deux volumes (105 et 169), le texte en devanāgarī en regard de la traduction anglaise de Sharma, avec les concepts en lien.
Ouvrez ensuite « Generative rules » : la liste s’ouvre sur la règle la plus attestée, qui définit le nyāsa, la note sur laquelle une pièce se pose ou se conclut :
DEFINE nyasa(gita) = svara WHERE gita IS placed_or_ended ON svara
Elle porte l’identifiant R_006_nyasa_definition et vingt affirmations du texte. Relevé sur le site le 28 septembre 2026.
Ce qu’il fait
- Rendre le texte lisible : 274 pages OCR, en deux langues, avec leur apparat en marge.
- Relever ce que dit le texte : 3 187 affirmations sourcées, regroupées en 1 763 concepts.
- En tirer des règles : 1 087 règles génératives, classées en définitions, classifications, dérivations, relations, contraintes de validation, entre autres.
- Les formaliser : 11 modules, un par domaine (rôles des svaras et jātis, ornementation, corpus des bhāṣā et grāma-rāga…), qui totalisent 107 types, 86 opérations et 58 contraintes. Une contrainte violée lève une erreur qui cite sa règle.
- Montrer la fabrique : les étapes de la chaîne (une trentaine), la file de relecture de l’OCR, l’audit page par page, scan et texte côte à côte, et une API de consultation (
/api/docs).
Problèmes courants
La liste des règles s’arrête à 500. Il y en a 1 087 : le filtre par catégorie et la recherche donnent accès au reste.
Les deux autres sources affichent « Coming soon ». The Raga Guide de Joep Bor (1999, 74 rāgas) et The Rāga Yaman de Wim van der Meer (2000) sont extraits, mais leur édition n’est pas encore rendue.
L’OCR garde des erreurs. Les cas douteux sont signalés par deux filtres, l’un linguistique, l’autre par un modèle qui lit l’image de la page, puis tranchés à la main : 276 sur 974 au 28 septembre 2026, soit 28,3 %. L’audit page par page les montre.
Où il en est
Prototype : la chaîne est éprouvée sur un seul traité, la Bṛhaddeśī. Le dépôt privé a été mis à jour le 15 septembre 2026. Pas de version publiée. Le contenu publié sur le site est sous licence CC0.
Ce qui marche : la chaîne complète sur la Bṛhaddeśī, visible en ligne. Ce qui ne marche pas encore : le rendu des éditions de Bor et van der Meer, et la fin de la relecture de l’OCR. Selon son README, le texte OCR du Saṅgītaratnākara alimente ce même projet.
Site · Éditions · Règles · Méthode
Merci à Prem Lata Sharma, dont l’édition et la traduction de la Bṛhaddeśī (IGNCA, 1992) sont la source pilote, et à Joep Bor et Wim van der Meer, dont les ouvrages sont les deux sources suivantes.
Fabrication. Claude Code (Claude Opus 5.5), à partir du dépôt, de son README et de ses notes de version. Méthode