1087 rules total — 18 shown (capped at 500). ← back to grammar index
| rule_id | Category | Concept | Summary | Body (excerpt) | N att. |
|---|---|---|---|---|---|
R_275_murchana_omission |
transformation | mūrchanā | Mūrchanā transformations operate via svara-omission (creating ṣāḍava/auḍuvita tānas); applies to jātis/rāgas; no canonical jāti-mūrchanā rul | APPLY omit_svara(murchana) -> tana; SCOPE = murchana+jati+raga; jati-to-murchana assignment = unprescribed (authority-based) |
3 |
R_143_auduvita_state |
transformation | auduvita | Auḍuvita state is reached by reducing 6-svara jātis to 5 svaras; in auḍuvita state, all svaras present are abundant (none sparse) | TRANSFORM jati[6_svaras] -> auduvita[5_svaras]; IN auduvita: alpatva(svara)=none, bahutva(all)=true |
2 |
R_211_vikrta_transformation |
transformation | vikṛtā | Vikṛtā jāti is derived from śuddhā by altering characteristics; aṁśa/apanyāsa/completeness can change but alpatva-bahutva and nyāsa cannot | DERIVE vikrta FROM suddha BY altering [amsa, apanyasa, completeness]; INVARIANTS = [alpatva_bahutva, nyasa] |
2 |
r_brd_533_rsabha_omission |
transformation | ṛṣabha | In kaiśikī, ṛṣabha is sparse and may be omitted to derive hexatonic/pentatonic forms; tānas can be built without ṛṣabha | FUNCTION derive_by_rsabha_omission(jati): · IF jati == 'kaisiki': · omit({rsabha}) -> hexatonic · omit({rsabha, dhaivata}) -> pentatonic · FOR tana |
2 |
R_1451_01 |
transformation | bhakāra | bhakāra = sāman where all consonants→bh, vowels kept | FUNCTION bhakāra(sāman): · RETURN replace_all_consonants(sāman, with='bh') # vowels preserved |
1 |
R_1764_01 |
transformation | anuvādin svaras | Audūvita state arises by omission of two anuvādin svaras | TRANSFORM full_scale → audūvita BY omit(2, anuvādin_svaras) |
1 |
R_1802_vyutkrama_permutations |
transformation | व्युत्क्रमा | Vyutkrama = permutation of svara order; yields 5 kūṭa-tāna variants from 3-svara set | APPLY vyutkrama(seq[sa,ri,ga]) → {ga-ri-sa, ga-sa-ri, ri-ga-sa, ri-sa-ga, sa-ga-ri} |
1 |
R_1850_prasada_prastara |
transformation | prasāda | prasāda = inverse/opposite of prastāra | DEFINE prasada := inverse(prastara) |
1 |
R_1886_001 |
transformation | प्रसादः | Prasāda = simplification of prastāra by removing intermediary notes | DEFINE prasāda AS transform(prastāra) BY removing(intermediary_notes); EXAMPLE: sanidhapamagarisasarigamapadhanisa |
1 |
R_597_murchana_shift |
transformation | mūrchanā | In murchanās of rsabha..nisada, sadja shifts to 2nd..7th svara position respectively | FOR base IN [rsabha,gandhara,madhyama,pancama,dhaivata,nisada]: · position_of(sadja, murchana(base)) := index(base)+1 // yields 2..7 |
1 |
R_692_sadavita_seven_to_six |
transformation | ṣāḍavita | Seven-svara jātis may be reduced to ṣāḍavita (six-svara) form | IF jati.n_svaras == 7: MAY transform_to(sadavita, n_svaras=6) |
1 |
bhinnakaiśika_pancama_substitution |
transformation | bhinnakaiśika | In bhinnakaiśika, the three-śruti pañcama is omitted in ṣaḍjagrāma, taking instead the four-śruti form. | in bhinnakaiśika under sadjagrama: pancama_3sruti -> omitted; pancama_4sruti -> used |
1 |
madhyamagrama_sama_pair_change |
transformation | madhyamagrāma | When the grāma changes to madhyamagrāma, sama pairs become sama, ripa, gani (special structure of pairs). | if grama_change -> madhyamagrama: sama_pairs := {sama, ripa, gani} |
1 |
nishada_tanas_omission |
transformation | niṣāda | Tānas can be constructed by omitting the note niṣāda (yielding niṣāda-deficient tānas). | def omit_nishada(tana): · return tana.svaras.exclude('nishada') |
1 |
parinamita_shruti_to_svara_transformation |
transformation | pariņāmitā | Śrutis are transformed into the form of svaras (pariṇāmitā), as milk transforms into curd. | def parinamita(shruti): · return transform(shruti, 'milk_to_curd_analogy') -> svara |
1 |
pravesa_mechanism |
transformation | pravesa | Praveśa happens through augmentation (prakarṣa) of the lower svara or by lowering (mārdava) of the higher svara. | trigger(pravesa(L,H)) := prakarsa(L) OR mardava(H) |
1 |
tanakriya_viprakarsha_mardava |
transformation | tāna-kriyā | Tāna-kriyā applies viprakarṣa-mārdava (stretching and loosening of the string) on the viṇā. | def tana_kriya(string): · return apply(string, ops=['viprakarsha','mardava']) |
1 |
śruti_shake_3sruti_rule_eroded |
transformation | śrutis | The traditional rule limiting shakes (kampita) to 3-śruti svaras appears abandoned in certain alaṅkāras. | rule: shake_allowed_on(S) := sruti_count(S)==3; observed_exception: in certain alankaras the rule is relaxed |
1 |